#include <amxmodx> #include <amxmisc> #include <codmod> #include <colorchat> #define PLUGIN "[COD] EXP dla najlepszych 3 graczy" #define VERSION "0.7" #define AUTHOR "pRED (edit by =ToRRent=)" new player_xp[33] = 0 //Holds players experience new gmsgSayText; new cvar_exp_1miejsce; new cvar_exp_2miejsce; new cvar_exp_3miejsce; new exp_1miejsce[33]; new exp_2miejsce[33]; new exp_3miejsce[33]; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); cvar_exp_1miejsce = register_cvar("cod_exp1", "300"); // ilosc doswiadczenia za 1 miejsce cvar_exp_2miejsce = register_cvar("cod_exp2", "150"); // ilosc doswiadczenia za 2 miejsce cvar_exp_3miejsce = register_cvar("cod_exp3", "75"); // ilosc doswiadczenia za 3 miejsce register_message(SVC_INTERMISSION, "Message_Intermission"); gmsgSayText = get_user_msgid("SayText"); } public Message_Intermission(){ set_task(0.1, "przyznanie_doswiadczenia"); } public przyznanie_doswiadczenia() { //uruchom podczas SVC_INTERMISSION (tuz przed zmiana mapy) //Znajdz 3 najlepszych graczy z najwieksza liczba fragow i przyznaj doswiadczenie new players[32], num; get_players(players, num, "h"); new tempfrags, id; new swapfrags, swapid; new starfrags[3]; //0 - 3 miejsce / 1 - 2 miejsce / 2 - 1 miejsce new starid[3]; for (new i = 0; i < num; i++) { id = players[i]; tempfrags = get_user_frags(id); if ( tempfrags > starfrags[0] ) { starfrags[0] = tempfrags; starid[0] = id; new exp_3miejsce = get_pcvar_num(cvar_exp_3miejsce) player_xp(id, player_xp[id]+exp_3miejsce); if ( tempfrags > starfrags[1] ) { swapfrags = starfrags[1]; swapid = starid[1]; starfrags[1] = tempfrags; starid[1] = id; starfrags[0] = swapfrags; starid[0] = swapid; new exp_2miejsce = get_pcvar_num(cvar_exp_2miejsce) player_xp(id, player_xp[id]+exp_2miejsce); if ( tempfrags > starfrags[2] ) { swapfrags = starfrags[2]; swapid = starid[2]; starfrags[2] = tempfrags; starid[2] = id; starfrags[1] = swapfrags; starid[1] = swapid; new exp_1miejsce = get_pcvar_num(cvar_exp_1miejsce) player_xp(id, player_xp[id]+exp_1miejsce); } } } } new name[32]; new winner = starid[2]; if ( !winner ) return; ColorChat(id, GREEN, "Najlepsi gracze na tej mapie:"); get_user_name(starid[2], name, charsmax(name)); ColorChat(id, GREEN, "1. %s - %i Fragow (+%d dosw.)", name, starfrags[2], exp_1miejsce[id]) get_user_name(starid[1], name, charsmax(name)); ColorChat(id, GREEN, "2. %s - %i Fragow (+%d dosw.)", name, starfrags[1], exp_2miejsce[id]) get_user_name(starid[0], name, charsmax(name)); ColorChat(id, GREEN, "3. %s - %i Fragow (+%d dosw.)", name, starfrags[0], exp_3miejsce[id]) }
Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse