Натив не работает должным образом

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
92
Реакции
23
Основная информация

Проблема: Натив не работает должным образом

Ошибка:
Через натив передаётся неправильно значение аргумента
Дополнительная информация

Amx Mod X: 1.8.2

Билд:
Код:
Не указан


ReGamedll:
Код:
Не указан


Список модулей:
Код:
Не указан


Список плагинов:
Код:
[ 67] Send Audio Native Syst  1.0         Grusha :D         SendAudioV1.amx  running
[ 79] Deathrun: Shop 0.1.2 Mistrick deathrun_shop.a running
[ 80] Deathrun Shop: Items 0.1 Mistrick deathrun_shop_i debug


Список метамодулей:
Код:
[ 1] ReLocalizeBug F  RUN   -    relocalizebugfix  v2.7      ini   ANY
[ 2] AMX Mod X RUN - amxmodx_mm_i386. v1.8.2-d ini Start ANY
[ 3] Reunion RUN - reunion_mm_i386. v0.1.73 ini Start Never
[ 4] ReSemiclip RUN - resemiclip_mm_i3 v2.3.7 ini ANY
[ 5] ReAuthCheck RUN - reauthcheck_mm_i v0.1.4 ini Start Never
[ 6] Rechecker RUN - rechecker_mm_i38 v2.1 ini ANY
[ 7] Fun RUN - fun_amxx_i386.so v1.8.2-d pl2 ANY
[ 8] CStrike RUN - cstrike_amxx_i38 v1.8.2-d pl2 ANY
[ 9] CSX RUN - csx_amxx_i386.so v1.8.2-d pl2 ANY
[10] Hide Cvars RUN - hidecvars_amxx_i v1.0 pl2 ANY
[11] ReAPI RUN - reapi_amxx_i386. v0.1.80 pl2 ANY Never
[12] MySQL RUN - mysql_amxx_i386. v1.8.2-d pl2 ANY
[13] FakeMeta RUN - fakemeta_amxx_i3 v1.8.2-d pl2 ANY
[14] Engine RUN - engine_amxx_i386 v1.8.2-d pl2 ANY
[15] Ham Sandwich RUN - hamsandwich_amxx v1.8.2-d pl2 ANY


Исходник:
Код:
Плагин, куда посылается натив:
#include <amxmodx>

#define PLUGIN "Send Audio Native System"
#define VERSION "1.0"
#define AUTHOR "Grusha :D"

public plugin_init()
register_plugin(PLUGIN, VERSION, AUTHOR);

public plugin_natives()
{
register_native("SendAudio", "native_SendAudio", 1);
}

public native_SendAudio(id, const sound[], const bool:emit, const bool:stopsound)
{
log_amx("Native SendAudio SHOPSOUND= %s", sound);
if(containi(sound, ".wav"))
{
if(emit)
{
log_amx("Native if(emit) SendAudio SHOPSOUND= %s", sound);
emit_sound(id, CHAN_ITEM, sound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
}
//else
// client_cmd(id, "%sspk %s", stopsound ? "mp3 stop; stopsound; " : "", sound);
}
//else if(containi(sound, ".mp3"))
// client_cmd(id, "%smp3 play %s", stopsound ? "mp3 stop; stopsound; " : "", sound);
}
----------------------------------------------------------------------------------
Натив из плагина:
native SendAudio(id, const sound[], bool:emit, bool:stopsound);

public effects(id, bool:anim, bool:beam, bool:sound)
{
if(anim)
animation(id);

if(beam)
{
static Float:originF[3];
pev(id, pev_origin, originF);

create_beam(originF, 255, 25, 25);
}

if(sound)
//emit_sound(id, CHAN_ITEM, SHOPSOUND, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
{
log_amx("SendAudio SHOPSOUND= %s", SHOPSOUND);
SendAudio(id, SHOPSOUND, true, false); //SendAudio(id, sound, bool:emit, bool:stopsound)
}

}


Комментарий:
Здравствуйте, не могу понять что происходит, через логи видно, что доходит неправильная информация. Что я сделал не так?
В логах при попытке воспроизвести звук в консоле пишется всякое разное:

L 03/31/2017 - 18:58:30: [deathrun_shop_items.amxx] SendAudio SHOPSOUND= items/gunpickup2.wav
L 03/31/2017 - 18:58:30: [SendAudioV1.amxx] Native SendAudio SHOPSOUND= AGENTA
L 03/31/2017 - 18:58:30: [SendAudioV1.amxx] Native if(emit) SendAudio SHOPSOUND= AGENTA

L 03/31/2017 - 19:02:43: [deathrun_shop_items.amxx] SendAudio SHOPSOUND= items/gunpickup2.wav
L 03/31/2017 - 19:02:43: [SendAudioV1.amxx] Native SendAudio SHOPSOUND= eAPI]: Api major version mismatch; expected %d, real %d
L 03/31/2017 - 19:02:43: [SendAudioV1.amxx] Native if(emit) SendAudio SHOPSOUND= eAPI]: Api major version mismatch; expected %d, real %d
SV_BuildSoundMsg: eAPI]: Api major version mismatch; expected %d, real %d not precached (0)

L 03/31/2017 - 19:40:21: [deathrun_shop_items.amxx] SendAudio SHOPSOUND= items/gunpickup2.wav
L 03/31/2017 - 19:40:21: [SendAudioV1.amxx] Native SendAudio SHOPSOUND=
L 03/31/2017 - 19:40:21: [SendAudioV1.amxx] Native if(emit) SendAudio SHOPSOUND=
SV_BuildSoundMsg: not precached (0)

L 03/31/2017 - 21:02:59: [deathrun_shop_items.amxx] SendAudio SHOPSOUND= items/gunpickup2.wav
L 03/31/2017 - 21:02:59: [SendAudioV1.amxx] Native SendAudio SHOPSOUND= ns
L 03/31/2017 - 21:02:59: [SendAudioV1.amxx] Native if(emit) SendAudio SHOPSOUND= ns
SV_BuildSoundMsg: ns not precached (0)
 
В этой теме было размещено решение! Перейти к решению.

Download all Attachments

Сообщения
501
Реакции
450
Предупреждения
17
Помог
8 раз(а)
Код:
public plugin_natives()
{
register_library("SendAudioLib")
register_native("SendAudio", "native_SendAudio")
}

public native_SendAudio(iPlugin, iParams)
{
new szSample[64], pPlayer, bool:bIsEmit, bool:bStopsound

pPlayer = get_param(1)
get_string(2, szSample, charsmax(szSample))

log_amx("Native SendAudio SHOPSOUND= %s", szSample)

if(containi(szSample, ".wav"))
{
bIsEmit = bool:get_param(3)
bStopsound = bool:get_param(4)

if(bIsEmit)
{
log_amx("Native if(emit) SendAudio SHOPSOUND= %s", szSample)
emit_sound(pPlayer, CHAN_ITEM, szSample, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
}
//else
// client_cmd(pPlayer, "%sspk %s", bStopsound ? "mp3 stop; stopsound; " : "", szSample)
}
//else if(containi(szSample, ".mp3"))
// client_cmd(pPlayer, "%smp3 play %s", bStopsound ? "mp3 stop; stopsound; " : "", szSample)
}
 
Статус
В этой теме нельзя размещать новые ответы.

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

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