Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <amxmisc>
- #include <csx>
- #include <engine>
- #include <fakemeta>
- #include <fakemeta_util>
- #include <hamsandwich>
- #include <nvault>
- #include "fc/defines.inl"
- #include "fc/natives.inl"
- #include "fc/constants.inl"
- #include "fc/variables.inl"
- #include "fc/publics.inl"
- #include "fc/native.inl"
- #include "fc/stocks.inl"
- #include "fc/settings.inl"
- public plugin_init()
- {
- register_plugin("Furien Classic Mod", "1.0", "cyby");
- cmds_saved();
- cache_vars();
- message_items();
- event_items();
- fakemeta_items();
- ham_items();
- settings_set();
- vip_free_set();
- g_forward_item_selected = CreateMultiForward("fc_item_select", ET_IGNORE, FP_CELL, FP_CELL);
- }
- public plugin_precache()
- {
- item_name = ArrayCreate(64, 1);
- item_cost = ArrayCreate(1, 1);
- item_team = ArrayCreate(1, 1);
- item_vip = ArrayCreate(1, 1);
- item_alive = ArrayCreate(1, 1);
- g_trail = precache_model("sprites/laserbeam.spr");
- precache_model("models/parachute.mdl");
- }
- public plugin_cfg()
- {
- g_vault = nvault_open("data_players");
- g_anothervault = nvault_open("stats_players");
- }
- public plugin_end()
- {
- nvault_close(g_vault);
- nvault_close(g_anothervault);
- DestroyForward(g_forward_item_selected);
- }
- // NATIVE ***********************************************
- public plugin_natives()
- register_natives();
- public take_shits()
- {
- g_c4timer = get_cvar_num("mp_c4timer");
- g_time_freeze = get_cvar_num("mp_freezetime");
- g_roundtime = get_cvar_num("mp_roundtime");
- }
- public shop_cmd(id)
- {
- if(should_autojoin(id))
- return PLUGIN_CONTINUE;
- if(!loaded(id))
- return PLUGIN_HANDLED;
- if(get_user_team(id) == 2 && !flag_get(g_cmdguns, id))
- {
- menu_weapons(id);
- color(id, ".v%s.g Nu poti folosi.e magazinul.g pana ce nu alegi arma!", TAG);
- return PLUGIN_HANDLED;
- }
- if(g_item == 0)
- {
- color(id, ".v%s.g Nu exista iteme in shop!", TAG);
- return PLUGIN_HANDLED
- }
- if(g_endround || flag_get(g_lockshop, id))
- {
- color(id, ".v%s.g Nu poti cumpara chiar acum!", TAG);
- return PLUGIN_HANDLED;
- }
- new menu_item[128], menu, tasta[2], string_temp[64], Cost_Item, inviata, echip;
- switch(get_user_team(id))
- {
- case 1: formatex(menu_item, charsmax(menu_item), "\rShop Furien:");
- case 2: formatex(menu_item, charsmax(menu_item), "\rShop Anti-Furien:");
- }
- menu = menu_create(menu_item, "furien_shop");
- for(new i = 0; i < g_item; i++)
- {
- ArrayGetString(item_name, i, string_temp, charsmax(string_temp));
- Cost_Item = ArrayGetCell(item_cost, i);
- inviata = ArrayGetCell(item_alive, i);
- echip = ArrayGetCell(item_team, i);
- if(ArrayGetCell(item_vip, i) == 1)
- {
- if(echip == get_user_team(id) || echip == 0)
- {
- if(player_data[id][money] < Cost_Item)
- formatex(menu_item, charsmax(menu_item), "\d%s - %d$ | [VIP ONLY]", string_temp, Cost_Item);
- else
- {
- if(player_data[id][isvip] < 1)
- formatex(menu_item, charsmax(menu_item), "\d%s - %d$ | [VIP ONLY]", string_temp, Cost_Item);
- else
- {
- switch(inviata)
- {
- case 0:
- {
- if(flag_get(g_isalive, id))
- formatex(menu_item, charsmax(menu_item), "\d%s - %d$ | [VIP ONLY]", string_temp, Cost_Item);
- else
- formatex(menu_item, charsmax(menu_item), "\y%s - \w%d$ |\r [VIP ONLY]", string_temp, Cost_Item);
- }
- case 1:
- {
- if(flag_get(g_isalive, id))
- formatex(menu_item, charsmax(menu_item), "\y%s - \w%d$ |\r [VIP ONLY]", string_temp, Cost_Item);
- else
- formatex(menu_item, charsmax(menu_item), "\d%s - %d$ | [VIP ONLY]", string_temp, Cost_Item);
- }
- }
- }
- }
- }
- else
- continue;
- }
- else
- {
- if(echip == get_user_team(id) || echip == 0)
- {
- if(player_data[id][money] < Cost_Item)
- formatex(menu_item, charsmax(menu_item), "\d%s - %d$", string_temp, Cost_Item);
- else
- {
- switch(inviata)
- {
- case 0:
- {
- if(flag_get(g_isalive, id))
- formatex(menu_item, charsmax(menu_item), "\d%s - %d$", string_temp, Cost_Item);
- else
- formatex(menu_item, charsmax(menu_item), "\y%s - \w%d$", string_temp, Cost_Item);
- }
- case 1:
- {
- if(flag_get(g_isalive, id))
- formatex(menu_item, charsmax(menu_item), "\y%s - \w%d$", string_temp, Cost_Item);
- else
- formatex(menu_item, charsmax(menu_item), "\d%s - %d$", string_temp, Cost_Item);
- }
- }
- }
- }
- else
- continue;
- }
- tasta[0] = i;
- tasta[1] = 0;
- menu_additem(menu, menu_item, tasta);
- }
- menu_display(id, menu, 0);
- return PLUGIN_HANDLED;
- }
- // Spatele shopului pentru furieni
- public furien_shop(id, menu, item)
- {
- if(item == MENU_EXIT || g_endround || flag_get(g_lockshop, id))
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- new itemdata[2], dummy, itemid
- menu_item_getinfo(menu, item, dummy, itemdata, charsmax(itemdata), _, _, dummy)
- itemid = itemdata[0]
- new icost, iname[64], ivip, echip, ialive;
- icost = ArrayGetCell(item_cost, itemid);
- ArrayGetString(item_name, itemid, iname, charsmax(iname));
- ivip = ArrayGetCell(item_vip, itemid);
- echip = ArrayGetCell(item_team, itemid);
- ialive = ArrayGetCell(item_alive, itemid);
- if(get_user_team(id) != echip && echip != 0)
- {
- color(id, ".v%s.g Acest echipament este pentru echipa adversa!", TAG)
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(ivip > player_data[id][isvip])
- {
- new vip_type[28];
- switch(ivip)
- {
- case 1: formatex(vip_type, charsmax(vip_type), "VIP Silver");
- case 2: formatex(vip_type, charsmax(vip_type), "VIP Gold");
- case 3: formatex(vip_type, charsmax(vip_type), "VIP Platina");
- }
- color(id, ".v%s.g Acest echipament este pentru.e %s.g!", TAG, vip_type);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(player_data[id][money] < icost)
- {
- color(id, ".v%s.g Nu ai bani pentru.e %s.g!", TAG, iname);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- switch(ialive)
- {
- case 0:
- {
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii mort pentru a folosi.e %s.g!", TAG, iname);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- }
- case 1:
- {
- if(!flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii in viata pentru a folosi.e %s.g!", TAG, iname);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- }
- }
- menu_destroy(menu);
- flag_set(g_lockshop, id)
- set_task(SHOP_DELAY, "unlock_shop", id+TASK_DELAY_SHOP);
- buy_extra_item(id, itemid);
- return PLUGIN_HANDLED;
- }
- buy_extra_item(id, itemid, ignore = 0)
- {
- ExecuteForward(g_forward_item_selected, g_fwdummyresult, id, itemid);
- if(player_data[id][blockbuy])
- {
- player_data[id][blockbuy] = false;
- return;
- }
- new iteam = ArrayGetCell(item_team, itemid);
- new icost;
- if(iteam == 0)
- {
- icost = ArrayGetCell(item_cost, itemid);
- if(player_data[id][money] < icost && ignore == 0)
- {
- color(id, ".v%s.g Nu ai destui bani pentru acest item!", TAG);
- return;
- }
- }
- if(iteam != get_user_team(id) && iteam > 0)
- {
- color(id, ".v%s.g Acest item nu este pentru echipa ta!", TAG);
- return;
- }
- icost = ArrayGetCell(item_cost, itemid);
- if(player_data[id][money] < icost && !ignore)
- {
- color(id, ".v%s.g Nu ai destui bani pentru acest item!", TAG);
- return;
- }
- take_money(id, icost, 0);
- }
- public unlock_shop(taskid)
- {
- if(!flag_get(g_isconnected, ID_DELAY_SHOP))
- return;
- flag_unset(g_lockshop, ID_DELAY_SHOP)
- }
- // Comanda blocata.
- public block_cmd(id)
- {
- if(should_autojoin(id))
- return PLUGIN_CONTINUE;
- return PLUGIN_HANDLED;
- }
- // Blocarea shopului
- public msg_satus_icon(msgid, msgdest, id)
- {
- static szIcon[8];
- get_msg_arg_string(2, szIcon, 7);
- if(equal(szIcon, "buyzone") && get_msg_arg_int(1))
- {
- set_pdata_int(id, 235, get_pdata_int(id, 235) & ~(1<<0));
- return PLUGIN_HANDLED;
- }
- return PLUGIN_CONTINUE;
- }
- // Stergerea armelor dupa 1 secunda.
- public fm_setmodel(entity, const model[])
- {
- if(strlen(model) < 8)
- return FMRES_IGNORED;
- if(model[9] == 'c' && model[10] == '4' || model[9] == 'b' && model[10] == 'a')
- return FMRES_IGNORED;
- static classname[10];
- pev(entity, pev_classname, classname, charsmax(classname));
- if(equal(classname, "weaponbox"))
- {
- set_pev(entity, pev_nextthink, get_gametime() + 0.01);
- return FMRES_IGNORED;
- }
- return FMRES_IGNORED;
- }
- // Inceput runda (inainte de freezetime)
- public event_hltv()
- {
- take_shits();
- msg_create_fog(0, 0, 0, 0);
- set_lights("a");
- g_endround = false;
- g_freezetime = true;
- for(new i = 1; i <= g_maxplayers; i++)
- {
- if(!flag_get(g_isconnected, i))
- continue;
- if(para_ent[i] > 0)
- {
- remove_entity(para_ent[i]);
- para_ent[i] = 0;
- }
- }
- seconds_new = g_time_freeze;
- set_task(0.1, "countdown");
- g_canplant = false;
- remove_task(16969);
- new Float:flTime = (g_time_freeze + g_roundtime * 60) - 60.0;
- set_task(flTime, "task_CanPlant", 16969);
- }
- // Blocarea C4-ului inainte sa poata fi plantata.
- public ham_PrimaryAttack_C4(iEnt)
- {
- new id = pev(iEnt, pev_owner);
- if(!g_canplant)
- {
- client_print(id, print_center, "Doar in ultimul minut poti planta bomba!");
- return HAM_SUPERCEDE;
- }
- return HAM_IGNORED;
- }
- // Functia blocare he.
- public ham_PrimaryAttack_He(iEnt)
- {
- new id = pev(iEnt, pev_owner);
- if(g_bombplanted)
- {
- client_print(id, print_center, "Nu poti arunca HE pentru ca bomba este plantata!");
- return HAM_SUPERCEDE;
- }
- if(flag_get(g_locknade, id))
- {
- client_print(id, print_center, "Nu poti arunca acum...");
- return HAM_SUPERCEDE;
- }
- return HAM_IGNORED;
- }
- // Task-ul in care setam posibilitatea plantarii bombei.
- public task_CanPlant()
- {
- g_canplant = true;
- set_lights("f");
- set_hudmessage(255, 51, 51, -1.0, 0.06, 1, 3.1, 3.0)
- show_hudmessage(0, "Bomba poate fi plantata!");
- }
- // Inceput runda dupa freezetime.
- public round_start()
- {
- g_freezetime = false;
- g_bombplanted = false;
- for(new i = 1; i <= g_maxplayers; i++)
- {
- if(!flag_get(g_isalive, i))
- continue;
- ExecuteHamB(Ham_Item_PreFrame, i);
- }
- set_lights("i");
- g_firstblood = false;
- }
- // Comanda de drop blocata.
- public drop_block(id)
- {
- if(!flag_get(g_isalive, id))
- return PLUGIN_CONTINUE;
- client_print(id, print_center, "Nu poti arunca arma.");
- return PLUGIN_HANDLED;
- }
- public free_ammo(id)
- set_pdata_int(id, 376 + read_data(1), 69, 5);
- // Functia de viteza
- public reset_max_speed(id)
- {
- if(!flag_get(g_isalive, id))
- return;
- if(g_endround || g_freezetime)
- {
- set_pev(id, pev_maxspeed, 0.1);
- return;
- }
- if(flag_get(g_isfurien, id))
- set_pev(id, pev_maxspeed, 850.0);
- }
- public message_show_menu(msgid, dest, id)
- {
- if(!should_autojoin(id))
- return PLUGIN_CONTINUE;
- static team_select[] = "#Team_Select";
- static menu_text_code[sizeof team_select];
- get_msg_arg_string(4, menu_text_code, charsmax(menu_text_code));
- if(!equal(menu_text_code, team_select))
- return PLUGIN_CONTINUE;
- set_force_team_join_task(id, msgid);
- return PLUGIN_HANDLED;
- }
- public message_vgui_menu(msgid, dest, id)
- {
- if(get_msg_arg_int(1) != 2 || !should_autojoin(id))
- return PLUGIN_CONTINUE;
- set_force_team_join_task(id, msgid);
- return PLUGIN_HANDLED;
- }
- // Sfarsit runda.
- public end_round()
- {
- g_freezetime = false;
- g_lastannounce = 0;
- g_endround = true;
- g_firstblood = false;
- c4_lefts = -1;
- for(new id = 1; id <= g_maxplayers; id++)
- {
- if(para_ent[id] > 0)
- {
- remove_entity(para_ent[id]);
- para_ent[id] = 0;
- }
- if(!flag_get(g_isconnected, id))
- continue;
- if(flag_get(g_isalive, id))
- {
- strip_user_weapons(id);
- ExecuteHamB(Ham_Item_PreFrame, id);
- set_user_godmode(id, 1);
- }
- if(!check_is_attending(id))
- {
- reset_bet(id);
- continue;
- }
- if(flag_get(g_isalive, g_betplayer[id][0]))
- g_betplayer[id][3] = 3;
- if(!flag_get(g_isalive, g_betplayer[id][0]))
- g_betplayer[id][3] = 2;
- }
- remove_task(29696);
- }
- // Trail la grenada
- public grenade_throw(id, gid, wid)
- {
- new r, g, b;
- switch(wid)
- {
- case CSW_HEGRENADE:
- {
- r = 200, g = 0, b = 0;
- set_task(GRENADE_DELAY, "unlock_nade", id+TASK_THROW_HE);
- flag_set(g_locknade, id);
- }
- case CSW_FLASHBANG: r = 0, g = 0, b = 200;
- }
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
- write_byte(TE_BEAMFOLLOW);
- write_short(gid);
- write_short(g_trail);
- write_byte(10);
- write_byte(5);
- write_byte(r);
- write_byte(g);
- write_byte(b);
- write_byte(192);
- message_end();
- }
- // meniul de arme
- public menu_weapons(id)
- {
- if(!flag_get(g_isalive, id) || flag_get(g_isfurien, id))
- return;
- new menu = menu_create("\yAlege o arma:", "guns_handler");
- menu_additem(menu, "\rArme noi", "");
- if(g_gunsselect[id] == 0)
- menu_additem(menu, "\dUltimele arme", "");
- else
- menu_additem(menu, "\rUltimele arme", "");
- if(g_gunsselect[id] == 0)
- menu_additem(menu, "\dUltimele arme [auto]", "");
- else
- menu_additem(menu, "\rUltimele arme [auto]", "");
- menu_display(id, menu, 0);
- }
- // spatele meniului de arme
- public guns_handler(id, menu, item)
- {
- if(!flag_get(g_isalive, id) || flag_get(g_isfurien, id))
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- switch(item)
- {
- case 0:
- {
- menu_destroy(menu);
- primary_weap(id);
- return PLUGIN_HANDLED;
- }
- case 1:
- {
- if(g_gunsselect[id] == 0)
- {
- menu_destroy(menu);
- menu_weapons(id);
- return PLUGIN_HANDLED;
- }
- else
- {
- menu_destroy(menu);
- g_gunsselect[id] = 2;
- set_guns(id);
- return PLUGIN_HANDLED;
- }
- }
- case 2:
- {
- if(g_gunsselect[id] == 0)
- {
- menu_destroy(menu);
- menu_weapons(id);
- return PLUGIN_HANDLED;
- }
- else
- {
- menu_destroy(menu);
- g_gunsselect[id] = 3;
- set_guns(id);
- return PLUGIN_HANDLED;
- }
- }
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public ham_take_damage(vic, inf, att, Float:dmg, dmgbits)
- {
- if(!is_user_connected(att) || !is_user_connected(vic))
- return HAM_IGNORED;
- if(!flag_get(g_isalive, att))
- return HAM_IGNORED;
- if(dmgbits & DMG_FALL || g_endround)
- return HAM_SUPERCEDE;
- switch(player_data[att][isvip])
- {
- case 1: dmg += 2.0;
- case 2: dmg += 4.0;
- case 3: dmg += 6.0;
- }
- if((vic == att) && (dmgbits & (1<<24)))
- return HAM_SUPERCEDE;
- if((dmgbits & (1<<24)) && flag_get(g_isalive, vic) && player_data[vic][isvip] == 3 && random_num(1, 100) > 65)
- {
- client_print(vic, print_center, "Ai evitat grenada lui %s", player_data[att][user_name]);
- return HAM_SUPERCEDE;
- }
- if((dmgbits & (1<<24)) && flag_get(g_isalive, vic) && player_data[vic][isvip] == 2 && random_num(1, 100) > 80)
- {
- client_print(vic, print_center, "Ai evitat grenada lui %s", player_data[att][user_name]);
- return HAM_SUPERCEDE;
- }
- SetHamParamFloat(4, dmg);
- return HAM_IGNORED;
- }
- public hook_say(id)
- {
- if(!flag_get(g_isconnected, id) || !get_user_team(id))
- return PLUGIN_HANDLED;
- new chat[192];
- read_args(chat, charsmax(chat))
- remove_quotes(chat);
- if(!chat[0])
- return PLUGIN_CONTINUE;
- if(player_stats[id][gag])
- {
- color(id, ".v%s.g Chat-ul tau este restrictionat pentru inca.e %d minute.g!", TAG, player_stats[id][gag]);
- color(id, ".v%s.g Ai primit restrictionarea de la.e %s.g pentru.v %s.g!", TAG, player_stats[id][gagadmin], player_stats[id][gagreason]);
- return PLUGIN_HANDLED;
- }
- if(fnGetNumbers(chat))
- {
- color(id, ".v%s.g Tentativa la o reclama IP gasita!", TAG);
- return PLUGIN_HANDLED;
- }
- new chat_len = strlen(chat);
- if(chat_len >= 70)
- {
- color(id, ".v%s.g Mesajul tau contine mai mult de 70 de caractere!", TAG);
- return PLUGIN_HANDLED;
- }
- if(fnGetAdString(chat))
- {
- color(id, ".v%s.g Tentativa de reclama DNS gasita!", TAG);
- return PLUGIN_HANDLED;
- }
- new i = 0;
- for(i = 0; i < sizeof block_messages; i++)
- {
- if(contain(chat, block_messages[i]) != -1)
- {
- replace_all(chat, charsmax(chat), block_messages[i], " ");
- color(id, ".v%s.g Ai utilizat un caracter interzis!", TAG);
- return PLUGIN_HANDLED;
- }
- }
- for(i = 0; i < sizeof hints_chat; i++)
- {
- if(contain(chat, hints_chat[i][0]) != -1)
- {
- set_hudmessage(255, 85, 255, 0.0, 0.64, 1, 3.1, 3.0);
- ShowSyncHudMsg(id, g_synchudh, "%s", hints_chat[i][1]);
- break;
- }
- }
- new bool:is_badlang = false;
- for(i = 0; i < sizeof bad_lang; i++)
- {
- if(contain(chat, bad_lang[i]) != -1)
- {
- is_badlang = true;
- break;
- }
- }
- if(is_badlang)
- {
- player_stats[id][badlang]++;
- if(player_stats[id][badlang] > 2)
- {
- player_stats[id][badlang] = 0;
- player_stats[id][gag] = 5;
- copy(player_stats[id][gagadmin], 31, "SERVER");
- copy(player_stats[id][gagreason], 16, "3 injuraturi");
- player_stats[id][gagtimes]++;
- color(id, ".v%s.g Ai primit.e gag.g pentru 5 minute!", TAG);
- }
- else
- {
- color(id, ".v%s.g Aceasta este a.e %d.g tentativa de injuraturi!", TAG, player_stats[id][badlang]);
- color(id, ".v%s.g La 3 injuraturi primesti automat gag!", TAG);
- }
- return PLUGIN_HANDLED;
- }
- new users_team = fm_cs_get_user_team(id);
- switch(get_user_team(id))
- {
- case 1:
- {
- if(flag_get(g_isalive, id))
- {
- if(flag_get(g_loaded, id))
- {
- if(get_user_flags(id) & VIP_FLAG_PLATINUM)
- {
- if(player_data[id][tagname][0])
- color_chat(0, id, users_team, RED, "^4[^3 %s^4 ]^3 %s:^4 %s", player_data[id][tagname], player_data[id][user_name], chat);
- else
- color_chat(0, id, users_team, RED, "^4[ PLATINA ]^3 %s:^4 %s", player_data[id][user_name], chat);
- }
- else if(get_user_flags(id) & VIP_FLAG_GOLD)
- color_chat(0, id, users_team, RED, "^4[ GOLD ]^3 %s:^4 %s", player_data[id][user_name], chat);
- else if(get_user_flags(id) & VIP_FLAG_SILVER)
- color_chat(0, id, users_team, RED, "^4[ SILVER ]^3 %s:^4 %s", player_data[id][user_name], chat);
- else
- color_chat(0, id, users_team, RED, "^3%s:^1 %s", player_data[id][user_name], chat);
- }
- else
- color(id, ".v%s.g Este necesar sa te spawnezi pentru a folosi chatul!", TAG);
- }
- else
- {
- if(flag_get(g_loaded, id))
- {
- if(get_user_flags(id) & VIP_FLAG_PLATINUM)
- {
- if(player_data[id][tagname][0])
- color_chat(0, id, users_team, RED, "^4[^3 %s^4 ]^3 *DEAD* %s:^4 %s", player_data[id][tagname], player_data[id][user_name], chat);
- else
- color_chat(0, id, users_team, RED, "^4[ PLATINA ]^3 *DEAD* %s:^4 %s", player_data[id][user_name], chat);
- }
- else if(get_user_flags(id) & VIP_FLAG_GOLD)
- color_chat(0, id, users_team, RED, "^4[ GOLD ]^3 *DEAD* %s:^4 %s", player_data[id][user_name], chat);
- else if(get_user_flags(id) & VIP_FLAG_SILVER)
- color_chat(0, id, users_team, RED, "^4[ SILVER ]^3 *DEAD* %s:^4 %s", player_data[id][user_name], chat);
- else
- color_chat(0, id, users_team, RED, "^3*DEAD* %s:^1 %s", player_data[id][user_name], chat);
- }
- else
- color(id, ".v%s.g Este necesar sa te spawnezi pentru a folosi chatul!", TAG);
- }
- }
- case 2:
- {
- if(flag_get(g_isalive, id))
- {
- if(flag_get(g_loaded, id))
- {
- if(get_user_flags(id) & VIP_FLAG_PLATINUM)
- {
- if(player_data[id][tagname][0])
- color_chat(0, id, users_team, BLUE, "^4[^3 %s^4 ]^3 %s:^4 %s", player_data[id][tagname], player_data[id][user_name], chat);
- else
- color_chat(0, id, users_team, BLUE, "^4[ PLATINA ]^3 %s:^4 %s", player_data[id][user_name], chat);
- }
- else if(get_user_flags(id) & VIP_FLAG_GOLD)
- color_chat(0, id, users_team, BLUE, "^4[ GOLD ]^3 %s:^4 %s", player_data[id][user_name], chat);
- else if(get_user_flags(id) & VIP_FLAG_SILVER)
- color_chat(0, id, users_team, BLUE, "^4[ SILVER ]^3 %s:^4 %s", player_data[id][user_name], chat);
- else
- color_chat(0, id, users_team, BLUE, "^3%s:^1 %s", player_data[id][user_name], chat);
- }
- else
- color(id, ".v%s.g Este necesar sa te spawnezi pentru a folosi chatul!", TAG);
- }
- else
- {
- if(flag_get(g_loaded, id))
- {
- if(get_user_flags(id) & VIP_FLAG_PLATINUM)
- {
- if(player_data[id][tagname][0])
- color_chat(0, id, users_team, BLUE, "^4[^3 %s^4 ]^3 *DEAD* %s:^4 %s", player_data[id][tagname], player_data[id][user_name], chat);
- else
- color_chat(0, id, users_team, BLUE, "^4[ PLATINA ]^3 *DEAD* %s:^4 %s", player_data[id][user_name], chat);
- }
- else if(get_user_flags(id) & VIP_FLAG_GOLD)
- color_chat(0, id, users_team, BLUE, "^4[ GOLD ]^3 *DEAD* %s:^4 %s", player_data[id][user_name], chat);
- else if(get_user_flags(id) & VIP_FLAG_SILVER)
- color_chat(0, id, users_team, BLUE, "^4[ SILVER ]^3 *DEAD* %s:^4 %s", player_data[id][user_name], chat);
- else
- color_chat(0, id, users_team, BLUE, "^3*DEAD* %s:^1 %s", player_data[id][user_name], chat);
- }
- else
- color(id, ".v%s.g Este necesar sa te spawnezi pentru a folosi chatul!", TAG);
- }
- }
- case 3:
- {
- if(flag_get(g_isalive, id))
- {
- if(flag_get(g_loaded, id))
- color(id, ".v%s.g Nu poti scrie mesaje ca spectator in viata!", TAG);
- else
- color(id, ".v%s.g Este necesar sa te spawnezi pentru a folosi chatul!", TAG);
- }
- else
- {
- if(flag_get(g_loaded, id))
- {
- if(get_user_flags(id) & VIP_FLAG_PLATINUM)
- {
- if(player_data[id][tagname][0])
- color_chat(0, id, users_team, GREY, "^4[^3 %s^4 ]^3 *SPEC* %s:^4 %s", player_data[id][tagname], player_data[id][user_name], chat);
- else
- color_chat(0, id, users_team, GREY, "^4[ PLATINA ]^3 *SPEC* %s:^4 %s", player_data[id][user_name], chat);
- }
- else if(get_user_flags(id) & VIP_FLAG_GOLD)
- color_chat(0, id, users_team, GREY, "^4[ GOLD ]^3 *SPEC* %s:^4 %s", player_data[id][user_name], chat);
- else if(get_user_flags(id) & VIP_FLAG_SILVER)
- color_chat(0, id, users_team, GREY, "^4[ SILVER ]^3 *SPEC* %s:^4 %s", player_data[id][user_name], chat);
- else
- color_chat(0, id, users_team, GREY, "^3*SPEC* %s:^1 %s", player_data[id][user_name], chat);
- }
- else
- color(id, ".v%s.g Este necesar sa te spawnezi pentru a folosi chatul!", TAG);
- }
- }
- }
- return PLUGIN_HANDLED;
- }
- public hook_chat(id)
- {
- if(!flag_get(g_isconnected, id))
- return PLUGIN_HANDLED;
- new message[192];
- read_args(message, charsmax(message));
- remove_quotes(message);
- for(new i = 0; i < sizeof block_messages; i++)
- {
- if(contain(message, block_messages[i]) != -1)
- {
- replace_all(message, charsmax(message), block_messages[i], " ")
- return PLUGIN_HANDLED;
- }
- }
- if(strlen(message) > 80)
- {
- color(id, ".v%s.g Mesajul scris de tine este prea lung!", TAG);
- return PLUGIN_HANDLED;
- }
- if(strlen(message) < 2)
- {
- color(id, ".v%s.g Mesajul scris de tine este prea scurt!", TAG);
- return PLUGIN_HANDLED;
- }
- if(!message[0])
- return PLUGIN_CONTINUE;
- new zzzzz[15], admin = 100;
- new players[32], inum;
- get_players(players, inum);
- for(new i = 0; i < sizeof flags_players; i++)
- {
- if(get_user_flags(id) == read_flags(flags_players[i][1]))
- {
- admin = i;
- break;
- }
- }
- if(admin == 100)
- formatex(zzzzz, charsmax(zzzzz), "Jucator");
- else
- formatex(zzzzz, charsmax(zzzzz), "%s", flags_players[admin][0]);
- for(new i = 0; i < inum; ++i)
- {
- if(players[i] != id && get_user_flags(players[i]) & ADMIN_SLAY)
- colored_print(players[i], "^x01[^x04%s^x01]^x04 %s^x01:^x03 %s^x01", zzzzz, player_data[id][user_name], message);
- }
- colored_print(id, "^x01[^x04%s^x01]^x04 %s^x01:^x03 %s^x01", zzzzz, player_data[id][user_name], message);
- return PLUGIN_HANDLED;
- }
- public primary_weap(id)
- {
- if(!flag_get(g_isalive, id) || flag_get(g_isfurien, id))
- return
- new menu_head[128], menu_item[128], tasta[2];
- formatex(menu_head, charsmax(menu_head), "\yAlege arma principala:")
- new menu = menu_create(menu_head, "primary_handled")
- for(new i = 1; i < sizeof PRIMARY_NAME; i++)
- {
- if(VIP_ONLY_PRIMARY[i] == 1)
- formatex(menu_item, charsmax(menu_item), "\r%s \y[VIP ONLY]", PRIMARY_NAME[i]);
- else
- formatex(menu_item, charsmax(menu_item), "\r%s", PRIMARY_NAME[i]);
- tasta[0] = i;
- tasta[1] = 0;
- menu_additem(menu, menu_item, tasta);
- }
- menu_display(id, menu, 0);
- }
- public primary_handled(id, menu, item)
- {
- if(!flag_get(g_isalive, id) || flag_get(g_isfurien, id))
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(VIP_ONLY_PRIMARY[item+1] == 1 && !player_data[id][isvip])
- {
- menu_destroy(menu);
- primary_weap(id);
- color(id, ".v%s.g Aceasta arma este doar pentru.e VIP.g!", TAG);
- return PLUGIN_HANDLED;
- }
- g_primary_select[id] = item + 1;
- menu_destroy(menu);
- secondary_weap(id);
- return PLUGIN_HANDLED;
- }
- public secondary_weap(id)
- {
- if(!flag_get(g_isalive, id) || flag_get(g_isfurien, id))
- return;
- new menu_head[128], menu_item[128], tasta[2];
- formatex(menu_head, charsmax(menu_head), "\yAlege arma secundara:");
- new menu = menu_create(menu_head, "secondary_handled");
- for(new i = 1; i < sizeof SECONDARY_NAME; i++)
- {
- if(VIP_ONLY_SECONDARY[i] == 1)
- formatex(menu_item, charsmax(menu_item), "\r%s\y [VIP ONLY]", SECONDARY_NAME[i]);
- else
- formatex(menu_item, charsmax(menu_item), "\r%s", SECONDARY_NAME[i]);
- tasta[0] = i;
- tasta[1] = 0;
- menu_additem(menu, menu_item, tasta);
- }
- menu_display(id, menu, 0)
- }
- public secondary_handled(id, menu, item)
- {
- if(!flag_get(g_isalive, id) || flag_get(g_isfurien, id))
- return PLUGIN_HANDLED;
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(VIP_ONLY_SECONDARY[item +1] == 1 && !player_data[id][isvip])
- {
- menu_destroy(menu);
- secondary_weap(id);
- color(id, ".v%s.g Aceasta arma este doar pentru.e VIP.g!", TAG);
- return PLUGIN_HANDLED;
- }
- g_secondary_select[id] = item + 1;
- menu_destroy(menu);
- g_gunsselect[id] = 1;
- set_guns(id);
- return PLUGIN_HANDLED;
- }
- public set_guns(id)
- {
- if(!flag_get(g_isalive, id) || flag_get(g_isfurien, id))
- return;
- ham_give_weapon(id, wp_give_primary[g_primary_select[id]]);
- cs_set_user_bpammo(id, bullets_primary[g_primary_select[id]], 250);
- ham_give_weapon(id, wp_give_secondary[g_secondary_select[id]]);
- cs_set_user_bpammo(id, bullets_secondary[g_secondary_select[id]], 250);
- ham_give_weapon(id, "weapon_hegrenade");
- ham_give_weapon(id, "weapon_knife");
- flag_set(g_cmdguns, id)
- }
- public client_command(id)
- {
- new arg[100];
- read_argv(0, arg, charsmax(arg));
- if(contain("%", arg) != -1 || contain("spawn 1 1", arg) != -1)
- {
- console_print(id, "Am gasit caractere ilegale!");
- return PLUGIN_HANDLED;
- }
- return PLUGIN_CONTINUE;
- }
- public countdown()
- {
- if(g_endround)
- return;
- set_hudmessage(random(255), random(255), random(255), -1.0, 0.24, 1, 0.0, 1.0, 0.0, 0.0);
- if(seconds_new == 0)
- {
- show_hudmessage(0, "PREGATESTE-TE DE LUPTA!");
- return;
- }
- show_hudmessage(0, "Razboiul incepe in %d secund%s", seconds_new, seconds_new > 1 ? "e" : "a");
- seconds_new -= 1;
- set_task(1.0, "countdown");
- }
- public client_putinserver(id)
- init_player(id, 0);
- public spawn_post(id)
- {
- if(!is_user_alive(id))
- return;
- if(!flag_get(g_loaded, id))
- {
- took_data(id);
- set_task(60.0, "increase_minutes", id+TASK_MINUTES, _, _, "b");
- }
- set_user_godmode(id, 0);
- player_data[id][blockbuy] = false;
- strip_user_weapons(id);
- set_user_rendering(id);
- ExecuteHamB(Ham_Item_PreFrame, id);
- flag_set(g_isalive, id)
- flag_unset(g_lockshop, id)
- flag_unset(g_locknade, id)
- switch(player_data[id][isvip])
- {
- case 0: set_user_health(id, HP_NORMAL_PLAYER_START), set_user_armor(id, AP_NORMAL_PLAYER_START);
- case 1: set_user_health(id, HP_VIP_SILVER_START), set_user_armor(id, AP_VIP_SILVER_START);
- case 2: set_user_health(id, HP_VIP_GOLD_START), set_user_armor(id, AP_VIP_GOLD_START);
- case 3: set_user_health(id, HP_VIP_PLATINUM_START), set_user_armor(id, AP_VIP_PLATINUM_START);
- }
- if(check_is_attending(id))
- set_task(0.1, "give_money_to_bitch", id);
- else
- reset_bet(id);
- switch(get_user_team(id))
- {
- case 1:
- {
- flag_set(g_isfurien, id)
- set_user_footsteps(id, 1);
- ham_give_weapon(id, "weapon_knife");
- ham_give_weapon(id, "weapon_hegrenade");
- //ham_give_weapon(id, "weapon_flashbang");
- set_user_gravity(id, 0.375);
- }
- case 2:
- {
- flag_unset(g_isfurien, id)
- set_user_footsteps(id, 0);
- set_user_gravity(id, 1.0);
- flag_unset(g_cmdguns, id)
- if(g_gunsselect[id] == 3)
- set_guns(id);
- else
- menu_weapons(id);
- }
- }
- }
- public give_money_to_bitch(id)
- {
- switch(g_betplayer[id][3])
- {
- case 1: color(id, ".v%s.g Cum ai facut asta? Am facut screenshot!", TAG), client_cmd(id, "snapshot");
- case 2: color(id, ".v%s.g Ai pierdut pariul!", TAG);
- case 3:
- {
- color(id, ".v%s.g Ai castigat pariul! Au fost adaugati:.e %d$.g!", TAG, g_betplayer[id][1]);
- add_money(id, g_betplayer[id][1], 0);
- }
- }
- reset_bet(id);
- }
- public kill_player(victim, attacker)
- {
- if(!is_user_connected(attacker) || !is_user_connected(victim))
- return;
- flag_unset(g_isalive, victim)
- player_data[victim][bonuskill] = 0;
- if(para_ent[victim] > 0)
- {
- remove_entity(para_ent[victim]);
- para_ent[victim] = 0;
- }
- new selfkill = (victim == attacker || !flag_get(g_isconnected, attacker)) ? true : false
- strip_user_weapons(victim);
- if(selfkill)
- return;
- switch(player_data[attacker][isvip])
- {
- case 0:
- {
- set_user_health(attacker, clamp(get_user_health(attacker) + HPAP_NORMAL_REWARD, 1, MAX_HP));
- set_user_armor(attacker, clamp(get_user_armor(attacker) + HPAP_NORMAL_REWARD, 1, MAX_AP));
- add_money(attacker, MONEY_PLAYER_REWARD, KILL_REWARD_MESSAGE);
- }
- case 1:
- {
- set_user_health(attacker, clamp(get_user_health(attacker) + HPAP_SILVER_REWARD, 1, MAX_HP));
- set_user_armor(attacker, clamp(get_user_armor(attacker) + HPAP_SILVER_REWARD, 1, MAX_AP));
- add_money(attacker, MONEY_SILVER_REWARD, KILL_REWARD_MESSAGE);
- }
- case 2:
- {
- set_user_health(attacker, clamp(get_user_health(attacker) + HPAP_GOLD_REWARD, 1, MAX_HP));
- set_user_armor(attacker, clamp(get_user_armor(attacker) + HPAP_GOLD_REWARD, 1, MAX_AP));
- add_money(attacker, MONEY_GOLD_REWARD, KILL_REWARD_MESSAGE);
- }
- case 3:
- {
- set_user_health(attacker, clamp(get_user_health(attacker) + HPAP_PLATINUM_REWARD, 1, MAX_HP));
- set_user_armor(attacker, clamp(get_user_armor(attacker) + HPAP_PLATINUM_REWARD, 1, MAX_AP));
- add_money(attacker, MONEY_PLATINUM_REWARD, KILL_REWARD_MESSAGE);
- }
- }
- if(flag_get(g_isfurien, attacker))
- SetHamParamInteger(3, 2);
- player_data[attacker][bonuskill]++;
- if(player_data[attacker][bonuskill] == KILL_BONUS)
- {
- if(player_stats[attacker][hints] == 2)
- {
- set_hudmessage(255, 85, 255, 0.0, 0.64, 1, 3.1, 3.0);
- ShowSyncHudMsg(attacker, g_synchudh, "Pentru a selecta tipul de bonus pe care-l primesti scrie /bonus pe chat!");
- }
- if(!player_stats[attacker][bonus])
- bonus_menu(attacker);
- else
- {
- switch(player_stats[attacker][bonus])
- {
- case 1: cs_set_user_bpammo(attacker, CSW_HEGRENADE, 1);
- case 2: add_money(attacker, REWARD_KILL_BONUS, BONUS_REWARD_MESSAGE);
- case 3: set_user_health(attacker, get_user_health(attacker) + 50);
- case 4: set_user_armor(attacker, get_user_armor(attacker) + 50);
- case 5: cs_set_user_bpammo(attacker, CSW_FLASHBANG, 1);
- }
- }
- player_data[attacker][bonuskill] = 0;
- }
- if(player_stats[attacker][hints] == 2 && player_data[attacker][money] > 31000)
- {
- set_hudmessage(255, 85, 255, 0.0, 0.64, 1, 3.1, 3.0);
- ShowSyncHudMsg(attacker, g_synchudh, "Vrei sa-i trimiti unui jucator bani? Scrie /transfer pe chat!");
- }
- if(player_stats[victim][hints] == 2)
- {
- set_hudmessage(255, 85, 255, 0.0, 0.64, 1, 3.1, 3.0);
- ShowSyncHudMsg(victim, g_synchudh, "Vrei sa pariezi pe un jucator sau o echipa? Scrie /bet pe chat!");
- }
- }
- public bonus_menu(id)
- {
- if(!loaded(id))
- return;
- new menu, menu_item[128];
- formatex(menu_item, charsmax(menu_item), "\rAlege un bonus:");
- menu = menu_create(menu_item, "bonus_handler");
- for(new i = 1; i < sizeof bonus_items; i++)
- {
- if(player_stats[id][bonus] == i)
- formatex(menu_item, charsmax(menu_item), "\y%s\r [X]", bonus_items[i]);
- else
- formatex(menu_item, charsmax(menu_item), "\y%s", bonus_items[i]);
- menu_additem(menu, menu_item, "");
- }
- menu_display(id, menu, 0);
- return;
- }
- public bonus_handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return;
- }
- if(!loaded(id))
- return;
- if(item + 1 == player_stats[id][bonus])
- {
- color(id, ".v%s.g Ai deja selectat acest bonus!", TAG);
- return;
- }
- player_stats[id][bonus] = item + 1;
- color(id, ".v%s.g Ai selectat bonusul.e %s.g!", TAG, bonus_items[player_stats[id][bonus]]);
- return;
- }
- public client_death(killer, victim, wpnindex, hitplace, TK)
- {
- if(wpnindex == CSW_C4)
- return
- if(flag_get(g_isconnected, victim))
- {
- new ppl[32], pplnum = 0;
- new epplnum = 0;
- new team = get_user_team(victim), other_team;
- new enemy_team = (team == 1) ? 2 : 1
- if(team == 1 || team == 2)
- {
- for(new i = 1; i <= g_maxplayers; i++)
- {
- if(!flag_get(g_isconnected, i) || i == victim)
- continue;
- other_team = get_user_team(i);
- if(other_team == team && flag_get(g_isalive, i))
- epplnum++;
- else if(other_team == enemy_team)
- ppl[pplnum++] = i;
- }
- if(pplnum && epplnum)
- {
- switch(team)
- {
- case 1:
- {
- set_hudmessage(255, 51, 51, 0.02, 0.85, 2, 0.05, 0.1, 0.02, 3.0, -1);
- ShowSyncHudMsg(0, g_synchuds, "%d furien%s ramas%s...", epplnum, (epplnum == 1) ? "" : "i", (epplnum == 1) ? "" : "i");
- }
- case 2:
- {
- set_hudmessage(102, 255, 255, 0.02, 0.85, 2, 0.05, 0.1, 0.02, 3.0, -1);
- ShowSyncHudMsg(0, g_synchuds, "%d anti-furien%s ramas%s...", epplnum, (epplnum == 1) ? "" : "i", (epplnum == 1) ? "" : "i");
- }
- }
- }
- }
- }
- new cts[32], ts[32], ctsnum, tsnum, team;
- for (new i = 1; i <= g_maxplayers; i++)
- {
- if(!flag_get(g_isconnected, i) || !flag_get(g_isalive, i))
- continue;
- team = get_user_team(i);
- switch(team)
- {
- case 1: ts[tsnum++] = i;
- case 2: cts[ctsnum++] = i;
- }
- }
- if(ctsnum == 1 && tsnum == 1)
- {
- set_hudmessage(255, 255, 255, -1.0, 0.17, 1, 3.1, 3.0);
- ShowSyncHudMsg(0, g_synchudf, "%s vs %s", player_data[ts[0]][user_name], player_data[cts[0]][user_name]);
- }
- else if(!g_lastannounce)
- {
- new oposite = 0, _team = 0;
- if(ctsnum == 1 && tsnum > 1)
- {
- g_lastannounce = cts[0];
- oposite = tsnum;
- _team = 0
- }
- else if(tsnum == 1 && ctsnum > 1)
- {
- g_lastannounce = ts[0];
- oposite = ctsnum;
- _team = 1;
- }
- if(g_lastannounce)
- {
- if(tsnum == 1)
- set_hudmessage(255, 51, 51, -1.0, 0.17, 1, 3.1, 3.0);
- else if(ctsnum == 1)
- set_hudmessage(102, 255, 255, -1.0, 0.17, 1, 3.1, 3.0);
- new health_msg[64];
- if(LAST_HP == 1)
- formatex(health_msg, charsmax(health_msg), " (%d HP) ", get_user_health(g_lastannounce));
- else
- formatex(health_msg, charsmax(health_msg), " ");
- ShowSyncHudMsg(0, g_synchudf, "%s%svs. %d %s%s", player_data[g_lastannounce][user_name], health_msg, oposite, g_teamsNames[_team], (oposite == 1) ? "" : "I")
- }
- }
- if(!g_lastannounce && !(ctsnum == 1 && tsnum == 1))
- {
- if(!g_firstblood)
- {
- switch(get_user_team(killer))
- {
- case 1: set_hudmessage(255, 51, 51, -1.0, 0.06, 0, 4.1, 4.0);
- case 2: set_hudmessage(51, 51, 255, -1.0, 0.06, 0, 4.1, 4.0);
- }
- show_hudmessage(0, "%s a facut prima victima si a primit %d$!", player_data[killer][user_name], FIRST_BLOOD_BONUS);
- add_money(killer, FIRST_BLOOD_BONUS, 0);
- g_firstblood = true;
- }
- }
- }
- public FWD_AddToFullPack(es, e, ent, host, host_flags, player, p_set)
- {
- if(is_user_connected(ent) && is_user_connected(host) && flag_get(g_isalive, ent))
- {
- if(flag_get(g_isalive, host) && flag_get(g_isfurien, ent) && flag_get(g_isfurien, host)
- || !flag_get(g_isalive, host) && flag_get(g_isfurien, ent) && pev(host, pev_iuser2) == ent
- || flag_get(g_isfurien, ent) && pev(ent, pev_maxspeed) <= 1.0)
- {
- set_es(es, ES_RenderFx, kRenderFxNone);
- set_es(es, ES_RenderMode, kRenderTransTexture);
- set_es(es, ES_RenderAmt, 255);
- }
- else if(flag_get(g_isfurien, ent))
- {
- set_es(es, ES_RenderFx, kRenderFxNone);
- set_es(es, ES_RenderMode, kRenderTransTexture);
- static viteza;
- viteza = fm_get_speed(ent);
- if(get_user_weapon(ent) == CSW_KNIFE)
- {
- if(viteza <= 50)
- set_es(es, ES_RenderAmt, viteza/1);
- else
- set_es(es, ES_RenderAmt, 255);
- }
- else
- set_es(es, ES_RenderAmt, 255);
- }
- }
- }
- public FWD_PreThink(id)
- {
- if(!is_user_connected(id))
- return FMRES_IGNORED;
- if(flag_get(g_isalive, id) && flag_get(g_isfurien, id))
- {
- static target, body;
- get_user_aiming(id, target, body, 999);
- if(valid_player(target))
- {
- if(flag_get(g_isalive, target))
- {
- if(flag_get(g_isfurien, target))
- {
- set_hudmessage(127, 0, 0, -1.0, -1.0, 0, 0.0, 0.1, 0.0, 0.0, -1);
- static is_vip[32];
- if(player_data[target][isvip] > 0)
- formatex(is_vip, charsmax(is_vip), " %s", vip_types_names[player_data[target][isvip]]);
- else
- formatex(is_vip, charsmax(is_vip), "");
- show_hudmessage(id, "%s | HP: %d | AP: %d%s", player_data[target][user_name], get_user_health(target), get_user_armor(target), is_vip);
- }
- else
- {
- set_hudmessage(0, 63, 127, -1.0, -1.0, 0, 0.0, 0.1, 0.0, 0.0, -1);
- static is_vip[32];
- if(player_data[target][isvip] > 0)
- formatex(is_vip, charsmax(is_vip), " %s", vip_types_names[player_data[target][isvip]]);
- else
- formatex(is_vip, charsmax(is_vip), "");
- show_hudmessage(id, "%s | HP: %d | AP: %d%s", player_data[target][user_name], get_user_health(target), get_user_armor(target), is_vip);
- }
- }
- }
- }
- return FMRES_IGNORED;
- }
- public CWeaponBox_Touch(iWeaponBox, id)
- {
- if(!is_user_alive(id))
- return HAM_IGNORED;
- if(get_pdata_cbase(iWeaponBox, 39, 4))
- return HAM_IGNORED;
- if(get_user_team(id) == 1)
- return HAM_SUPERCEDE;
- return HAM_IGNORED;
- }
- public GroundWeapon_Touch(iWeapon, id)
- {
- if(!is_user_alive(id))
- return HAM_IGNORED;
- if(get_user_team(id) == 1)
- return HAM_SUPERCEDE;
- return HAM_IGNORED;
- }
- public client_disconnect(id)
- {
- set_data(id);
- init_player(id, 1);
- }
- public changeTeam(id)
- {
- if(!flag_get(g_isconnected, id))
- return;
- switch(cs_get_user_team(id))
- {
- case CS_TEAM_CT: cs_set_user_team(id, CS_TEAM_T);
- case CS_TEAM_T: cs_set_user_team(id, CS_TEAM_CT);
- }
- }
- add_delay(id)
- {
- switch(id)
- {
- case 1..7: set_task(0.15, "changeTeam", id);
- case 8..15: set_task(0.3, "changeTeam", id);
- case 16..23: set_task(0.4, "changeTeam", id);
- case 24..32: set_task(0.55, "changeTeam", id);
- }
- }
- public message_textmsg()
- {
- new textmsg[22];
- get_msg_arg_string(2, textmsg, charsmax(textmsg));
- if(equal(textmsg, "#Terrorists_Win"))
- {
- ScreenFade(0, 0, 0);
- for(new user = 1; user <= g_maxplayers; user++)
- {
- if(!flag_get(g_isconnected, user))
- continue;
- if(flag_get(g_isfurien, user))
- add_money(user, 500, 0);
- if(!check_is_attending(user))
- {
- reset_bet(user);
- continue;
- }
- switch(g_betplayer[user][2])
- {
- case 1: g_betplayer[user][3] = 3;
- case 2: g_betplayer[user][3] = 2;
- }
- }
- set_hudmessage(255, 51, 51, -1.0, 0.06, 0, 4.1, 4.0)
- show_hudmessage(0, "Furienii au castigat!");
- return PLUGIN_HANDLED;
- }
- else if(equal(textmsg, "#CTs_Win"))
- {
- ScreenFade(200, 200, 200);
- for(new user = 1; user <= g_maxplayers; user++)
- {
- if(!flag_get(g_isconnected, user))
- continue;
- if(!flag_get(g_isfurien, user))
- add_money(user, 500, 0);
- add_delay(user);
- if(!check_is_attending(user))
- {
- reset_bet(user);
- continue;
- }
- switch(g_betplayer[user][2])
- {
- case 1: g_betplayer[user][3] = 2;
- case 2: g_betplayer[user][3] = 3;
- }
- }
- set_hudmessage(51, 51, 255, -1.0, 0.06, 0, 4.1, 4.0)
- show_hudmessage(0, "Anti-Furienii au castigat!");
- return PLUGIN_HANDLED;
- }
- else if(equal(textmsg, "#Bomb_Defused"))
- {
- ScreenFade(200, 200, 200);
- for(new user = 1; user <= g_maxplayers; user++)
- {
- if(!flag_get(g_isconnected, user))
- continue
- if(!flag_get(g_isfurien, user))
- add_money(user, 500, 0);
- add_delay(user);
- if(!check_is_attending(user))
- {
- reset_bet(user);
- continue;
- }
- switch(g_betplayer[user][2])
- {
- case 1: g_betplayer[user][3] = 2;
- case 2: g_betplayer[user][3] = 3;
- }
- }
- set_hudmessage(51, 51, 255, -1.0, 0.06, 0, 4.1, 4.0)
- show_hudmessage(0, "Bomba a fost dezamorsata de anti-furieni!");
- return PLUGIN_HANDLED;
- }
- else if(equal(textmsg, "#Bomb_Planted"))
- {
- set_hudmessage(255, 51, 51, -1.0, 0.06, 1, 3.1, 3.0)
- show_hudmessage(0, "Bomba a fost plantata!");
- return PLUGIN_HANDLED;
- }
- else if(equal(textmsg, "#Game_bomb_drop"))
- {
- new mesaj[128], nume[32];
- get_msg_arg_string(3, nume, charsmax(nume));
- formatex(mesaj, charsmax(mesaj), "%s a scapat bomba...", nume);
- set_msg_arg_string(2, mesaj);
- }
- else if(equal(textmsg, "#Game_bomb_pickup"))
- {
- new mesaj[128], nume[32];
- get_msg_arg_string(3, nume, charsmax(nume));
- formatex(mesaj, charsmax(mesaj), "Bravo lui %s. A luat bomba!", nume);
- set_msg_arg_string(2, mesaj);
- }
- else if(equal(textmsg, "#Round_Draw"))
- {
- ScreenFade(0, 0, 0)
- for(new i = 1; i <= g_maxplayers; i++)
- {
- if(!flag_get(g_isconnected, i))
- continue;
- reset_bet(i);
- }
- set_msg_arg_string(2, "Runda provizorie...");
- }
- else if(equal(textmsg, "#Target_Bombed"))
- {
- set_msg_arg_string(2, "Bomba a bubuit!");
- ScreenFade(0, 0, 0);
- for(new user = 1; user <= g_maxplayers; user++)
- {
- if(!flag_get(g_isconnected, user))
- continue
- if(flag_get(g_isfurien, user))
- add_money(user, 500, 0);
- if(!check_is_attending(user))
- {
- reset_bet(user);
- continue;
- }
- switch(g_betplayer[user][2])
- {
- case 1: g_betplayer[user][3] = 3;
- case 2: g_betplayer[user][3] = 2;
- }
- }
- }
- else if(equal(textmsg, "#Target_Saved"))
- {
- for(new user = 1; user <= g_maxplayers; user++)
- {
- if(!flag_get(g_isconnected, user))
- continue
- if(!flag_get(g_isfurien, user))
- add_money(user, 500, 0);
- add_delay(user);
- if(!check_is_attending(user))
- {
- reset_bet(user);
- continue;
- }
- switch(g_betplayer[user][2])
- {
- case 1: g_betplayer[user][3] = 2;
- case 2: g_betplayer[user][3] = 3;
- }
- }
- set_hudmessage(51, 51, 255, -1.0, 0.06, 0, 4.1, 4.0)
- show_hudmessage(0, "Anti-Furienii au rezistat terorii.");
- return PLUGIN_HANDLED;
- }
- else if(equal(textmsg, "#Hostages_Not_Rescued"))
- return PLUGIN_HANDLED;
- if(get_msg_args() == 5)
- {
- get_msg_arg_string(5, textmsg, charsmax(textmsg));
- if(equal(textmsg, "#Fire_in_the_hole"))
- return PLUGIN_HANDLED;
- return PLUGIN_CONTINUE;
- }
- return PLUGIN_CONTINUE;
- }
- public reset_score(id)
- {
- set_user_frags(id, 0);
- cs_set_user_deaths(id, 0);
- set_user_frags(id, 0);
- cs_set_user_deaths(id, 0);
- color(id, ".v%s.g Scorul tau a fost resetat!", TAG);
- return PLUGIN_HANDLED;
- }
- public message_sendaudio()
- {
- new textmsg[18];
- get_msg_arg_string(2, textmsg, charsmax(textmsg));
- if(equal(textmsg, "%!MRAD_FIREINHOLE"))
- return PLUGIN_HANDLED;
- return PLUGIN_CONTINUE;
- }
- public client_PreThink(id)
- {
- if(!flag_get(g_isalive, id))
- return PLUGIN_CONTINUE;
- static newbut, oldbut, plflags;
- newbut = get_user_button(id);
- oldbut = get_user_oldbutton(id);
- plflags = get_entity_flags(id);
- if((newbut & IN_JUMP) && !(plflags & FL_ONGROUND) && !(oldbut & IN_JUMP))
- {
- if(jumpnum[id] < 2)
- {
- dojump[id] = true;
- jumpnum[id]++;
- }
- }
- if((newbut & IN_JUMP) && (plflags & FL_ONGROUND))
- jumpnum[id] = 0;
- if(!(plflags & FL_ONGROUND) && (newbut & IN_USE))
- {
- static Float:velocity[3];
- entity_get_vector(id, EV_VEC_velocity, velocity);
- if(velocity[2] < 0)
- {
- if(para_ent[id] == 0)
- {
- para_ent[id] = create_entity("info_target");
- if(para_ent[id] > 0)
- {
- //entity_set_model(para_ent[id], "models/parachute.mdl");
- entity_set_int(para_ent[id], EV_INT_movetype, MOVETYPE_FOLLOW);
- entity_set_edict(para_ent[id], EV_ENT_aiment, id);
- }
- }
- if(para_ent[id] > 0)
- {
- velocity[2] = (velocity[2] + 40.0 < -100) ? velocity[2] + 40.0 : -100.0
- entity_set_vector(id, EV_VEC_velocity, velocity);
- if (entity_get_float(para_ent[id], EV_FL_frame) < 0.0 || entity_get_float(para_ent[id], EV_FL_frame) > 254.0)
- {
- if(entity_get_int(para_ent[id], EV_INT_sequence) != 1)
- entity_set_int(para_ent[id], EV_INT_sequence, 1);
- entity_set_float(para_ent[id], EV_FL_frame, 0.0);
- }
- else
- entity_set_float(para_ent[id], EV_FL_frame, entity_get_float(para_ent[id], EV_FL_frame) + 1.0)
- }
- }
- else
- {
- if(para_ent[id] > 0)
- {
- remove_entity(para_ent[id]);
- para_ent[id] = 0;
- }
- }
- }
- else
- {
- if(para_ent[id] > 0)
- {
- remove_entity(para_ent[id]);
- para_ent[id] = 0;
- }
- }
- return PLUGIN_CONTINUE;
- }
- public client_PostThink(id)
- {
- if(!flag_get(g_isalive, id))
- return PLUGIN_CONTINUE;
- if(dojump[id] == true)
- {
- static Float:velocity[3];
- entity_get_vector(id, EV_VEC_velocity, velocity);
- velocity[2] = random_float(265.0, 285.0);
- entity_set_vector(id, EV_VEC_velocity, velocity);
- dojump[id] = false;
- }
- return PLUGIN_CONTINUE;
- }
- public onResetHUD(id)
- {
- new hideflags = GetHudHideFlags();
- for(new i = 1; i <= g_maxplayers; i++)
- {
- if(!flag_get(g_isconnected, i))
- continue;
- message_begin(MSG_ONE_UNRELIABLE, g_msg_hideweapon, _, i);
- write_byte(hideflags);
- message_end();
- }
- }
- public HealthHud(taskid)
- {
- static id;
- id = ID_HUD;
- if(!is_user_alive(id))
- {
- id = pev(id, pev_iuser2);
- if(!is_user_alive(id))
- return;
- }
- static rva[3], camp_meter[128];
- if(flag_get(g_isfurien, id))
- {
- rva[0] = 200;
- rva[1] = 50;
- rva[2] = 70;
- formatex(camp_meter, charsmax(camp_meter), "");
- }
- else
- {
- rva[0] = 20
- rva[1] = 50
- rva[2] = 200
- if(get_camp(id) < 0)
- formatex(camp_meter, charsmax(camp_meter), " | CAMP: 0%");
- else
- formatex(camp_meter, charsmax(camp_meter), " | CAMP: %i%", get_camp(id));
- }
- if(id != ID_HUD)
- {
- set_hudmessage(100, 50, 150, -1.0, 0.85, 1, 0.51, 0.5);
- ShowSyncHudMsg(ID_HUD, g_hudsync, "%s^nHP: %d | AP: %d | MONEY: %d$ | BONUS: %d/%d%s", player_data[id][user_name], get_user_health(id), get_user_armor(id), player_data[id][money], player_data[id][bonuskill], KILL_BONUS, camp_meter)
- }
- else
- {
- set_hudmessage(rva[0], rva[1], rva[2], 0.01, 0.94, 0, 0.0, 0.51, 0.5, 0.0)
- show_hudmessage(ID_HUD, "HP: %d | AP: %d | %d$ | BONUS: %d/%d%s", get_user_health(ID_HUD), get_user_armor(ID_HUD), player_data[ID_HUD][money], player_data[ID_HUD][bonuskill], KILL_BONUS, camp_meter)
- }
- }
- public msg_hide_weapon()
- {
- new hideflags = GetHudHideFlags();
- if(hideflags)
- set_msg_arg_int(1, ARG_BYTE, get_msg_arg_int(1) | hideflags);
- }
- public sound_emit(id, channel, const snx[])
- {
- if(snx[0] == 'h' && snx[1] == 'o' && snx[2] == 's' && snx[3] == 't' && snx[4] == 'a' && snx[5] == 'g' && snx[6] == 'e')
- return FMRES_SUPERCEDE;
- return FMRES_IGNORED;
- }
- public bomb_planted(planter)
- {
- if(flag_get(g_loaded, planter))
- add_money(planter, 500, PLANT_REWARD_MESSAGE);
- msg_create_fog(random_num(100, 250), random_num(100, 250), random_num(100, 250), 2);
- g_bombplanted = true;
- c4_lefts = g_c4timer;
- set_task(1.0, "update_timer");
- }
- public update_timer()
- {
- if(c4_lefts < 1)
- {
- c4_lefts = -1;
- return;
- }
- set_hudmessage(random(255), random(255), random(255), -1.0, 0.0, 1, 1.0, 1.0, 0.0, 0.0)
- if(c4_lefts > 0)
- show_hudmessage(0, "%d secund%s ramas%s pana la explozie!", c4_lefts, c4_lefts < 2 ? "a" : "e", c4_lefts < 2 ? "a" : "e")
- c4_lefts--;
- set_task(1.0, "update_timer");
- }
- public bomb_defused(defuser)
- {
- if(flag_get(g_loaded, defuser))
- add_money(defuser, 500, DEFUSE_REWARD_MESSAGE);
- g_bombplanted = false;
- }
- public bomb_explode(planter, defuser)
- g_bombplanted = false;
- public messages_random()
- color(0, ".v%s.g %s", TAG, random_msg_ro[random(sizeof random_msg_ro)]);
- public transfer_menu(id)
- {
- if(!flag_get(g_loaded, id))
- {
- color(id, ".v%s.g Nu ti s-au preluat datele!", TAG);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti transfera la sfarsitul rundei!", TAG);
- return PLUGIN_HANDLED;
- }
- new menu, menu_item[168];
- formatex(menu_item, charsmax(menu_item), "\rMeniul de transfer^nBani:\y %d$", player_data[id][money]);
- menu = menu_create(menu_item, "transfer_handler");
- new userid[32];
- for(new i = 1; i <= g_maxplayers; i++)
- {
- if(!flag_get(g_loaded, i) || i == id)
- continue;
- if(get_user_flags(id) & IS_ADMIN)
- formatex(menu_item, charsmax(menu_item), "\y%s - \r%d$", player_data[i][user_name], player_data[i][money]);
- else
- formatex(menu_item, charsmax(menu_item), "\y%s", player_data[i][user_name]);
- formatex(userid, charsmax(userid), "%d", get_user_userid(i));
- menu_additem(menu, menu_item, userid, 0);
- }
- menu_display(id, menu, 0);
- return PLUGIN_HANDLED;
- }
- public transfer_handler(id, menu, item)
- {
- if(!flag_get(g_isconnected, id) || item == MENU_EXIT)
- {
- menu_destroy(menu);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- if(!flag_get(g_loaded, id))
- {
- color(id, ".v%s.g Nu ti s-au preluat datele!", TAG);
- menu_destroy(menu);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti transfera la sfarsitul rundei!", TAG);
- menu_destroy(menu);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- new menu_data[6], menu_name[64];
- new _access, item_callback;
- menu_item_getinfo(menu, item, _access, menu_data, charsmax(menu_data), menu_name, charsmax(menu_name), item_callback);
- new userid = str_to_num(menu_data);
- new player = find_player("k", userid);
- if(player)
- {
- if(!flag_get(g_loaded, player))
- {
- color(id, ".v%s.g Nu poti face transfer pe acest jucator acum!", TAG);
- menu_destroy(menu);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- client_cmd(id, "messagemode TRANSFER_MONEY");
- g_transfermoney[id][0] = player;
- color(id, ".v%s.g L-ai selectat pe.e %s.g pentru a transfera bani.", TAG, player_data[player][user_name]);
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public transfer_to_player(id)
- {
- if(!loaded(id))
- {
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti transfera chiar acum!", TAG);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- if(!flag_get(g_loaded, g_transfermoney[id][0]))
- {
- color(id, ".v%s.g Nu poti transfera jucatorului acesta!", TAG);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- new amount[16];
- read_args(amount, charsmax(amount));
- remove_quotes(amount);
- new much = str_to_num(amount);
- if(much < 1)
- {
- color(id, ".v%s.g Suma introdusa este invalida!", TAG);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- if(much > 16000)
- {
- color(id, ".v%s.g Nu poti transfera peste.e 16000$.g!", TAG);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- if(player_data[id][money] < much)
- {
- color(id, ".v%s.g Suma este mai mare decat banca ta!", TAG);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- g_transfermoney[id][1] = much;
- transfer_sure(id);
- return PLUGIN_HANDLED;
- }
- public reset_transfer(id)
- {
- g_transfermoney[id][0] = 0;
- g_transfermoney[id][1] = 0;
- }
- public bet_menu(id)
- {
- if(!loaded(id))
- return PLUGIN_HANDLED;
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii mort pentru a putea paria!", TAG);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria chiar acum!", TAG);
- return PLUGIN_HANDLED;
- }
- if(check_is_attending(id))
- {
- color(id, ".v%s.g Ai deja un pariu plasat!", TAG);
- return PLUGIN_HANDLED;
- }
- new menu, menu_item[100];
- formatex(menu_item, charsmax(menu_item), "\rMeniul pariurilor^nBani:\y %d$", player_data[id][money]);
- menu = menu_create(menu_item, "bet_handler");
- menu_additem(menu, "\yPariaza un jucator", "");
- menu_additem(menu, "\yPariaza echipa", "");
- menu_display(id, menu, 0);
- return PLUGIN_HANDLED;
- }
- public bet_handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(!flag_get(g_loaded, id))
- {
- color(id, ".v%s.g Nu ti s-au preluat datele momentan!", TAG);
- return PLUGIN_HANDLED;
- }
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii mort pentru a putea paria!", TAG);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria acum!", TAG);
- return PLUGIN_HANDLED;
- }
- if(check_is_attending(id))
- {
- color(id, ".v%s.g Ai deja plasat un pariu!", TAG);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- switch(item)
- {
- case 0: menu_player_bet_list(id);
- case 1: menu_team_bet(id);
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public menu_player_bet_list(id)
- {
- if(!flag_get(g_loaded, id))
- {
- color(id, ".v%s.g Nu ti s-au preluat datele momentan!", TAG);
- return PLUGIN_HANDLED;
- }
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii mort pentru a putea paria!", TAG);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria acum!", TAG);
- return PLUGIN_HANDLED;
- }
- new menu = menu_create("\rAlege jucatorul pentru care vrei sa pariezi", "player_bet_handler");
- new menu_item[100], userid[32], skill, Float:cota;
- for(new i = 1; i <= g_maxplayers; i++)
- {
- if(!flag_get(g_isalive, i) || !flag_get(g_loaded, i) || i == id)
- continue;
- skill = get_user_frags(i) - cs_get_user_deaths(i);
- cota = make_odd(skill);
- formatex(menu_item, charsmax(menu_item), "\y%s - \r%.1f odd", player_data[i][user_name], cota);
- formatex(userid, charsmax(userid), "%d", get_user_userid(i));
- menu_additem(menu, menu_item, userid, 0);
- }
- menu_display(id, menu, 0);
- return PLUGIN_HANDLED;
- }
- public menu_team_bet(id)
- {
- if(!flag_get(g_loaded, id))
- {
- color(id, ".v%s.g Nu ti s-au preluat datele momentan!", TAG);
- return PLUGIN_HANDLED;
- }
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii mort pentru a putea paria!", TAG);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria acum!", TAG);
- return PLUGIN_HANDLED;
- }
- new menu = menu_create("\rChoose 1 team to bet", "team_bet_handler");
- new menu_item[100], Float:cota;
- cota = fnGetOdd(1);
- formatex(menu_item, charsmax(menu_item), "\yFurien -\r %.1f odd", cota);
- menu_additem(menu, menu_item, "");
- cota = fnGetOdd(2);
- formatex(menu_item, charsmax(menu_item), "\yAnti-Furien -\r %.1f odd", cota);
- menu_additem(menu, menu_item, "");
- menu_display(id, menu, 0);
- return PLUGIN_HANDLED;
- }
- public player_bet_handler(id, menu, item)
- {
- if(!is_user_connected(id) || item == MENU_EXIT || !loaded(id))
- {
- reset_bet(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii mort pentru a putea paria!", TAG);
- menu_destroy(menu);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria chiar acum!", TAG);
- menu_destroy(menu);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- new menu_data[6], menu_name[64];
- new _access, item_callback;
- menu_item_getinfo(menu, item, _access, menu_data, charsmax(menu_data), menu_name, charsmax(menu_name), item_callback);
- new userid = str_to_num(menu_data);
- new player = find_player("k", userid);
- if(player)
- {
- if(!flag_get(g_isalive, player) || !flag_get(g_loaded, player))
- {
- color(id, ".v%s.g Jucatorul ales este decedat!", TAG);
- menu_destroy(menu);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- client_cmd(id, "messagemode BET_PLAYER");
- g_betplayer[id][0] = player;
- color(id, ".v%s.g Ai ales pe.e %s.g pentru a paria. Scrie suma!", TAG, player_data[player][user_name]);
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public team_bet_handler(id, menu, item)
- {
- if(!is_user_connected(id) || item == MENU_EXIT)
- {
- reset_bet(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(!loaded(id))
- {
- menu_destroy(menu);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii mort pentru a putea paria!", TAG);
- menu_destroy(menu);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria chiar acum!", TAG);
- menu_destroy(menu);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- switch(item)
- {
- case 0:
- {
- color(id, ".v%s.g Ai pariat pe echipa.e Furien.g!", TAG);
- g_betplayer[id][2] = 1;
- }
- case 1:
- {
- color(id, ".v%s.g Ai pariat pe echipa.e Anti-Furien.g!", TAG);
- g_betplayer[id][2] = 2;
- }
- }
- client_cmd(id, "messagemode BET_TEAM");
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public bet_on_player(id)
- {
- if(!loaded(id))
- {
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria chiar acum!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(!flag_get(g_isalive, g_betplayer[id][0]) || !flag_get(g_loaded, g_betplayer[id][0]))
- {
- color(id, ".v%s.g Jucatorul care ai pariat nu este in viata sau nu a luat datele!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- new amount[16];
- read_args(amount, charsmax(amount));
- remove_quotes(amount);
- new much = str_to_num(amount);
- if(much < 1)
- {
- color(id, ".v%s.g Suma nu este valida!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(much > 1000)
- {
- color(id, ".v%s.g Nu poti paria mai mult de.e 1000$.g!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(player_data[id][money] < much)
- {
- color(id, ".v%s.g Suma introdusa este mai mare decat totalul tau!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- g_betplayer[id][1] = much;
- menu_sure(id, 1);
- return PLUGIN_HANDLED;
- }
- public bet_on_team(id)
- {
- if(!loaded(id))
- {
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii decedat sa poti paria!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria chiar acum!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- new amount[16];
- read_args(amount, charsmax(amount));
- remove_quotes(amount);
- new much = str_to_num(amount);
- if(much < 1)
- {
- color(id, ".v%s.g Suma nu este valida!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(much > 5000)
- {
- color(id, ".v%s.g Nu poti paria mai mult de.e 5000$.g!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(player_data[id][money] < much)
- {
- color(id, ".v%s.g Suma introdusa este mai mare decat banca ta!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- g_betplayer[id][1] = much;
- menu_sure(id, 2);
- return PLUGIN_HANDLED;
- }
- public transfer_sure(id)
- {
- if(!flag_get(g_loaded, id))
- {
- color(id, ".v%s.g Nu ti-au fost preluate datele aferente contului!", TAG);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria chiar acum", TAG);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- if(player_data[id][money] < g_transfermoney[id][1])
- {
- color(id, ".v%s.g Nu ai destui bani pentru acest transfer.", TAG);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- if(!flag_get(g_loaded, g_transfermoney[id][0]))
- {
- color(id, ".v%s.g Jucatorul nu si-a preluat datele!", TAG);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- new menu, menu_item[100];
- formatex(menu_item, charsmax(menu_item), "\rEsti sigur ca doresti sa-i trimiti lui\y %s\r?^nSuma trimisa:\y %d$\r.", player_data[g_transfermoney[id][0]][user_name], g_transfermoney[id][1]);
- menu = menu_create(menu_item, "sure_transfer_handler");
- menu_additem(menu, "\yDa", "");
- menu_additem(menu, "\yNu", "");
- menu_display(id, menu, 0);
- return PLUGIN_HANDLED;
- }
- public sure_transfer_handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- reset_transfer(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(!flag_get(g_loaded, id))
- {
- color(id, ".v%s.g Nu ti-au fost preluate datele corect!", TAG);
- reset_transfer(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti transfera chiar acum!", TAG);
- reset_transfer(id);
- return PLUGIN_HANDLED;
- }
- if(player_data[id][money] < g_transfermoney[id][1])
- {
- color(id, ".v%s.g Nu ai destui bani!", TAG);
- reset_transfer(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(!flag_get(g_loaded, g_transfermoney[id][0]))
- {
- color(id, ".v%s.g Jucatorul selectat nu a preluat datele aferente contului!", TAG);
- reset_transfer(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- switch(item)
- {
- case 0:
- {
- color(id, ".v%s.g I-ai trimis cu succes lui.e %s.g suma de.e %d$.g!", TAG, player_data[g_transfermoney[id][0]][user_name], g_transfermoney[id][1]);
- color(0, ".v%s.e %s.g a transferat lui.e %s.g suma de.e %d$.g!", TAG, player_data[id][user_name], player_data[g_transfermoney[id][0]][user_name], g_transfermoney[id][1]);
- take_money(id, g_transfermoney[id][1], 0);
- add_money(g_transfermoney[id][0], g_transfermoney[id][1], 0);
- reset_transfer(id);
- }
- case 1:
- {
- color(id, ".v%s.g Ai anulat transferul!", TAG);
- reset_transfer(id);
- }
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public menu_sure(id, type)
- {
- if(!loaded(id))
- {
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii decedat pentru a paria!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria chiar acum!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(player_data[id][money] < g_betplayer[id][1])
- {
- color(id, ".v%s.g Nu ai destui bani pentru acest pariu!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- switch(type)
- {
- case 1:
- {
- if(!flag_get(g_isalive, g_betplayer[id][0]) || !flag_get(g_loaded, g_betplayer[id][0]))
- {
- color(id, ".v%s.g Jucatorul este decedat sau a parasit serverul.", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- new menu, menu_item[100], Float:cota, bet_money;
- new skill = get_user_frags(g_betplayer[id][0]) - cs_get_user_deaths(g_betplayer[id][0]);
- cota = make_odd(skill);
- bet_money = floatround(g_betplayer[id][1] * cota);
- formatex(menu_item, charsmax(menu_item), "\rEsti sigur ca vrei sa pariezi pe\y %s\r?^nAi pariat:\y %d$\r. Poti castiga:\y %d$\r", player_data[g_betplayer[id][0]][user_name], g_betplayer[id][1], bet_money);
- menu = menu_create(menu_item, "sure_handler_player");
- menu_additem(menu, "\yDa", "");
- menu_additem(menu, "\yNu", "");
- menu_display(id, menu, 0);
- }
- case 2:
- {
- new menu, menu_item[100], Float:cota, bet_money;
- cota = fnGetOdd(g_betplayer[id][2]);
- bet_money = floatround(g_betplayer[id][1] * cota);
- new team[16];
- switch(g_betplayer[id][2])
- {
- case 1: formatex(team, charsmax(team), "furieni");
- case 2: formatex(team, charsmax(team), "anti-furieni");
- }
- formatex(menu_item, charsmax(menu_item), "\rEsti sigur ca vrei sa pariezi pe\y %s\r?^nAi pariat:\y %d$\r. Poti castiga:\y %d$\r", team, bet_money, g_betplayer[id][1]);
- menu = menu_create(menu_item, "sure_handler_team");
- menu_additem(menu, "\yDa", "");
- menu_additem(menu, "\yNu", "");
- menu_display(id, menu, 0);
- }
- }
- return PLUGIN_HANDLED;
- }
- public sure_handler_player(id, menu, item)
- {
- if(item == MENU_EXIT || !loaded(id))
- {
- reset_bet(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii mort pentru a putea paria!", TAG);
- reset_bet(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria chiar acum!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(player_data[id][money] < g_betplayer[id][1])
- {
- color(id, ".v%s.g Nu ai destui bani pentru acest pariu", TAG);
- reset_bet(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(!flag_get(g_isalive, g_betplayer[id][0]) || !flag_get(g_loaded, g_betplayer[id][0]))
- {
- color(id, ".v%s.g Jucatorul nu este in viata sau a parasit serverul!", TAG);
- reset_bet(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- switch(item)
- {
- case 0:
- {
- new Float:cota, bet_money;
- new skill = get_user_frags(g_betplayer[id][0]) - cs_get_user_deaths(g_betplayer[id][0]);
- cota = make_odd(skill);
- bet_money = floatround(g_betplayer[id][1] * cota);
- color(id, ".v%s.g Ai pariat cu succes pe.e %s.g! Poti castiga.e %d$.g!", TAG, player_data[g_betplayer[id][0]][user_name], bet_money);
- g_betplayer[id][3] = 1;
- take_money(id, g_betplayer[id][1], 0);
- g_betplayer[id][1] = bet_money;
- }
- case 1:
- {
- color(id, ".v%s.g Ai anulat pariul!", TAG);
- reset_bet(id);
- }
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public sure_handler_team(id, menu, item)
- {
- if(item == MENU_EXIT || !loaded(id))
- {
- reset_bet(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(flag_get(g_isalive, id))
- {
- color(id, ".v%s.g Trebuie sa fii decedat pentru a putea paria!", TAG);
- reset_bet(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(g_endround)
- {
- color(id, ".v%s.g Nu poti paria chiar acum!", TAG);
- reset_bet(id);
- return PLUGIN_HANDLED;
- }
- if(player_data[id][money] < g_betplayer[id][1])
- {
- color(id, ".v%s.g Nu ai destui bani!", TAG);
- reset_bet(id);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- switch(item)
- {
- case 1:
- {
- new team[16], Float:cota, bet_money;
- cota = fnGetOdd(g_betplayer[id][2]);
- bet_money = floatround(g_betplayer[id][1] * cota);
- switch(g_betplayer[id][2])
- {
- case 1: formatex(team, charsmax(team), "furien");
- case 2: formatex(team, charsmax(team), "anti-furien");
- }
- color(id, ".v%s.g Ai pariat pe.e %s.g! Castig:.e %d$.g!", TAG, team, bet_money);
- g_betplayer[id][3] = 1;
- take_money(id, g_betplayer[id][1], 0);
- g_betplayer[id][1] = bet_money;
- }
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public stats_menu(id)
- {
- if(!loaded(id))
- return;
- new menu, menu_item[192], admin = 100;
- formatex(menu_item, charsmax(menu_item), "\rStatisticile tale sunt:^nUltima conectare:\d %s^n", player_stats[id][lastconnect]);
- menu = menu_create(menu_item, "stats_handler");
- for(new i = 0; i < sizeof flags_players; i++)
- {
- if(get_user_flags(id) == read_flags(flags_players[i][1]))
- {
- admin = i;
- break;
- }
- }
- if(admin == 100)
- formatex(menu_item, charsmax(menu_item), "\yAcces:\r Jucator");
- else
- formatex(menu_item, charsmax(menu_item), "\yAcces:\r %s", flags_players[admin][0]);
- menu_additem(menu, menu_item, "");
- formatex(menu_item, charsmax(menu_item), "\yTimp jucat:\r %s", convert_minutes(id));
- menu_additem(menu, menu_item, "");
- new izstats[8], izbody[8], pos, max;
- pos = get_user_stats(id, izstats, izbody);
- max = get_statsnum();
- formatex(menu_item, charsmax(menu_item), "\yRank:\r %d/%d", pos, max);
- menu_additem(menu, menu_item, "");
- formatex(menu_item, charsmax(menu_item), "\yMembru:\r %s", vip_types_names[player_data[id][isvip]]);
- menu_additem(menu, menu_item, "");
- formatex(menu_item, charsmax(menu_item), "\yGag:\r %s\y Gag-uri totale:\r %d", player_stats[id][gag] > 0 ? "Da" : "Nu", player_stats[id][gagtimes]);
- menu_additem(menu, menu_item, "");
- formatex(menu_item, charsmax(menu_item), "\ySetari joc");
- menu_additem(menu, menu_item, "");
- menu_display(id, menu, 0);
- }
- public stats_handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return;
- }
- if(!loaded(id))
- return;
- if(item != 5)
- {
- menu_destroy(menu);
- return;
- }
- else
- {
- menu_destroy(menu);
- settings_menu(id);
- return;
- }
- }
- public settings_menu(id)
- {
- new menu, menu_item[128];
- formatex(menu_item, charsmax(menu_item), "\yAlege setari:");
- menu = menu_create(menu_item, "settings_handler");
- formatex(menu_item, charsmax(menu_item), "\rSugestii:\y %s", player_stats[id][hints] == 2 ? "Da" : "Nu");
- menu_additem(menu, menu_item, "");
- formatex(menu_item, charsmax(menu_item), "\rBonus:\y %s", player_stats[id][bonus] == 0 ? "Nu" : bonus_items[player_stats[id][bonus]]);
- menu_additem(menu, menu_item, "");
- menu_display(id, menu, 0);
- }
- public settings_handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return;
- }
- if(!loaded(id))
- {
- menu_destroy(menu);
- return;
- }
- switch(item)
- {
- case 0:
- {
- if(player_stats[id][hints] == 2)
- {
- color(id, ".v%s.g Ti-am dezactivat sugestiile!", TAG);
- player_stats[id][hints] = 1;
- }
- else
- {
- color(id, ".v%s.g Ti-am activat sugestiile!", TAG);
- player_stats[id][hints] = 2;
- }
- }
- case 1:
- {
- menu_destroy(menu);
- bonus_menu(id);
- return;
- }
- }
- menu_destroy(menu);
- return;
- }
- public message_weappickup(msg_id, msg_dest, msg_entity)
- {
- if(get_user_team(msg_entity) == 1)
- return PLUGIN_HANDLED;
- return PLUGIN_CONTINUE;
- }
- public message_ammopickup(msg_id, msg_dest, msg_entity)
- {
- if(get_user_team(msg_entity) == 1)
- return PLUGIN_HANDLED;
- return PLUGIN_CONTINUE;
- }
- public reset_bet(id)
- {
- g_betplayer[id][0] = 0; // id player pariat
- g_betplayer[id][1] = 0; // suma id player pariat
- g_betplayer[id][2] = 0; // echipa pariata
- g_betplayer[id][3] = 0; // stadiul pariului 1 - pariu facut, 2 - pariu castigat, 3 - pariu pierdut
- }
- public fw_clientkill()
- return FMRES_SUPERCEDE;
- public slot_cmd(id)
- {
- if(!loaded(id))
- return PLUGIN_HANDLED;
- if(player_data[id][minutes] < 600)
- {
- color(id, ".v%s.g Pentru a putea sa-ti inregistrezi numele este necesar sa joci.e 10 ore.g!", TAG);
- return PLUGIN_HANDLED;
- }
- if(get_user_flags(id) & SLOT_FLAG)
- {
- color(id, ".v%s.g Acest nume este inregistrat!", TAG);
- return PLUGIN_HANDLED;
- }
- client_cmd(id, "messagemode PASSWORD_SLOT");
- color(id, ".v%s.g Parola ta trebuie sa contina doar litere si maxim 14 caractere!", TAG);
- color(id, ".v%s.g Scrie parola ta!", TAG);
- return PLUGIN_HANDLED;
- }
- public timeplayed_cmd(id)
- {
- if(!loaded(id))
- return PLUGIN_HANDLED;
- color(id, ".v%s.g Ai jucat.e %s.g!", TAG, convert_minutes(id));
- return PLUGIN_HANDLED;
- }
- public client_infochanged(id)
- {
- new name[32];
- get_user_info(id, "name", name, charsmax(name));
- if(!(equali(name, player_data[id][user_name])))
- {
- set_data(id);
- copy(player_data[id][user_name], 31, name);
- }
- }
- public vip_menu(id)
- {
- if(!loaded(id))
- return PLUGIN_HANDLED;
- if(player_data[id][isvip] < 3)
- {
- color(id, ".v%s.g Trebuie sa fii.e VIP Platina.g!", TAG);
- return PLUGIN_HANDLED;
- }
- new menu = menu_create("\rVIP Platina", "vip_handler"), menu_item[127];
- if(player_data[id][tagname][0])
- formatex(menu_item, charsmax(menu_item), "\ySeteaza TAG [\r%s\y]", player_data[id][tagname]);
- else
- formatex(menu_item, charsmax(menu_item), "\ySeteaza TAG");
- menu_additem(menu, menu_item, "");
- if(player_data[id][custom_message][0])
- formatex(menu_item, charsmax(menu_item), "\ySeteaza mesaj^n\r%s", player_data[id][custom_message]);
- else
- formatex(menu_item, charsmax(menu_item), "\ySeteaza mesaj");
- menu_additem(menu, menu_item, "");
- menu_display(id, menu, 0);
- return PLUGIN_HANDLED;
- }
- public vip_handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(!loaded(id))
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(player_data[id][isvip] < 3)
- {
- color(id, ".v%s.g Trebuie sa fii.e VIP Platina.g!", TAG);
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- switch(item)
- {
- case 0: client_cmd(id, "messagemode TAG_NAME");
- case 1: client_cmd(id, "messagemode CUSTOM_ENTER_MSG");
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public tag_for_vips(id)
- {
- if(!loaded(id))
- return PLUGIN_HANDLED;
- if(player_data[id][isvip] < 3)
- {
- color(id, ".v%s.g Trebuie sa fii.e VIP Platina.g!", TAG);
- return PLUGIN_HANDLED;
- }
- new fgmeroare[9];
- read_argv(1, fgmeroare, charsmax(fgmeroare));
- remove_quotes(fgmeroare);
- new doamne = strlen(fgmeroare);
- if(doamne > 9)
- {
- color(id, ".v%s.g Tag-ul tau are peste 9 litere!!", TAG);
- return PLUGIN_HANDLED;
- }
- if(is_valid_text(fgmeroare))
- {
- formatex(player_data[id][tagname], 9, "%s", fgmeroare);
- color(id, ".v%s.g Ai setat.e %s.g tag!", TAG, fgmeroare);
- return PLUGIN_HANDLED;
- }
- else
- {
- color(id, ".v%s.g Tag-ul tau nu este conform regulilor!", TAG);
- color(id, ".v%s.g Tag-ul trebuie sa fie maxim 9 caractere si sa contina doar litere si spatiu!", TAG);
- return PLUGIN_HANDLED;
- }
- return PLUGIN_HANDLED;
- }
- public enter_msg_vips(id)
- {
- if(!loaded(id))
- return PLUGIN_HANDLED;
- if(player_data[id][isvip] < 3)
- {
- color(id, ".v%s.g Trebuie sa fii.e VIP Platina.g!", TAG);
- return PLUGIN_HANDLED;
- }
- new fgmeroare[27];
- read_argv(1, fgmeroare, charsmax(fgmeroare));
- remove_quotes(fgmeroare);
- new doamne = strlen(fgmeroare);
- if(doamne > 26)
- {
- color(id, ".v%s.g Mesajul tau de intrare are mai mult de 26 de caractere!", TAG);
- return PLUGIN_HANDLED;
- }
- if(!is_valid_text(fgmeroare))
- {
- color(id, ".v%s.g Mesajul tau de intrare nu corespunde regulamentului!", TAG);
- color(id, ".v%s.g Doar litere si spatii si maximul de caractere sa fie 26!", TAG);
- return PLUGIN_HANDLED;
- }
- copy(player_data[id][custom_message], 26, fgmeroare);
- color(id, ".v%s.g Ai setat.e %s.g ca mesaj de intrare!", TAG, fgmeroare);
- return PLUGIN_HANDLED;
- }
- public password_for_slot(id)
- {
- new password[17];
- read_args(password, charsmax(password));
- remove_quotes(password);
- if(!check_string(password))
- {
- color(id, ".v%s.g Parola ta trebuie sa contina doar litere!", TAG);
- return PLUGIN_HANDLED;
- }
- register_slot(id, password);
- return PLUGIN_HANDLED;
- }
- public unlock_nade(taskid)
- {
- if(!flag_get(g_isconnected, ID_THROW_HE))
- return;
- flag_unset(g_locknade, ID_THROW_HE)
- }
- public increase_minutes(taskid)
- {
- if(get_user_team(ID_MINUTES) == 0 || get_user_team(ID_MINUTES) == 3 || !flag_get(g_loaded, ID_MINUTES))
- return;
- player_data[ID_MINUTES][minutes]++;
- new ore_reale = player_data[ID_MINUTES][minutes] / 60;
- if(isdigit(ore_reale) && player_stats[ID_MINUTES][hints] == 2)
- {
- set_hudmessage(255, 85, 255, 0.0, 0.64, 1, 3.1, 3.0);
- ShowSyncHudMsg(ID_MINUTES, g_synchudh, "Pentru inregistrarea numelui este nevoie de 10 ore jucate! Comanda /register pe chat!");
- }
- if(player_stats[ID_MINUTES][gag])
- {
- player_stats[ID_MINUTES][gag]--;
- if(player_stats[ID_MINUTES][gag] == 0)
- color(ID_MINUTES, ".v%s.g Restrictionarea de pe chat a fost dezactivata!", TAG);
- }
- }
- public took_data(id)
- {
- if(flag_get(g_loaded, id) || !flag_get(g_isconnected, id))
- return;
- new vaultkey[64], vaultdata[256];
- formatex(vaultkey, charsmax(vaultkey), "^"%s^"", player_data[id][user_name]);
- formatex(vaultdata, charsmax(vaultdata), "^"%i^" ^"%s^" ^"%s^"", player_data[id][minutes], player_data[id][tagname], player_data[id][custom_message]);
- nvault_get(g_vault, vaultkey, vaultdata, 255);
- new str_minutes[10], str_tag[10], str_custom[27];
- parse(vaultdata, str_minutes, charsmax(str_minutes), str_tag, charsmax(str_tag), str_custom, charsmax(str_custom));
- player_data[id][minutes] = str_to_num(str_minutes);
- copy(player_data[id][tagname], 9, str_tag);
- copy(player_data[id][custom_message], 26, str_custom);
- formatex(vaultdata, charsmax(vaultdata), "^"%i^" ^"%s^" ^"%i^" ^"%s^" ^"%s^" ^"%i^" ^"%i^" ^"%i^"", player_stats[id][hints], player_stats[id][lastconnect], player_stats[id][gag], player_stats[id][gagadmin], player_stats[id][gagreason], player_stats[id][gagtimes], player_stats[id][badlang], player_stats[id][bonus]);
- nvault_get(g_anothervault, vaultkey, vaultdata, 255);
- new str_hints[2], str_lc[17], str_gag[4], str_gagadm[32], str_gagr[17], str_gagtimes[3], str_badlang[2], str_bonus[2];
- parse(vaultdata, str_hints, charsmax(str_hints), str_lc, charsmax(str_lc), str_gag, charsmax(str_gag), str_gagadm, charsmax(str_gagadm), str_gagr, charsmax(str_gagr), str_gagtimes, charsmax(str_gagtimes), str_badlang, charsmax(str_badlang), str_bonus, charsmax(str_bonus));
- player_stats[id][hints] = str_to_num(str_hints);
- if(player_stats[id][hints] == 0)
- player_stats[id][hints] = 2;
- copy(player_stats[id][lastconnect], 16, str_lc);
- player_stats[id][gag] = str_to_num(str_gag);
- copy(player_stats[id][gagadmin], 31, str_gagadm);
- copy(player_stats[id][gagreason], 16, str_gagr);
- player_stats[id][gagtimes] = str_to_num(str_gagtimes);
- player_stats[id][badlang] = str_to_num(str_badlang);
- player_stats[id][bonus] = str_to_num(str_bonus);
- flag_set(g_loaded, id)
- if(player_data[id][isvip] == 3 && player_data[id][custom_message])
- color(0, ".e%s.g -.v %s.g", player_data[id][user_name], player_data[id][custom_message]);
- color(id, ".vSalut.e %s.v! Bine ai venit pe.e %s.g!", player_data[id][user_name], g_servername);
- color(id, ".vDaca doresti sa ai acest server in lista ta favorita, adauga.e %s.g!", g_servername);
- }
- public set_data(id)
- {
- if(!flag_get(g_loaded, id))
- return;
- new vaultkey[64], vaultdata[256];
- formatex(vaultkey, charsmax(vaultkey), "^"%s^"", player_data[id][user_name]);
- formatex(vaultdata, charsmax(vaultdata), "^"%i^" ^"%s^" ^"%s^"", player_data[id][minutes], player_data[id][tagname], player_data[id][custom_message]);
- nvault_set(g_vault, vaultkey, vaultdata);
- get_time("%d.%m.%Y/%H:%M", player_stats[id][lastconnect], 16);
- formatex(vaultdata, charsmax(vaultdata), "^"%i^" ^"%s^" ^"%i^" ^"%s^" ^"%s^" ^"%i^" ^"%i^" ^"%i^"", player_stats[id][hints], player_stats[id][lastconnect], player_stats[id][gag], player_stats[id][gagadmin], player_stats[id][gagreason], player_stats[id][gagtimes], player_stats[id][badlang], player_stats[id][bonus]);
- nvault_set(g_anothervault, vaultkey, vaultdata);
- }
- public init_player(id, disconnect)
- {
- switch(disconnect)
- {
- case 0:
- {
- get_user_name(id, player_data[id][user_name], 31);
- flag_set(g_isconnected, id)
- flag_unset(g_isalive, id)
- flag_unset(g_isfurien, id)
- flag_unset(g_loaded, id)
- set_task(0.5, "HealthHud", id+TASK_HUD, _, _, "b");
- if(get_user_flags(id) & VIP_FLAG_PLATINUM)
- player_data[id][isvip] = 3;
- else if(get_user_flags(id) & VIP_FLAG_GOLD)
- player_data[id][isvip] = 2;
- else if(get_user_flags(id) & VIP_FLAG_SILVER)
- player_data[id][isvip] = 1;
- else
- {
- if(g_freevip)
- player_data[id][isvip] = 1;
- else
- player_data[id][isvip] = 0;
- }
- }
- case 1:
- {
- player_data[id][isvip] = 0;
- flag_unset(g_loaded, id)
- flag_unset(g_isfurien, id)
- flag_unset(g_isalive, id)
- flag_unset(g_isconnected, id)
- remove_task(id+TASK_THROW_HE);
- remove_task(id+TASK_DELAY_SHOP);
- remove_task(id+TASK_HUD);
- }
- }
- player_data[id][blockbuy] = false;
- jumpnum[id] = 0;
- dojump[id] = false;
- g_gunsselect[id] = 0;
- g_primary_select[id] = 0;
- g_secondary_select[id] = 0;
- flag_unset(g_cmdguns, id)
- flag_unset(g_lockshop, id)
- flag_unset(g_locknade, id)
- player_data[id][minutes] = 0;
- player_data[id][money] = 500;
- player_data[id][bonuskill] = 0;
- player_stats[id][gag] = 0;
- player_stats[id][badlang] = 0;
- player_stats[id][gagtimes] = 0;
- player_stats[id][bonus] = 0;
- player_stats[id][hints] = 0;
- reset_bet(id);
- reset_transfer(id);
- if(para_ent[id] > 0)
- {
- remove_entity(para_ent[id]);
- para_ent[id] = 0;
- }
- }
- public register_slot(id, const password[])
- {
- new line[192], conf[128];
- formatex(line, charsmax(line), "^"%s^" ^"%s^" ^"b^" ^"a^" ; inregistrat", player_data[id][user_name], password);
- get_configsdir(conf, charsmax(conf));
- formatex(conf, charsmax(conf), "%s/users.ini", conf);
- write_file(conf, line, -1);
- color(id, ".v%s.g Numele tau a fost inregistrat!", TAG);
- color(id, ".v%s.g Parola ta este:.e %s.g!", TAG, password);
- client_cmd(id, "snapshot");
- set_user_info(id, FIELD, password);
- color(0, ".v%s.e %s.g si-a luat slot!", TAG, player_data[id][user_name]);
- server_cmd("amx_reloadadmins");
- }
- public client_impulse(id, impulse)
- {
- if(impulse == 201)
- {
- client_print(id, print_center, "Nu poti folosi spray-ul...");
- return PLUGIN_HANDLED;
- }
- if(impulse == 100)
- {
- stats_menu(id);
- return PLUGIN_HANDLED;
- }
- return PLUGIN_CONTINUE;
- }
- public fwd_syserror()
- plugin_end();
- public beneficii_cmd(id)
- {
- if(!loaded(id))
- return PLUGIN_CONTINUE;
- new menu, menu_item[512];
- formatex(menu_item, charsmax(menu_item), "\yAlege un tip de membru!");
- menu = menu_create(menu_item, "beneficii_handler");
- menu_additem(menu, "\rMembru Platina", "");
- menu_additem(menu, "\rMembru Gold", "");
- menu_additem(menu, "\rMembru Silver", "");
- menu_display(id, menu, 0);
- return PLUGIN_CONTINUE;
- }
- public beneficii_handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- menu_destroy(menu);
- members_menu(id, item);
- return PLUGIN_HANDLED;
- }
- public members_menu(id, type)
- {
- if(!loaded(id))
- return PLUGIN_CONTINUE;
- new menu, menu_item[512];
- formatex(menu_item, charsmax(menu_item), "%s%s%s", vip_benefits[type][0], vip_benefits[type][1], vip_benefits[type][2]);
- menu = menu_create(menu_item, "members_handler");
- formatex(menu_item, charsmax(menu_item), "\rAchizitioneaza");
- menu_additem(menu, menu_item, "");
- menu_display(id, menu, 0);
- return PLUGIN_CONTINUE;
- }
- public members_handler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- if(item == 0)
- {
- menu_destroy(menu);
- new buymenu, menuitem[512];
- formatex(menuitem, charsmax(menuitem), "%s%s%s", vip_benefits[3][0], vip_benefits[3][1], vip_benefits[3][2])
- buymenu = menu_create(menuitem, "benefits_handler");
- menu_additem(buymenu, "\rOk.", "");
- menu_display(id, buymenu, 0);
- return PLUGIN_HANDLED;
- }
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public benefits_handler(id, menu, item)
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- public cmd_gag(id)
- {
- if(!(get_user_flags(id) & ADMIN_KICK))
- {
- console_print(id, "Nu ai acces la aceasta comanda!");
- return PLUGIN_HANDLED;
- }
- new namearg[32], timearg[3], reasonarg[17];
- read_argv(1, namearg, 31);
- new player = cmd_target(id, namearg, CMDTARGET_OBEY_IMMUNITY | CMDTARGET_NO_BOTS);
- if(!player)
- return PLUGIN_HANDLED;
- if(!flag_get(g_loaded, player))
- {
- console_print(id, "%s nu si-a preluat datele!", player_data[player][user_name]);
- return PLUGIN_HANDLED;
- }
- if(player_stats[player][gag])
- {
- console_print(id, "%s are deja gag!", player_data[player][user_name]);
- return PLUGIN_HANDLED;
- }
- read_argv(2, timearg, 2);
- new timpgag = str_to_num(timearg);
- if(timpgag > 99)
- {
- console_print(id, "Nu poti da gag mai mult de 99 de minute!");
- return PLUGIN_HANDLED;
- }
- if(timpgag < 0)
- {
- console_print(id, "Valoarea nu este valida!");
- return PLUGIN_HANDLED;
- }
- read_argv(3, reasonarg, 16);
- if(strlen(reasonarg) < 3)
- {
- console_print(id, "Motivul trebuie sa aibe minim 3 litere!");
- return PLUGIN_HANDLED;
- }
- player_stats[player][gag] = timpgag;
- player_stats[player][gagtimes]++;
- player_stats[player][badlang] = 0;
- copy(player_stats[player][gagadmin], 31, player_data[id][user_name]);
- copy(player_stats[player][gagreason], 16, reasonarg);
- color(0, ".v%s.g ADMIN.e %s.g a restrictionat chat-ul lui.e %s.g!", TAG, player_data[id][user_name], player_data[player][user_name]);
- color(id, ".v%s.g Restrictionarea dureaza:.e %d minute.g! Motiv:.e %s.g!", TAG, timpgag, reasonarg);
- return PLUGIN_HANDLED;
- }
- public cmd_ungag(id)
- {
- if(!(get_user_flags(id) & ADMIN_KICK))
- {
- console_print(id, "Nu ai acces la aceasta comanda!");
- return PLUGIN_HANDLED;
- }
- new namearg[32];
- read_argv(1, namearg, 31);
- new player = cmd_target(id, namearg, CMDTARGET_OBEY_IMMUNITY | CMDTARGET_NO_BOTS);
- if(!player)
- return PLUGIN_HANDLED;
- if(!flag_get(g_loaded, player))
- {
- console_print(id, "%s nu si-a preluat datele!", player_data[player][user_name]);
- return PLUGIN_HANDLED;
- }
- if(!player_stats[player][gag])
- {
- console_print(id, "%s nu are gag!", player_data[player][user_name]);
- return PLUGIN_HANDLED;
- }
- player_stats[player][gag] = 0;
- color(0, ".v%s.g ADMIN.e %s.g a deblocat accesul la chat-ul lui.e %s.g!", TAG, player_data[id][user_name], player_data[player][user_name]);
- return PLUGIN_HANDLED;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement