#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <dhudmessage>
#include <engine>
#include <nvault>
#if defined _colorchat_included
#endinput
#endif
#define _colorchat_included
/* ColorChat Support */
#define NORMAL DontChange
#define GREEN DontChange
#define RED Red
#define BLUE Blue
#define GREY Grey
#define ColorChat client_print_color
#define MAX_TRANSLATION_LENGTH 2048
enum {
DontChange = 0,
Grey = -1,
Red = -2,
Blue = -3
};
#define print_team_default DontChange
#define print_team_grey Grey
#define print_team_red Red
#define print_team_blue Blue
stock client_print_color(id, sender, const fmt[], any:...)
{
// check if id is different from 0
if (id && !is_user_connected(id))
{
return 0;
}
if (sender < Blue || sender > 32)
{
sender = DontChange;
}
else if (sender < DontChange)
{
sender = -sender + 32; // align indexes to the TeamInfo ones
}
static const szTeamName[][] =
{
"",
"TERRORIST",
"CT"
};
new szMessage[191];
new iParams = numargs();
// Specific player code
if (id)
{
if (iParams == 3)
{
copy(szMessage, charsmax(szMessage), fmt); // copy so message length doesn't exceed critical 192 value
}
else
{
vformat(szMessage, charsmax(szMessage), fmt, 4);
}
if (sender > (32 - Grey))
{
if (sender > (32 - Blue))
{
sender = id;
}
else
{
_CC_TeamInfo(id, sender, szTeamName[sender - (32 - Grey)]);
}
}
_CC_SayText(id, sender, szMessage);
}
// Send message to all players
else
{
// Figure out if at least 1 player is connected
// so we don't execute useless useless code if not
new iPlayers[32], iNum;
get_players(iPlayers, iNum, "ch");
if (!iNum)
{
return 0;
}
new iMlNumber, i, j;
new Array:aStoreML = ArrayCreate();
if (iParams >= 5) // ML can be used
{
for (j = 3; j < iParams; j++)
{
// retrieve original param value and check if it's LANG_PLAYER value
if (getarg(j) == LANG_PLAYER)
{
i = 0;
// as LANG_PLAYER == -1, check if next parm string is a registered language translation
while ((szMessage[i] = getarg(j + 1, i++))) {}
if (GetLangTransKey(szMessage) != TransKey_Bad)
{
// Store that arg as LANG_PLAYER so we can alter it later
ArrayPushCell(aStoreML, j++);
// Update ML array saire so we'll know 1st if ML is used,
// 2nd how many args we have to alterate
iMlNumber++;
}
}
}
}
// If arraysize == 0, ML is not used
// we can only send 1 MSG_ALL message if sender != 0
if (!iMlNumber)
{
if (iParams == 3)
{
copy(szMessage, charsmax(szMessage), fmt);
}
else
{
vformat(szMessage, charsmax(szMessage), fmt, 4);
}
if (0 < sender < (32 - Blue)) // if 0 is passed, need to loop
{
if (sender > (32 - Grey))
{
_CC_TeamInfo(0, sender, szTeamName[sender - (32 - Grey)]);
}
_CC_SayText(0, sender, szMessage);
return 1;
}
}
if (sender > (32 - Blue))
{
sender = 0; // use receiver index
}
for (--iNum; iNum >= 0; iNum--)
{
id = iPlayers[iNum];
if (iMlNumber)
{
for (j = 0; j < iMlNumber; j++)
{
// Set all LANG_PLAYER args to player index ( = id )
// so we can format the text for that specific player
setarg(ArrayGetCell(aStoreML, j), _, id);
}
// format string for specific player
vformat(szMessage, charsmax(szMessage), fmt, 4);
}
if (sender > (32 - Grey))
{
_CC_TeamInfo(id, sender, szTeamName[sender - (32 - Grey)]);
}
_CC_SayText(id, sender, szMessage);
}
ArrayDestroy(aStoreML);
}
return 1;
}
stock _CC_TeamInfo(iReceiver, iSender, szTeam[])
{
static iTeamInfo = 0;
if (!iTeamInfo)
{
iTeamInfo = get_user_msgid("TeamInfo");
}
message_begin(iReceiver ? MSG_ONE : MSG_ALL, iTeamInfo, _, iReceiver);
write_byte(iSender);
write_string(szTeam);
message_end();
}
stock _CC_SayText(iReceiver, iSender, szMessage[])
{
static iSayText = 0;
if (!iSayText)
{
iSayText = get_user_msgid("SayText");
}
// Prevent sending format and localization strings via chat
for (new i = 0; i < 192; i++)
{
if (szMessage[i] == 0) break;
if (szMessage[i] == '%' ||
szMessage[i] == '#')
szMessage[i] = ' ';
}
message_begin(iReceiver ? MSG_ONE : MSG_ALL, iSayText, _, iReceiver);
write_byte(iSender ? iSender : iReceiver);
if (szMessage[0] > 4)
{
write_byte(1);
szMessage[192 - 2 - 1] = 0; // Two write_byte + string terminator
write_string(szMessage);
}
else
{
szMessage[192 - 1 - 1] = 0; // One write_byte + string terminator
write_string(szMessage);
}
message_end();
}
new _translation_szBuffer[MAX_TRANSLATION_LENGTH];
stock register_dictionary_colored(const filename[])
{
if (!register_dictionary(filename))
{
return 0;
}
new szFileName[256];
get_localinfo("amxx_datadir", szFileName, charsmax(szFileName));
format(szFileName, charsmax(szFileName), "%s/lang/%s", szFileName, filename);
new fp = fopen(szFileName, "rt");
if (!fp)
{
log_amx("Failed to open %s", szFileName);
return 0;
}
new szLang[3], szKey[64], TransKey:iKey;
while (!feof(fp))
{
fgets(fp, _translation_szBuffer, charsmax(_translation_szBuffer));
trim(_translation_szBuffer);
if (_translation_szBuffer[0] == '[')
{
strtok(_translation_szBuffer[1], szLang, charsmax(szLang), _translation_szBuffer, 1, ']');
}
else if (_translation_szBuffer[0])
{
strbreak(_translation_szBuffer, szKey, charsmax(szKey), _translation_szBuffer, charsmax(_translation_szBuffer));
iKey = GetLangTransKey(szKey);
if (iKey != TransKey_Bad)
{
replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!g", "^4");
replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!t", "^3");
replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!n", "^1");
replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^4", "^4");
replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^3", "^3");
replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^1", "^1");
replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^n", "^n");
replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^t", "^t");
AddTranslation(szLang, iKey, _translation_szBuffer[2]);
}
}
}
fclose(fp);
return 1;
}
/* ML from AMXX 1.8.3 support */
#define register_dictionary register_dictionary_colored
#include <fakemeta_util>
#define PLUGIN "Kesmenu"
#define VERSION "1.0"
#define AUTHOR "Levii"
new szint[33], kesek[33], vault
new lada[33], medal[33], pont[33]
new varazs[33], xp[33]
new oles[33]
new RosszKarakterek, RosszKarakterek2
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /kes", "kesmenu")
register_clcmd("say /knife", "kesmenu")
register_clcmd("say /menu", "kesmenu")
register_clcmd("say_team /kes", "kesmenu")
register_clcmd("say_team /knife", "kesmenu")
register_clcmd("say_team /menu", "kesmenu")
register_clcmd("lada all", "ladas")
register_clcmd("say","handlesay")
register_clcmd("say_team","handlesay")
vault = nvault_open("peace_rangk_kesek")
register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
register_event("DeathMsg","death","a")
set_task(0.1, "kijelzo", 0, _, _, "b")
}
public ladas(id){
lada[id]++
medal[id]++
szint[id]++
ColorChat(id, RED, "^3.:[*|P|eac|E|*]:. ^1|^3Paintball^1| ^3Sikeresen Hozzaadva ^1+1 ^4Lada^1,^1+1 ^4Medal^4,^1+1 ^4Oles.")
}
public plugin_precache() {
precache_model("models/csomag.mdl")
precache_model("models/v_knife.mdl")
precache_model("models/pePB/peace_ice_knife1.mdl") // 1kes V_ice
precache_model("models/v_knife.mdl")
precache_model("models/v_knife.mdl")
precache_model("models/v_knife.mdl")
precache_model("models/v_knife.mdl")
precache_model("models/v_knife.mdl")
precache_model("models/v_knife.mdl")
}
public death(){
new killer = read_data(1)
new victim = read_data(2)
if(killer == victim)
{
return PLUGIN_HANDLED
}
szint[killer]++
lada[killer]++
return PLUGIN_HANDLED
}
public halal(id)
{
new gyilkos = read_data(1)
new aldozat = read_data(2)
if(gyilkos != aldozat)
{
xp[gyilkos] += 3
}
if(xp[gyilkos] >= 100)
{
szint[gyilkos]++
xp[gyilkos] = 0
medal[gyilkos] += 3
}
}
public kesmenu(id) {
new cim[121]
format(cim, charsmax(cim), "\r\r[\d*|P|eac|E|*\r] \w|\yPaintball\w| \wOleseid:\r%d \y^n\yLadaid: \r%d \w| \yMedaljaid: \r%d", oles[id], lada[id], medal[id])
new menu = menu_create(cim, "kesmenu_hl" )
menu_additem(menu,"\rKesek","1",0)
menu_additem(menu,"\yRangok","2",0)
menu_additem(menu,"\dLadak","3",0)
menu_additem(menu,"\rBolt","4",0)
menu_display(id,menu,0)
}
public kesmenu_hl(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[9], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);
switch(key)
{
case 1: {
kes_menu2(id)
}
case 2: {
rangok(id)
}
case 3: {
ladikok(id)
}
case 4: {
shop(id)
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public shop(id){
new cim[121]
format(cim, charsmax(cim), "\r[\d*|P|eac|E|*\r] \w|\yPaintball\w| \wOleseid:\r%d \y^n\yLadaid:\r%d \w| \yMedaljaid:\r%d", oles[id], lada[id], medal[id])
new menu = menu_create(cim, "b_b" )
menu_additem(menu,"\w1 Medal \r[2 Oles]","1",0)
menu_additem(menu,"\w1 Lada \r[6 Oles]","2",0)
menu_display(id,menu,0)
}
public b_b(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[9], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
if(oles[id] >= 3)
{
ColorChat(id, RED, "^4.:[Peace]:. ^1Kaptal ^4+3 ^1Medalt")
shop(id)
medal[id] += 3
oles[id] -= 3
}
else
ColorChat(id, RED, "^^4.:[Peace]:. Neked nincs eleg olesed.")
shop(id)
}
case 2:
{
if(oles[id] >= 6)
{
ColorChat(id, RED, "^4.:[Peace]:. ^1Kaptal ^4+1 ^1ladat")
shop(id)
medal[id] += 3
oles[id] -= 6
}
else
ColorChat(id, RED, "^^4.:[Peace]:. Neked nincs eleg olesed.")
shop(id)
}
}
return PLUGIN_HANDLED
}
public ladikok(id){
new cim[121]
format(cim, charsmax(cim), "\r[\d*|P|eac|E|*\r] \w|\yPaintball\w| \wOleseid:\r%d \y^n\yLadaid:\r%d \w| \yMedaljaid:\r%d", oles[id], lada[id], medal[id])
new menu = menu_create(cim, "lada_nyitas" )
menu_additem(menu,"\wLadanyitas^nKell hozza \y[\w1 Medal,1 Lada\y]","1",0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_setprop(menu, MPROP_PERPAGE, 6);
menu_setprop(menu, MPROP_BACKNAME, "Vissza");
menu_setprop(menu, MPROP_NEXTNAME, "Kovetkezo");
menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
menu_display(id, menu, 0)
}
public lada_nyitas(id, menu, item){
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
switch(random_num(1,8)) {
case 1:
{
if(lada[id] >= 1 && medal[id] >= 1)
{
ColorChat(id, RED, "Sajnalom de ez a ^4Lada ^1ures volt!")
lada[id] -= 1
medal[id] -= 1
ladikok(id)
}
else
ColorChat(id, RED, "^4.:[Peace]:. ^1Neked nincs ^4ladad ^1vagy ^4Medalod^1.")
ladikok(id)
}
case 2:
{
if(lada[id] >= 1 && medal[id] >= 1)
{
ColorChat(id, RED, "^4.:[Peace]:. Talaltal 10 Olest")
ladikok(id)
oles[id] += 10
lada[id] -= 1
medal[id] -= 1
}
else
ColorChat(id, RED, "^4.:[Peace]:. ^1Neked nincs ^4ladad ^1vagy ^4Medalod^1.")
ladikok(id)
}
case 3:
{
if(lada[id] >= 1 && medal[id] >= 1)
{
ColorChat(id, RED, "^4.:[Peace]:. ^1Talaltal ^4+5 ^1ladat.")
ladikok(id)
lada[id] += 1
lada[id] -= 1
medal[id] -= 1
}
else
ColorChat(id, RED, "^4.:[Peace]:. ^1Neked nincs ^4ladad ^1vagy ^4Medalod^1.")
ladikok(id)
}
case 4:
{
if(lada[id] >= 1 && medal[id] >= 1)
{
ColorChat(id, RED, "^4.:[Peace]:. Talaltal ^450 ^1olest")
ladikok(id)
oles[id] += 50
lada[id] -= 1
medal[id] -= 1
}
else
ColorChat(id, RED, "^4.:[Peace]:. ^1Neked nincs ^4ladad ^1vagy ^4Medalod^1.")
ladikok(id)
}
case 5:
{
if(lada[id] >= 1 && medal[id] >= 1)
{
ColorChat(id, RED, "^4.:[Peace]:. ^1Talaltal ^4+2 ^1Medal^1.")
ladikok(id)
lada[id] += 2
lada[id] -= 1
medal[id] -= 1
}
else
ColorChat(id, RED, "^4.:[Peace]:. ^1Neked nincs ^4ladad ^1vagy ^4Medalod^1.")
ladikok(id)
}
case 6:
{
if(lada[id] >= 1 && medal[id] >= 1)
{
ColorChat(id, RED, "^4.:[Peace]:. ^1Talaltal ^4+2 ^1Medalod.")
ladikok(id)
medal[id] += 2
lada[id] -= 1
medal[id] -= 1
}
else
ColorChat(id, RED, "^4.:[Peace]:. ^1Neked nincs ^4ladad ^1vagy ^4Medalod^1.")
ladikok(id)
}
case 7:
{
if(lada[id] >= 1 && medal[id] >= 1)
{
ColorChat(id, RED, "^4.:[Peace]:. ^1Talaltal ^452 ^1Medal-t.")
ladikok(id)
medal[id] += 5
lada[id] -= 1
medal[id] -= 1
}
else
ColorChat(id, RED, "^4.:[Peace]:. ^1Neked nincs ^4ladad ^1vagy ^4Medalod^1.")
ladikok(id)
}
case 8:
{
if(lada[id] >= 1 && medal[id] >= 1)
{
ColorChat(id, RED, "^4.:[Peace]:. ^1Talaltal ^4+10 ^1ladat")
ladikok(id)
lada[id] += 10
lada[id] -= 1
medal[id] -= 1
}
else
ColorChat(id, RED, "^4.:[Peace]:. ^1Neked nincs ^4ladad ^1vagy ^4Medalod^1.")
ladikok(id)
}
}
return PLUGIN_HANDLED
}
public kes_menu2(id){
new cim[121], ks1[121],ks2[121],ks3[121],ks4[121],ks5[121],ks6[121],ks7[121],ks8[121]
format(cim, charsmax(cim),"\r[\d*|P|eac|E|*\r] \w|\yKesek\w|^n\yOlesek:\w%d",oles[id])
format(ks1, charsmax(ks1),"[\d*|P|eac|E|*\r] \wkes 1 \r[Alap kes]\y [Megszerezve]")
if(oles[id] < 50)
format(ks2, charsmax(ks2),"\r[\d*|P|eac|E|*\r] \ykes 2 \r[%d/250 Oles]",oles[id])
else
format(ks2, charsmax(ks2),"\d[\r*|P|eac|E|*\r] \wkes 2\y [Megszerezve]")
if(oles[id] < 80)
format(ks3, charsmax(ks3),"\r[\d*|P|eac|E|*\r] \ykes 3 \r[%d/500 Oles]",oles[id])
else
format(ks3, charsmax(ks3),"\d[\d*|P|eac|E|*\r] \wkes 3\y [Megszerezve]")
if(oles[id] < 100)
format(ks4, charsmax(ks4),"\r[\d*|P|eac|E|*\r] \ykes 4 \r[%d/1000 Oles]",oles[id])
else
format(ks4, charsmax(ks4),"\d[\d*|P|eac|E|*\r] \wkes 4\y [Megszerezve]")
if(oles[id] < 150)
format(ks5, charsmax(ks5),"\r[\d*|P|eac|E|*\r] \ykes 5 \r[%d/2000 Oles]",oles[id])
else
format(ks5, charsmax(ks5),"\d[\d*|P|eac|E|*\r] \wkes 5\y [Megszerezve]")
if(oles[id] < 180)
format(ks6, charsmax(ks6),"\r[\d*|P|eac|E|*\r] \ykes 6\r[%d/4000 Oles]",oles[id])
else
format(ks6, charsmax(ks6),"\d[\d*|P|eac|E|*\r]\wkes 6\y [Megszerezve]")
if(oles[id] < 200)
format(ks7, charsmax(ks7),"\r[\d*|P|eac|E|*\r] \ykes 7 \r[%d/8000 Oles]",oles[id])
else
format(ks7, charsmax(ks7),"\d[\d*|P|eac|E|*\r] \wkes 7\y [Megszerezve]")
if(oles[id] < 280)
format(ks8, charsmax(ks8),"\r[\d*|P|eac|E|*\r] \ykes 8 \r[%d/10000 Oles]",oles[id])
else
format(ks8, charsmax(ks8),"\d[\d*|P|eac|E|*\r] \wkes 8\y [Megszerezve]")
new menu = menu_create(cim, "kes_hl")
menu_additem(menu,ks1,"1",0)
menu_additem(menu,ks2,"2",0)
menu_additem(menu,ks3,"3",0)
menu_additem(menu,ks4,"4",0)
menu_additem(menu,ks5,"5",0)
menu_additem(menu,ks6,"6",0)
menu_additem(menu,ks7,"7",0)
menu_additem(menu,ks8,"8",0)
menu_setprop(menu, MPROP_NEXTNAME, "Tovabb: \r8\y-as gomb!")
menu_setprop(menu, MPROP_EXITNAME, "Bezaras")
menu_setprop(menu, MPROP_BACKNAME, "Elozo oldal: \r7\y-es gomb!")
menu_setprop(menu, MPROP_PERPAGE, 6);
menu_display(id,menu,0)
}
public kes_hl(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[9], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);
switch(key)
{
case 1:{
if(oles[id] >= 0){
kesek[id] = 0
engclient_cmd(id,"weapon_knife")
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Sikeres valasztas.")
}
else
{
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Hianyzik meg ^4%d ^1oles!",0-oles[id])
}
}
case 2:{
if(oles[id] >= 250){
kesek[id] = 1
engclient_cmd(id,"weapon_knife")
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Sikeres valasztas.")
}
else
{
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Hianyzik meg ^4%d ^1oles!",50-oles[id])
}
}
case 3:{
if(oles[id] >= 500){
kesek[id] = 2
engclient_cmd(id,"weapon_knife")
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Sikeres valasztas.")
}
else
{
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Hianyzik meg ^4%d ^1oles!",80-oles[id])
}
}
case 4:{
if(oles[id] >= 1000){
kesek[id] = 3
engclient_cmd(id,"weapon_knife")
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Sikeres valasztas.")
}
else
{
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Hianyzik meg ^4%d ^1oles!",100-oles[id])
}
}
case 5:{
if(oles[id] >= 2000){
kesek[id] = 4
engclient_cmd(id,"weapon_knife")
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Sikeres valasztas.")
}
else
{
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Hianyzik meg ^4%d ^1oles!",150-oles[id])
}
}
case 6:{
if(oles[id] >= 4000){
kesek[id] = 5
engclient_cmd(id,"weapon_knife")
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Sikeres valasztas.")
}
else
{
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Hianyzik meg ^4%d ^1oles!",180-oles[id])
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Hianyzik meg ^4%d ^1oles!",180-oles[id])
}
}
case 7:{
if(oles[id] >= 8000){
kesek[id] = 6
engclient_cmd(id,"weapon_knife")
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Sikeres valasztas.")
}
else
{
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Hianyzik meg ^4%d ^1oles!",200-oles[id])
}
}
case 8:{
if(oles[id] >= 10000){
kesek[id] = 7
engclient_cmd(id,"weapon_knife")
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Sikeres valasztas.")
}
else
{
ColorChat(id, RED, "^4.:[*|P|eac|E|*]:. ^x01Hianyzik meg ^4%d ^1oles!",280-oles[id])
}
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public rangok(id){
new cim[121], ks1[121],ks2[121],ks3[121],ks4[121],ks5[121],ks6[121],ks7[121],ks8[121]
format(cim, charsmax(cim),"\r[\d*|P|eac|E|*\r]\w|\yRangok\w|^n\yOleseid:\w%d",oles[id])
format(ks1, charsmax(ks1),"\wNokedli Alaprang \y[Megszerezve]")
if(oles[id] < 80)
format(ks2, charsmax(ks2),"\dKezdo Rang \r[%d/80 Oles]",oles[id])
else
format(ks2, charsmax(ks2),"\wKezdo Rang \y[Megszerezve]")
if(oles[id] < 100)
format(ks3, charsmax(ks3),"\dAmator Rang \r[%d/100 Oles]",oles[id])
else
format(ks3, charsmax(ks3),"\wAmator Rang \y[Megszerezve]")
if(oles[id] < 180)
format(ks4, charsmax(ks4),"\dHalado Rang \r[%d/180 Oles]",oles[id])
else
format(ks4, charsmax(ks4),"\rHalado Rang \y[Megszerezve]")
if(oles[id] < 200)
format(ks5, charsmax(ks5),"\dProfi Rang \r[%d/200 Oles]",oles[id])
else
format(ks5, charsmax(ks5),"\wProfi Rang \y[Megszerezve]")
if(oles[id] < 280)
format(ks6, charsmax(ks6),"\dVeteran Rang \r[%d/280 Oles]",oles[id])
else
format(ks6, charsmax(ks6),"\wVeteran Rang \y[Megszerezve]")
if(oles[id] < 300)
format(ks7, charsmax(ks7),"\dLegenda Rang \r[%d/300 Oles]",oles[id])
else
format(ks7, charsmax(ks7),"\wLegenda Rang \y[Megszerezve]")
if(oles[id] < 380)
format(ks8, charsmax(ks8),"\dLegyozhetetlen Rang \r[%d/380 Oles]",oles[id])
else
format(ks8, charsmax(ks8),"\wLegyozhetetlen Rang \y[Megszerezve]")
new menu = menu_create(cim, "rangok_h")
menu_additem(menu,ks1,"1",0)
menu_additem(menu,ks2,"1",0)
menu_additem(menu,ks3,"1",0)
menu_additem(menu,ks4,"1",0)
menu_additem(menu,ks5,"1",0)
menu_additem(menu,ks6,"1",0)
menu_additem(menu,ks7,"1",0)
menu_additem(menu,ks8,"1",0)
menu_setprop(menu, MPROP_NEXTNAME, "Tovabb: \r9\y-es gomb!")
menu_setprop(menu, MPROP_EXITNAME, "Bezaras")
menu_setprop(menu, MPROP_BACKNAME, "Elozo oldal: \r8\y-as gomb!")
menu_display(id,menu,0)
}
public rangok_h(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[9], szName[64], name[32]
get_user_name(id, name, charsmax(name))
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new key = str_to_num(data);
switch(key)
{
case 1: rangok(id)
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public handlesay(id)
{
new message[192], Name[32], none[2][32], chat[192], rang[32]
read_args(message, 191)
remove_quotes(message)
new hossz = strlen(message)
new i = 0
RosszKarakterek = 0
while(i < hossz) {
if(message[i] == '#')
RosszKarakterek++
++i
}
if(RosszKarakterek != 0)
{
new JatekosNeve[32]
get_user_name(id, JatekosNeve, charsmax(JatekosNeve))
new JatekosIP[32]
get_user_ip(id, JatekosIP, charsmax(JatekosIP))
server_cmd("kick #%d Tiltott karakter-t irtal chatbe! ^"#^"", get_user_userid(id))
log_amx("%s | %s rossz karaktert irtbe chatbe : %s", JatekosNeve, JatekosIP, message)
return PLUGIN_HANDLED
}
formatex(none[0], 31, ""), formatex(none[1], 31, " ")
if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
return PLUGIN_HANDLED;
if(!equali(message, none[0]) && !equali(message, none[1]))
{
get_user_name(id, Name, 31);
if(oles[id] < 50)
rang = "Ujonc"
else if(oles[id] < 80)
rang = "Amator"
else if(oles[id] < 100)
rang = "Kezdo"
else if(oles[id] < 150)
rang = "Halado"
else if(oles[id] < 180)
rang = "Profi"
else if(oles[id] < 200)
rang = "Veteran"
else if(oles[id] < 280)
rang = "Mester"
else if(oles[id] < 300)
rang = "Legenda"
else if(equal("sadas",Name))
formatex(chat, 191, "^4[Tulajdonos & Konfigos][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(equal("sadas",Name))
formatex(chat, 191, "^4[^3Tulajdonos^4][%s] ^3%s^3 ^4 %s",rang, Name, message)
else if(equal("..............",Name))
formatex(chat, 191, "^4[Admin][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(equal(".....",Name))
formatex(chat, 191, "^4[Admin][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(equal(".........",Name))
formatex(chat, 191, "^4[FoAdmin][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(equal("...............",Name))
formatex(chat, 191, "^4[Admin][%s]^3%s^1 :^4 %s",rang, Name, message)
else if(get_user_flags(id) & ADMIN_KICK)
formatex(chat, 191, "^4[Admin][%s]^3%s^1 :^4 %s",rang, Name, message)
else
formatex(chat, 191, "^4[%s] ^3 ^4%s ^3 ^1%s",rang, Name, message)
switch(cs_get_user_team(id))
{
case 1: ColorChat(0, RED, chat)
case 2: ColorChat(0, BLUE, chat)
}
if(cs_get_user_team(id) == CS_TEAM_SPECTATOR)
ColorChat(0, GREY, chat)
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public mentes(id)
{
new vaultkey[64],vaultdata[256], name[32]
get_user_name(id, name, 31)
format(vaultkey,63,"%s-KESEK", name)
format(vaultdata,255,"%d%d%d%d%d%d%d%d%d", oles[id],medal[id],szint[id],lada[id],medal[id],pont[id],varazs[id],xp[id],intelegencia[id])
nvault_set(vault,vaultkey,vaultdata)
return PLUGIN_CONTINUE
}
public betoltes(id)
{
new vaultkey[64],vaultdata[256], name[32]
get_user_name(id, name, 31)
format(vaultkey,63,"%s-KESEK", name)
nvault_get(vault,vaultkey,vaultdata,255)
oles[id] = str_to_num(vaultdata)
return PLUGIN_CONTINUE;
}
public Event_Change_Weapon(id)
{
new fegyver = get_user_weapon(id)
if(kesek[id] == 0 && fegyver == CSW_KNIFE)
set_pev(id, pev_viewmodel2, "models/v_knife.mdl")
if(kesek[id] == 1 && fegyver == CSW_KNIFE)
set_pev(id, pev_viewmodel2, "models/v_knife.mdl")
if(kesek[id] == 2 && fegyver == CSW_KNIFE)
set_pev(id, pev_viewmodel2, "models/v_knife.mdl")
if(kesek[id] == 3 && fegyver == CSW_KNIFE)
set_pev(id, pev_viewmodel2, "models/v_knife.mdl")
if(kesek[id] == 4 && fegyver == CSW_KNIFE)
set_pev(id, pev_viewmodel2, "models/v_knife.mdl")
if(kesek[id] == 5 && fegyver == CSW_KNIFE)
set_pev(id, pev_viewmodel2, "models/v_knife.mdl")
if(kesek[id] == 6 && fegyver == CSW_KNIFE)
set_pev(id, pev_viewmodel2, "models/v_knife.mdl")
if(kesek[id] == 7 && fegyver == CSW_KNIFE)
set_pev(id, pev_viewmodel2, "models/v_knife.mdl")
}
public client_connect(id)
{
betoltes(id)
new JatekosNeve[32]
get_user_name(id, JatekosNeve, charsmax(JatekosNeve))
new JatekosIP[32]
get_user_ip(id, JatekosIP, charsmax(JatekosIP))
new hossz = strlen(JatekosNeve)
new i = 0
RosszKarakterek = 0
RosszKarakterek2 = 0
while(i < hossz)
{
if(JatekosNeve[i] == '#')
RosszKarakterek++
if(JatekosNeve[i] == '_')
RosszKarakterek2++
++i
}
if(RosszKarakterek != 0 && RosszKarakterek2 != 0)
{
server_cmd("kick #%d Tiltott karakter van a nevedben. ^"# & _^"", get_user_userid(id))
log_amx("Egy jatekos tiltott karakteres nevvel jott fel : %s | %s", JatekosNeve, JatekosIP)
}
return PLUGIN_CONTINUE
}
public client_disconnect(id)
{
mentes(id)
}
stock print_color(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!t", "^3")
if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i])
write_string(msg)
message_end()
}
}
}
return PLUGIN_HANDLED