Gal kas galit patvarkyti klaida
Posted: 2016 Oct 17 15:49
Gal kas galit patvarkyti koda? nes neleidzia compile.
Code: Select all
#include <amxmodx> #pragma semicolon 1 enum Color { NORMAL = 1, GREEN, TEAM_COLOR, GREY, RED, BLUE,}; new TeamName[][] = { "", "TERRORIST", "CT", "SPECTATOR"}; // start cstrike.incenum CsTeams { CS_TEAM_UNASSIGNED = 0, CS_TEAM_T = 1, CS_TEAM_CT = 2, CS_TEAM_SPECTATOR = 3}; native CsTeams:cs_get_user_team(index);// end cstrike.inc // edit here #define MAX_GROUPS 2 new g_Rang[MAX_GROUPS][] = { "[Savininkas]", "[Priziuretojas]" "[S.ADMIN]" "[ADMIN]" "[VIP]"}; new g_RangFlag[MAX_GROUPS][] = { "abcdefghijklmnopqrstu", "abcdefhijnout" "abcdefijopt" "bcdejpt" "bit"}; // end edit here new g_RangFlag_Value[MAX_GROUPS];new cvar_type, gType[2][50]; public plugin_init() { register_plugin("RangAdminChat", "0.7", "Ex3cuTioN aka Arion HD."); register_clcmd("say","hook_say"); register_clcmd("say_team","hook_say2"); for(new i = 0; i < MAX_GROUPS; i++) g_RangFlag_Value[i] = read_flags(g_Rang[i]); cvar_type = register_cvar("amx_rang_chat","3"); switch(get_pcvar_num(cvar_type)) { case 1 : { gType[0] = "^x04*%s*^x03%s^x01 : %s"; gType[1] = "^x04*%s*^x01(%s)^x03 %s^x01 : %s"; } case 2 : { gType[0] = "^x04(%s)^x03%s^x01 : %s"; gType[1] = "^x04(%s)^x01(%s)^x03 %s^x01 : %s"; } case 3 : { gType[0] = "^x04[%s]^x03 %s^x01 : %s"; gType[1] = "^x04[%s]^x01(%s)^x03 %s^x01 : %s"; } }} public hook_say(id) { if(is_user_bot(id)) return PLUGIN_CONTINUE; static chat[192]; read_args(chat, sizeof(chat) - 1); remove_quotes(chat); if(equali(chat,"")) return PLUGIN_CONTINUE; if(is_user_admin(id)) { new bool:hasRang = false; for(new i = 0; i < MAX_GROUPS; i++) { if(get_user_flags(id) == read_flags(g_RangFlag[i])) { switch(cs_get_user_team(id)) { case CS_TEAM_T : ColorChat(0, RED, gType[0], g_Rang[i], get_name(id), chat); case CS_TEAM_CT : ColorChat(0, BLUE, gType[0], g_Rang[i], get_name(id), chat); case CS_TEAM_SPECTATOR : ColorChat(0, GREY, gType[0], g_Rang[i], get_name(id), chat); } hasRang = true; } } if(!hasRang) get_team(id, chat); } else get_team(id, chat); return PLUGIN_HANDLED;} stock get_team(id, chat[]) { switch(cs_get_user_team(id)) { case CS_TEAM_T : ColorChat(0, RED, "%s%s^x01 : %s", is_user_alive(id) ? "" : "*DEAD*", get_name(id), chat); case CS_TEAM_CT : ColorChat(0, BLUE, "%s%s^x01 : %s", is_user_alive(id) ? "" : "*DEAD*", get_name(id), chat); case CS_TEAM_SPECTATOR : ColorChat(0, GREY, "*SPEC*%s^x01 : %s", get_name(id), chat); }} public hook_say2(id) { if(is_user_bot(id)) return PLUGIN_CONTINUE; static chat[192]; read_args(chat, sizeof(chat) - 1); remove_quotes(chat); if(equali(chat,"")) return PLUGIN_CONTINUE; new players[32], num; get_players(players, num, "c"); if(is_user_admin(id)) { new bool:hasRang = false; for(new i = 0; i < MAX_GROUPS; i++) { if(get_user_flags(id) == read_flags(g_RangFlag[i])) { for(new x = 0; x < num; x++) { if(get_user_team(players[x]) == get_user_team(id)) { switch(cs_get_user_team(id)) { case CS_TEAM_T : ColorChat(players[x], RED, gType[1], g_Rang[i], "Terrorist", get_name(id), chat); case CS_TEAM_CT : ColorChat(players[x], BLUE, gType[1], g_Rang[i], "Counter-Terrorist", get_name(id), chat); case CS_TEAM_SPECTATOR : ColorChat(players[x], GREY, gType[1], g_Rang[i], "Spectator", get_name(id), chat); } } } hasRang = true; } } if(!hasRang) get_team2(id, num, players, chat); } else get_team2(id, num, players, chat); return PLUGIN_HANDLED;} stock get_team2(id, num, players[], chat[]) { for(new x = 0; x < num; x++) { if(get_user_team(players[x]) == get_user_team(id)) { switch(cs_get_user_team(id)) { case CS_TEAM_T : ColorChat(players[x], RED, "^x01(Terrorist)^x03 %s^x01 : %s", get_name(id), chat); case CS_TEAM_CT : ColorChat(players[x], BLUE, "^x01(Counter-Terrorist)^x03 %s^x01 : %s", get_name(id), chat); case CS_TEAM_SPECTATOR : ColorChat(players[x], GREY, "^x01(Spectator)^x03 %s^x01 : %s", get_name(id), chat); } } }} ColorChat(id, Color:type, const msg[], {Float,Sql,Result,_}:...) { new message[256]; switch(type) { case NORMAL: // clients scr_concolor cvar color { message[0] = 0x01; } case GREEN: // Green { message[0] = 0x04; } default: // White, Red, Blue { message[0] = 0x03; } } vformat(message[1], 251, msg, 4); // Make sure message is not longer than 192 character. Will crash the server. message[192] = '^0'; new team, ColorChange, index, MSG_Type; if(id) { MSG_Type = MSG_ONE; index = id; } else { index = FindPlayer(); MSG_Type = MSG_ALL; } team = get_user_team(index); ColorChange = ColorSelection(index, MSG_Type, type); ShowColorMessage(index, MSG_Type, message); if(ColorChange) { Team_Info(index, MSG_Type, TeamName[team]); }} ShowColorMessage(id, type, message[]) { static bool:saytext_used; static get_user_msgid_saytext; if(!saytext_used) { get_user_msgid_saytext = get_user_msgid("SayText"); saytext_used = true; } message_begin(type, get_user_msgid_saytext, _, id); write_byte(id); write_string(message); message_end(); } Team_Info(id, type, team[]) { static bool:teaminfo_used; static get_user_msgid_teaminfo; if(!teaminfo_used) { get_user_msgid_teaminfo = get_user_msgid("TeamInfo"); teaminfo_used = true; } message_begin(type, get_user_msgid_teaminfo, _, id); write_byte(id); write_string(team); message_end(); return 1;} ColorSelection(index, type, Color:Type) { switch(Type) { case RED: { return Team_Info(index, type, TeamName[1]); } case BLUE: { return Team_Info(index, type, TeamName[2]); } case GREY: { return Team_Info(index, type, TeamName[0]); } } return 0;} FindPlayer() { new i = -1; while(i <= get_maxplayers()) { if(is_user_connected(++i)) return i; } return -1;} stock get_name (id) { new name[32]; get_user_name(id, name, 31); return name;} // start amxmisc.incstock is_user_admin(id) { new __flags=get_user_flags(id); return (__flags>0 && !(__flags&ADMIN_USER));}// end amxmisc.inc