Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
- Ошибка
-
L 06/26/2018 - 17:36:36: [AMXX] Run time error 10 (plugin "csdm_menu_ultimate.amxx") (native "cs_get_user_deaths") - debug not enabled!
L 06/26/2018 - 17:36:36: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
- ОС
- Linux
- Билд
-
Protocol version 48
Exe version 1.1.2.7/Stdio (cstrike)
ReHLDS version: 3.4.0.654-dev
Build date: 12:09:21 May 22 2018 (1501)
Build from: https://github.com/dreamstalker/rehlds/commit/65c6ce5
- ReGamedll
-
ReGameDLL version: 5.7.0.312-dev
Build date: 07:53:34 May 31 2018
Build from: https://github.com/s1lentq/ReGameDLL_CS/commit/26db32e
- Список метамодулей
-
Currently loaded plugins:
description stat pend file vers src load unlod
[ 1] AMX Mod X RUN - amxmodx.so v1.8.3-R ini Start ANY
[ 2] LocalizeBug Fix RUN - localizebugfix.s v2.4 ini Start Never
[ 3] VoiceTranscoder RUN - vtc.so v2017RC3 ini ANY
[ 4] Reunion RUN - reunion.so v0.1.0.8 ini Start Never
[ 5] Rechecker RUN - rechecker.so v2.5 ini ANY
[ 6] ReAuthCheck RUN - reauthcheck.so v0.1.6 ini Start Never
[ 7] ReSemiclip RUN - resemiclip.so v2.3.9 ini ANY
[ 8] ReSRDetector RUN - resrdetector.so v0.1.0 ini ANY
[ 9] WHBlocker RUN - whblocker.so v1.5.695 ini ANY
[10] FakeMeta RUN - fakemeta_amxx_i3 v1.8.3-R pl1 ANY
[11] MySQL RUN - mysql_amxx_i386. v1.8.3-R pl1 ANY
[12] CSX RUN - csx_amxx_i386.so v1.8.3-R pl1 ANY
[13] Ham Sandwich RUN - hamsandwich_amxx v1.8.3-R pl1 ANY
[14] Engine RUN - engine_amxx_i386 v1.8.3-R pl1 ANY
[15] Fun RUN - fun_amxx_i386.so v1.8.3-R pl1 ANY
[16] CStrike RUN - cstrike_amxx_i38 v1.8.3-R pl1 ANY
[17] ReAPI RUN - reapi_amxx_i386. v5.6.0.1 pl1 ANY Never
[18] CSDM2 RUN - csdm_amxx_i386.s v2.1.3c- pl1 ANY
18 plugins, 18 running
- Список плагинов
-
[ 1] Admin Loader 2.5.2 neygomon admin_loader_fo running
[ 2] FreshBans 1.3.9b kanagava fresh_bans.amxx running
[ 3] Admin Chat 1.8.3-Re AMXX Dev Team adminchat.amxx running
[ 4] Admin Commands 1.8.3-Re AMXX Dev Team admincmd.amxx running
[ 5] Commands Menu 1.8.3-Re AMXX Dev Team cmdmenu.amxx running
[ 6] Maps Menu 1.8.3-Re AMXX Dev Team mapsmenu.amxx running
[ 7] NextMap 1.8.3-Re AMXX Dev Team nextmap.amxx running
[ 8] Players Menu 1.8.3-Re AMXX Dev Team plmenu.amxx running
[ 9] Plugin Menu 1.8.3-Re AMXX Dev Team pluginmenu.amxx running
[ 10] Restrict Weapons 1.8.3-Re AMXX Dev Team restmenu.amxx running
[ 11] TimeLeft 1.8.3-Re AMXX Dev Team timeleft.amxx running
[ 12] Admin Votes 1.8.3-Re AMXX Dev Team adminvote.amxx running
[ 13] CS Misc. Stats 1.8.3-Re AMXX Dev Team miscstats.amxx running
[ 14] CS Stats Logging 1.8.3-Re AMXX Dev Team stats_logging.a running
[ 15] Stats Configuration 1.8.3-Re AMXX Dev Team statscfg.amxx running
[ 16] Laser/Tripmine Entity 2.3 SandStriker | Re lasermineOLD.am running
[ 17] Sentry guns 1.1 JGHG & miRror sentrygun.amxx running
[ 18] Admin Money 0.9.3 f117bomb admin_money.amx running
[ 19] Build Dispenser 0.1 pro100iweb disp_mod.amxx running
[ 20] unknown unknown unknown laserfence.amxx running
[ 21] Connect Info FBR 1.0 Dom1no_[KZ] connect_info_fb running
[ 22] ShopHats 0.1 BETA KOTOKU ShopHats.amxx running
[ 23] Auto recording demo 2.0 IzI | Bonaqua (R amx_autodemorec running
[ 24] StatsX GUI 1.8 AMXX Dev Team statsx_gui.amxx running
[ 25] VoteBan_2 2.0 WTF votebans_wtf.am running
[ 26] CSDM Menu ultimate 1.1 MrKiller1779 csdm_menu_ultim running
[ 27] Cabinet 1.0 ncux cabinet.amxx running
[ 28] Camera Changer 1.3 Bl0ck Camera_Changer. running
[ 29] Parachute 1.1 Random1, 93()|29 sub_parachute.a running
[ 30] Lite MapChooser 2.6 neygomon lite_mapchooser running
[ 31] ReCSDM Team Balance 1.0.3 the_hunter recsdm_team_bal running
[ 32] DHUD Advert. 2.0 DUKKHAZ0R dhud_advert.amx running
[ 33] Kill Rewards 1.6 HoLLyWooD kill_rewards.am running
[ 34] Donate money 0.1 Sanlerus \ di.al donate_money.am running
[ 35] Bullet Damage 0.0.1 ConnorMcLeod bullet_damage.a running
[ 36] ReapiTV shop menu 0.1 sliv_shop.amxx running
[ 37] [ZP] Extra: VSK94 1.0 Crock / =) (Popr azp_weapon_vsk9 running
[ 38] [ZP] Extra: M134 1.0 LARS-DAY[BR]EAKE azp_weapon_m134 running
[ 39] [CSO] M4A1 Dark Knight 1.0 || CLO AsepKhairulAnam@ cso_buffm4_fix_ running
[ 40] [CSO] AK47 PALADIN || 1.0 || CLO AsepKhairulAnam@ cso_buffak_fix_ running
[ 41] [ZP] Weapon: Hk416ex 1.0 Crock hk416ex.amxx running
[ 42] [ZP] Weapon: Savery 1.0 Base: Batcon & x cso_weapon_save running
[ 43] Game Namer 1.1 NeuroToxin gamenamechanger running
[ 44] Lite Translit 2.8 neygomon lite_translit.a running
[ 45] SPECLIST ARMY 2.5 andrey army_spectator. running
[ 46] ARMY VAMPIRE 1.5 andrey ARMY_VAMPIRE.am running
[ 47] Army Bonus System (And 8.4 andrey army_bonus.amxx running
[ 48] CSDM Main 2.1.3d CSDM Team csdm_main.amxx running
[ 49] CSDM Equip 2.1.3d CSDM Team csdm_equip.amxx running
[ 50] CSDM Spawns 2.1.3d CSDM Team csdm_spawn_pres running
[ 51] CSDM Misc 2.1.3d CSDM Team csdm_misc.amxx running
[ 52] CSDM Stripper 2.1.3d KWo csdm_stripper.a running
[ 53] CSDM Protection 2.1.3d BAILOPAN csdm_protection running
53 plugins, 53 running
- Исходный код
-
// //
// //
// Основное и Admin Menu было создано: MrKiller1779. //
// Вип меню от автора: Prorok. //
// Вип меню было интегрировано и улучшено: MrKiller1779. //
// //
// //
// //
////////////////////////////////////////////////////////////////
#include <amxmodx>
#include <fakemeta>
#include <fun>
#include <hamsandwich>
#include <cstrike>
#include <amxmisc>
#include <colorchat>
#define PLUGIN "CSDM Menu ultimate"
#define VERSION "1.1"
#define AUTHOR "MrKiller1779"
#define MAX_PLAYERS 32
//Глобавльные настройки
#define VIP ADMIN_LEVEL_H //Флаг доступа для ВИП
#define ADMIN ADMIN_BAN //Флаг доступа для АДМИНА
//Глобавльные настройки
//Параметры Оружия
//Модели
new M4_V_MODEL[64] = "models/v_gold_m4a1.mdl" //Модель золотой M4A1
new M4_P_MODEL[64] = "models/p_gold_m4a1.mdl" //Модель золотой M4A1
new AK_V_MODEL[64] = "models/v_golden_ak47.mdl" //Модель золотой AK47
new AK_P_MODEL[64] = "models/p_golden_ak47.mdl" //Модель золотой AK47
//Модели
//Другое
#define is_valid_player(%1) (1 <= %1 <= 32)
//M4A1
new cvar_dmgmultiplier //
new cvar_goldbullets //
new cvar_custommodel //
new cvar_uclip //
new bool:g_HasM4[33] //
new bullets[ 33 ] //
new m_spriteTexture //
//M4A1
//AK47
new const AK47_BIT_SUM = (1<<CSW_AK47)
new g_hasZoom[33]
new gold_damage
new golden_model
new bool:g_HasAk[33]
//AK47
//Другое
//Параметры Оружия
//Параметры вип меню
#define DELAY_MONEY 600 //Время после которого, можно взять деньги | По умолчанию: 600 (10 мин.)
#define DELAY_HP 60 //Время после которого, можно взять HP | По умолчанию: 60 (10 мин.)
#define DELAY_MENU 120 //Время после которого, меню включится | По умолчанию: 300 (5 мин.)
#define DELAY_GM4A1 30 //Время после которого, можно взять Gold M4a1 | По умолчанию: 120 (2 мин.)
#define DELAY_GAK47 30 //Время после которого, можно взять Gold M4a1 | По умолчанию: 120 (2 мин.)
#define VIP_MONEYS 10000 //Сколько денег выдавать | По умолчанию: 10000
#define VIP_HP 100 //Сколько здоровья выдавать | По умолчанию: 100
#define VIP_SPEED 500.0 //Сколько скорости выдавать s| По умолчанию: 100
#define VIP_GRAVITY 0.5 //Сколько гравитации выдавать | По умолчанию: 100
//Другое
new MenuTimeHP[MAX_PLAYERS + 1];
new MenuTimeMoney[MAX_PLAYERS + 1];
new MenuTimeGOLDM4A1[MAX_PLAYERS + 1];
new MenuTimeGOLDAK47[MAX_PLAYERS + 1];
new VipMenuTimeGOLDM4A1 [MAX_PLAYERS + 1];
new VipMenuTimeGOLDAK47 [MAX_PLAYERS + 1];
new VipMenuTimeMoney [MAX_PLAYERS + 1];
new VipMenuTimeHP [MAX_PLAYERS + 1];
new VipMenuTime;
new GravityTake [MAX_PLAYERS + 1];
new SpeedTake [MAX_PLAYERS + 1];
new PlayerDeathNow [MAX_PLAYERS + 1];
new PlayerDeathLast [MAX_PLAYERS + 1];
new bool:g_speed[MAX_PLAYERS+1] = false;
#if AMXX_VERSION_NUM < 183
#define Ham_CS_Player_ResetMaxSpeed Ham_Item_PreFrame
#endif
//Другое
//Параметры вип меню
//Параметры основного меню
#define MONEY_LASER 800 // Цена лазера для обычного игрока | По умолчанию: 800
#define MONEY_DISPANSER 4000 //Цена раздатчика для обычного игрока | По умолчанию: 4000
#define VIP_MONEY_LASER 800 //Цена лазера для ВИП игрока | По умолчанию: 800
#define VIP_MONEY_DISPANSER 3000 //Цена раздатчика для ВИП игрока | По умолчанию: 4000
new MoneysPlayer[MAX_PLAYERS + 1];
new PlayerInSpec;
new PlayerInTeam;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
register_clcmd("menu", "csdmMenuFirst");
register_clcmd("chooseteam","csdmMenuFirst");
register_menucmd(register_menuid("csdmMenuFirst"), (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9), "csdmMenuHandle");
register_clcmd("amxmodmenu", "csdmAdminMenu");
register_menucmd(register_menuid("csdmAdminMenu"), (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9), "csdmAdminMenuHandle");
register_clcmd("say /vipmenu", "csdmVipMenu");
register_clcmd("say_team /vipmenu", "csdmVipMenu");
register_clcmd("vipmenu", "csdmVipMenu");
register_menucmd(register_menuid("csdmVipMenu"), (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9), "csdmVipMenuHandle");
RegisterHam(Ham_CS_Player_ResetMaxSpeed, "player", "Check_speed", 0);
VipMenuTime = get_systime() + DELAY_MENU; //Время, после которого меню начнет работу (в сек.);
register_clcmd("say_team /resetscore","ResetScore");
register_clcmd("say /resetscore","ResetScore");
register_clcmd("say_team /rs","ResetScore");
register_clcmd("say /rs","ResetScore");
register_clcmd("say /spec", "spec");
register_clcmd("say_team /spec", "spec");
register_clcmd("say /back", "back");
register_clcmd("say_team /back", "back");
cvar_dmgmultiplier = register_cvar("goldenm4_dmg_multiplier", "1");
cvar_custommodel = register_cvar("goldenm4_custom_model", "1");
cvar_goldbullets = register_cvar("goldenm4_gold_bullets", "1");
cvar_uclip = register_cvar("goldenm4_unlimited_clip", "1");
gold_damage = register_cvar("goldenak_dmg", "2");
golden_model = register_cvar("goldenak_custommodel", "1");
register_event("DeathMsg", "Death", "a");
register_event("WeapPickup","checkModel","b","1=19");
register_event("CurWeapon","checkWeapon","be","1=1");
register_event("CurWeapon", "make_tracer", "be", "1=1", "3>0");
RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage");
register_forward( FM_CmdStart, "fw_CmdStart" );
RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1);
}
public csdmMenuFirst(id) {
//Параметры НЕ МЕНЯТЬ
remove_task(id);
MoneysPlayer[id] = cs_get_user_money(id);
//Параметры НЕ МЕНЯТЬ
new szMenu[2000];
new iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9);
new iLen = formatex(szMenu, charsmax(szMenu), "\yМеню Сервера^n^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r1.\w Поставить \yПушку^n");
//Лазер
if ((MoneysPlayer[id] >= MONEY_LASER) && (!VIP)){
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r2.\w Поставить \yЛазер^n");
} else if ((MoneysPlayer[id] >= VIP_MONEY_LASER) && (VIP)) {
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r2.\w Поставить \yЛазер^n");
} else if ((MoneysPlayer[id] < VIP_MONEY_LASER) && (VIP)){
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r2.\w Поставить \yЛазер^n");
} else if ((MoneysPlayer[id] < MONEY_LASER) && (!VIP)){
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r2.\w Поставить \yЛазер^n");
}
//Лазер
//Раздатчик
if ((MoneysPlayer[id] >= MONEY_DISPANSER) && (!VIP)){
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r3.\w Поставить \yРаздатчик^n");
} else if ((MoneysPlayer[id] >= VIP_MONEY_DISPANSER) && (VIP)) {
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r3.\w Поставить \yРаздатчик^n");
} else if ((MoneysPlayer[id] < VIP_MONEY_DISPANSER) && (VIP)){
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r3.\w Поставить \yРаздатчик^n");
} else if ((MoneysPlayer[id] < MONEY_DISPANSER) && (!VIP)){
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r3.\w Поставить \yРаздатчик^n");
}
//Раздатчик
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r4.\w Поставить \yЛазерный забор^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r5.\w Личный \yКабинет^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r6.\w Магазин \yШапок + Способностей^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r7.\w Магазин \yОружий^n^n");
if(get_user_flags(id) & VIP){
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r8.\w Вип \yМеню^n");
} else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d8.\d Вип Меню^n");
if(get_user_flags(id) & ADMIN){
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r9.\w Админ \yМеню^n^n");
} else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d9.\d Админ Меню^n^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r0.\w Выход^n");
return show_menu(id, iKeys, szMenu, -1, "csdmMenuFirst");
}
public csdmAdminMenu(id) {
//Параметры не менять
remove_task(id)
//Параметры не менять
new szMenu[1024];
new iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9);
new iLen = formatex(szMenu, charsmax(szMenu), "\yАдмин Меню^n^n");
if(get_user_flags(id) & ADMIN){
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r1.\w Забанить \yигрока^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r2.\w Кикнуть \yигрока ^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r3.\w Ударить\r/\yУбить \yигрока^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r4.\w Сменить команду \yигрока^n^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r5.\w Сменить \yкарту ^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r6.\w Начать \yголосование ^n^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r7.\w Сделать \yрестарт ^n^n");
}
else {
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d1. Забанить игрока^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d2. Кикнуть игрока ^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d3. Пнуть/Убить игрока^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d3. Сменить команду игрока ^n^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d5. Сменить голосование ^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d6. Начать голосование ^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d7. Сделать рестарт ^n^n");
}
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r0.\w Выход");
return show_menu(id, iKeys, szMenu, -1, "csdmAdminMenu");
}
public csdmVipMenu(id) {
//Параметры
new szMenu[1024];
new MenuTime = VipMenuTime - get_systime();
MenuTimeHP[id] = VipMenuTimeHP[id] - get_systime();
MenuTimeMoney[id] = VipMenuTimeMoney[id] - get_systime();
MenuTimeGOLDM4A1[id] = VipMenuTimeGOLDM4A1[id] - get_systime();
MenuTimeGOLDAK47[id] = VipMenuTimeGOLDAK47[id] - get_systime();
new iKeys = (1<<0|1<<1|1<<2|1<<3|1<<4|1<<5|1<<6|1<<7|1<<8|1<<9);
//PlayerDeathNow[id] = cs_get_user_deaths(id);
//Параметры
//Отображение
if ((MenuTime >= -1) || (MenuTimeHP[id] >= -1) || (MenuTimeHP[id] >= -1) || (MenuTimeGOLDM4A1[id] >= -1)) {
set_task (1.0 , "csdmVipMenu", id);
} else remove_task(id);
//Отображение
new iLen = formatex(szMenu, charsmax(szMenu), "\yВип Меню^n^n");
if (PlayerDeathNow[id] != PlayerDeathLast[id]){
GravityTake[id] = 0;
SpeedTake[id] = 0;
PlayerDeathLast[id] = PlayerDeathNow[id];
}
if (is_user_admin(id) && VIP){
if (VipMenuTime > get_systime()){
iLen += formatex(szMenu[iLen], charsmax(szMenu), "\wМеню заработает через \w[\r%d\w] сек.^n^n", MenuTime);
}
} else iLen += formatex(szMenu[iLen], charsmax(szMenu), "\dМеню заработает через [%d] сек.^n^n", DELAY_MENU);
if ((VipMenuTime < get_systime()) && (VIP)){
if(VipMenuTimeMoney[id] > get_systime()){
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d1. Деньги [%d] - [\r%d\d] сек.^n", VIP_MONEYS,MenuTimeMoney[id]);
} else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r1.\w Деньги \y[\r%d$\y] - \y[\rГотово\y]^n", VIP_MONEYS);
if (VipMenuTimeHP[id] > get_systime())
{
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d2.\d Здоровье \d[\d%d HP\d] - [\r%d\d] сек.^n", VIP_HP,MenuTimeHP[id]);
} else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r2.\w Здоровье \y[\r%d HP\y] - \y[\rГотово\y]^n", VIP_HP);
if (SpeedTake[id] == 1) {
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r3.\w Скорость - \y[\rВзято\y]^n");
} else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r3.\w Скорость^n");
if (GravityTake[id] == 1) {
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r4.\w Гравитация - \y[\rВзято\y]^n");
} else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r4.\w Гравитация^n");
if ((VipMenuTimeGOLDM4A1[id] > get_systime()) && (VIP)) {
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d5. Взять Золотой [M4A1] - [\r%d\d] сек.^n", MenuTimeGOLDM4A1[id]);
} else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r5.\w Взять Золотой \y[\rM4A1\y]\w - \y[\rГотово\y]^n");
if ((VipMenuTimeGOLDAK47[id] > get_systime()) && (VIP)) {
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d6. Взять Золотой [AK47] - [\r%d\d] сек.^n^n", MenuTimeGOLDAK47[id]);
} else iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r6.\w Взять Золотой \y[\rAK47\y]\w - \y[\rГотово\y]^n^n");
}
else {
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d1. Деньги [%d$] - [%d] сек.^n", VIP_MONEYS, DELAY_MONEY);
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d2. Здоровье [%d HP] - [%d] сек.^n", VIP_HP, DELAY_HP);
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d3. Гравитация^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d4. Скорость^n");
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d5. Взять Золотой [M4A1] - [%d] сек.^n", DELAY_GM4A1);
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\d6. Взять Золотой [AK47] - [%d] сек.^n^n", DELAY_GAK47);
}
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r0.\w Выход");
return show_menu(id, iKeys, szMenu, -1, "csdmVipMenu");
}
public csdmVipMenuHandle(id, iKey)
{
remove_task(id)
if(!is_user_admin(id) && !VIP)
{
ColorChat(id,GREEN, "^1[^4Инфо^1] ^3У вас нету доступа к ^4Вип Меню!");
return PLUGIN_HANDLED;
}
switch(iKey)
{
case 0:
{
if (VipMenuTime < get_systime())
{
if (VipMenuTimeMoney[id] > get_systime())
{
return PLUGIN_HANDLED;
}
ColorChat(id,GREEN, "^1[^4Инфо^1] ^4Вы взяли деньги. ^3Удачной игры!");
cs_set_user_money(id, cs_get_user_money(id) + VIP_MONEYS);
VipMenuTimeMoney[id] = get_systime(DELAY_MONEY);
}
else csdmVipMenu(id);
}
case 1:
{
if (VipMenuTime < get_systime())
{
ColorChat(id,GREEN, "^1[^4Инфо^1] ^4Вы взяли здоровье. ^3Удачной игры!");
set_user_health(id, get_user_health(id) + VIP_HP);
VipMenuTimeHP[id] = get_systime(DELAY_HP);
}
else csdmVipMenu(id);
}
case 2:
{
if (VipMenuTime < get_systime())
{
ColorChat(id,GREEN, "^1[^4Инфо^1] ^4Вы взяли Скорость. ^3Удачной игры!");
speedhack(id);
SpeedTake[id] = 1;
PlayerDeathLast[id] = get_user_deaths(id);
}
else csdmVipMenu(id);
}
case 3:
{
if (VipMenuTime < get_systime())
{
ColorChat(id,GREEN, "^1[^4Инфо^1] ^4Вы взяли Гравитацию. ^3Удачной игры!");
set_user_gravity(id, VIP_GRAVITY);
GravityTake[id] = 1;
PlayerDeathLast[id] = get_user_deaths(id);
}
else csdmVipMenu(id);
}
case 4: {
if ( !is_user_alive(id) )
{
ColorChat(id,GREEN, "^1[^4Инфо^1] ^3Чтобы взять ^4золотую M4A1 ^1вы должны быть живы!");
return PLUGIN_HANDLED
}
if (VipMenuTime < get_systime())
{
if(VipMenuTimeGOLDM4A1[id] > get_systime())
{
return PLUGIN_HANDLED;
}
give_item(id, "weapon_m4a1");
g_HasM4[id] = true;
ColorChat(id,GREEN, "^1[^4Инфо^1] ^3Вы взяли ^4Золотой M4A1. ^1Удачной игры!");
VipMenuTimeGOLDM4A1[id] = get_systime(DELAY_GM4A1);
}
}
case 5: {
if ( !is_user_alive(id) )
{
ColorChat(id,GREEN, "^1[^4Инфо^1] ^3Чтобы взять ^4золотой АК47 ^1вы должны быть живы!");
return PLUGIN_HANDLED
}
if (VipMenuTime < get_systime())
{
if (VipMenuTimeGOLDAK47[id] > get_systime())
{
return PLUGIN_HANDLED;
}
drop_weapon(id, 1)
give_item(id, "weapon_ak47")
cs_set_user_bpammo(id, CSW_AK47, 90)
g_HasAk[id] = true
ColorChat(id,GREEN, "^1[^4Инфо^1] ^3Вы взяли ^4Золотой AK47. ^1Удачной игры!");
VipMenuTimeGOLDAK47[id] = get_systime(DELAY_GAK47);
}
}
case 9: {
remove_task(id);
}
}
return PLUGIN_HANDLED;
}
public csdmAdminMenuHandle(id, iKey)
{
if(!is_user_admin(id) && !ADMIN)
{
ColorChat(id,GREEN, "^1[^4Инфо^1] ^1У вас нету доступа к ^4Админ Меню!");
return PLUGIN_HANDLED;
}
switch(iKey)
{
case 0: client_cmd(id, "amx_banmenu")
case 1: client_cmd(id, "amx_kickmenu")
case 2: client_cmd(id, "amx_slapmenu")
case 3: client_cmd(id, "amx_teammenu")
case 4: client_cmd(id, "amx_mapmenu")
case 5: client_cmd(id, "amx_votemapmenu")
case 6:
{
server_cmd("sv_restartround 1")
new name[32]
get_user_name(id, name, 31)
ColorChat(id,GREEN, "^1[^4Инфо^1] ^3Админ ^4%s ^1Сделал рестарт", name)
}
}
return PLUGIN_HANDLED;
}
public csdmMenuHandle(id, iKey) {
switch(iKey)
{
case 0: client_cmd(id, "sentry_build")
case 1: client_cmd(id, "+setlaser")
case 2: client_cmd(id, "build_dispenser")
case 3: client_cmd(id, "+setfence")
case 4: client_cmd(id, "cabinet")
case 5: client_cmd(id, "say /hats")
case 6: client_cmd(id, "say /shop")
case 7: client_cmd(id, "say /vipmenu")
case 8: client_cmd(id, "amxmodmenu")
}
return PLUGIN_HANDLED;
}
//-----------------------Доп.Плагины--------------------
public speedhack(id){
g_speed[id] = !g_speed[id];
set_pev(id, pev_maxspeed, VIP_SPEED);
}
public Check_speed(id){
if(g_speed[id])
return HAM_SUPERCEDE;
return HAM_IGNORED;
}
public ResetScore(id) {
if(is_user_connected(id))
{
new name[32]
get_user_name(id, name, 31)
set_user_frags(id, 0);
cs_set_user_deaths(id, 0);
ColorChat(id,GREEN, "^1[^4Инфо^1] ^3%s ^4Вы сбросили счет!", name);
}
}//ResetScore
public spec(id) {
PlayerInSpec = cs_get_user_deaths(id);
if (cs_get_user_team(id) == CS_TEAM_SPECTATOR)
return PLUGIN_HANDLED
else {
PlayerInTeam = cs_get_user_team(id);
cs_set_user_team(id, CS_TEAM_SPECTATOR);
user_kill(id, 1);
}
return PLUGIN_CONTINUE
}//SPEC
public back(id) {
if ((cs_get_user_team(id) == CS_TEAM_SPECTATOR) && (!is_user_alive(id))){
cs_set_user_team(id, PlayerInTeam);
cs_set_user_deaths(id, PlayerInSpec);
cs_user_spawn(id);
}
}//SPEC
//------------------------GOLD------------------------
public client_connect(id)
{
g_HasM4[id] = false
g_HasAk[id] = false
}
public client_disconnect(id)
{
g_HasM4[id] = false
g_HasAk[id] = false
}
public Death(id)
{
g_HasM4[read_data(2)] = false
g_HasAk[read_data(2)] = false
set_pev(id, pev_maxspeed, 400.0);
}
public fwHamPlayerSpawnPost(id)
{
g_HasM4[id] = false
g_HasAk[id] = false
}
public plugin_precache()
{
precache_model(M4_V_MODEL)
precache_model(M4_P_MODEL)
precache_model(AK_V_MODEL)
precache_model(AK_P_MODEL)
m_spriteTexture = precache_model("sprites/dot.spr")
precache_sound("weapons/zoom.wav")
}
public checkModel(id)
{
new szWeapID = read_data(2)
if ( szWeapID == CSW_M4A1 && g_HasM4[id] == true && get_pcvar_num(cvar_custommodel) )
{
set_pev(id, pev_viewmodel2, M4_V_MODEL)
set_pev(id, pev_weaponmodel2, M4_P_MODEL)
}
if(szWeapID == CSW_AK47 && g_HasAk[id] == true && get_pcvar_num(golden_model) == 1) {
set_pev(id, pev_viewmodel2, AK_V_MODEL)
set_pev(id, pev_weaponmodel2, AK_P_MODEL)
}
return PLUGIN_HANDLED
}
public checkWeapon(id)
{
new plrClip, plrAmmo, plrWeap[32]
new plrWeapId
plrWeapId = get_user_weapon(id, plrClip , plrAmmo)
if (plrWeapId == CSW_AK47 && g_HasAk[id])
checkModel(id)
else
{
if (plrWeapId == CSW_M4A1 && g_HasM4[id])
{
checkModel(id)
}
else
{
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
if (plrClip == 0 && get_pcvar_num(cvar_uclip))
{
get_weaponname(plrWeapId, plrWeap, 31)
give_item(id, plrWeap)
engclient_cmd(id, plrWeap)
engclient_cmd(id, plrWeap)
engclient_cmd(id, plrWeap)
}
return PLUGIN_HANDLED
}
public fw_TakeDamage(victim, inflictor, attacker, Float:damage)
{
if (is_valid_player(attacker) && get_user_weapon(attacker) == CSW_M4A1 && g_HasM4[attacker])
SetHamParamFloat(4, damage * get_pcvar_float(cvar_dmgmultiplier))
if(is_valid_player(attacker) && get_user_weapon(attacker) == CSW_AK47 && g_HasAk[attacker])
SetHamParamFloat(4, damage * get_pcvar_float(gold_damage))
}
public make_tracer(id)
{
if (get_pcvar_num(cvar_goldbullets))
{
new clip,ammo
new wpnid = get_user_weapon(id,clip,ammo)
new pteam[16]
get_user_team(id, pteam, 15)
if ((bullets[id] > clip) && (((wpnid == CSW_M4A1) && g_HasM4[id]) || ((wpnid == CSW_AK47) && g_HasAk[id])))
{
new vec1[3], vec2[3]
get_user_origin(id, vec1, 1) // origin; your camera point.
get_user_origin(id, vec2, 4) // termina; where your bullet goes (4 is cs-only)
//BEAMENTPOINTS
message_begin( MSG_BROADCAST,SVC_TEMPENTITY)
write_byte (0) //TE_BEAMENTPOINTS 0
write_coord(vec1[0])
write_coord(vec1[1])
write_coord(vec1[2])
write_coord(vec2[0])
write_coord(vec2[1])
write_coord(vec2[2])
write_short( m_spriteTexture )
write_byte(1) // framestart
write_byte(5) // framerate
write_byte(2) // life
write_byte(10) // width
write_byte(0) // noise
write_byte( 255 ) // r, g, b
write_byte( 215 ) // r, g, b
write_byte( 0 ) // r, g, b
write_byte(200) // brightness
write_byte(150) // speed
message_end()
}
bullets[id] = clip
}
}
public CmdBuyM4(id)
{
if ( !is_user_alive(id) )
{
ColorChat(id,GREEN, "^1[^4Инфо^1] ^1Чтобы купить золотую ^3M4A1 ^4вы должны быть живы!")
return PLUGIN_HANDLED
}
give_item(id, "weapon_m4a1")
g_HasM4[id] = true
return PLUGIN_HANDLED
}
public CmdGiveM4(id,level,cid)
{
if (!cmd_access(id,level,cid,2))
return PLUGIN_HANDLED;
new arg[32];
read_argv(1,arg,31);
new player = cmd_target(id,arg,7);
if (!player)
return PLUGIN_HANDLED;
new name[32];
get_user_name(player,name,31);
give_item(player, "weapon_m4a1")
g_HasM4[player] = true
return PLUGIN_HANDLED
}
public fw_CmdStart( id, uc_handle, seed ) {
if(!is_user_alive(id))
return PLUGIN_HANDLED
if((get_uc(uc_handle, UC_Buttons) & IN_ATTACK2) && !( pev(id, pev_oldbuttons) & IN_ATTACK2)) {
new szWeapID = get_user_weapon(id)
if(szWeapID == CSW_AK47 && g_HasAk[id] == true && !g_hasZoom[id] == true) {
g_hasZoom[id] = true
cs_set_user_zoom(id, CS_SET_AUGSG552_ZOOM, 0)
emit_sound(id, CHAN_ITEM, "weapons/zoom.wav", 0.20, 2.40, 0, 100)
} else if(szWeapID == CSW_AK47 && g_HasAk[id] == true && g_hasZoom[id]) {
g_hasZoom[id] = false
cs_set_user_zoom(id, CS_RESET_ZOOM, 0)
}
}
return PLUGIN_HANDLED
}
//-------------------------GOLD------------------------
//-----------------------Доп.Плагины--------------------
//-----------------------Другое-------------------------
stock drop_weapon(id, dropwhat) {
static weapons[32], num, i, weaponid
num = 0
get_user_weapons(id, weapons, num)
for (i = 0; i < num; i++) {
weaponid = weapons[i]
if ((dropwhat == 1 && ((1<<weaponid) & AK47_BIT_SUM))) {
static wname[32]
get_weaponname(weaponid, wname, charsmax(wname))
engclient_cmd(id, "drop", wname)
}
}
}
Косяк в нативе, что нужно убрать / добавить? я без понятия в скриптинге не шарю может кто нибудь поможет?
26 Июн 2018