amxx to sma - конвертиране
-
bustA
Извън линия - Потребител
- Мнения: 264
- Регистриран на: 20 Юни 2020, 11:47
- Се отблагодари: 42 пъти
- Получена благодарност: 27 пъти
- Обратна връзка:
amxx to sma - конвертиране
Здравейте, някой ако може да конвертира този плъгин, Ще почеря
https://www98.zippyshare.com/v/Lf6ZwGpR/file.html
https://www98.zippyshare.com/v/Lf6ZwGpR/file.html
Cs-Plovdiv.com - Aim Attack - 93.123.16.4:27022
-
illusion
Извън линия - Developer
- Мнения: 1810
- Регистриран на: 27 Ное 2016, 17:47
- Местоположение: CraftVision
- Се отблагодари: 151 пъти
- Получена благодарност: 371 пъти
- Обратна връзка:
amxx to sma - конвертиране
Изцяло няма как.
Код за потвърждение: Избери целия код
#pragma semicolon 1
#pragma ctrlchar '\'
new MaxClients;
new MapName[64];
new NULL_STRING[1];
new Float:NULL_VECTOR[3];
new TeamName[4][] =
{
"",
"TERRORIST",
"CT",
"SPECTATOR"
};
new Trie:g_prefix;
new Hide_Texts[2][] =
{
"/me",
"/rankstats"
};
new teams[4][] =
{
"",
"(Terrorist)",
"(Counter-Terrorist)",
"(Spectator)"
};
new Color:colors[4] =
{
3, 5, 6, 4
}
new msgCounts[33];
new bool:blocked[33];
Float:operator*(Float:,_:)(Float:oper1, oper2)
{
return oper1 * float(oper2);
}
bool:operator<=(Float:,Float:)(Float:oper1, Float:oper2)
{
return floatcmp(oper1, oper2) <= 0;
}
argbreak(String:text[], String:left[], leftlen, String:right[], rightlen)
{
!!! Removed Phi
new pos = argparse(text, MaxClients, left, leftlen);
if (pos == -1)
{
return -1;
}
new textlen = strlen(text);
while (pos < textlen && isspace(text[pos]))
{
pos++;
}
copy(right, rightlen, text[pos]);
return pos;
}
replace_all(String:string[], len, String:what[], String:with[])
{
new pos = 0;
new var1 = contain(string, what);
pos = var1;
if (var1 == -1)
{
return 0;
}
new total = 0;
new with_len = strlen(with);
new diff = strlen(what) - with_len;
new total_len = strlen(string);
new temp_pos = 0;
while (replace(string[pos], len - pos, what, with))
{
total++;
pos = with_len + pos;
total_len -= diff;
if (pos >= total_len)
{
return total;
}
else
{
temp_pos = contain(string[pos], what);
if (temp_pos == -1)
{
return total;
}
else
{
pos = temp_pos + pos;
}
return total;
}
return total;
}
return total;
}
cmd_access(id, level, cid, num, bool:accesssilent)
{
!!! Removed Phi
new has_access = 0;
new var1;
if (is_dedicated_server())
{
var1 = 0;
}
else
{
var1 = 1;
}
if (var1 == id)
{
has_access = 1;
}
else
{
if (level == 16777216)
{
if (is_user_admin(id))
{
has_access = 1;
}
}
if (level & get_user_flags(id, 0))
{
has_access = 1;
}
if (level)
{
}
else
{
has_access = 1;
}
}
if (has_access)
{
if (num > read_argc())
{
new hcmd[32];
new hinfo[128];
new hflag = 0;
new bool:info_ml = 0;
get_concmd(cid, hcmd, 31, hflag, hinfo, 127, level, -1, info_ml);
if (info_ml)
{
LookupLangKey(hinfo, 127, hinfo, id);
}
console_print(id, "%L: %s %s", id, "USAGE", hcmd, hinfo);
return 0;
}
return 1;
}
if (!accesssilent)
{
console_print(id, "%L", id, "NO_ACC_COM");
}
return 0;
}
cmd_target(id, String:arg[], flags)
{
!!! Removed Phi
new player = find_player("bl", arg);
if (player)
{
if (find_player("blj", arg) != player)
{
console_print(id, "%L", id, "MORE_CL_MATCHT");
return 0;
}
}
else
{
if (var4 && arg[0] == 35 && arg[1])
{
player = find_player("k", str_to_num(arg[1]));
}
}
if (!player)
{
console_print(id, "%L", id, "CL_NOT_FOUND");
return 0;
}
if (flags & 1)
{
if (get_user_flags(player, 0) & 1 && flags & 2)
{
new imname[32];
get_user_name(player, imname, 31);
console_print(id, "%L", id, "CLIENT_IMM", imname);
return 0;
}
}
if (flags & 4)
{
if (!is_user_alive(player))
{
new imname[32];
get_user_name(player, imname, 31);
console_print(id, "%L", id, "CANT_PERF_DEAD", imname);
return 0;
}
}
if (flags & 8)
{
if (is_user_bot(player))
{
new imname[32];
get_user_name(player, imname, 31);
console_print(id, "%L", id, "CANT_PERF_BOT", imname);
return 0;
}
}
return player;
}
ColorChat(id, Color:iType, String:szMsg[])
{
!!! Removed Phi
static szMessage[256];
switch (iType)
{
case 1:
{
szMessage[0] = 1;
}
case 2:
{
szMessage[0] = 4;
}
default:
{
szMessage[0] = 3;
}
}
vformat(888 + 4, 255, szMsg, 4);
replace_all(szMessage, 255, "!n", "\1");
replace_all(szMessage, 255, "!t", "\3");
replace_all(szMessage, 255, "!g", "\4");
static iMsgType;
static iIndex;
static ColorChange;
static iTeam;
szMessage[192] = 0;
if (id)
{
iMsgType = 1;
iIndex = id;
}
else
{
iIndex = FindPlayer();
iMsgType = 2;
}
new var1 = Heap_4;
var1[0] = 1988;
iTeam = get_user_team(iIndex, var1, 0);
ColorChange = ColorSelection(iIndex, iMsgType, iType);
ShowColorMessage(iIndex, iMsgType, szMessage);
if (ColorChange)
{
Team_Info(iIndex, iMsgType, TeamName[iTeam][0][0]);
}
return 0;
}
ShowColorMessage(id, iType, String:szMessage[])
{
message_begin(iType, get_user_msgid("SayText"), 2024, id);
write_byte(id);
write_string(szMessage);
message_end();
return 0;
}
Team_Info(id, iType, String:iTeam[])
{
message_begin(iType, get_user_msgid("TeamInfo"), 2024, id);
write_byte(id);
write_string(iTeam);
message_end();
return 1;
}
ColorSelection(iIndex, iType, Color:Type)
{
switch (Type)
{
case 4:
{
new var1 = TeamName;
return Team_Info(iIndex, iType, var1[0][0][var1]);
}
case 5:
{
return Team_Info(iIndex, iType, TeamName[1][0]);
}
case 6:
{
return Team_Info(iIndex, iType, TeamName[2][0]);
}
default:
{
return 0;
}
}
}
FindPlayer()
{
static i;
i = -1;
while (get_maxplayers() >= i)
{
i += 1;
if (is_user_connected(i))
{
return i;
}
}
return -1;
}
get_admin_name(id, String:name[], len)
{
if (is_hiden_admin(id))
{
get_hidenadmin_name(id, name, len);
}
else
{
get_user_name(id, name, len);
}
return 0;
}
public plugin_init()
{
register_plugin("Chat PRO", "2.0", "MrHellish");
register_clcmd("say", "hook_say", -1, "", -1, MaxClients);
register_clcmd("say_team", "hook_sayteam", -1, "", -1, MaxClients);
register_concmd("amx_psay", "psayCmd", 8, "<name | #userid> <text>", -1, MaxClients);
register_concmd("amx_psay-", "psaylastCmd", 8, "<name | #userid> <text>", -1, MaxClients);
register_concmd("amx_say", "sayCmd", 8, "<text>", -1, MaxClients);
register_concmd("amx_chat", "chatCmd", 256, "<text>", -1, MaxClients);
register_concmd("amx_hud", "hudCmd", 8, "<text>", -1, MaxClients);
register_concmd("amx_csay", "hudCmd", 8, "<text>", -1, MaxClients);
register_concmd("amx_tsay", "hudCmd", 8, "<text>", -1, MaxClients);
register_concmd("amx_reloadpref", "reload_ini", 2048, "", -1, MaxClients);
LoadPrefixes();
return 0;
}
public LoadPrefixes()
{
!!! Removed Phi
g_prefix = TrieCreate();
new szPrefixesFile[128];
get_localinfo("amxx_configsdir", szPrefixesFile, 127);
add(szPrefixesFile, 127, "/prefixes.ini", 0);
new iFile = fopen(szPrefixesFile, "rt", MaxClients, "GAME");
if (!iFile)
{
return 0;
}
new szDatas[1024];
new szName[32];
new szPrefix[32];
while (!feof(iFile))
{
if (!szDatas[0] || (szDatas[0] == 47 && szDatas[1] == 47))
{
}
}
fclose(iFile);
return 0;
}
public reload_ini(id, level, cid)
{
if (!cmd_access(id, level, cid, 1, false))
{
return 1;
}
LoadPrefixes();
return 1;
}
public plugin_precache()
{
precache_sound("beep.wav");
return 0;
}
public hook_say(id)
{
static args[256];
read_args(args, 256);
remove_quotes(args);
return FormatMsg(id, "", 0);
}
public hook_sayteam(id)
{
static args[256];
read_args(args, 256);
remove_quotes(args);
return FormatMsg(id, "", 1);
}
public chatCmd(id, level, cid)
{
if (!cmd_access(id, level, cid, 2, false))
{
return 1;
}
new args[256];
read_args(args, 256);
remove_quotes(args);
return execChat(id, args, "@", 1);
}
public hudCmd(id, level, cid)
{
if (!cmd_access(id, level, cid, 2, false))
{
return 1;
}
new args[256];
read_args(args, 256);
remove_quotes(args);
return execChat(id, args, "@", 0);
}
public execChat(id, String:args[], String:c[], msgtype)
{
new msg[256];
formatex(msg, 256, "%s%s", c, args);
FormatMsg(id, msg, msgtype);
return 1;
}
public psaylastCmd(id, level, cid)
{
if (!cmd_access(id, level, cid, 2, false))
{
return 1;
}
new args[256];
read_args(args, 256);
return psayAction(id, args, true);
}
public psayCmd(id, level, cid, last)
{
if (!cmd_access(id, level, cid, 3, false))
{
return 1;
}
new args[256];
read_args(args, 256);
return psayAction(id, args, false);
}
public psayAction(id, String:args[], bool:last)
{
!!! Removed Phi
new username[33];
new msg[256];
if (!last)
{
argbreak(args, username, 33, msg, 256);
remove_quotes(username);
}
else
{
formatex(msg, 256, args);
}
if (!strlen(msg) || equal(msg, " ", 0))
{
return 1;
}
if (last && last_target[id][0][0])
{
target = last_target[id][0][0];
}
else
{
new var3 = cmd_target(id, username, 0);
last_target[id] = var3;
target = var3;
}
if (!target)
{
return 1;
}
get_user_name(target, username, 32);
new name[33];
get_admin_name(id, name, 32);
ColorChat(target, Color:4, "\3(\1%s\3)\1 %s : %s", username, name, msg);
if (id != target)
{
ColorChat(id, Color:4, "\3(\1%s\3)\1 %s : %s", username, name, msg);
}
console_print(id, "* [ChatPro] Message is sent successfully");
return 1;
}
public sayCmd(id, level, cid)
{
!!! Removed Phi
if (!cmd_access(id, level, cid, 2, false))
{
return 1;
}
if (!strlen(args) || equal(args, " ", 0))
{
return 1;
}
get_admin_name(id, name, 32);
ColorChat(0, Color:4, "\3(\1%s\3)\1 %s : %s", "ALL", name, args);
console_print(id, "* [ChatPro] Message is sent successfully");
return 1;
}
public uncount(id)
{
msgCounts[id]--;
return 0;
}
public unblockchat(id)
{
blocked[id + -7352659] = 0;
return 0;
}
FormatMsg(id, args[256], msgtype)
{
!!! Removed Phi
if (blocked[id][0][0])
{
remove_task(id + 7352659, 0);
set_task(3.00, "unblockchat", id + 7352659, "", 0, "", 0);
console_print(id, "** Stop flooding the server! **");
return 1;
}
set_task(1.00, "uncount", id, "", 0, "", 0);
new var7 = msgCounts[id];
var7++;
if (3 <= var7[0][0])
{
blocked[id] = 1;
console_print(id, "** Stop flooding the server! **");
return 1;
}
new i = 0;
while (i < 2)
{
if (equali(args, Hide_Texts[i][0][0], strlen(Hide_Texts[i][0][0])))
{
return 2;
}
i++;
}
replace_all(args, 256, "%", "%");
new userflags = get_user_flags(id, 0);
new chattype = GetChatType(userflags, args, msgtype);
switch (chattype)
{
case 1:
{
replace(args, 256, "@", "");
}
case 2:
{
replace(args, 256, "@@", "");
}
case 3:
{
replace(args, 256, "@", "");
}
case 4:
{
replace(args, 256, "#", "");
}
case 5:
{
replace(args, 256, "!!", "");
}
case 6:
{
replace(args, 256, "!!- ", "");
}
case 7:
{
replace(args, 256, "$", "");
}
default:
{
}
}
if (!strlen(args))
{
return 2;
}
if (chattype == 4)
{
client_cmd(id, args);
return 2;
}
if (chattype == 5)
{
psayAction(id, args, false);
return 2;
}
if (chattype == 6)
{
psayAction(id, args, true);
return 2;
}
new name[32];
get_admin_name(id, name, 31);
if (!chattype)
{
get_user_name(id, name, 31);
FormatPoke(id, args, msgtype);
new szPrefix[32];
if (TrieGetString(g_prefix, name, szPrefix, 31, 0))
{
new var1;
if (msgtype)
{
new var8 = Heap_4;
var8[0] = 1988;
var1 = teams[get_user_team(id, var8, 0)][0][0];
}
else
{
var1 = 7324;
}
new var2;
if (is_user_alive(id))
{
var2 = 7292;
}
else
{
var2 = 7296;
}
format(args, 256, "\1%s%s(\4%s\1) \3%s\1: %s", var2, var1, szPrefix, name, args);
}
else
{
new var3;
if (msgtype)
{
new var9 = Heap_4;
var9[0] = 1988;
var3 = teams[get_user_team(id, var9, 0)][0][0];
}
else
{
var3 = 7420;
}
new var4;
if (is_user_alive(id))
{
var4 = 7388;
}
else
{
var4 = 7392;
}
format(args, 256, "\1%s%s\3 %s\1: %s", var4, var3, name, args);
}
}
if (chattype == 7)
{
get_admin_name(id, name, 31);
FormatPoke(id, args, msgtype);
new var5;
if (msgtype)
{
new var10 = Heap_4;
var10[0] = 1988;
var5 = teams[get_user_team(id, var10, 0)][0][0];
}
else
{
var5 = 7516;
}
new var6;
if (is_user_alive(id))
{
var6 = 7484;
}
else
{
var6 = 7488;
}
format(args, 256, "\1%s%s\3 %s\1: %s", var6, var5, name, args);
}
static prefix[32];
if (chattype == 1)
{
if (userflags & 8)
{
new var11 = prefix;
var11[0] = 7648;
}
else
{
if (userflags & 256)
{
new var12 = prefix;
var12[0] = 7672;
}
new var13 = prefix;
var13[0] = 7688;
}
format(args, 256, "\1(\4%s\1) %s\1: %s", prefix, name, args);
}
if (chattype == 2)
{
if (userflags & 8)
{
new var14 = prefix;
var14[0] = 7780;
}
else
{
if (userflags & 256)
{
new var15 = prefix;
var15[0] = 7804;
}
new var16 = prefix;
var16[0] = 7820;
}
format(args, 256, "\1(\3%s\1) %s\1: %s", prefix, name, args);
}
if (chattype == 3)
{
format(args, 256, "%s: %s", name, args);
}
ShowMsg(id, args, chattype, msgtype);
return 2;
}
ShowMsg(sender, String:args[], chattype, msgtype)
{
!!! Removed Phi
static len;
static players[32];
get_players("", len, "", "");
new i = 0;
while (i < len)
{
switch (chattype)
{
case 0:
{
if (CanPoke(sender, players[i][0][0], msgtype))
{
new var4 = Heap_4;
var4[0] = 1988;
ColorChat(players[i][0][0], colors[get_user_team(sender, var4, 0)][0][0], args);
i++;
}
i++;
}
case 1:
{
if (sender != players[i][0][0] && get_user_flags(players[i][0][0], 0) & 256)
{
ColorChat(players[i][0][0], Color:2, args);
i++;
}
i++;
}
case 2:
{
if (sender != players[i][0][0] && get_user_flags(players[i][0][0], 0) & 8)
{
ColorChat(players[i][0][0], Color:5, args);
i++;
}
i++;
}
case 3:
{
static Float:x = 0.01/*1008981770*/;
static Float:y = 0.60/*1058642330*/;
set_hudmessage(255, 255, 255, x, y, 0, 6.00, 6.00, 0.50, 0.15, -1);
show_hudmessage(0, args);
client_print(0, print_console, "* (HUD) %s", args);
y = y - 0.03;
if (y <= 0.60 - 0.03/*1022739087*/ * 3)
{
y = 0.60/*1058642330*/;
static cleantext[256];
formatex(cleantext, 255, args);
replace_all(cleantext, 255, "\1", "");
replace_all(cleantext, 255, "\3", "");
replace_all(cleantext, 255, "\4", "");
log_message("\"* [ChatPro]<%d><STEAM_ID_LAN><>\" say \"%s\"", get_user_userid(sender), cleantext);
return 0;
}
static cleantext[256];
formatex(cleantext, 255, args);
replace_all(cleantext, 255, "\1", "");
replace_all(cleantext, 255, "\3", "");
replace_all(cleantext, 255, "\4", "");
log_message("\"* [ChatPro]<%d><STEAM_ID_LAN><>\" say \"%s\"", get_user_userid(sender), cleantext);
return 0;
}
case 7:
{
if (CanPoke(sender, players[i][0][0], msgtype))
{
new var3 = Heap_4;
var3[0] = 1988;
ColorChat(players[i][0][0], colors[get_user_team(sender, var3, 0)][0][0], args);
i++;
}
i++;
}
default:
{
i++;
}
}
i++;
}
static cleantext[256];
formatex(cleantext, 255, args);
replace_all(cleantext, 255, "\1", "");
replace_all(cleantext, 255, "\3", "");
replace_all(cleantext, 255, "\4", "");
log_message("\"* [ChatPro]<%d><STEAM_ID_LAN><>\" say \"%s\"", get_user_userid(sender), cleantext);
return 0;
}
GetChatType(userflags, String:args[], msgtype)
{
!!! Removed Phi
if (msgtype && equal(args, "@", 1))
{
if (userflags & 8)
{
return 3;
}
}
if (msgtype == 1 && equal(args, "@@", 2))
{
return 2;
}
if (msgtype == 1 && equal(args, "@", 1))
{
return 1;
}
if (equal(args, "$", 1))
{
return 7;
}
if (equal(args, "#", 1))
{
return 4;
}
if (equal(args, "!!- ", 4))
{
return 6;
}
if (equal(args, "!!", 2))
{
return 5;
}
return 0;
}
FormatPoke(sender, args[256], msgtype)
{
!!! Removed Phi
static text[256];
new var2 = args;
new var3 = text;
var3[0] = var2;
while (strlen(text))
{
if (strlen(temp) < 3 || temp[0][0] == 33)
{
}
}
return 0;
}
CanPoke(sender, receiver, msgtype)
{
!!! Removed Phi
new a = is_user_alive(sender);
new b = is_user_alive(receiver);
if (!get_user_flags(receiver, 0) & 8)
{
if ((a && b) || (!a && !b))
{
return 0;
}
if (msgtype == 1)
{
new var4 = Heap_4;
var4[0] = 1988;
new var5 = Heap_4;
var5[0] = 1988;
if (get_user_team(receiver, var5, 0) != get_user_team(sender, var4, 0))
{
return 0;
}
}
}
return 1;
}
FindPlayerByName(String:args[])
{
!!! Removed Phi
new players[32];
new len = 0;
new target = 0;
get_players(players, len, "", "");
new i = 0;
while (i < len)
{
static name[33];
get_user_name(players[i], name, 33);
if (containi("", args) != -1)
{
if (target)
{
return 0;
}
target = players[i];
i++;
}
i++;
}
return target;
}
-
bustA
Извън линия - Потребител
- Мнения: 264
- Регистриран на: 20 Юни 2020, 11:47
- Се отблагодари: 42 пъти
- Получена благодарност: 27 пъти
- Обратна връзка:
amxx to sma - конвертиране
Тоест кода не е целия така ли да разбирам
Cs-Plovdiv.com - Aim Attack - 93.123.16.4:27022
-
illusion
Извън линия - Developer
- Мнения: 1810
- Регистриран на: 27 Ное 2016, 17:47
- Местоположение: CraftVision
- Се отблагодари: 151 пъти
- Получена благодарност: 371 пъти
- Обратна връзка:
-
bustA
Извън линия - Потребител
- Мнения: 264
- Регистриран на: 20 Юни 2020, 11:47
- Се отблагодари: 42 пъти
- Получена благодарност: 27 пъти
- Обратна връзка:
amxx to sma - конвертиране
Някой подобен плъгин, който ще ми върши същата работа да ми предложиш
Cs-Plovdiv.com - Aim Attack - 93.123.16.4:27022
-
bustA
Извън линия - Потребител
- Мнения: 264
- Регистриран на: 20 Юни 2020, 11:47
- Се отблагодари: 42 пъти
- Получена благодарност: 27 пъти
- Обратна връзка:
amxx to sma - конвертиране
Мерси. Не видях дали има глобален админ чат който не е видим VIP потребители, и ако няма найстена, евентуално може ли да се направи say_team @@съобщението
Cs-Plovdiv.com - Aim Attack - 93.123.16.4:27022
-
zolfeca
Извън линия - Администратор
- Мнения: 417
- Регистриран на: 10 Окт 2016, 23:48
- Се отблагодари: 24 пъти
- Получена благодарност: 92 пъти
amxx to sma - конвертиране
Код за потвърждение: Избери целия код
Конзолска команда за администраторския чат (say_team @).
amx_asay <message> - (Admin Chat) Изпраща съобщение до всички администратори.
-
bustA
Извън линия - Потребител
- Мнения: 264
- Регистриран на: 20 Юни 2020, 11:47
- Се отблагодари: 42 пъти
- Получена благодарност: 27 пъти
- Обратна връзка:
amxx to sma - конвертиране
Сега видях, VIP чата бил с !
Cs-Plovdiv.com - Aim Attack - 93.123.16.4:27022
-
- Подобни теми
- Отговори
- Преглеждания
- Последно мнение
-
- 2 Отговори
- 2281 Преглеждания
-
Последно мнение от kvoetvae
-
- 1 Отговори
- 4205 Преглеждания
-
Последно мнение от summertime vibes
-
- 0 Отговори
- 1609 Преглеждания
-
Последно мнение от Just
-
- 0 Отговори
- 1302 Преглеждания
-
Последно мнение от SmirnoffBG
-
- 13 Отговори
- 4858 Преглеждания
-
Последно мнение от JackEyedJones
-
- 3 Отговори
- 231 Преглеждания
-
Последно мнение от EMOTO2.COM
-
- 2 Отговори
- 1278 Преглеждания
-
Последно мнение от YankoNL
Кой е на линия
Потребители разглеждащи този форум: Bing [Bot] и 12 госта