Offline |
|
Csatlakozott:2020.06.14. 17:59 Hozzászólások:378 Megköszönt másnak: 65 alkalommal Megköszönték neki: 10 alkalommal
|
Üdv! Nekem van egy rangrendszerem amiben szint , xp rang van, rang és a szint maradjon az xp helyére mennyi ölés kell a következő színhez! Köszönöm! enum _:ePlayer{eXp,eLvl,eRank,eRankCounter,}; new g_ePlayer[ePlayer][MAXPLAYERS], enum _:eRanks{eRankName[64], eRankLvl,}; new const cRanks[MAXRANK][eRanks] = { {"Kezdő", 0}, //rang neve, szint {"szőlőcukor", 5}, {"Csöves", 10}, {"Cukros Bácsi", 15}, {"Retardált", 20}, {"Hajléktalan", 25}, {"Fogyatékos", 30}, {"Drogos", 35}, {"Szittyós", 40}, {"Gyerekrabló", 45}, {"Rabszolgatartó", MAXLVL} //bővíteni ? MAXLVLt írd át a max szintre és mindenképpen legalulra kerüljön! | a szinteket ötösével adjad meg ha lehet! mert ha nem elfog csúszni a rang. }; } public info_p(id) { new Xp, Xp2; Xp = 15+g_ePlayer[eLvl][id]; Xp2 = 15*30+g_ePlayer[eLvl][id]*Xp; client_print_color(id, ChatColor, "%s^1 Rangod: %s | Szinted/Xpd: %d/%d | Következő rang: %s", gChatPrefix, cRanks[g_ePlayer[eRank][id]][eRankName], g_ePlayer[eXp][id], Xp2, cRanks[g_ePlayer[eRank][id]+1][eRankName]); } public client_PreThink(id) LvlCheck(id); public LvlCheck(id) { if(g_ePlayer[eLvl][id] == MAXLVL || g_ePlayer[eRank][id] == MAXRANK) return PLUGIN_HANDLED; new Xp, Xp2, sName[64]; Xp = 15+g_ePlayer[eLvl][id]; Xp2 = 15*30+g_ePlayer[eLvl][id]*Xp; if(g_ePlayer[eXp][id] >= Xp2) { g_ePlayer[eLvl][id]++; g_ePlayer[eXp][id] = 0; g_ePlayer[eRankCounter][id]++; if(g_ePlayer[eRankCounter][id] == 5) { g_ePlayer[eRank][id]++; g_ePlayer[eRankCounter][id] = 0; } get_user_name(id, sName, charsmax(sName)); client_print_color(0, ChatColor, "^4%s^3 %s^1 szintet lépett, szintje: ^4%d.", gChatPrefix, sName, g_ePlayer[eLvl][id]); } return PLUGIN_HANDLED; } public ev_deathmsg() { new iKiller = read_data(1); new iVictim = read_data(2); new iHs = read_data(3); new iRnd, sName[64]; if(!iKiller || !iVictim || iVictim == iKiller) return PLUGIN_HANDLED; get_user_name(iVictim, sName, charsmax(sName)); if(iHs) { iRnd = random_num(5, 10); g_ePlayer[eXp][iKiller] += iRnd; client_print_color(iKiller, ChatColor, "%s^1 Kaptál^3 %d^1 Xp-t^3 %s^1 fejbelövéséért!", gChatPrefix, iRnd, sName); } else { iRnd = random_num(1, 5); g_ePlayer[eXp][iKiller] += iRnd; client_print_color(iKiller, ChatColor, "%s^1 Kaptál^3 %d^1 Xp-t^3 %s^1 megöléséért!", gChatPrefix, iRnd, sName); } return PLUGIN_HANDLED_MAIN; } public hudshow_p(id) { if(!is_user_connected(id)) return PLUGIN_HANDLED_MAIN; new sText[256], iLen, idT; new Target = pev(id, pev_iuser1) == 4 ? pev(id, pev_iuser2) : id; idT = is_user_alive(id) ? id:Target; new Xp, Xp2; Xp = 15+g_ePlayer[eLvl][idT]; Xp2 = 15*30+g_ePlayer[eLvl][idT]*Xp; iLen += formatex(sText[iLen], charsmax(sText)-iLen, "Szint: [ %d --> %d ]^n", g_ePlayer[eLvl][idT], MAXLVL); iLen += formatex(sText[iLen], charsmax(sText)-iLen, "Rangod: -- %s --^n", cRanks[g_ePlayer[eRank][idT]][eRankName]); iLen += formatex(sText[iLen], charsmax(sText)-iLen, "Xp: [ %d --> %d ]", g_ePlayer[eXp][idT], Xp2); set_hudmessage(0, 255, 0, 0.01, 0.17, 0, 6.0, 12.0); ShowSyncHudMsg(id, gSyncHud, "%s", sText); set_task(1.0, "hudshow_p", id); return PLUGIN_HANDLED;
|
|