awp_off

Сообщения
43
Реакции
3
Ошибка
Не возвращает деньги,за покупку AWP при низком онлайне...
ОС
Linux
Amx Mod X
AMX Mod X 1.9.0.5263 (http://www.amxmodx.org)
Authors:
David "BAILOPAN" Anderson, Pavol "PM OnoTo" Marko
Felix "SniperBeamer" Geyer, Jonny "Got His Gun" Bergstrom
Lukasz "SidLuke" Wlasinski, Christian "Basic-Master" Hammacher
Borja "faluco" Ferrer, Scott "DS" Ehlert
Compiled: Oct 27 2019 16:23:31
Built from: https://github.com/alliedmodders/amxmodx/commit/15a14a0
Build ID: 5263:15a14a0
Core mode: JIT+ASM32
Билд
Protocol version 48
Exe version 1.1.2.7/Stdio (cstrike)
ReHLDS version: 3.7.0.695-dev
Build date: 15:54:29 Apr 6 2020 (2186)
ReGamedll
ReGameDLL version: 5.15.0.458-dev
Build date: 11:28:46 Apr 2 2020
Версия Metamod
Metamod-r v1.3.0.128, API (5:13)
Metamod-r build: 17:47:54 Aug 24 2018
Список метамодулей
[ 1] Reunion        RUN   -    reunion.so                  v0.1.0.135       ini  Start Never
[ 2] AMX Mod X RUN - amxmodx.so v1.9.0.5263 ini Start ANY
[ 3] Revoice RUN - revoice.so v0.1.0.34 ini Start Never
[ 4] ReSemiclip RUN - resemiclip.so v2.3.9 ini ANY
[ 5] ReSRDetector RUN - resrdetector_mm_i386.so v0.1.0 ini ANY
[ 6] CStrike RUN - cstrike_amxx_i386.so v1.9.0.5263 pl2 ANY
[ 7] CSX RUN - csx_amxx_i386.so v1.9.0.5263 pl2 ANY
[ 8] ReAPI RUN - reapi_amxx_i386.so v5.12.0.192-dev pl2 ANY Never
[ 9] MySQL RUN - mysql_amxx_i386.so v1.9.0.5263 pl2 ANY
[10] FakeMeta RUN - fakemeta_amxx_i386.so v1.9.0.5263 pl2 ANY ANY
[11] Ham Sandwich RUN - hamsandwich_amxx_i386.so v1.9.0.5263 pl2 ANY ANY
[12] Fun RUN - fun_amxx_i386.so v1.9.0.5263 pl2 ANY ANY
[13] Engine RUN - engine_amxx_i386.so v1.9.0.5263 pl2 ANY ANY
[14] GeoIP RUN - geoip_amxx_i386.so v1.9.0.5263 pl2 ANY ANY
[15] ReAimDetector RUN - reaimdetector_amxx_i386.so v0.2.2 pl2 ANY Never
15 plugins, 15 running
Список плагинов
[  1] Advanced Experience Sy  v0.5 Vega    serfreeman1337    advanced_experi  running  
[ 2] Advanced Gag v1.4.2 neygomon amx_gag.amxx running
[ 3] Admin Loader v3.5 neygomon admin_loader.am running
[ 4] FreshBans v1.4.2b kanagava fresh_bans.amxx running
[ 5] Admin Chat v1.9.0.5263 AMXX Dev Team adminchat.amxx running
[ 6] Admin Commands v1.9.0.5263 AMXX Dev Team admincmd.amxx running
[ 7] Anti Flood v1.9.0.5263 AMXX Dev Team antiflood.amxx running
[ 8] Commands Menu v1.9.0.5263 AMXX Dev Team cmdmenu.amxx running
[ 9] Info. Messages v1.9.0.5263 AMXX Dev Team imessage.amxx running
[ 10] AmxModMenu_New v1.0 Frost menufront.amxx running
[ 11] Maps Menu v1.9.0.5263 AMXX Dev Team mapsmenu.amxx running
[ 12] Players Menu v1.9.0.5263 AMXX Dev Team plmenu.amxx running
[ 13] Plugin Menu v1.9.0.5263 AMXX Dev Team pluginmenu.amxx running
[ 14] Restrict Weapons v1.9.0.5263 AMXX Dev Team restmenu.amxx running
[ 15] Scrolling Message v1.9.0.5263 AMXX Dev Team scrollmsg.amxx running
[ 16] Admin Votes v1.9.0.5263 AMXX Dev Team adminvote.amxx running
[ 17] CS Misc. Stats v1.9.0.5263 AMXX Dev Team miscstats.amxx running
[ 18] CS Stats Logging v1.9.0.5263 AMXX Dev Team stats_logging.a running
[ 19] AES: StatsX v0.5 Vega serfreeman1337 aes_statsx.amxx running
[ 20] Stats Configuration v1.9.0.5263 AMXX Dev Team statscfg.amxx running
[ 21] StatsX v1.8.2 AMXX Dev Team statsx.amxx running
[ 22] Damager v2.0 Prayer damager.amxx running
[ 23] say /vk by gena v0.1 GeNa say_vk.amxx running
[ 24] Reset Score v1.0 Silenttt resetscore.amxx running
[ 25] awp_india Weapon Giver v0.4 S0m3Th1nG_AwFul! awp_india_V3.am running
[ 26] Autoresponder/Advertis v0.5 MaximusBrood ad_manager.amxx running
[ 27] Block 'Fire in the hol v0.1 Safety1st block_fire_in_t running
[ 28] Admin Spectator ESP v1.3 KoST admin_spec_esp. running
[ 29] AntiFlash FINAL v5.0 Leo_[BH] antiflash_final running
[ 30] AMX SSBan v2.6 God@Dorin\Fysiks amx_ssban.amxx running
[ 31] ConnectDisconnect Mess v1.0 Frost connectinfo.amx running
[ 32] Parachute for ALL [ReA v3.0 Leo_[BH] parachute_for_a running
[ 33] valve_ultimate_sounds v0.1a Turanga_Leela valve_ultimate_ running
[ 34] AES: StatsX Info Rank v0.1 serfreeman1337 aes_statsx_info running
[ 35] ReAimDetector API v0.2.2 ReHLDS Team reaimdetector.a running
[ 36] Custom Smoke v1.07 bionext custom_smoke.am running
[ 37] Random Weapons WarmUP v1.6 neugomon random_weapons_ running
[ 38] Steаm Bonus v1.0 ill steam_bonus.amx running
[ 39] Bomb Countdown HUD Tim v0.2 SAMURAI c4_timer.amxx running
[ 40] Advanced MapChooser v1.4 neygomon advanced_mapcho running
[ 41] Lite VoteBan v1.4fix neygomon lite_voteban.am running
[ 42] Empty v0.2 Safety1st empty.amxx stopped
[ 43] [ReAPI] AWPoff v1.3 PAffAEJIkA :3 awp_off.amxx running
[ 44] AFK Control v1.4.1 [Rnd neygomon afk_control.amx running
[ 45] Auto Demo Recorder v2.3 F@nt0M auto_demo_recor running
[ 46] Lite Kill Assist v1.17 neygomon lite_kill_assis running
[ 47] AMXX VIP Gold v1.0 Flymic24 amxx_vip_gold_1 running
[ 48] Lite Translit v2.8 neygomon lite_translit.a running
[ 49] AES: CStrike Addon v0.5 Vega serfreeman1337 aes_exp_cstrike running
[ 50] AES: Informer v0.5 Vega serfreeman1337 aes_informer.am running
[ 51] AES: Admin Tools v0.5 Vega serfreeman1337 aes_exp_editor. running
51 plugins, 50 running
Автор плагина
PAffAEJIkA :3
Версия плагина
1.3
Исходный код
#include < amxmodx >
#include < reapi >

#if AMXX_VERSION_NUM < 183
#include < colorchat >
#define MAX_PLAYERS 32
#endif

#define IsPlayer(%0) (0 < %0 < 33)

//■■■■■■■■■■■■■■■■■■■■■■■ CONFIG START ■■■■■■■■■■■■■■■■■■■■■■■//
// ^4 - зелёный | ^3 - цвет тимы (КТ - синий | Т - красный | SPEC - серый) | ^1 - жёлтый
#define MSG_PREFIX "^3[^4AWP^3]"
#define MSG_LOWONLINE "У вас^4 отобрано^3 AWP. Причина:^4 низкий онлайн."
#define MSG_LIMIT "У вас^4 отобрано^3 AWP. Причина:^4 превышен лимит."

#define ALLPLAYERS
/*
Закоментируйте, чтобы для проверки на онлайн брались только КТ и ТТ(ботов, хлтв и спектаров считать не будет).

Пример:
Допустим на сервере 5 ботов и 2 человека 1 хлтв.
Дефайн закоментирован: Посчитает, что на сервере 2 из Максимально возможных игроков.
Дефайн раскоментирован: Посчитает, что на сервере 8 игроков из Максимально возможных игроков (5 ботов + 2 человека + 1 хлтв).

Отбирать авп будет ТОЛЬКО У ЛЮДЕЙ в любом случае.
*/

#define FLAG ADMIN_BAN //Флаг для иммунитета от лимита

#define RETURN_MONEY //Возвращать деньги при отборе авп в конце раунда из-за низкого онлайна? (Закоментируйте, если не хотите, чтобы возвращало деньги)
#if defined RETURN_MONEY
#define MONEY_AWP 4750 //Сколько денег возвращать?
#endif

#define PERCENT_PLAYERS
/*
Разкоменитруйте, если хотите чтобы лимит зависил от процента игроков [I am chetko ob'yasnyat']

Например: Онлайн = 10, Процент в кваре(awp_limit_max) = 20
10/100*20 = 2 авп на тиму (2 у терров и 2 у кт)
*/
//■■■■■■■■■■■■■■■■■■■■■■■■ CONFIG END ■■■■■■■■■■■■■■■■■■■■■■■■//

enum ECVARS {
CVAR_ONLINE = 0,
CVAR_LIMIT_AWP_STATUS,
CVAR_LIMIT_MAX_AWP,
CVAR_LIMIT_IMMUN
};

enum {
AWP_NONE = 0,
AWP_BUY,
AWP_PICK_UP
};

new sAwp[TeamName: TEAM_SPECTATOR], gCount, gCvar[ECVARS], gAwp[MAX_PLAYERS + 1], TeamName: gTeam[MAX_PLAYERS + 1];

#if defined PERCENT_PLAYERS
new gLimit;
#endif

public plugin_init(){
register_plugin("[ReAPI] AWPoff", "1.3", "PAffAEJIkA :3");

new mapname[32];
get_mapname(mapname, charsmax(mapname));

new maps[][] = { "awp", "aim", "35hp" };
for(new i; i < sizeof maps; i++){
if(containi(mapname, maps[i]) != -1){
pause("ad");
return;
}
}

RegisterHookChain(RG_CBasePlayer_AddPlayerItem, "AddItem");
RegisterHookChain(RG_CBasePlayer_HasRestrictItem, "RestrictItem");
RegisterHookChain(RG_CBasePlayer_RemovePlayerItem, "RemoveItem");
RegisterHookChain(RG_CBasePlayer_Spawn, "SpawnPlayer", true);

register_logevent("EventRoundEnd", 2, "1=Round_End");
register_logevent("EventRestartRound", 2, "1&Restart_Round_");

gCvar[CVAR_ONLINE] = register_cvar("awp_players_low", "8"); //Если онлайн ниже указнного в кваре, в конце раунда у всех отберет авп, и запретит ее. (Что бы отключить поставьте 0) [стандартно: при онлайне меньше 8]
gCvar[CVAR_LIMIT_AWP_STATUS] = register_cvar("awp_limit", "1"); //Включить|Выключить лимит авп [Стандартно: включен]
gCvar[CVAR_LIMIT_MAX_AWP] = register_cvar("awp_limit_max", "2"); //Сколько АВП разрешено при лимите [Стандартно по 2 авп на команду] | Если раскоментирован PERCENT_PLAYERS, то сюда вписывать нужный процент
gCvar[CVAR_LIMIT_IMMUN] = register_cvar("awp_limit_immun", "1"); //Включить|Выключить иммунитет от лимита(Людей с флагом не учитывает вообще) [Стандартно включен]
}

public client_disconnect(id) if(IsPlayer(id)) minus_awp(id);

public EventRestartRound(){
sAwp[TEAM_CT] = 0;
sAwp[TEAM_TERRORIST] = 0;
arrayset(gAwp, AWP_NONE, sizeof gAwp);
}

public EventRoundEnd(){
new players[32];
#if defined ALLPLAYERS
get_players(players, gCount);
#else
new players1[32], gTT, gCT;
get_players(players, gCT, "che", "CT");
get_players(players1, gTT, "che", "TERRORIST");

gCount = gTT + gCT;
#endif

#if defined PERCENT_PLAYERS
const MAX_PERCENT = 100;
gLimit = gCount * get_pcvar_num(gCvar[CVAR_LIMIT_MAX_AWP]) / MAX_PERCENT;
#endif

if(gCount >= get_pcvar_num(gCvar[CVAR_ONLINE]))
return PLUGIN_CONTINUE;

#if defined ALLPLAYERS
for(new i = 0, id; i < gCount; i ++){
id = players[i];

if(!is_user_valid(id))
continue;

return_awp(id);
}
#else
for(new i = 0; i < gTT; i ++)
return_awp(players1[i]);

for(new i = 0; i < gCT; i ++)
return_awp(players[i]);
#endif

EventRestartRound();
return PLUGIN_CONTINUE;
}

return_awp(id){
if(gAwp[id] == AWP_NONE)
return;

rg_remove_item(id, "weapon_awp");
#if defined RETURN_MONEY
if(gAwp[id] == AWP_BUY)
rg_add_account(id, MONEY_AWP);
#endif
client_print_color(id, false, "%s %s", MSG_PREFIX, MSG_LOWONLINE);
}

public RestrictItem(id, ItemID:item, ItemRestType:type){
if(item != ITEM_AWP || !is_user_valid(id) || gAwp[id] != AWP_NONE || type != ITEM_TYPE_BUYING)
return HC_CONTINUE;

/* * * Первая "покупка" при нехватке денег проскакивает >< * * */
const COST_AWP = 4750;
new gMoney = get_member(id, m_iAccount);
if(gMoney < COST_AWP)
return HC_CONTINUE;
/* * * Можете удалить этот "чудофикс", если он вам не нравится * * */

gAwp[id] = AWP_BUY;

if(check_awp(id, false))
return HC_CONTINUE;

gAwp[id] = AWP_NONE;

SetHookChainReturn(ATYPE_INTEGER, true);
return HC_SUPERCEDE;
}

public AddItem(id, pItem){
if(get_member(pItem, m_iId) != WEAPON_AWP || gAwp[id] != AWP_NONE || !is_user_valid(id))
return HC_CONTINUE;

if(check_awp(id, false)){
gAwp[id] = AWP_PICK_UP;
return HC_CONTINUE;
}

SetHookChainReturn(ATYPE_INTEGER, false);
return HC_SUPERCEDE;
}

public SpawnPlayer(id){
if(!is_user_alive(id))
return HC_CONTINUE;

gTeam[id] = get_member(id, m_iTeam);
return HC_CONTINUE;
}

//Native's
public plugin_natives()
register_native("awpoff_check", "check_native", true);

public check_native(id)
return check_awp(id, true);
//Native's

bool: check_awp(id, check){
if(gCount < get_pcvar_num(gCvar[CVAR_ONLINE]))
client_print_color(id, false, "%s %s", MSG_PREFIX, MSG_LOWONLINE);
else if(get_pcvar_num(gCvar[CVAR_LIMIT_AWP_STATUS])){

if(get_pcvar_num(gCvar[CVAR_LIMIT_IMMUN]) && get_user_flags(id) & FLAG)
return true;

#if defined PERCENT_PLAYERS
if(sAwp[gTeam[id]] < gLimit)
#else
if(sAwp[gTeam[id]] < get_pcvar_num(gCvar[CVAR_LIMIT_MAX_AWP]))
#endif
{
if(!check)
sAwp[gTeam[id]] ++;
return true;
}else
client_print_color(id, false, "%s %s", MSG_PREFIX, MSG_LIMIT);
}else
return true;

return false;
}

public RemoveItem(id, pItem){
if(get_member(pItem, m_iId) == WEAPON_AWP)
minus_awp(id);
}

minus_awp(id){
if(!is_user_valid(id) || gAwp[id] == AWP_NONE)
return;

gAwp[id] = AWP_NONE;

if(!get_pcvar_num(gCvar[CVAR_LIMIT_AWP_STATUS]))
return;

if(get_pcvar_num(gCvar[CVAR_LIMIT_IMMUN]) && get_user_flags(id) & FLAG)
return;

sAwp[gTeam[id]] --;
}

bool: is_user_valid(id){
if(is_user_bot(id)) return false;
if(is_user_hltv(id)) return false;
return true;
}
При онлайне к примеру 4х4,если игрок покупает AWP то естественно оно у него отбирается,но списано 4.750,деньги он потратил,а AWP нету,не приятно и ни в начале,ни в конце раунда,деньги не возвращаются.
Можно сделать,что бы потраченные деньги,возвращались игроку...?
 
Сообщения
141
Реакции
55
Помог
2 раз(а)
There is a newer version of this plugin where you can select percentage or all players to catch limits.
Автор: PAffAEJIkA :3 (paffgame)
Версия: 1.4.3 [17.03.18]
 

Вложения

Сообщения
185
Реакции
43
Помог
4 раз(а)
У тебя старая версия плагина на вот держи 1.4.3 как то писал ему пару багов исправил точно не помню но все работает на ура
 

Вложения

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу