Хил граната ошибка

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
181
Реакции
8
Ошибка
L 04/25/2018 - 15:53:49: [AMXX] Run time error 3 (plugin "Smoke_HealthNade.amxx") - debug not enabled!
L 04/25/2018 - 15:53:49: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
WARNING: datagram overflowed for -_V@NEK_-
После дебага пишет
L 05/15/2018 - 22:24:37: [AMXX] Displaying debug trace (plugin "health.amxx")
L 05/15/2018 - 22:24:37: [AMXX] Run time error 3: stack error
WARNING: datagram overflowed for Ekaterina *
ОС
Linux
Билд
Protocol version 48
Exe version 1.1.2.7/Stdio (cstrike)
ReHLDS version: 3.4.0.641-dev-myarena.ru
ReGamedll
Regamedll_CS 5.3.0.222
Список метамодулей
[ 1] SafeNameAndChat RUN - SafeNameAndChat. v1.1 ini ANY ANY 
[ 2] Reunion RUN - reunion_mm_i386. v0.1.75 ini Start Never
[ 3] AMX Mod X RUN - amxmodx_mm_i386. v1.8.2 ini Start ANY
[ 4] VoiceTranscoder RUN - VoiceTranscoder. v2017RC3 ini ANY ANY
[ 5] Rechecker RUN - rechecker_mm_i38 v2.5 ini Chlvl ANY
[ 6] ReSemiclip RUN - resemiclip_mm_i3 v2.3.9 ini Chlvl ANY
[ 7] WHBlocker RUN - whblocker_mm_i38 v1.5.695 ini Chlvl ANY
[ 8] ReAimDetector RUN - reaimdetector_am v0.2.2 pl3 ANY Never
[ 9] FakeMeta RUN - fakemeta_amxx_i3 v1.8.2 pl3 ANY ANY
[10] MySQL RUN - mysql_amxx_i386. v1.8.2 pl3 ANY ANY
[11] CStrike RUN - cstrike_amxx_i38 v1.8.2 pl3 ANY ANY
[12] Ham Sandwich RUN - hamsandwich_amxx v1.8.2 pl3 ANY ANY
[13] ReAPI RUN - reapi_amxx_i386. v5.2.0.1 pl3 ANY Never
[14] CSX RUN - csx_amxx_i386.so v1.8.2 pl3 ANY ANY
[15] Engine RUN - engine_amxx_i386 v1.8.2 pl3 ANY ANY
[16] Fun RUN - fun_amxx_i386.so v1.8.2 pl3 ANY ANY
16 plugins, 16 running
Список плагинов
[ 1] FreshBans 1.3.7b kanagava fresh_bans.amxx running 
[ 2] ReAimDetector API 0.2.2 ReHLDS Team reaimdetector.a running
[ 3] Auto Team Balance Adva 1.3.6 Radius auto_team_balan running
[ 4] Admin Base 1.8.2 AMXX Dev Team admin.amxx running
[ 5] Anti Flood 1.8.2 AMXX Dev Team antiflood.amxx running
[ 6] Admin Commands 1.8.1.3746 AMXX Dev Team admincmd.amxx running
[ 7] Slots Reservation 1.8.2 AMXX Dev Team adminslots.amxx running
[ 8] Admin Votes 1.8.1.3746 Wildness Team adminvote.amxx running
[ 9] Admin Chat 1.8.M AMXX Dev Team adminchat.amxx running
[ 10] Commands Menu 1.8.2 AMXX Dev Team cmdmenu.amxx running
[ 11] Advanced Gag 1.9.0 neygomon amx_gag.amxx running
[ 12] AmxModMenu_New 1.0 CaNiBaL | Remake menufront.amxx running
[ 13] Maps Menu 1.8.1.3746 AMXX Dev Team mapsmenu.amxx running
[ 14] Multi-Lingual System 1.8.2 AMXX Dev Team multilingual.am running
[ 15] Players Menu 1.8.1.3746 AMXX Dev Team plmenu.amxx running
[ 16] CS Stats Logging 1.8.2 AMXX Dev Team stats_logging.a running
[ 17] Stats Configuration 1.8.2 AMXX Dev Team statscfg.amxx running
[ 18] TimeLeft 1.8.2 AMXX Dev Team timeleft.amxx running
[ 19] Game Namer 1.2 NeuroToxin gamenamechanger running
[ 20] Parachute 1.3 KRoT@L/JTP10181 amx_parachute.a running
[ 21] IDEAL VIP by Ba/lePa 3.2 Ba/lePa IDEAL_VIP.amxx running
[ 22] ResetScore 0.2.0 aNNakin resetscore.amxx running
[ 23] Restrict Weapons 1.8.2 Leo_[BH] restmenu.amxx running
[ 24] StatsX (MastaMan Editi 1.8.1.3746 AMXX Dev Team & statsx_shell.am running
[ 25] Map Manager 2.5.61 Mistrick mapmanager.amxx running
[ 26] Map Manager: Sub Plugi 0.1 Mistrick mapmanager_subp running
[ 27] Lite Translit 2.5.7b/11 neygomon lite_translit.a running
[ 28] Custom Models 1.3.2 neugomon custom_models.a running
[ 29] Killa HP 1.0 jas0n killa_hp.amxx running
[ 30] Block grande info 1.0 neygomon BlockGrenadeInf running
[ 31] DM Block 1.0 blockradio.amxx running
[ 32] [ReAPI] No Team Flash 1.0 ReHLDS Team noteamflash.amx running
[ 33] Admin ESP 1.5b_mini KoST admin_esp_mini. running
[ 34] Play or Be Kicked 1.5.243 Brad Jones pbk.amxx running
[ 35] Auto recording demo 2.0 IzI | Bonaqua (R amx_autodemorec running
[ 36] Smoke: HealthNade 0.0.2 wopox1337 health.amxx running
[ 37] Show HUD Info 1.0 Ivan S. show_hud_info.a running
[ 38] High Ping Kicker 1.0 Shadow/Bo0m! amx_hpk.amxx running
[ 39] AES: Bonus System 0.2 serfreeman1337 aes_bonus_syste running
[ 40] AES: Exp CSTRIKE 0.3 serfreeman1337 aes_exp_cstrike running
[ 41] AES: Experience Editor 0.1 serfreeman1337 aes_exp_editor. running
[ 42] AES: Informer 0.2 serfreeman1337 aes_informer.am running
[ 43] Advanced Experience Sy 0.4.1 serfreeman1337 aes_main.amxx running
Исходный код
/**
* Credits: Arkshine, [Ссылка]
*
*/

#include <amxmodx>
#include <fakemeta>
#include <engine>
#include <fun>
#include <csx>

/* Settings */
/* Enable action only for the privileged */
#define ACCESS_FLAGS ( ADMIN_LEVEL_H )
/* Enable action only for teammates */
#define ONLY_FOR_TEAMMATES

const HEALTH_TO_HEAL = 100;
const HEALTH_MAX = 100;
const HEAL_RADIUS = 250;

new const MODEL_V[] = "models/v_he_mk_nade.mdl";
new const MODEL_P[] = "models/p_he_mk_nade.mdl";
new const MODEL_W[] = "models/w_he_mk_nade.mdl";

new const SPRITE_EXPLODE1[] = "sprites/heal_explode.spr";
new const SPRITE_PROS[] = "sprites/heal_shape.spr";

new const SOUND_HEAL[] = "woomen_expr.wav";
/* End of settings */

#if !defined MaxClients
const MaxClients = 32;
#endif

enum {
XO_WEAPON = 4,
XO_CGRENADE = 5,
m_pPlayer = 41,
m_usEvent = 114
}

new const EXCLASS[] = "grenade";

enum { STATUSICON_HIDE = 0, STATUSICON_FLASH = 2 };

const flagSmokeEvent = (1 << 1);

#define IsSgGrenade(%1) (get_pdata_int(%1, m_usEvent, XO_CGRENADE) & flagSmokeEvent)

#define _GetEntOwner(%1) pev(%1, pev_owner)
#define _GetEntOrigin(%1,%2) pev(%1, pev_origin, %2)

#define _SetViewModel(%1,%2) set_pev(%1, pev_viewmodel2, %2)
#define _SetWorldModel(%1,%2) set_pev(%1, pev_weaponmodel2, %2)

new g_MsgId_StatusIcon, g_MsgId_ScreenFade;

new g_pFirstExplosion,
g_pPros,
g_pCircle;

new const VERSION[] = "0.0.2";

public plugin_init() {
register_plugin("Smoke: HealthNade", VERSION, "wopox1337");

g_MsgId_StatusIcon = get_user_msgid("StatusIcon");
g_MsgId_ScreenFade = get_user_msgid("ScreenFade");

register_touch(EXCLASS, "*", "CGrenade_ExplodeTouch");

register_event("CurWeapon", "Event_CurWeapon", "be", "1=1");
}

public plugin_precache() {
precache_model(MODEL_V);
precache_model(MODEL_P);
precache_model(MODEL_W);

g_pFirstExplosion = precache_model(SPRITE_EXPLODE1);
g_pPros = precache_model(SPRITE_PROS);
g_pCircle = precache_model("sprites/shockwave.spr");

precache_sound(SOUND_HEAL);
}

public Event_CurWeapon(pPlayer) {
enum { WeaponID = 2 };
if(read_data(WeaponID) == CSW_SMOKEGRENADE) {

#if defined ACCESS_FLAGS
if(!IsUserHaveAccessToUse(pPlayer)) return;
#endif

OnPlayer_SetViewModels(pPlayer);
Send_StatusIcon__Cross(pPlayer);
}
else Send_StatusIcon__Cross(pPlayer, .status = STATUSICON_HIDE);
}

public grenade_throw(pPlayer, pEnt, w_id) {
if(w_id != CSW_SMOKEGRENADE)
return;

#if defined ACCESS_FLAGS
if(!IsUserHaveAccessToUse(pPlayer)) return;
#endif

OnGrenade_SetWorldModel(pEnt);
}

public CGrenade_ExplodeTouch(const pEnt, const pOther) {
// Filter to another grenades type
if(!IsSgGrenade(pEnt))
return;

static iOwner; iOwner = _GetEntOwner(pEnt);

#if defined ACCESS_FLAGS
if(!IsUserHaveAccessToUse(iOwner)) return;
#endif

static Float: fOrigin[3], iOrigin[3];
_GetEntOrigin(pEnt, fOrigin);
FVecIVec(fOrigin, iOrigin);

// Show visuals
Send_Explode(iOrigin);
Send_Pros(iOrigin);
Send_ShockWave(iOrigin);
OnGrenade_PlaySound(pEnt);

// Action on near players
HealPlayersOnRadius(iOwner, fOrigin);

// Removed default smoke entity, and his detonate event accordingly
OnGrenade_RemoveByTouch(pEnt);
}

stock HealPlayersOnRadius(pInflictor, Float: fOrigin[3]) {
for(new pPlayer; pPlayer <= MaxClients; pPlayer++) {
if(is_user_alive(pPlayer)) {

#if !defined ONLY_FOR_TEAMMATES
if(get_user_team(pInflictor) != get_user_team(pPlayer))
continue;
#endif
#pragma unused pInflictor

static Float: playerOrigin[3];
_GetEntOrigin(pPlayer, playerOrigin);

if(get_distance_f(fOrigin, playerOrigin) < HEAL_RADIUS)
OnPlayer_HealEvent(pPlayer);
}
}
}

stock OnPlayer_HealEvent(const pPlayer) {
set_user_health(pPlayer, min(get_user_health(pPlayer) + HEALTH_TO_HEAL, HEALTH_MAX));
__UTIL_ScreenFade(pPlayer);
}

stock OnPlayer_SetViewModels(const pPlayer) {
_SetViewModel(pPlayer, MODEL_V);
_SetWorldModel(pPlayer, MODEL_P);
}

stock OnGrenade_SetWorldModel(const pEnt)
engfunc(EngFunc_SetModel, pEnt, MODEL_W);

stock OnGrenade_RemoveByTouch(const pEnt)
engfunc(EngFunc_RemoveEntity, pEnt);

stock Send_StatusIcon__Cross(const pPlayer, status = STATUSICON_FLASH) {
emessage_begin(MSG_ONE_UNRELIABLE, g_MsgId_StatusIcon, .player = pPlayer);
ewrite_byte(status);
ewrite_string("cross");
ewrite_byte(0);
ewrite_byte(255);
ewrite_byte(0);
emessage_end();
}

stock OnGrenade_PlaySound(const pEnt)
engfunc(EngFunc_EmitSound, pEnt, CHAN_WEAPON, SOUND_HEAL, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);


stock Send_Explode(iOrigin[3]) {
emessage_begin(MSG_BROADCAST, SVC_TEMPENTITY);
ewrite_byte(TE_EXPLOSION);
ewrite_coord(iOrigin[0]);
ewrite_coord(iOrigin[1]);
ewrite_coord(iOrigin[2] + 65);
ewrite_short(g_pFirstExplosion);
ewrite_byte(30);
ewrite_byte(20);
ewrite_byte(TE_EXPLFLAG_NOSOUND | TE_EXPLFLAG_NOPARTICLES);
emessage_end();
}

stock Send_Pros(iOrigin[3]) {
emessage_begin(MSG_BROADCAST, SVC_TEMPENTITY);
ewrite_byte(TE_SPRITETRAIL);
ewrite_coord(iOrigin[0]);
ewrite_coord(iOrigin[1]);
ewrite_coord(iOrigin[2] + 20);
ewrite_coord(iOrigin[0]);
ewrite_coord(iOrigin[1]);
ewrite_coord(iOrigin[2] + 80);
ewrite_short(g_pPros);
ewrite_byte(20);
ewrite_byte(20);
ewrite_byte(4);
ewrite_byte(20);
ewrite_byte(10);
emessage_end();
}

stock Send_ShockWave(iOrigin[3]) {
emessage_begin(MSG_ALL, SVC_TEMPENTITY, {0,0,0});
ewrite_byte(TE_BEAMCYLINDER);
ewrite_coord(iOrigin[0]);
ewrite_coord(iOrigin[1]);
ewrite_coord(iOrigin[2]);
ewrite_coord(iOrigin[0]);
ewrite_coord(iOrigin[1]);
ewrite_coord(iOrigin[2] + HEAL_RADIUS);
ewrite_short(g_pCircle);
ewrite_byte(0);
ewrite_byte(1);
ewrite_byte(5);
ewrite_byte(30);
ewrite_byte(1);
ewrite_byte(10);
ewrite_byte(255);
ewrite_byte(40);
ewrite_byte(255);
ewrite_byte(5);
emessage_end();
}

stock __UTIL_ScreenFade(const pPlayer, iColor[3] = {170, 255, 0}, iAlpha = 80, Float: flFxTime = 1.0, Float: flHoldTime = 0.3) {
const FFADE_IN = 0x0000;

emessage_begin(MSG_ONE_UNRELIABLE, g_MsgId_ScreenFade, .player = pPlayer);
ewrite_short(FixedUnsigned16(flFxTime));
ewrite_short(FixedUnsigned16(flHoldTime));
ewrite_short(FFADE_IN);
ewrite_byte(iColor[0]);
ewrite_byte(iColor[1]);
ewrite_byte(iColor[2]);
ewrite_byte(iAlpha);
emessage_end();
}

stock FixedUnsigned16(Float:flValue, iScale = (1 << 12)) {
return clamp(floatround(flValue * iScale), 0, 0xFFFF);
}

stock IsUserHaveAccessToUse(const pPlayer) {
// Anytime we can add other checks, like cached bool
return (get_user_flags(pPlayer) & ACCESS_FLAGS);
}

stock IsAllowedToUse() {
return true;
}
Ошибку в консоле выдает и постоянно маячит
 
В этой теме было размещено решение! Перейти к решению.
Сообщения
1,419
Реакции
2,508
Помог
59 раз(а)
s1ngle, Скорее всего проблема в версии плагина 0.0.2, так как в версии 0.0.3:
Переделан один из эффектов (должно убрать ошибку переполнения стэка).
Попробуйте вариант ниже
 

Вложения

Последнее редактирование:
Сообщения
432
Реакции
409
Помог
14 раз(а)
С таким форматированием исходник невозможно читать. Приложите его файлом или исправьте.
health.amxx это другой плагин? его исходник тоже приложите
 
Сообщения
181
Реакции
8
wopox1337, я скачивал с этого сайта , тема называлась SmokeHealthNade
16 Май 2018
voed, тот же плагин я просто его переименовал
16 Май 2018
w0w, Спасибо плагин работает ваш тему можно закрыть!
 
Сообщения
1,419
Реакции
2,508
Помог
59 раз(а)
s1ngle, не мой, тот же плагин но с поддержкой 1.8.2, не понятно только почему wopox1337 убрал поддержку этой версии в последней версии плагина.
 
Статус
В этой теме нельзя размещать новые ответы.

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

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