Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <amxmisc>
- #include <fakemeta>
- #include <engine >
- #include <fun>
- #include <fvault>
- #include <dhudmessage>
- #include <ColorChat>
- #define maxlevels 25
- #define PLUGIN "Patente Magnatas"
- #define VERSION "1.3"
- #define AUTHOR "Feeh SK' [CLAN MAGNATAS]"
- //RANK-XP
- new const db_save[] = "magnatas_xp_rank"
- new level[33], xp[33], message[192], g_status_sync
- new sayText, teamInfo, maxPlayers, g_AdminListen, g_AdminListenFlag
- new strName[191], strText[191], alive[11], cvars[3], g_name[32]
- new give[33],iTarget[33]
- new const xp_num[maxlevels+1] = { 0, 50, 130, 220, 300, 450, 600, 850, 1200, 1800, 2300, 2700, 3500, 4500, 5500, 6500, 7500, 8000, 9500, 10000, 16000, 20000, 25000, 30000, 50000 }
- new const g_szTag[][] = {
- "",
- "DONO",
- "GIRL",
- "VIP",
- "MASTER",
- "ADMIN",
- "SUPREMO"
- }
- new const ranks_nomes[maxlevels][] =
- {
- "Novato",
- "Recruta",
- "Soldado",
- "SoldadoIII",
- "SoldadoII",
- "SoldadoI",
- "Soldado Raso",
- "Especialista",
- "Especialista Tecnico",
- "Patrulheiro",
- "Cabo",
- "Lider de Tiro",
- "Sargento",
- "Sargento de Apoio",
- "Sargento Mestre",
- "Sargento Maior",
- "Intendente",
- "Aspirante",
- "Gurreiro Das Trevas",
- "CAPITAO",
- "MAJOR",
- "TENENTE CORONEL",
- "CORONEL",
- "GENERAL",
- "MARECHAL"
- }
- new cvar_xp_normal, cvar_xp_hs, cvar_xp_faca, cvar_xp_he, xp_salvar_tipo
- new SOUND_RANK [] = "mgtrank/promotion_rank.wav";
- public plugin_init()
- {
- register_plugin(PLUGIN, VERSION, AUTHOR);
- g_AdminListen = register_cvar("amx_listen", "1")
- g_AdminListenFlag = register_cvar("amx_listen_flag", "c")
- // Cvars do sistema de pontos
- xp_salvar_tipo = register_cvar("pontos_salvar_tipo", "3") // 1 - IP || 2 - Nick || 3 - SteamID e sXe Mode
- cvar_xp_normal = register_cvar("xp_matar_normal", "1")
- cvar_xp_hs = register_cvar("xp_matar_hs", "4")
- cvar_xp_faca = register_cvar("xp_matar_faca", "10")
- cvar_xp_he = register_cvar("xp_matar_he", "8")
- register_event("StatusValue", "showStatus", "be", "1=2", "2!0")
- register_event("StatusValue", "hideStatus", "be", "1=1", "2=0")
- register_clcmd("say", "hook_say")
- register_clcmd("say_team", "hook_teamsay")
- register_say("patente", "xpmenu")
- register_say("level", "xpmenu")
- register_say("xp", "xpmenu")
- register_concmd("quantia_xp", "cmdTyped", ADMIN_RCON);
- sayText = get_user_msgid("SayText")
- teamInfo = get_user_msgid("TeamInfo")
- maxPlayers = get_maxplayers()
- g_status_sync = CreateHudSyncObj()
- register_message(sayText, "avoid_duplicated")
- register_event("DeathMsg", "event_deathmsg", "a", "1");
- set_task(1.0, "hud_status", 0, _, _, "b")
- }
- public cmdCheckLevel(id)
- {
- new iMenu = menu_create("\yMAGNATAS \d- \wEscolha o jogador\r:", "checklevel_menu_handler")
- new iPlayers[32], iNum, iTarget;
- new UserName[34], szTempID[10];
- get_players(iPlayers, iNum);
- for(new i; i < iNum; i++)
- {
- iTarget = iPlayers[i];
- if(!is_user_connected(iTarget))
- continue;
- get_user_name(iTarget, UserName, sizeof UserName - 1);
- num_to_str(iTarget, szTempID, charsmax(szTempID));
- menu_additem(iMenu, UserName, szTempID);
- }
- menu_setprop(iMenu, MPROP_NEXTNAME, "Proximo");
- menu_setprop(iMenu, MPROP_BACKNAME, "Voltar");
- menu_setprop(iMenu, MPROP_EXITNAME, "Sair");
- menu_display(id, iMenu, 0);
- }
- public checklevel_menu_handler(id, iMenu, Item)
- {
- if(Item == MENU_EXIT)
- {
- menu_destroy(iMenu);
- return PLUGIN_HANDLED;
- }
- new iData[6], iName[64];
- new access, callback;
- menu_item_getinfo(iMenu, Item, access, iData, charsmax(iData), iName, charsmax(iName), callback);
- new target = str_to_num(iData);
- if(!is_user_connected(target))
- {
- ColorChat(id, GREEN, "^x04|MAGNATAS|^x01 O jogador que escolheu nao esta no servidor")
- menu_destroy(iMenu);
- cmdCheckLevel(id);
- return PLUGIN_HANDLED;
- }
- menu_destroy(iMenu);
- new szText[256], player_name[32];
- get_user_name(target, player_name, 31);
- if(maxlevels == level[target]+1)
- formatex(szText, charsmax(szText), "<html><head></head><body><br/>Nome: %s<br/>XP: %d/%d<br/>Level: %d/%d<br/>Patente: %s<br/>", player_name, xp[target], level[target]+1, maxlevels, ranks_nomes[level[target]]);
- else
- formatex(szText, charsmax(szText), "<html><head></head><body><br/>Nome: %s<br/>XP: %d/%d<br/>Level: %d/%d<br/>Patente: %s<br/>Prox Patente: %s</body></html>", player_name, xp[target], xp_num[level[target]+1], level[target]+1, maxlevels, ranks_nomes[level[target]], ranks_nomes[level[target]+1]);
- show_motd(id, szText, "|MAGNATAS| Sistema de Level");
- cmdCheckLevel(id);
- return PLUGIN_HANDLED;
- }
- /*----------------------------------------------------------------------------------------------------------------
- -HUD DO JOGO
- ----------------------------------------------------------------------------------------------------------------*/
- public hud_status(id)
- {
- if(!is_user_alive(id) || !is_user_connected(id) )
- return;
- if(level[id] >= maxlevels)
- {
- static r, g, b; r = random_num(0, 255), g = random_num(0, 255), b = random_num(0, 255);
- set_hudmessage(r, g, b, 0.80, -1.0, 0, 1.0, 1.1, 0.0, 0.0, -1)
- show_hudmessage(id,"» Level: %d/%d^n» Rank: %s^n» XP: %d/%d", level[id], maxlevels, ranks_nomes[level[id]], xp[id], xp[id])
- }
- else
- {
- set_hudmessage(255, 255, 255, 0.80, -1.0, 0, 1.0, 1.1, 0.0, 0.0, -1)
- show_hudmessage(id,"» Level: %d/%d^n» Rank: %s^n» XP: %d/%d", level[id], maxlevels, ranks_nomes[level[id]], xp[id], xp_num[level[id]])
- }
- }
- /*----------------------------------------------------------------------------------------------------------------
- -doar xp
- ----------------------------------------------------------------------------------------------------------------*/
- public xpmenu(id)
- {
- new name[500]
- formatex(name, 499, "\r|\dMAGNATAS\r| \wMenu Rank/Patente/XP^n^n\wXP\d: \r%d \y- \wPatente\d: \r%s \y- \wLevel\d: \r%d ^n\wNecessario\d: \r%d \wde XP para ser\d: \r%s", xp[id], ranks_nomes[level[id]], level[id]+1, xp_num[level[id]+1], ranks_nomes[level[id]+1])
- new menu = menu_create(name, "menuplayer")
- menu_additem(menu, "Doar Xp", "1")
- menu_additem(menu, "Ver level/Rank/Patente de um Jogador", "2")
- menu_setprop(menu, MPROP_EXITNAME, "Sair")
- menu_display(id, menu)
- return PLUGIN_HANDLED
- }
- public menuplayer(id, menu, item)
- {
- if(item == MENU_EXIT)
- return PLUGIN_HANDLED
- switch(item)
- {
- case 0:
- {
- donoxp(id)
- }
- case 1:
- {
- cmdCheckLevel(id)
- }
- }
- return PLUGIN_HANDLED
- }
- /*----------------------------------------------------------------------------------------------------------------
- -DOAR XP
- ----------------------------------------------------------------------------------------------------------------*/
- public donoxp(id)
- {
- new iMenu = menu_create("|MAGNATAS| \wEscolha o jogador que deseja doar/tirar XP", "rankmenu_menu_handler")
- if(!(get_user_flags(id) & ADMIN_LEVEL_A))
- {
- ColorChat(id, GREEN, "^4|MAGNATAS| ^1Voce nao tem acesso a esse comando!")
- client_cmd(id, "spk buttons/button2.wav")
- return PLUGIN_HANDLED;
- }
- menu_additem(iMenu, "Doar XP", "1");
- menu_additem(iMenu, "Tirar XP", "2");
- menu_setprop(iMenu, MPROP_EXITNAME, "Sair");
- menu_display(id, iMenu, 0);
- return PLUGIN_HANDLED;
- }
- public rankmenu_menu_handler(id, iMenu, Item)
- {
- if(Item == MENU_EXIT)
- {
- menu_destroy(iMenu);
- return PLUGIN_HANDLED;
- }
- new iData[6], iName[64];
- new access, callback;
- menu_item_getinfo(iMenu, Item, access, iData, charsmax(iData), iName, charsmax(iName), callback);
- give[id] = str_to_num(iData);
- GiveTakeMenu(id);
- return PLUGIN_HANDLED;
- }
- public GiveTakeMenu(id)
- {
- static szText[64]
- formatex(szText, 63, "%s XP", give[id] == 1 ? "Doar" : "Tirar")
- new iMenu = menu_create(szText, "givetake_menu_handler")
- new iPlayers[32], iNum, iTarget;
- new UserName[34], szTempID[10];
- get_players(iPlayers, iNum);
- for(new i; i < iNum; i++)
- {
- iTarget = iPlayers[i];
- if(!is_user_connected(iTarget))
- continue;
- get_user_name(iTarget, UserName, sizeof UserName - 1);
- num_to_str(iTarget, szTempID, charsmax(szTempID));
- menu_additem(iMenu, UserName, szTempID);
- }
- menu_setprop(iMenu, MPROP_NEXTNAME, "Proximo");
- menu_setprop(iMenu, MPROP_BACKNAME, "Voltar");
- menu_setprop(iMenu, MPROP_EXITNAME, "Sair");
- menu_display(id, iMenu, 0);
- }
- public givetake_menu_handler(id, iMenu, Item)
- {
- if(Item == MENU_EXIT)
- {
- menu_destroy(iMenu);
- return PLUGIN_HANDLED;
- }
- new iData[6], iName[64];
- new access, callback;
- menu_item_getinfo(iMenu, Item, access, iData, charsmax(iData), iName, charsmax(iName), callback);
- iTarget[id] = str_to_num(iData);
- if(!is_user_connected(iTarget[id]))
- {
- iTarget[id] = 0
- ColorChat(id, GREEN, "|MAGNATAS|^x01 O jogador que escolheu nao esta no servidor.")
- return PLUGIN_HANDLED;
- }
- menu_destroy(iMenu);
- client_cmd(id, "messagemode quantia_xp");
- return PLUGIN_HANDLED;
- }
- public cmdTyped(id, rank, cid)
- {
- if(!cmd_access(id, rank, cid, 1))
- return PLUGIN_HANDLED;
- if(!iTarget[id] || give[id] <= 0)
- return PLUGIN_HANDLED;
- if(!is_user_connected(iTarget[id]))
- {
- ColorChat(id, GREEN, "^x04|MAGNATAS|^x01 O jogador que escolheu nao esta no servidor.")
- return PLUGIN_HANDLED;
- }
- new amount[30]; read_args(amount, charsmax(amount)); remove_quotes(amount)
- new ammount = str_to_num(amount)
- new szNum = str_to_num(amount)
- new szName[32], PlayerName[32];
- get_user_name(id, szName, 31)
- get_user_name(iTarget[id], PlayerName, 31)
- if(give[id] == 1)
- {
- if(xp[id] >= ammount)
- {
- ColorChat(id,GREEN,"^x04|MAGNATAS| ^1Vc nao tem XP Suficiente")
- return PLUGIN_HANDLED
- }
- if (szNum <= 0)
- {
- set_dhudmessage(255, 0, 0, 0.02, 0.17, 2, 0.3, 2.0, 0.07, 0.07)
- show_dhudmessage(id, "Quantia invalida.")
- ColorChat(id,GREEN, "^x04|MAGNATAS| ^1Quantia Invalida.")
- return PLUGIN_HANDLED
- }
- ColorChat(0, GREEN, "^4|MAGNATAS| ^1Admin ^x03%s ^1deu ^x04%d ^x01xp para ^x03%s^x01.", szName, ammount, PlayerName)
- }
- new currentlevel = 0;
- while(currentlevel < (maxlevels - 1))
- {
- if(xp[iTarget[id]] >= xp_num[currentlevel + 1])
- ++currentlevel;
- else
- break;
- }
- level[iTarget[id]] = currentlevel;
- iTarget[id] = 0;
- GiveTakeMenu(id);
- Save( id );
- return PLUGIN_HANDLED;
- }
- public client_authorized( id )
- {
- Load( id );
- }
- public client_disconnect( id )
- {
- Save( id );
- }
- public client_putinserver(id)
- {
- new currentlevel = 0;
- while(currentlevel < (maxlevels - 1))
- {
- if(xp[id] >= xp_num[currentlevel + 1])
- ++currentlevel;
- else
- break;
- }
- level[id] = currentlevel;
- }
- /*----------------------------------------------------------------------------------------------------------------
- -CARREGAR DADOS
- ----------------------------------------------------------------------------------------------------------------*/
- public Load(id)
- {
- new auth[40], data[50], x1[10], x2[10]
- switch(get_pcvar_num(xp_salvar_tipo))
- {
- case 1: get_user_ip(id, auth, charsmax(auth), 1)
- case 2: get_user_name(id, auth, charsmax(auth))
- case 3: get_user_authid(id, auth, charsmax(auth))
- }
- fvault_get_data(db_save, auth, data, charsmax(data))
- parse(data, x1, charsmax(x1), x2, charsmax(x2))
- level[id] = str_to_num(x1)
- xp[id] = str_to_num(x2)
- check_level(id, 0)
- }
- /*----------------------------------------------------------------------------------------------------------------
- -SALVAR PONTOS
- ----------------------------------------------------------------------------------------------------------------*/
- public Save(id)
- {
- if(!is_user_connected(id)) return PLUGIN_HANDLED;
- new auth[40], data[50]
- switch(get_pcvar_num(xp_salvar_tipo))
- {
- case 1: get_user_ip(id, auth, charsmax(auth), 1)
- case 2: get_user_name(id, auth, charsmax(auth))
- case 3: get_user_authid(id, auth, charsmax(auth))
- }
- formatex(data, charsmax(data), "%d %d", level[id], xp[id])
- fvault_pset_data(db_save, auth, data)
- return PLUGIN_HANDLED;
- }
- public avoid_duplicated(msgId, msgDest, receiver)
- return PLUGIN_HANDLED;
- /*----------------------------------------------------------------------------------------------------------------
- -PATENTE NO SAY
- ----------------------------------------------------------------------------------------------------------------*/
- public hook_say(id)
- {
- read_args(message, 191)
- remove_quotes(message)
- if(message[0] == '@' || message[0] == '/' || message[0] == '!' || message[0] == '#' || message[0] == '$' || equal(message, ""))
- return PLUGIN_CONTINUE
- get_user_name(id, g_name, charsmax(g_name))
- new isAlive
- new admin = 0, iFlags = get_user_flags(id)
- if(iFlags & ADMIN_LEVEL_A) admin = 1 //dono
- else if(iFlags & ADMIN_LEVEL_B) admin = 2 //girl
- else if(iFlags & ADMIN_LEVEL_C) admin = 3 //vip
- else if(iFlags & ADMIN_LEVEL_D) admin = 4 //master
- else if(iFlags & ADMIN_LEVEL_G) admin= 5 //admin
- else if(iFlags & ADMIN_LEVEL_F) admin = 8 //supremo
- if(is_user_alive(id))
- {
- isAlive = 1
- alive = "^x01"
- }
- else
- {
- isAlive = 0
- alive = "^x01*MORTO* "
- }
- static color[10]
- if(admin)
- {
- get_user_team(id, color, 9)
- format(strName, 191, "%s^x04[%s] ^x01[^x04%s^x01] ^x03%s", alive, g_szTag[admin], ranks_nomes[level[id]], g_name)
- format(strText, 191, "^x04%s", message)
- }
- else
- {
- get_user_name(id, g_name, 32)
- get_user_team(id, color, 9)
- format(strName, 191, "%s^x01[^x04%s^x01] ^x03%s", alive, ranks_nomes[level[id]], g_name)
- format(strText, 191, "%s", message)
- }
- format(message, 191, "%s^x01: %s", strName, strText)
- sendMessage(color, isAlive)// Sends the colored message
- return PLUGIN_CONTINUE;
- }
- public hook_teamsay(id)
- {
- read_args(message, 191)
- remove_quotes(message)
- if(message[0] == '@' || message[0] == '/' || message[0] == '!' || message[0] == '#' || message[0] == '$' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands
- return PLUGIN_CONTINUE
- new playerTeam = get_user_team(id)
- new playerTeamName[19]
- switch(playerTeam) // Team names which appear on team-only messages
- {
- case 1: copy(playerTeamName, 3, "TRs")
- case 2: copy(playerTeamName, 3, "CTs")
- default: copy(playerTeamName, 9, "Spectador")
- }
- get_user_name(id, g_name, charsmax(g_name))
- new isAlive
- new admin = 0, iFlags = get_user_flags(id)
- if(iFlags & ADMIN_LEVEL_A) admin = 1 //dono
- else if(iFlags & ADMIN_LEVEL_B) admin = 2 //girl
- else if(iFlags & ADMIN_LEVEL_C) admin = 3 //vip
- else if(iFlags & ADMIN_LEVEL_D) admin = 4 //master
- else if(iFlags & ADMIN_LEVEL_G) admin= 5 //admin
- else if(iFlags & ADMIN_LEVEL_F) admin = 8 //supremo
- if(is_user_alive(id))
- {
- isAlive = 1
- alive = "^x01"
- }
- else
- {
- isAlive = 0
- alive = "^x01*MORTO* "
- }
- static color[10]
- if(admin)
- {
- get_user_team(id, color, 9)
- format(strName, 191, "%s(%s) ^x04[%s] ^x01[^x04%s^x01] ^x03%s", alive, playerTeamName, g_szTag[admin], ranks_nomes[level[id]], g_name)
- format(strText, 191, "^x04%s", message)
- }
- else
- {
- get_user_name(id, g_name, 32)
- get_user_team(id, color, 9);
- format(strName, 191, "%s(%s) ^x01[^x04%s^x01] ^x03%s", alive, playerTeamName, ranks_nomes[level[id]], g_name)
- format(strText, 191, "%s", message)
- }
- format(message, 191, "%s^x01: %s", strName, strText)
- sendTeamMessage(color, isAlive, playerTeam)
- return PLUGIN_CONTINUE
- }
- public sendMessage(color[], alive)
- {
- new teamName[10]
- for(new player = 1; player < maxPlayers; player++)
- {
- if(!is_user_connected(player))
- continue
- get_pcvar_string(g_AdminListenFlag, cvars, charsmax(cvars))
- if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & read_flags(cvars))
- {
- get_user_team(player, teamName, 9)// Stores user's team name to change back after sending the message
- changeTeamInfo(player, color)// Changes user's team according to color choosen
- writeMessage(player, message)// Writes the message on player's chat
- changeTeamInfo(player, teamName)// Changes user's team back to original
- }
- }
- }
- public sendTeamMessage(color[], alive, playerTeam)
- {
- new teamName[10]
- for(new player = 1; player < maxPlayers; player++)
- {
- if(!is_user_connected(player))
- continue
- get_pcvar_string(g_AdminListenFlag, cvars, charsmax(cvars))
- if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & read_flags(cvars))
- {
- if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & read_flags(cvars))
- {
- get_user_team(player, teamName, 9)// Stores user's team name to change back after sending the message
- changeTeamInfo(player, color)// Changes user's team according to color choosen
- writeMessage(player, message)// Writes the message on player's chat
- changeTeamInfo(player, teamName)// Changes user's team back to original
- }
- }
- }
- }
- public changeTeamInfo(player, team[])
- {
- message_begin(MSG_ONE, teamInfo, _, player)// Tells to to modify teamInfo(Which is responsable for which time player is)
- write_byte(player)// Write byte needed
- write_string(team)// Changes player's team
- message_end()// Also Needed
- }
- public writeMessage(player, message[])
- {
- message_begin(MSG_ONE, sayText, {0, 0, 0}, player)// Tells to modify sayText(Which is responsable for writing colored messages)
- write_byte(player)// Write byte needed
- write_string(message)// Effectively write the message, finally, afterall
- message_end()// Needed as always
- }
- /*----------------------------------------------------------------------------------------------------------------
- -CHECAR O LEVEL OU ADD++
- ----------------------------------------------------------------------------------------------------------------*/
- public check_level(id, sound)
- {
- if(!is_user_connected(id)) return PLUGIN_HANDLED;
- new g_nome[32]; get_user_name(id, g_nome, 31)
- if(level[id] == maxlevels)
- {
- while(xp[id] >= xp_num[level[id]])
- {
- ColorChat(0, GREEN, "^4%s ^1atingiu o level maximo. ^3Level maximo:^4 20^1.", g_name, level[id])
- return PLUGIN_HANDLED
- }
- }
- //Bugs
- if(level[id] == maxlevels && xp[id] > xp_num[level[id]-1])
- {
- xp[id] = xp_num[level[id]-1]
- Save(id)
- }
- return PLUGIN_HANDLED
- }
- /*----------------------------------------------------------------------------------------------------------------
- -EVENTO PARA ADD XP
- ----------------------------------------------------------------------------------------------------------------*/
- public event_deathmsg()
- {
- new id = read_data(1)
- new victim = read_data(2)
- new headshot = read_data(3)
- if(victim != id && (is_user_connected(id) && is_user_connected(victim)))
- {
- new xp_add
- if(!headshot)
- xp_add = get_pcvar_num(cvar_xp_normal)
- else
- xp_add = get_pcvar_num(cvar_xp_hs)
- if(1 <= id <= maxPlayers)
- {
- new weapon = get_user_weapon(id)
- if(weapon == CSW_KNIFE)
- xp_add = get_pcvar_num(cvar_xp_faca)
- if(weapon == CSW_HEGRENADE)
- xp_add = get_pcvar_num(cvar_xp_he)
- }
- xp[id] += xp_add
- set_dhudmessage(0, 255, 0, 0.03, 0.65, 2, 0.3, 2.0, 0.07, 0.07, false)
- show_dhudmessage(id, "+%d XP", xp_add)
- if(level[id] < maxlevels-1)
- {
- if(xp[id] >= xp_num[level[id]+1])
- {
- level[id]++
- static g_name[32]; get_user_name(id, g_name, 31)
- client_cmd(0,"spk %s",SOUND_RANK)
- ColorChat(0, GREEN, "^4|MAGNATAS| ^3%s ^1Subiu de patente. ^3Agora eh: ^4%s.", g_name, ranks_nomes[level[id]])
- }
- check_level(id, 0)
- Save(id)
- }
- }
- }
- /*------------------------------------------------------------------------------------------
- -REGISTRA COMANDOS DE SAY E SAYTEAM
- --------------------------------------------------------------------------------------------*/
- stock register_say(szSay[], szFunction[])
- {
- new szTemp[64]
- formatex(szTemp, 63 , "say /%s", szSay)
- register_clcmd(szTemp, szFunction)
- formatex(szTemp, 63 , "say .%s", szSay)
- register_clcmd(szTemp, szFunction)
- formatex( szTemp, 63 , "say_team /%s", szSay)
- register_clcmd(szTemp, szFunction )
- formatex( szTemp, 63 , "say_team .%s", szSay)
- register_clcmd(szTemp, szFunction)
- }
- /*----------------------------------------------------------------------------------------------------------------
- -MOSTRAR XP AO MIRAR NA PESSOA
- ----------------------------------------------------------------------------------------------------------------*/
- public showStatus(id)
- {
- if(!is_user_bot(id) && is_user_connected(id))
- {
- new name[32], pid = read_data(2)
- get_user_name(pid, name, 31)
- new color1 = 0, color2 = 0
- new xxx = get_user_team(id)
- new xxx2 = get_user_team(pid)
- new team1 = xxx == 1, team2 = xxx2 == 1
- if (team2 == 1)
- color1 = 255
- else
- color2 = 255
- if (team1 == team2) // friend
- {
- set_hudmessage(color1, 50, color2, -1.0, 0.85, 1, 0.01, 3.0, 0.01, 0.01, -1)
- ShowSyncHudMsg(id, g_status_sync, "Nome: %s^nRank: %s^nLevel: %d^nXP: %d/%d", name, ranks_nomes[level[pid]], level[pid]+1, xp[pid], xp_num[level[pid]+1])
- }
- }
- }
- public hideStatus(id)
- {
- ClearSyncHud(id, g_status_sync)
- }
- public plugin_precache()
- {
- precache_sound(SOUND_RANK)
- return PLUGIN_CONTINUE
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement