#include <amxmodx>
#include <fun>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <fakemeta_util>
#include <colorchat>
#include <fvault>
#include <nvault>
#include <dhudmessage>
#define PLUGIN "[WSS]"
#define VERSION "1.0"
#define AUTHOR "6almasok"
#define IsValidPlayers(%1,%2) ((1 <= %1 <= 32) && (1 <= %2 <= 32))
new oles[33],csomag[33], kredit[33],switchbutton[33],knife[33],getfrag[3][33]
new ModelData[40][64], ModelNum, MaximumBtton
new felszedett[33],dobozszam,cvar,counter = 0, bool:megvan, bool:generalva,g_vault, eltunes
new const File[] = "addons/amxmodx/configs/asd.ini"
new const szVaultName[] = "hjk_vault"
new const prefix[] = "NEW* -BfS"
new const keszito[] = "Vasarlas Menu By Kingston. -BfS."
/*Rust Kills | Silver Kills | Gold Kills | Veteran Kills | Knife Kredit*/
new const need_kills[] = { 500, 1000, 2000, 4000, 4700, 5000, 6000, 6500, 7000, 500 }
/*Pack Names*/
new const csomagmsg[11][] = { "Nincs","Rozsdás Csomag","Ezüst Csomag","Arany Csomag","Veterán Csomag","Galaxy Csomag","Metal Csomag","Star Csomag","Tuz Csomag","Ultra Csomag","Speed Knife" }
new const knifedisenable[2][] = { "Kikapcsolva", "Bekapcsolva" }
new const menuszoveg[][][] = {
{"Rozsdás Csomag \r[MEGSZEREZVE]", "\dRozsdás Csomag \r[%i/%i Pontok]"}, //0
{"EzĂĽst Csomag \r[MEGSZEREZVE]", "\dEzĂĽst Csomag \r[%i/%i Pontok]"}, //1
{"Arany Csomag \r[MEGSZEREZVE]", "\dArany Csomag \r[%i/%i Pontok]"}, //2
{"Veterán Csomag \r[MEGSZEREZVE]", "\dVeterán Csomag \r[%i/%i Pontok]"}, //3
{"Galaxy Csomag \r[MEGSZEREZVE]", "\dGalaxy Csomag \r[%i/%i Pontok]"}, //4
{"Metal Csomag \r[MEGSZEREZVE]", "\dMetal Csomag \r[%i/%i Pontok]"}, //5
{"Star Csomag \r[MEGSZEREZVE]", "\dStar Csomag \r[%i/%i Pontok]"}, //6
{"Tuz Csomag \r[MEGSZEREZVE]", "\dTuz Csomag \r[%i/%i Pontok]"}, //6
{"Ultra Csomag \r[MEGSZEREZVE]", "\dUltra Csomag \r[%i/%i Pontok]"}, //7
{"Speed Knife \r[MEGSZEREZVE]^n", "\dSpeed Knife \r[%i/%i Kredit]^n"}, //8
{"\ySkin Csomagok \r[KIKAPCSOLVA]", "\ySkin Csomagok \r[BEKAPCSOLVA]"} //9
}
new const chatszoveg[10][] =
{
"^4[%s]^1 FEJLÖVÉS!^3 %s ^1megöléséért kaptál ^3+%i^1 Pontot!",
"^4[%s]^3 %s ^1megöléséért kaptál ^3+%i^1 Pontot!",
"^4[%s]^3 %s ^1kapott ^3+1 ^1Pontot ember lesebzésért!",
"^4[%s]^1 Találtál^3 +%i^1 kreditet a csomagbol!",
"^4[%s]^1 Kiválasztottad a(z)^3 %s^1-ot!",
"^4[%s]^1 Sajnos nincs elég Pontod!",
"^4[%s]^1 Kikapcsoltad a Skin Csomagokat!",
"^4[%s]^1 Bekapcsoltad a Skin Csomagokat!",
"^4[%s]^1 A Szerveren Jelenleg a(z) ^3Skin rendszer^1 fut. Megnyitáshoz Ărd be ^3/menu^1.",
"^4[%s]^1 Sajnos nincs elég kredited!"
}
new const ET_model[][] = {
"models/cyan.mdl",
"models/zold.mdl",
"models/narancs.mdl",
"models/pink.mdl",
"models/minden.mdl",
"models/voros.mdl",
"models/sarga.mdl"
}
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
/* Client Command */
register_clcmd("say /menu" , "fomenu")
register_impulse(201, "fomenu")
/* Events */
register_event("CurWeapon", "changeweapon", "be", "1=1")
register_event("Damage", "sebzes_event", "be", "2!0", "3=0", "4!0")
register_event("DeathMsg","Halal","a")
/* Cvars */
register_cvar("wss_hudenable", "1");
register_cvar("wss_advertmp", "40.0");
register_cvar("kill_recived", "1");
register_cvar("hs_recived", "2");
register_cvar("found_kredit", "1");
/* Other */
register_forward(FM_Touch,"ForwardTouch" );
RegisterHam(Ham_Spawn, "player", "spawn_event", 1)
register_touch("nyeremendoboz","player","remove")
set_task(1.0, "infohud", 0, _, _, "b")
set_task(get_cvar_float("wss_advertmp"), "advertist", 0, "", 0, "b", 0)
set_task(30.0, "keszit",_,_,_,"b")
set_task(1.0, "szamlalo",_,_,_,"b")
set_task(random_float(30.0,60.0), "hirdetes",_,_,_,"b")
cvar = register_cvar("sv_maxdoboz", "1")
eltunes = register_cvar("sv_eltunes", "30")
g_vault = nvault_open("dobozok")
LoadModel();
}
public advertist(){
ColorChat(0, GREEN, chatszoveg[8],prefix);
return PLUGIN_HANDLED;
}
public plugin_precache() {
new Len, btton[196], Data[64], Letoltes[40][64];
MaximumBtton = file_size(File, 1);
for(new Num = 0; Num < MaximumBtton; Num++){
read_file(File, Num, btton, 196, Len);
parse(btton, Data, 63);
remove_quotes(btton);
if(btton[0] == ';')
{
continue;
}
remove_quotes(Data);
format(Letoltes[Num], 63, "%s", Data);
precache_model(Letoltes[Num]);
}
precache_model("models/d2_bfs/pack/kredit.mdl");
precache_model("models/cyan.mdl")
precache_model("models/zold.mdl")
precache_model("models/narancs.mdl")
precache_model("models/pink.mdl")
precache_model("models/minden.mdl")
precache_model("models/voros.mdl")
precache_model("models/sarga.mdl")
}
public LoadModel()
{
new Len, btton[196], Data[64];
MaximumBtton = file_size(File, 1);
for(new Num; Num < MaximumBtton; Num++){
ModelNum++;
read_file(File, Num, btton, 196, Len);
parse(btton, Data, 63);
remove_quotes(btton);
if(btton[0] == ';')
{
continue;
}
remove_quotes(Data);
format(ModelData[ModelNum], 63, "%s", Data);
}
}
public changeweapon(id)
{
if(!is_user_alive(id) || !is_user_connected(id) || id < 1 || id > 32 || switchbutton[id] == 1)
return
new fegyver = get_user_weapon(id)
if(csomag[id] == 1){
if(fegyver == CSW_AK47)set_pev(id, pev_viewmodel2, ModelData[1]) //Rozsdas ak
if(fegyver == CSW_AWP)set_pev(id, pev_viewmodel2, ModelData[2]) //Rozsdas awp
if(fegyver == CSW_DEAGLE)set_pev(id, pev_viewmodel2, ModelData[3]) //Rozsdas desi
if(fegyver == CSW_M4A1)set_pev(id, pev_viewmodel2, ModelData[4]) //Rozsdas m4
}
else if(csomag[id] == 2){
if(fegyver == CSW_AK47)set_pev(id, pev_viewmodel2, ModelData[5]) //ezust ak
if(fegyver == CSW_AWP)set_pev(id, pev_viewmodel2, ModelData[6]) //ezust awp
if(fegyver == CSW_DEAGLE)set_pev(id, pev_viewmodel2, ModelData[7]) //ezust desi
if(fegyver == CSW_M4A1)set_pev(id, pev_viewmodel2, ModelData[8]) //ezust m4
}
else if(csomag[id] == 3){
if(fegyver == CSW_AK47)set_pev(id, pev_viewmodel2, ModelData[9]) //arany ak
if(fegyver == CSW_AWP)set_pev(id, pev_viewmodel2, ModelData[10]) //arany awp
if(fegyver == CSW_DEAGLE)set_pev(id, pev_viewmodel2, ModelData[11]) //arany desi
if(fegyver == CSW_M4A1)set_pev(id, pev_viewmodel2, ModelData[12]) //arany m4
}
else if(csomag[id] == 4){
if(fegyver == CSW_AK47)set_pev(id, pev_viewmodel2, ModelData[13]) //veteran ak
if(fegyver == CSW_AWP)set_pev(id, pev_viewmodel2, ModelData[14]) //veteran awp
if(fegyver == CSW_DEAGLE)set_pev(id, pev_viewmodel2, ModelData[15]) //veteran desi
if(fegyver == CSW_M4A1)set_pev(id, pev_viewmodel2, ModelData[16]) //veteran m4
}
else if(csomag[id] == 5){
if(fegyver == CSW_AK47)set_pev(id, pev_viewmodel2, ModelData[17]) //Galaxy ak
if(fegyver == CSW_AWP)set_pev(id, pev_viewmodel2, ModelData[18]) //Galaxy awp
if(fegyver == CSW_DEAGLE)set_pev(id, pev_viewmodel2, ModelData[19]) //Galaxy desi
if(fegyver == CSW_M4A1)set_pev(id, pev_viewmodel2, ModelData[20]) //Galaxy m4
}
else if(csomag[id] == 6){
if(fegyver == CSW_AK47)set_pev(id, pev_viewmodel2, ModelData[21]) //Metal ak
if(fegyver == CSW_AWP)set_pev(id, pev_viewmodel2, ModelData[22]) //Metal awp
if(fegyver == CSW_DEAGLE)set_pev(id, pev_viewmodel2, ModelData[23]) //Metal desi
if(fegyver == CSW_M4A1)set_pev(id, pev_viewmodel2, ModelData[24]) //Metal m4
}
else if(csomag[id] == 7){
if(fegyver == CSW_AK47)set_pev(id, pev_viewmodel2, ModelData[25]) //Star ak
if(fegyver == CSW_AWP)set_pev(id, pev_viewmodel2, ModelData[26]) //Star awp
if(fegyver == CSW_DEAGLE)set_pev(id, pev_viewmodel2, ModelData[27]) //Star desi
if(fegyver == CSW_M4A1)set_pev(id, pev_viewmodel2, ModelData[28]) //Star m4
}
else if(csomag[id] == 8){
if(fegyver == CSW_AK47)set_pev(id, pev_viewmodel2, ModelData[29]) //Star ak
if(fegyver == CSW_AWP)set_pev(id, pev_viewmodel2, ModelData[30]) //Star awp
if(fegyver == CSW_DEAGLE)set_pev(id, pev_viewmodel2, ModelData[31]) //Star desi
if(fegyver == CSW_M4A1)set_pev(id, pev_viewmodel2, ModelData[32]) //Star m4
}
else if(csomag[id] == 9){
if(fegyver == CSW_AK47)set_pev(id, pev_viewmodel2, ModelData[33]) //Ultra ak
if(fegyver == CSW_AWP)set_pev(id, pev_viewmodel2, ModelData[34]) //Ultra awp
if(fegyver == CSW_DEAGLE)set_pev(id, pev_viewmodel2, ModelData[35]) //Ultra desi
if(fegyver == CSW_M4A1)set_pev(id, pev_viewmodel2, ModelData[36]) //Ultra m4
}
if(knife[id] == 1 && fegyver == CSW_KNIFE){
set_user_maxspeed(id, Float:320.0)
set_pev(id, pev_viewmodel2, ModelData[37]) //knife
}
}
public spawn_event(id){
getfrag[0][id] = 0;
getfrag[1][id] = 0;
getfrag[2][id] = 0;
}
public sebzes_event(id)
{
new tamado = get_user_attacker(id);
if(id == tamado || !IsValidPlayers(id, tamado )) return;
getfrag[1][tamado] += read_data(2);
if(!getfrag[2][id] && getfrag[1][tamado] >= 50)
{
getfrag[0][tamado] = id;
getfrag[2][id] = tamado;
}
}
public Halal() {
new attacker = read_data(1)
new victim = read_data(2)
new nev[32]
get_user_name(victim, nev, charsmax(nev))
if(attacker == victim || attacker == 0)
return PLUGIN_HANDLED
if(read_data( 3 )){
oles[attacker] += get_cvar_num("hs_recived");
ColorChat(attacker, GREEN, chatszoveg[0] ,prefix ,nev, get_cvar_num("hs_recived"))
}
else{
oles[attacker] += get_cvar_num("kill_recived");
ColorChat(attacker, GREEN, chatszoveg[1],prefix, nev, get_cvar_num("kill_recived"))
}
if(getfrag[2][victim] && getfrag[2][victim] != attacker){
new fragetkap = getfrag[2][victim];
new fragetkapneve[32];
getfrag[0][fragetkap] = 0;
getfrag[1][fragetkap] = 0;
getfrag[2][victim] = 0;
get_user_name(fragetkap, fragetkapneve, charsmax(fragetkapneve));
oles[fragetkap]++
ColorChat(0, GREEN, chatszoveg[2],prefix ,fragetkapneve);
}
switch(random_num(1,3)){
case 1: dropdobas()
}
return PLUGIN_HANDLED;
}
public dropdobas()
{
new victim = read_data( 2 );
static Float:origin[ 3 ];
pev( victim, pev_origin, origin );
new ent = engfunc( EngFunc_CreateNamedEntity, engfunc( EngFunc_AllocString, "info_target" ) );
origin[ 2 ] -= 36;
engfunc( EngFunc_SetOrigin, ent, origin );
if( !pev_valid( ent ) )
{
return PLUGIN_HANDLED;
}
set_pev( ent, pev_classname, "kredit" );
engfunc( EngFunc_SetModel, ent, "models/d2_bfs/pack/kredit.mdl" );
dllfunc( DLLFunc_Spawn, ent );
set_pev( ent, pev_solid, SOLID_BBOX );
set_pev( ent, pev_movetype, MOVETYPE_NONE );
engfunc( EngFunc_SetSize, ent, Float:{ -23.160000, -13.660000, -0.050000 }, Float:{ 11.470000, 12.780000, 6.720000 } );
engfunc( EngFunc_DropToFloor, ent );
return PLUGIN_HANDLED;
}
public ForwardTouch( ent, id )
{
if(pev_valid(ent))
{
new classname[ 32 ];
pev( ent, pev_classname, classname, charsmax( classname ) );
if( !equal( classname, "kredit") )
{
return FMRES_IGNORED;
}
kredit[id] += get_cvar_num("found_kredit");
ColorChat(id, GREEN, chatszoveg[3],prefix, get_cvar_num("found_kredit"));
engfunc( EngFunc_RemoveEntity, ent );
}
return FMRES_IGNORED
}
public logevent_round_start()
{
new hkt = FM_NULLENT;
while ( ( hkt = fm_find_ent_by_class( hkt, "kredit") ) )
{
engfunc( EngFunc_RemoveEntity, hkt );
}
}
public fomenu(id)
{
new String[96]
format(String, charsmax(String), "\r[NEW* -BfS] \wFőmenü^n\yÖlések: \d%i \w|\y Kreditek: \d%i", oles[id],kredit[id])
new menu = menu_create(String, "fomenu_MyMenu");
menu_additem(menu, "Fegyver Skin Csomagok", "0");
menu_additem(menu, "Játékos Infók", "1");
menu_additem(menu, "Pack Információk", "2");
menu_additem(menu, "Vasarlas^n^n\y", "3");
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_setprop(menu, MPROP_EXITNAME, "\rKilépés");
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public Bevaltas(id)
{
new cim[121];
format(cim, charsmax(cim), "[New -BfS>>] \wOnly Dust2 \r- \dVasarlas^n\yKrediteid: \d%i^n\yPontok: \d%i^n\y%s", kredit[id],oles[id],keszito);
new menu = menu_create(cim, "Bevaltas_h");
menu_additem(menu, "\w250 \yDB \wPontok \r- \d(200 Kredit)", "1", 0);
menu_additem(menu, "\w1000 \yDB \wPontok \r- \d(500 Kredit)", "2", 0);
menu_display(id, menu, 0);
}
public Bevaltas_h(id, menu, item){
if(item == MENU_EXIT)
{
menu_destroy(menu);
return;
}
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(kredit[id] >= 200)
{
oles[id] += 250;
kredit[id] -= 200;
}
else ColorChat(id, GREEN, "%s ^1Nincs elég ^4KREDITED.", prefix);
}
case 2:
{
if(kredit[id] >= 500)
{
oles[id] += 1000;
kredit[id] -= 500;
}
else ColorChat(id, GREEN, "%s ^1Nincs elég ^4KREDITED.", prefix);
}
}
}
public fomenu_MyMenu(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new command[6], name[64], access, callback;
menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
switch(item)
{
case 0: fegymenu(id)
case 1: playerinfo(id)
case 2: show_motd(id, "addons/amxmodx/configs/wssinfo.txt", "[NEW* -BfS] Infok")
case 3: Bevaltas(id)
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public playerinfo(id)
{
new some[256], menu
static players[32],szTemp[10],pnum
get_players(players,pnum,"ch");
formatex(some,255,"\r[NEW* -BfS] \wJátékos \d|\w Pont \d|\w Kredit");
menu = menu_create(some,"pinfo_Handler");
for (new i; i < pnum; i++)
{
formatex(some,256,"%s \r(\yPontja: \w%i \d| \yKreditje: \w%i\r)",get_player_name(players[i]), oles[players[i]],kredit[players[i]]);
num_to_str(players[i],szTemp,charsmax(szTemp));
menu_additem(menu, some, szTemp);
}
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL );
menu_setprop(menu, MPROP_EXITNAME, "Kilépés");
menu_display(id, menu);
return PLUGIN_HANDLED;
}
public pinfo_Handler(id,menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return;
}
playerinfo(id)
}
public fegymenu(id)
{
new String[96]
format(String, charsmax(String), "\r[NEW* -BfS] \wSkin csomagok^n\yKiválasztott Csomag: \d[%s]", csomagmsg[csomag[id]])
new menu = menu_create(String, "fegymenu_handler" )
format(String, charsmax(String), oles[id] >= need_kills[0] ? (menuszoveg[0][0]):(menuszoveg[0][1]), oles[id], need_kills[0]);
menu_additem(menu, String, "0" );
formatex(String, charsmax(String), oles[id] >= need_kills[1] ? (menuszoveg[1][0]):(menuszoveg[1][1]), oles[id], need_kills[1]);
menu_additem(menu, String, "1");
formatex(String, charsmax(String), oles[id] >= need_kills[2] ? (menuszoveg[2][0]):(menuszoveg[2][1]), oles[id], need_kills[2]);
menu_additem(menu, String, "2");
format(String, charsmax(String), oles[id] >= need_kills[3] ? (menuszoveg[3][0]):(menuszoveg[3][1]), oles[id], need_kills[3]);
menu_additem(menu, String, "3");
format(String, charsmax(String), oles[id] >= need_kills[4] ? (menuszoveg[4][0]):(menuszoveg[4][1]), oles[id], need_kills[4]);
menu_additem(menu, String, "4");
format(String, charsmax(String), oles[id] >= need_kills[5] ? (menuszoveg[5][0]):(menuszoveg[5][1]), oles[id], need_kills[5]);
menu_additem(menu, String, "5");
format(String, charsmax(String), oles[id] >= need_kills[6] ? (menuszoveg[6][0]):(menuszoveg[6][1]), oles[id], need_kills[6]);
menu_additem(menu, String, "6");
format(String, charsmax(String), oles[id] >= need_kills[7] ? (menuszoveg[7][0]):(menuszoveg[7][1]), oles[id], need_kills[7]);
menu_additem(menu, String, "7");
format(String, charsmax(String), oles[id] >= need_kills[8] ? (menuszoveg[8][0]):(menuszoveg[8][1]), oles[id], need_kills[8]);
menu_additem(menu, String, "8");
formatex(String, charsmax(String), kredit[id] >= need_kills[9] ? (menuszoveg[9][0]):(menuszoveg[9][1]), kredit[id], need_kills[9]);
menu_additem(menu, String, "9");
menu_additem(menu, switchbutton[id] == 1 ? (menuszoveg[10][0]):(menuszoveg[10][1]), "9");
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_setprop(menu, MPROP_BACKNAME, "Vissza");
menu_setprop(menu, MPROP_NEXTNAME, "Előre");
menu_setprop(menu, MPROP_EXITNAME, "Kilépés");
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public fegymenu_handler(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED;
}
new command[6], name[64], access, callback;
menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
switch(item)
{
case 0: {
if(oles[id] >= need_kills[0]) {
csomag[id] = 1
ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
}
else {
ColorChat(id, GREEN, chatszoveg[5],prefix);
}
}
case 1: {
if(oles[id] >= need_kills[1]) {
csomag[id] = 2
ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
}
else {
ColorChat(id, GREEN, chatszoveg[5],prefix);
}
}
case 2: {
if(oles[id] >= need_kills[2]) {
csomag[id] = 3
ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
}
else {
ColorChat(id, GREEN, chatszoveg[5],prefix);
}
}
case 3: {
if(oles[id] >= need_kills[3]) {
csomag[id] = 4
ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
}
else {
ColorChat(id, GREEN, chatszoveg[5],prefix);
}
}
case 4: {
if(oles[id] >= need_kills[4]) {
csomag[id] = 5
ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
}
else {
ColorChat(id, GREEN, chatszoveg[5],prefix);
}
}
case 5: {
if(oles[id] >= need_kills[5]) {
csomag[id] = 6
ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
}
else {
ColorChat(id, GREEN, chatszoveg[5],prefix);
}
}
case 6: {
if(oles[id] >= need_kills[6]) {
csomag[id] = 7
ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
}
else {
ColorChat(id, GREEN, chatszoveg[5],prefix);
}
}
case 7: {
if(oles[id] >= need_kills[7]) {
csomag[id] = 8
ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
}
else {
ColorChat(id, GREEN, chatszoveg[5],prefix);
}
}
case 8: {
if(oles[id] >= need_kills[8]) {
csomag[id] = 9
ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[csomag[id]]);
}
else {
ColorChat(id, GREEN, chatszoveg[5],prefix);
}
}
case 9: {
if(kredit[id] >= need_kills[9]) {
knife[id] = 1
ColorChat(id, GREEN, chatszoveg[4],prefix, csomagmsg[10]);
}
else {
ColorChat(id, GREEN, chatszoveg[9],prefix);
}
}
case 10: {
if(switchbutton[id] == 0){
switchbutton[id] = 1
csomag[id] = 0
knife[id] = 0
ColorChat(id, GREEN, chatszoveg[6],prefix);
}
else {
switchbutton[id] = 0
ColorChat(id, GREEN, chatszoveg[7],prefix);
}
}
case 11: {
ColorChat(id, GREEN, chatszoveg[5],prefix);
}
}
fegymenu(id)
return PLUGIN_HANDLED;
}
public infohud() {
if(!get_cvar_num("wss_hudenable")) return PLUGIN_HANDLED
static id
for(id = 1; id <= get_maxplayers(); id++)
{
if(is_user_alive(id)){
set_hudmessage(0, 127, 255, 0.01, 0.20, 0, 6.0, 1.0)
show_hudmessage(id, "[Pont: %i]^n[Kredit: %i]^n[Kiválasztott Csomag: %s]^n[Speed Knife: %s]", oles[id],kredit[id],csomagmsg[csomag[id]], knifedisenable[knife[id]])
}
else{
new target = entity_get_int(id, EV_INT_iuser2);
if(!target)
return PLUGIN_CONTINUE;
set_hudmessage(255, 255, 255, 0.01, 0.20, 0, 6.0, 1.0)
show_hudmessage(id, "[Pont: %i]^n[Kredit: %i]^n[Kiválasztott Csomag: %s]^n[Speed Knife: %s]", oles[target],kredit[target],csomagmsg[csomag[target]], knifedisenable[knife[target]])
}
}
return PLUGIN_CONTINUE;
}
stock get_player_name(id){
static szName[32];
get_user_name(id,szName,31);
return szName;
}
public client_disconnect(id)
{
if(is_user_bot(id)) return;
mentes(id)
save(id);
}
public client_putinserver( id ) {
if(is_user_bot(id)) return;
oles[id] = 0;
kredit[id] = 0;
csomag[id] = 0;
switchbutton[id] = 0;
load(id);
}
public client_connect(id)
{
betoltes(id)
load(id)
}
public mentes(id)
{
new name[32]
get_user_name(id, name, 31)
new vaultkey[64],vaultdata[256]
format(vaultkey,63,"%s_dobozok", name)
format(vaultdata,255,"%i",felszedett[id])
nvault_set(g_vault,vaultkey,vaultdata)
return PLUGIN_CONTINUE
}
public betoltes(id)
{
new name[32]
get_user_name(id, name, 31)
new vaultkey[64],vaultdata[256]
format(vaultkey,63,"%s_dobozok", name)
format(vaultdata,255,"%i",felszedett[id])
nvault_get(g_vault,vaultkey,vaultdata,255)
replace_all(vaultdata, 255, "#", " ")
new szedett[32]
parse(vaultdata, szedett, 31)
felszedett[id] = str_to_num(szedett)
return PLUGIN_CONTINUE
}
load(id) {
new szAuthid[32], szData[32];
get_user_name( id, szAuthid, charsmax(szAuthid));
new s1[16],s2[16],s3[16],s4[16]
fvault_get_data( szVaultName, szAuthid, szData, 31 );
parse( szData, s1, 15, s2, 15 , s3 , 15, s4 ,15);
oles[id] = str_to_num(s1);
kredit[id] = str_to_num(s2);
csomag[id] = str_to_num(s3);
switchbutton[id] = str_to_num(s4);
}
save(id) {
new szAuthid[ 32 ], szData[ 32 ];
get_user_name( id, szAuthid, charsmax(szAuthid));
formatex( szData, 31, "%i %i %i %i", oles[id], kredit[id], csomag[id], switchbutton[id]);
fvault_set_data( szVaultName, szAuthid, szData );
}
///// BELE ÍRVA : ////////////
public szamlalo(id)
{
if(generalva == true) {
counter++
}
if(megvan == true) {
counter = 0
}
if(counter > get_pcvar_num(eltunes) && generalva == true)
{
new target = find_ent_by_class(target, "nyeremendoboz")
engfunc(EngFunc_RemoveEntity, target)
dobozszam--
counter = 0
generalva = false
switch(random_num(1,2)) {
case 1: {
ColorChat(0, RED, "Ezt a dobozt sajnos nem sikerult megtalalnotok :(")
}
case 2: {
ColorChat(0, GREEN, "Ezt a dobozt sajnos nem sikerult megtalalnotok :(")
}
}
}
}
public keszit(id)
{
if(dobozszam < get_pcvar_num(cvar)) {
new inifile[192], map[32]
get_mapname(map, 31)
formatex(inifile, charsmax(inifile), "addons/amxmodx/configs/csdm/%s.spawns.cfg", map)
new Float:origin[3]
new elsopoz[8], masodikpoz[8], harmadikpoz[8]
new lines = file_size(inifile, 1)
if(lines > 0)
{
new randomLine = random(lines);
new lineBuffer[256], len;
read_file(inifile, randomLine, lineBuffer, charsmax(lineBuffer), len);
parse(lineBuffer, elsopoz, 7, masodikpoz, 7, harmadikpoz, 7)
origin[0] = str_to_float(elsopoz)
origin[1] = str_to_float(masodikpoz)
origin[2] = str_to_float(harmadikpoz)
}
new ent = create_entity("info_target")
set_pev(ent, pev_classname, "nyeremendoboz")
entity_set_model(ent, ET_model[random(sizeof(ET_model))])
set_pev(ent,pev_solid, SOLID_BBOX)
set_pev(ent, pev_movetype, MOVETYPE_TOSS)
engfunc(EngFunc_SetOrigin, ent, origin)
engfunc(EngFunc_SetSize, ent, Float:{-10.0,-10.0,0.0}, Float:{10.0,10.0,25.0})
engfunc(EngFunc_DropToFloor, ent)
fm_set_rendering(ent, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 16);
switch(random_num(1,2)) {
case 1: {
ColorChat(0, RED, "Uj doboz jelent meg keressetek!!!!!!!")
}
case 2: {
ColorChat(0, GREEN, "Uj doboz jelent meg keressetek!!!!!!!")
}
}
dobozszam++
megvan = false
generalva = true
}
return PLUGIN_CONTINUE
}
public client_PreThink(id)
{
set_hudmessage(127, 255, 170, 0.0, 0.19, 0, 6.0, 1.0)
show_hudmessage(id, "Megtalalt dobozok: %d", felszedett[id])
}
public hirdetes()
{
ColorChat(0, GREEN, "A Nyeremenyjatek plugint ^3qKKKJ;> ^4keszitette!")
}
public remove(ent, id)
{
if(is_user_alive(id)) {
felszedett[id]++
dobozszam--
new nev[32]
get_user_name(id, nev, 31)
switch(random_num(1,2)) {
case 1: {
ColorChat(0, RED, "%s talalt +15 kreditet!", nev)
kredit[id] += 15
}
case 2: {
ColorChat(0, GREEN, "%s nem talalt lofaszt sem!", nev)
}
}
engfunc(EngFunc_RemoveEntity, ent)
megvan = true
generalva = false
}
return PLUGIN_HANDLED
}
stock fm_set_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16)
{
static Float:color[3]
color[0] = float(r)
color[1] = float(g)
color[2] = float(b)
set_pev(entity, pev_renderfx, fx)
set_pev(entity, pev_rendercolor, color)
set_pev(entity, pev_rendermode, render)
set_pev(entity, pev_renderamt, float(amount))
}