#include <amxmodx>
#include <codmod>
#include <engine>
#include <cstrike>
#include <fun>
#include <colorchat>
#include <hamsandwich>
#include <fakemeta_util>
public plugin_init()
{
register_plugin("CodShop by Mietek", "1.5", " Edit by Kolar");
register_clcmd("say /sklep", "Sklep");
register_clcmd("say /kup", "Sklep");
}
public plugin_precache()
{
precache_sound("misc/woohoo2.wav");
precache_sound("misc/zeusmode.wav");
precache_sound("ambience/noq.wav");
}
public Sklep(id)
{
new tytul[25];
format(tytul, 24, "\rSklep \yCall Of Duty Cs-Kotek");
new menu = menu_create(tytul, "Sklep_Handler");
menu_additem(menu, "Mala apteczka \d[50 HP] \yKoszt: \r2$");//1
menu_additem(menu, "Duza apteczka \d[100 HP] \yKoszt: \r2$");//1
menu_additem(menu, "Losowa bron \yKoszt: \r1$");//2
menu_additem(menu, "Losowe doswiadczenie \yKoszt: \r16000$");//3
menu_additem(menu, "Losowy przedmiot \yKoszt: \r8000$");//4
menu_additem(menu, "Ammunicja do broni \yKoszt: \r8500$");//5
menu_addtext(menu, " ", 0)
menu_addtext(menu, "\dZapraszamy: \yProDiablo.eu", 0)
menu_display(id, menu);
}
public Sklep_Handler(id, menu, item)
{
if(!is_user_alive(id) || !is_user_connected(id))
return PLUGIN_CONTINUE;
new kasa = cs_get_user_money(id);
if(item == MENU_EXIT)
{
menu_destroy(menu);
client_cmd(id, "spk misc/zeusmode.wav");
return PLUGIN_CONTINUE;
}
switch(item)
{
case 0:
{
if(kasa >=2)
{
cs_set_user_money(id, kasa-2);
cod_get_user_health(id, 50);
client_print(id, print_chat, "[COD:MW] Dostajesz 50 HP!");
}
if(kasa < 2)
client_cmd(id, "spk ambience/noq.wav");
}
case 1:
{
if(kasa >=2)
{
cs_set_user_money(id, kasa-2);
set_user_health(id, 100);
client_print(id, print_chat, "[COD:MW] Dostajesz 100 HP!");
}
if(kasa < 2)
client_cmd(id, "spk ambience/noq.wav");
}
case 2:
{
if(kasa >= 1)
{
cs_set_user_money(id, kasa-1);
new bronie = random_num(0, 11);
client_cmd(id, "spk misc/woohoo2.wav");
switch(bronie)
{
case 0:
{
set_hudmessage(255, 255, 42, -1.0, 0.4, 0, 6.0, 30.0)
show_hudmessage(id, "COLT M4A1 CARBINE")
cod_give_weapon(id, CSW_M4A1);
give_item(id,"ammo_762nato");
give_item(id,"ammo_buckshot");
give_item(id,"ammo_45acp");
give_item(id,"ammo_556nato");
give_item(id,"ammo_9mm");
give_item(id,"ammo_57mm");
give_item(id,"ammo_45acp");
give_item(id,"ammo_338magnum");
give_item(id,"ammo_50ae");
}
case 1:
{
set_hudmessage(255, 255, 42, -1.0, 0.4, 0, 6.0, 30.0)
show_hudmessage(id, "KALASHNIKOV AK-47")
cod_give_weapon(id, CSW_AK47);
give_item(id,"ammo_762nato");
give_item(id,"ammo_buckshot");
give_item(id,"ammo_45acp");
give_item(id,"ammo_556nato");
give_item(id,"ammo_9mm");
give_item(id,"ammo_57mm");
give_item(id,"ammo_45acp");
give_item(id,"ammo_338magnum");
give_item(id,"ammo_50ae");
}
}
}
if(kasa < 1)
client_cmd(id, "spk ambience/noq.wav");
}
case 3:
{
if(kasa >= 16000)
{
new exp = cod_get_user_xp(id);
new losowy = random_num(25, 350);
cs_set_user_money(id, kasa-16000);
cod_set_user_xp(id, exp+losowy)
client_print(id, print_chat, "[COD:MW] Dostales %i EXP'a!", losowy);
}
if(kasa < 16000)
client_cmd(id, "spk ambience/noq.wav");
}
case 4:
{
if(kasa >= 8000)
{
cs_set_user_money(id, kasa-8000);
cod_set_user_perk(id, -1, -1, 1);
client_print(id, print_chat, "[COD:MW] Kupiles losowy perk!");
}
if(kasa < 8000)
client_cmd(id, "spk ambience/noq.wav");
}
case 5:
{
if(kasa >= 8500)
{
give_item(id,"ammo_762nato");
give_item(id,"ammo_buckshot");
give_item(id,"ammo_45acp");
give_item(id,"ammo_556nato");
give_item(id,"ammo_9mm");
give_item(id,"ammo_57mm");
give_item(id,"ammo_45acp");
give_item(id,"ammo_338magnum");
give_item(id,"ammo_50ae");
cs_set_user_money(id, kasa-8500);
client_print(id, print_chat, "[COD:MW] Kupiles ammo do all broni!");
}
if(kasa < 8500)
client_cmd(id, "spk ambience/noq.wav");
}
}
return PLUGIN_CONTINUE;
}
Więc tak, do sklepiku dodałem sobie losowanie broni, lecz jest to zbugowane ponieważ, czasem w ogóle nic nie dostaje tylko kase zabiera, lub gdy chce dodać by wylosowało np. AWP + SCOUT to zamiast tych dwóch broni daje mi MP5 o.0
==================================================================================================================
public CurWeapon(id)
{
if(!is_user_connected(id) || get_user_team(id) > 2)
return;
new bron = read_data(2);
new bronie = (bronie_klasy[klasa_gracza[id]] | bonusowe_bronie_gracza[id] | bronie_dozwolone);
if(!(1<<bron & bronie))
{
}
if(cs_get_user_shield(id) && !gracz_ma_tarcze[id])
engclient_cmd(id, "drop", "weapon_shield");
UstawSzybkosc(id);
}
Oraz co tutaj by trzeba było usunąć by można było podnosić bronie które ktoś wyrzucił.
Użytkownik Kolar`. edytował ten post 20.09.2011 15:29