A więc, dopisałem do sklepu w buty nike zamiast normalnego speedu to sprint oraz w vipie jest możliwość kupna deagla z 3 ammo a zwykły grasz może z 1 ammo
Oto Plugin:
#include <amxmodx> #include <amxmisc> #include <colorchat> #include <hamsandwich> #include <cstrike> #include <fun> #include <fakemeta> #include <engine> #pragma tabsize 0 #define PLUGIN "Mini Shop JailBreak" #define VERSION "1.4" #define AUTHOR "Emil29" #define LEET 1337 new CT_Skins[4][] = {"klawisz_cypis","klawisz_cypis","klawisz_cypis","klawisz_cypis"}; new Terro_Skins[4][] = {"wiezien_cypis","wiezien_cypis","wiezien_cypis","wiezien_cypis"}; new name [32]; new bool:weapon_id; const g_iProg = (0xFF); const g_iWeaps = (0x1E); const g_iMaxSpeed = (0x2EE); const g_iMaxCzas = (0xA); new g_iMaxPlayers; new Float:g_fTempMaxSpeed[0x21]; new Float:g_fSprintLeft[0x21]; new const Float:g_fWeaponsSpeed[g_iWeaps + 1]={ //THX 4 DARKGL ZA TABLICE ;) 000.0, 250.0, 000.0, 260.0, 250.0, 240.0, 250.0, 250.0, 240.0, 250.0, 250.0, 250.0, 250.0, 210.0, 240.0, 240.0, 250.0, 250.0, 210.0, 250.0, 220.0, 230.0, 230.0, 250.0, 210.0, 250.0, 250.0, 235.0, 221.0, 250.0, 245.0 }; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /jbshop", "jbshop") register_clcmd("say /shop", "jbshop") register_clcmd("say /sklep", "jbshop") register_forward(FM_CmdStart, "fwCmdStart", 0); register_event( "CurWeapon", "Event_Change_Weapon", "be", "1=1" ); RegisterHam(Ham_Spawn, "player", "Fwd_PlayerSpawn_Post", 1) set_task(0.4, "taskPrintAmmount", _, _, _, "b"); g_iMaxPlayers = get_maxplayers(); } public jbshop(id){ if(is_user_connected(id) && cs_get_user_team(id) == CS_TEAM_T) { new menu = menu_create("\Sklep JailBreak","menu") menu_additem(menu,"\yMiekkie Kapcie \d[8000$]","1",0) menu_additem(menu,"\yButy Nike \d[9000$]","2",0) menu_additem(menu,"\yButy Skoczka \d[10000$]","3",0) menu_additem(menu,"\yDeagle \d[14000$]","4",0) menu_additem(menu,"\yHE \d[8000$]","5",0) if(get_user_flags(id) & ADMIN_LEVEL_H) menu_additem(menu,"\yNiesmiertelnosc na 5 sekund \d[16000$]","6",0) if(get_user_flags(id) & ADMIN_LEVEL_H) menu_additem(menu,"\yNiewidzialnosc na 20 sekund \d[16000$]","7",0) if(get_user_flags(id) & ADMIN_LEVEL_H) menu_additem(menu,"\yUbranie Ct na 30 sekund \d[10000$]","8",0) if(get_user_flags(id) & ADMIN_LEVEL_H) menu_additem(menu,"\yOnly head na 20 sekund \d[16000$]","9",0) if(get_user_flags(id) & ADMIN_LEVEL_H) menu_additem(menu,"\yTarcza \d[10000$]","10",0) menu_additem(menu,"\yArmorr \d[2000$]","11",0) menu_additem(menu,"\yDodatkowe Hp \d[5000$]","12",0) menu_setprop(menu,MPROP_EXIT,MEXIT_ALL) menu_display(id,menu,0) } } public menu(id, menu, item){ if(item==MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED; } new data[6], iName[64] new access, callback menu_item_getinfo(menu, item, access, data,5, iName, 63, callback) new key = str_to_num(data) switch(key) { case 1 :{ if (cs_get_user_money(id) < 8000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 8000 ){ get_user_name(id, name, 31) set_user_footsteps( id, 1) ColorChat(0, RED, "Kupiono Miekkie Kapcie, dzięki ktorym nie slychac twoich krokow.", name) cs_set_user_money(id , cs_get_user_money(id) - 8000, 0) } } case 2 :{ if (cs_get_user_money(id) < 9000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 9000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono Buty Nike, dzięki ktorym mozesz szybciej biegac.", name) g_fSprintLeft[id] -= 0.05; cs_set_user_money(id , cs_get_user_money(id) - 9000, 0) } } case 3 : { if (cs_get_user_money(id) < 10000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 10000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono Buty Skoczka, dzięki ktorym mozesz wyzej skakac.", name) set_user_gravity(id, 0.5) cs_set_user_money(id , cs_get_user_money(id) - 10000, 0) } } case 4 : { if (cs_get_user_money(id) < 14000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 14000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono Deagle z 1 ammo", name) give_item(id, "weapon_deagle"); give_item(id, "ammo_50ae"); weapon_id=find_ent_by_owner(-1, "weapon_deagle", id); if(weapon_id)cs_set_weapon_ammo(weapon_id, 1); if(get_user_flags(id) & ADMIN_LEVEL_H) if(weapon_id)cs_set_weapon_ammo(weapon_id, 3); cs_set_user_bpammo(id, CSW_DEAGLE, 0); cs_set_user_money(id , cs_get_user_money(id) - 14000, 0) } } case 5 :{ if (cs_get_user_money(id) < 8000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 8000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono HE", name) give_item(id, "weapon_hegrenade"); cs_set_user_money(id , cs_get_user_money(id) - 8000, 0) } } case 6 :{ if (cs_get_user_money(id) < 16000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 16000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono Niesmiertelnosc na 5 sekund", name) set_user_godmode(id, 1) set_task(5.0, "godoff", id) cs_set_user_money(id , cs_get_user_money(id) - 16000, 0) } } case 7 :{ if (cs_get_user_money(id) < 16000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 16000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono Niewidzialnosc na 20 sekund", name) set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 30) set_task(20.0, "kRenderTransAlphaoff", id) cs_set_user_money(id , cs_get_user_money(id) - 17000, 0) } } case 8 :{ if (cs_get_user_money(id) < 10000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 10000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono Ubranie Ct na 30 sekund", name) ZmienUbranie(id, 0); set_task(30.0, "ubranie", id) cs_set_user_money(id , cs_get_user_money(id) - 10000, 0) } } case 9 :{ if (cs_get_user_money(id) < 16000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 16000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono Only head ", name) set_user_hitzones (0, id, 2) set_task(20.0, "hit", id) cs_set_user_money(id , cs_get_user_money(id) - 20000, 0) } } case 10 :{ if (cs_get_user_money(id) < 10000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 10000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono Tarcze ", name) give_item(id, "weapon_shield") cs_set_user_money(id , cs_get_user_money(id) - 10000, 0) } } case 11 :{ if (cs_get_user_money(id) < 2000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 2000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono Armorr ", name) set_user_armor(id, 100) cs_set_user_money(id , cs_get_user_money(id) - 2000, 0) } } case 12 :{ if (cs_get_user_money(id) < 5000){ get_user_name(id, name, 31) ColorChat(id, GREEN, "%s ^x03Nie masz wystarczajaca hajsu!", name) return PLUGIN_HANDLED; } if (!is_user_alive(id)){ get_user_name(id, name, 31) ColorChat(id, BLUE, "%s ^x03Tylko zywi moga kupowac!", name) return PLUGIN_HANDLED; } if (cs_get_user_money(id) >= 5000 ){ get_user_name(id, name, 31) ColorChat(0, RED, "Kupiono Dodatkowe Hp ", name) set_user_health(id, get_user_health(id) + 20) if(get_user_flags(id) & ADMIN_LEVEL_H) set_user_health(id, get_user_health(id) + 35) cs_set_user_money(id , cs_get_user_money(id) - 5000, 0) } } } return PLUGIN_HANDLED; } public plugin_cfg() set_cvar_num("sv_maxspeed", g_iMaxSpeed); public Event_Change_Weapon(id){ if(g_fTempMaxSpeed[id] >= float(g_iProg)){ set_pev(id, pev_maxspeed, g_fTempMaxSpeed[id]); client_cmd(id, "cl_forwardspeed ^"%d^"", floatround(g_fTempMaxSpeed[id])); #if defined DEBUG client_print(id, 3, "%.1f", g_fTempMaxSpeed[id]); #endif } else{ set_pev(id, pev_maxspeed, g_fWeaponsSpeed[get_user_weapon(id)]); #if defined DEBUG client_print(id, 3, "%.1f", g_fWeaponsSpeed[get_user_weapon(id)]); #endif } } public fwCmdStart(id, iHandle, iSeed){ if(!is_user_alive(id)) return FMRES_IGNORED; new Float:fmove, Float:smove; get_uc(iHandle, UC_ForwardMove, fmove); get_uc(iHandle, UC_SideMove, smove); new Float:maxspeed; pev(id, pev_maxspeed, maxspeed); new Float:walkspeed = (maxspeed * 0.52); fmove = floatabs(fmove); smove = floatabs(smove); if(fmove <= walkspeed && smove <= walkspeed && !(fmove == 0.0 && smove == 0.0)){ if(g_fSprintLeft[id] >= 0.5){ if(task_exists(id + LEET)) remove_task(id + LEET); g_fTempMaxSpeed[id] = g_fTempMaxSpeed[id] < 400.0 ? 400.0 : g_fTempMaxSpeed[id]; g_fTempMaxSpeed[id] = g_fTempMaxSpeed[id] < float(g_iMaxSpeed) ? g_fTempMaxSpeed[id] + 10.0 : g_fTempMaxSpeed[id]; set_pev(id, pev_maxspeed, g_fTempMaxSpeed[id]); client_cmd(id, "cl_forwardspeed ^"%d^"", floatround(g_fTempMaxSpeed[id])); engclient_cmd(id, "weapon_knife"); g_fSprintLeft[id] -= 0.05; for(new i = 0 ; i < 0x10 ; i++){ new bitButtons = get_uc(iHandle, UC_Buttons); new bitOldbuttons = pev(id, pev_oldbuttons); if(!(((1<<3)|(1<<4)|(1<<12)) & (1<<i))){ if((bitButtons & (1<<i))){ if((1<<2) & (1<<i)) set_pev(id, pev_oldbuttons, bitOldbuttons | (1<<i)); else set_uc(iHandle, UC_Buttons, bitButtons & (~(1<<i))); return FMRES_SUPERCEDE; } } } } else{ g_fTempMaxSpeed[id] = 0.0; Event_Change_Weapon(id); client_print(id, print_center, "Odpocznij chwile!"); } return FMRES_IGNORED; } else{ if(!task_exists(id + LEET)) set_task(1.0, "taskRecoverSprint", id + LEET); g_fTempMaxSpeed[id] = 0.0; Event_Change_Weapon(id); } return FMRES_IGNORED; } public taskRecoverSprint(task_id){ new id = task_id - LEET; g_fSprintLeft[id]++; if(floatround(g_fSprintLeft[id]) < g_iMaxCzas || floatround(g_fSprintLeft[id]) > g_iMaxCzas){ if(floatround(g_fSprintLeft[id]) < g_iMaxCzas) set_task(1.0, "taskRecoverSprint", id + LEET); if(floatround(g_fSprintLeft[id]) > g_iMaxCzas) g_fSprintLeft[id] = float(g_iMaxCzas); } } public taskPrintAmmount(){ static id; //statyczna for(id = 1 ; id <= g_iMaxPlayers ; id++){ if(is_user_alive(id)){ new iSprint = floatround(g_fSprintLeft[id]); new sSprint[g_iMaxCzas]; while(iSprint >= 1){ iSprint--; add(sSprint, sizeof sSprint - 1, "*"); } iSprint = floatround(g_fSprintLeft[id]); set_hudmessage(iSprint ? 0x64 : 0xFF, iSprint ? 0x48 : 0x0, iSprint ? 0xC : 0x0, 0.01, 0.77, 0, 0.000001, 0.405, 0.000001, 0.000001, -1); show_hudmessage(id, "SPRINT : [%s]", sSprint); } } } public Fwd_PlayerSpawn_Post(id){ if (is_user_alive(id)){ if(!g_fSprintLeft[id]){ g_fSprintLeft[id] = 0; } set_user_footsteps(id, 0) } } public ZmienUbranie(id,reset) { if (!is_user_connected(id)) return PLUGIN_CONTINUE; if (reset) cs_reset_user_model(id); else { new num = random_num(0,3); cs_set_user_model(id, (get_user_team(id) == 1)? CT_Skins[num]: Terro_Skins[num]); } return PLUGIN_CONTINUE; } public godoff(id) { set_user_godmode(id, 0); } public kRenderTransAlphaoff(id) { set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255) } public ubranie(id) { ZmienUbranie(id, 1); } public hit(id) { set_user_hitzones (0, id, 255) }
A oto jakie są errory:
Welcome to the AMX Mod X 1.8.1-300 Compiler. Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team abc.sma(177) : warning 213: tag mismatch abc.sma(455) : warning 213: tag mismatch Header size: 2092 bytes Code size: 19724 bytes Data size: 9232 bytes Stack/heap size: 16384 bytes; max. usage is unknown, due to recursion Total requirements: 47432 bytes 2 Warnings. Done.
Niestety nie umiem sobie poradzić z tymi errorami, jeśli by mógł ktoś pomóc to będę wdzięczny i rzecz jasna osoba ta zostanie nagrodzona "karmą"