public plugin_init() { register_plugin("Shop csdm","1.0","Your Name") register_clcmd("say /shop","shop") // Команда вызова меню в данном случае /shop register_menu("Shop", iKeys, "menu_handler") // Кнопки меню register_event("CurWeapon", "speedfix", "be", "1=1") // Смена оружия register_event("HLTV", "EventRoundStart", "a", "1=0", "2=0") // Начало нового раунда register_event("DeathMsg", "eDeath", "a"); // Смерть игрока }
public EventRoundStart() { for(new id=1;id<get_maxplayers();id++) speed_fix_active[id] = 0 }
public eDeath(id) { new victem = read_data(2) speed_fix_active[victem] = 0 }
public speedfix(id) { if(speed_fix_active[id]) set_user_maxspeed(id,400.0) }
public shop(id) { new szBuffer[512], iLen; new money = cs_get_user_money(id) // получаем деньги угрока new level = get_user_lvl(id) // из army_ranks.inc получаем уровень игрока iLen = formatex(szBuffer, sizeof szBuffer - 1, "\rМагазин сервера^nДеньги %d | Уровень %d",money,level); if(money >= 1500 || level >= 3) // делаем проверку на уровень и на деньги { iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r1. \wПатроны 1500 $ и 3 lvl^n"); // если условия возможны }else{ iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r1. \dПатроны 1500 $ и 3 lvl^n"); // если условия невозможны } if(money >= 3500 || level >= 4) // делаем проверку на уровень и на деньги { iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r2. \w25 брони 3500 $ и 4 lvl^n"); // если условия возможны }else{ iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r2. \d25 брони 3500 $ и 4 lvl^n"); // если условия невозможны } if(money >= 2800 || level >= 5) // делаем проверку на уровень и на деньги { iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r3. \w+20 hp 2800 $ и 5 lvl^n"); // если условия возможны }else{ iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r3. \d+20 hp 2800 $ и 5 lvl^n"); // если условия невозможны } if(money >= 3400 || level >= 6) // делаем проверку на уровень и на деньги { iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r4. \w+40 hp 3400 $ и 6 lvl^n"); // если условия возможны }else{ iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r4. \d+40 hp 3400 $ и 6 lvl^n"); // если условия невозможны } if(money >= 5000 || level >= 8) // делаем проверку на уровень и на деньги { iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r5. \wHE grenade 5000 $ и 8 lvl^n"); // если условия возможны }else{ iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r5. \dHE grenade 5000 $ и 8 lvl^n"); // если условия невозможны } if(money >= 10000 || level >= 12) // делаем проверку на уровень и на деньги { iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r6. \wУскорение (30 сек) 10000 $ и 12 lvl^n"); // если условия возможны }else{ iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r6. \dУскорение (30 сек) 10000 $ и 12 lvl^n"); // если условия невозможны } if(money >= 18000 || level >= 19) // делаем проверку на уровень и на деньги { iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r7. \wAwp 18000 $ и 19 lvl^n^n^n"); // если условия возможны }else{ iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r7. \dAwp 18000 $ и 19 lvl^n^n^n"); // если условия невозможны } iLen += formatex(szBuffer[iLen], (sizeof szBuffer - 1) - iLen, "\r0. \wВыход^n"); show_menu(id, iKeys, szBuffer, -1, "Shop"); return PLUGIN_HANDLED }
public Shop(id,key) { switch(key) { case 0: { new money = cs_get_user_money(id) new level = get_user_lvl(id) if(money >= 1500) { if(level >= 3) { new clip,ammo,weapon = get_user_weapon(id,clip,ammo) cs_set_user_bpammo(id,weapon,200) cs_set_user_money(id,money-1500) client_print(id,print_chat,"ты купил патроны") }else{ client_print(id,print_center,"Нужен 3 lvl") } }else{ client_print(id,print_center,"Тебе нужно 1500 $") } } case 1: { new money = cs_get_user_money(id) new level = get_user_lvl(id) if(money>=3500) { if(level>=4) { new ar = get_user_armor(id) set_user_armor(id,ar+25) cs_set_user_money(id,money-3500) }else{ client_print(id,print_center,"Нужен 4 lvl") } }else{ client_print(id,print_chat,"Тебе нужно 3500$") } } case 2: { new money = cs_get_user_money(id) new level = get_user_lvl(id) if(money>=2800) { if(level>=5) { new hp = get_user_health(id) set_user_armor(id,hp+20) cs_set_user_money(id,money-2800) }else{ client_print(id,print_center,"Нужен 5 lvl") } }else{ client_print(id,print_chat,"Тебе нужно 2800$") } } case 3: { new money = cs_get_user_money(id) new level = get_user_lvl(id) if(money>=3400) { if(level>=6) { new hp = get_user_health(id) set_user_armor(id,hp+40) cs_set_user_money(id,money-3400) }else{ client_print(id,print_center,"Нужен 6 lvl") } }else{ client_print(id,print_chat,"Тебе нужно 3400$") } } case 4: { new money = cs_get_user_money(id) new level = get_user_lvl(id) if(money>=5000) { if(level>=8) { give_item(id,"weapon_hegrenade") cs_set_user_money(id,money-5000) }else{ client_print(id,print_center,"Нужен 8 lvl") } }else{ client_print(id,print_chat,"Тебе нужно 5000$") } } case 5: { new money = cs_get_user_money(id) new level = get_user_lvl(id) if(money>=10000) { if(level>=12) { set_user_maxspeed(id,400.0) set_task(30.0,"remove_speed",id) speed_fix_active[id]++ cs_set_user_money(id,money-10000) }else{ client_print(id,print_center,"Нужен 12 lvl") } }else{ client_print(id,print_chat,"Тебе нужно 10000$") } } case 6: { new money = cs_get_user_money(id) new level = get_user_lvl(id) if(money>=18000) { if(level>=19) { give_item(id,"weapon_awp") cs_set_user_bpammo(id,CSW_AWP,200) cs_set_user_money(id,money-18000) }else{ client_print(id,print_center,"Нужен 19 lvl") } }else{ client_print(id,print_chat,"Тебе нужно 18000$") } } } return PLUGIN_HANDLED }