Нужно добавить модель в precache

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
317
Реакции
132
Предупреждения
8
Помог
4 раз(а)
Основная информация

Проблема: Нужно добавить модель в precache

Ошибка:
Падает сервер и за модели не в precache
Дополнительная информация

Amx Mod X: 1.8.2

Билд:
Код:


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


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


Список плагинов:
Код:
;opengl32.amxx
;aim_detector.amxx
reaimdetector.amxx ; v0.1.6 - http://dev-cs.ru/resources/66/
amxbans_core.amxx
amxbans_main.amxx
alias_detector082.amxx
cmdchecker.amxx ; цмд чекер. http://dev-cs.ru/threads/198/page-6#post-1610
;antiflood.amxx
admincmd.amxx
;adminhelp.amxx
;adminslots.amxx
adminvote.amxx
adminchat.amxx
cmdmenu.amxx
;imessage.amxx
mapsmenu.amxx
;menufront.amxx
server_menu.amxx
miscstats.amxx
;multilingual.amxx
;nextmap.amxx
pausecfg.amxx
plmenu.amxx
restmenu.amxx
csstatsx_sql.amxx
aes_statsx_cstrike.amxx
;scrollmsg.amxx
;stats_logging.amxx
statscfg.amxx
statsx.amxx
;telemenu.amxx
;timeleft.amxx
pluginmenu.amxx
;amxmod_compat.amxx
;admin_sql.amxx
admin_esp_mini.amxx
admin_freelook.amxx
ad_manager.amxx
amx_blockip.amxx
;bullet_damage.amxx
girl_models.amxx
;Resetscore.amxx
reset_score.amxx
top_awards.amxx
vip_system.amxx
admin_check.amxx
amx_autodemorec.amxx
;voteban.amxx
amx_hpk.amxx
;mutemenu.amxx
amx_gag.amxx
;amx_parachute.amxx
parachute_rbs.amxx
;colored_translit_config.amxx
;colored_translit.amxx
voteban.amxx
;auto-restart.amxx
bcd_hudtimer.amxx
descriptive_fire_in_the_hole.amxx
;automatic_knife_duel.amxx
knife_duel.amxx debug
knife_sound.amxx debug
knife_warmup.amxx debug
speclist_rus.amxx
mapmanager.amxx
mapmanager_subplugin.amxx
;new_weapons.amxx ; лазерные ножи
;models_replacement.amxx debug ; замена моделей у всех - models_replacement.ini
afk_manager_1.8.2.amxx ; afk в спектры + иммунитет адмминам + передача бомбы
voice_manager.amxx ; раздел голосового чата
replace_info_msg.amxx debug ; замена стандартных надписей
antireconnect.amxx
New_Steam_bonus.amxx ; бонус стим игрокам
block_HLproxy.amxx
;autorestart_ua.amxx
map_spawns_editor.amxx
;billy_model.amxx
;pavlodar_model.amxx ; моделька пантеры по флагу "s"
players_models.amxx
hud_killer_info.amxx ; pokazivaet skolko hp i ap y ybiitsi
;mode.amxx debug ; блокирует половину карты когда мало игроков
;mode2.amxx debug ; блокирует половину карты когда мало игроков + цветной чат
no_team_flash.amxx debug ; своих не слепит
mode_re.amxx debug ; блокирует половину карты когда мало игроков. под рехлдс
WinTeam_Sprite.amxx debug
MarioCoins21.amxx
;MarioCoins.amxx ; старая версия
lite_translit.amxx


Список метамодулей:
Код:
Не указан[ 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] ReSemiclip RUN - resemiclip_mm_i3 v2.3.9 ini Chlvl ANY
[ 5] VoiceTranscoder RUN - VoiceTranscoder. v2017 RC ini ANY ANY
[ 6] Rechecker RUN - rechecker_mm_i38 v2.3 ini Chlvl ANY
[ 7] MySQL RUN - mysql_amxx_i386. v1.8.2 pl3 ANY ANY
[ 8] Fun RUN - fun_amxx_i386.so v1.8.2 pl3 ANY ANY
[ 9] Engine RUN - engine_amxx_i386 v1.8.2 pl3 ANY ANY
[10] FakeMeta RUN - fakemeta_amxx_i3 v1.8.2 pl3 ANY ANY
[11] Ham Sandwich RUN - hamsandwich_amxx v1.8.2 pl3 ANY ANY
[12] ReAimDetector RUN - reaimdetector_am v0.1.6 pl3 ANY Never
[13] CStrike RUN - cstrike_amxx_i38 v1.8.2 pl3 ANY ANY
[14] ReAPI RUN - reapi_amxx_i386. v5.1.0.1 pl3 ANY Never


Исходник:
Код:
/* CVARs
mc_enable — 0/1 — плагин выключен/включен. При установке значения больше 1, плагин автоматически выставляет 0 и выключается.
mc_bodycoin — количество монет, выпадающих с противника после его убийства.
mc_maxcoins — количество монет, необходимых для получения возможности возрождения.
mc_defusecoins — количество монет, дающихся игроку после разминирования бомбы. Если значение равно 0, то функция отключается.
mc_explodecoins — количество монет, дающихся игроку после взрыва бомбы. Если значение равно 0, то функция отключается.
mc_coinstype — 0/1 — обычные монетки/динамичные(после выпадения монетки будут отскакивать от стен, пола, ящиков и т.д.).
При установке значения больше 1, плагин автоматически выставляет 0 и включаются обычные монетки.
*/
#include <amxmodx>
#include <engine>
#include <hamsandwich>

#define Mplayers 32 + 1

new bCountTokenCoins[Mplayers];

new gCvarPluginEnable;
new gCvarPluginCoinsType;
new gCvarPluginMaxCoinsForLife;
new gCvarPluginCoinsPerBody;
new gCvarPluginCoinsForDefuse;
new gCvarPluginCoinsForExplode;
new gHudSyncronizer;

/* defolt
new const gCoinModel[] = "models/MarioCoins/mario_coin2.mdl";
new const gCoinGained[] = "MarioCoins/coingained.wav";
new const gLifeGained[] = "MarioCoins/lifegained.wav";
new const gRespawned[] = "MarioCoins/respawned.wav";
*/
// Precache
/*
public plugin_precache()
{
new const gCoinModel[] = precache_model("models/MarioCoins/mario_coin2.mdl")
new const gCoinGained[] = precache_sound("MarioCoins/coingained.wav")
new const gLifeGained[] = precache_sound("MarioCoins/lifegained.wav")
new const gRespawned[] = precache_sound("MarioCoins/respawned.wav")
}
*/
new const gCoinModel[] = "models/MarioCoins/mario_coin2.mdl";
new const gCoinGained[] = "MarioCoins/coingained.wav";
new const gLifeGained[] = "MarioCoins/lifegained.wav";
new const gRespawned[] = "MarioCoins/respawned.wav";

public plugin_precache()
{
precache_model(gCoinModel);
precache_sound(gCoinGained);
precache_sound(gLifeGained);
precache_sound(gRespawned);
}

public plugin_init()
{
register_plugin("Mario Coins","2.1","EvilCoder/tuty");
register_dictionary("MarioCoins.txt");
gCvarPluginEnable = register_cvar("mc_enable","1");
if(get_pcvar_num(gCvarPluginEnable) != 1)
{
set_pcvar_num(gCvarPluginEnable,0);
return;
}

register_event("TextMsg","EVENT_TextMsg","a","2&#Game_C","2&#Game_w","2&#Game_will_restart_in");
register_logevent("LOG_RoundEnd",2,"1=Round_End");
register_touch("MarioCoin$","player","TouchCoin");

RegisterHam(Ham_Killed,"player","bacon_PlayerKilled",1);
RegisterHam(Ham_Player_PreThink,"player","bacon_PlayerPreThink");

gCvarPluginCoinsType = register_cvar("mc_coinstype","1");
if(get_pcvar_num(gCvarPluginCoinsType) != 1)
{
set_pcvar_num(gCvarPluginCoinsType,0);
}
gCvarPluginCoinsPerBody = register_cvar("mc_bodycoin","1");
gCvarPluginMaxCoinsForLife = register_cvar("mc_maxcoins","10");
gCvarPluginCoinsForDefuse = register_cvar("mc_defusecoins","2");
gCvarPluginCoinsForExplode = register_cvar("mc_explodecoins","2");

gHudSyncronizer = CreateHudSyncObj();
}

public client_connect(iVictim)
{
bCountTokenCoins[iVictim] = 0;
}

public EVENT_TextMsg()
{
remove_entity_name("MarioCoin$");
}

public LOG_RoundEnd()
{
remove_entity_name("MarioCoin$");
}

public bomb_defused(defuser)
{
if(get_pcvar_num(gCvarPluginCoinsForDefuse) == 0)
{
return PLUGIN_CONTINUE;
}

bCountTokenCoins[defuser] += get_pcvar_num(gCvarPluginCoinsForDefuse);

new iMaxCoins = get_pcvar_num(gCvarPluginMaxCoinsForLife);

if(bCountTokenCoins[defuser] >= iMaxCoins)
{
emit_sound(defuser,CHAN_ITEM,gLifeGained,VOL_NORM,ATTN_NORM,0,PITCH_NORM);
bCountTokenCoins[defuser] = iMaxCoins;
return PLUGIN_CONTINUE;
}

emit_sound(defuser,CHAN_ITEM,gCoinGained,VOL_NORM,ATTN_NORM,0,PITCH_NORM);

remove_entity_name("MarioCoin$");

return PLUGIN_CONTINUE;
}

public bomb_explode(planter)
{
if(get_pcvar_num(gCvarPluginCoinsForExplode) == 0)
{
return PLUGIN_CONTINUE;
}

bCountTokenCoins[planter] += get_pcvar_num(gCvarPluginCoinsForExplode);

new iMaxCoins = get_pcvar_num(gCvarPluginMaxCoinsForLife);

if(bCountTokenCoins[planter] >= iMaxCoins)
{
emit_sound(planter,CHAN_ITEM,gLifeGained,VOL_NORM,ATTN_NORM,0,PITCH_NORM);
bCountTokenCoins[planter] = iMaxCoins;
return PLUGIN_CONTINUE;
}

emit_sound(planter,CHAN_ITEM,gCoinGained,VOL_NORM,ATTN_NORM,0,PITCH_NORM);

remove_entity_name("MarioCoin$");

return PLUGIN_CONTINUE;
}

public bacon_PlayerKilled()
{
new iKiller = read_data(1);
new iVictim = read_data(2);

if(iKiller == iVictim || get_user_team(iKiller) == get_user_team(iVictim))
{
return;
}

if(bCountTokenCoins[iVictim] >= get_pcvar_num(gCvarPluginMaxCoinsForLife))
{
if(!is_user_alive(iVictim))
{
set_task(0.1,"RegMenu",iVictim);
}
}

new Float:flPlayerOrigin[3];
entity_get_vector(iVictim,EV_VEC_origin,flPlayerOrigin);

flPlayerOrigin[2] -= 36;

new packedOrigin[3];
FVecIVec(flPlayerOrigin,packedOrigin);

set_task(0.1,"spawnCoins",4142,packedOrigin,3,"a",get_pcvar_num(gCvarPluginCoinsPerBody));
}

public RegMenu(iVictim)
{
new regmenu[512 char];
formatex(regmenu,charsmax(regmenu),"%L",iVictim,"DO_YOU_WANT_RESPAWN");
new menu = menu_create(regmenu,"ShowMenu");

formatex(regmenu,charsmax(regmenu),"%L",iVictim,"YES_I_WANT");
menu_additem(menu,regmenu,"1",0);

formatex(regmenu,charsmax(regmenu),"%L",iVictim,"NO_I_DO_NOT");
menu_additem(menu,regmenu,"2",0);

menu_setprop(menu,MPROP_EXIT,MEXIT_NEVER,-1);

menu_display(iVictim,menu,0);

return PLUGIN_CONTINUE;
}

public ShowMenu(iVictim,menu,item)
{
new data[6],iName[64],access,callback;
menu_item_getinfo(menu,item,access,data,charsmax(data),iName,charsmax(iName),callback);

new key = str_to_num(data);

switch(key)
{
case 1:
{
set_task(0.1,"RespawnPlayerAndResetCoins",iVictim);
menu_destroy(menu);
}
case 2:
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
}

return PLUGIN_HANDLED;
}

public spawnCoins(packedOrigin[3])
{
new Float:origin[3];
IVecFVec(packedOrigin,origin);
new iEntity = create_entity("info_target");

if(!is_valid_ent(iEntity))
{
return;
}

origin[2] += 65.0;
entity_set_origin(iEntity,origin);

new Float:velocity[3];
velocity[0] = (random_float(0.0,256.0) - 128.0);
velocity[1] = (random_float(0.0,256.0) - 128.0);
velocity[2] = (random_float(0.0,300.0) + 75.0);
entity_set_vector(iEntity,EV_VEC_velocity,velocity);

static modelName[64];
formatex(modelName,63,"models/MarioCoins/mario_coin2.mdl");

entity_set_model(iEntity,modelName);
entity_set_string(iEntity,EV_SZ_classname,"MarioCoin$");
entity_set_int(iEntity,EV_INT_solid,SOLID_TRIGGER);
if(get_pcvar_num(gCvarPluginCoinsType) != 1)
{
entity_set_int(iEntity,EV_INT_movetype,MOVETYPE_TOSS);
}
else
{
entity_set_int(iEntity,EV_INT_movetype,MOVETYPE_BOUNCE);
}
drop_to_floor(iEntity);

set_rendering(iEntity,kRenderFxGlowShell,255,255,0,kRenderNormal,10);
}

public TouchCoin(iEntity,id)
{
if(is_valid_ent(iEntity))
{
new iMaxCoins = get_pcvar_num(gCvarPluginMaxCoinsForLife);

bCountTokenCoins[id]++;

if(bCountTokenCoins[id] >= iMaxCoins)
{
emit_sound(id,CHAN_ITEM,gLifeGained,VOL_NORM,ATTN_NORM,0,PITCH_NORM);
set_entity_flags(iEntity,FL_KILLME,1);
bCountTokenCoins[id] = iMaxCoins;
return PLUGIN_CONTINUE;
}

emit_sound(id,CHAN_ITEM,gCoinGained,VOL_NORM,ATTN_NORM,0,PITCH_NORM);
set_entity_flags(iEntity,FL_KILLME,1);
}

remove_entity(iEntity);

return PLUGIN_CONTINUE;
}

public bacon_PlayerPreThink(id)
{
if(is_user_alive(id) && !is_user_bot(id))
{
//set_hudmessage(255,127,42,0.0,0.90,0,6.0);
set_hudmessage(255,127,42,0.03,0.88,0,6.0);

new iMaxCoins = get_pcvar_num(gCvarPluginMaxCoinsForLife);
new szFormatHUDMessage[300];

if(bCountTokenCoins[id] == iMaxCoins)
{
formatex(szFormatHUDMessage,charsmax(szFormatHUDMessage),"%L",id,"CAN_RESPAWN");
}

else
{
formatex(szFormatHUDMessage,charsmax(szFormatHUDMessage),"%L: [%d/%d]",id,"COINS_COUNT",bCountTokenCoins[id],iMaxCoins);
}

ShowSyncHudMsg(id,gHudSyncronizer,szFormatHUDMessage);
}
}

public RespawnPlayerAndResetCoins(iVictim)
{
if(is_user_connected(iVictim) && !is_user_alive(iVictim) && get_user_team(iVictim) != 3)
{
ExecuteHamB(Ham_CS_RoundRespawn,iVictim);

emit_sound(iVictim,CHAN_ITEM,gRespawned,VOL_NORM,ATTN_NORM,0,PITCH_NORM);
bCountTokenCoins[iVictim] = 0;
}
}


Комментарий:
Нужно добавить precache в этой строчке, я хз как
И правильно ли
formatex(modelName,63,"models/MarioCoins/mario_coin2.mdl");

Логи
L 03/06/2017 - 12:43:53: FATAL ERROR (shutting down): Host_Error: no precache: models/MarioCoins/mario_coin2.mdl
FATAL ERROR (shutting down): Host_Error: no precache: models/MarioCoins/mario_coin2.mdl
 
В этой теме было размещено решение! Перейти к решению.
Сообщения
263
Реакции
335
Помог
4 раз(а)
alabamaster1337, нужно добавить модель в "../models/MarioCoins/"

P.S. Вангую, сама моделька называется "mario_coins2.mdl" а в плагине указана "mario_coin2.mdl"
 
Сообщения
317
Реакции
132
Предупреждения
8
Помог
4 раз(а)
SonG, все модели на своих местах
плохо вангуешь:)
 
Сообщения
263
Реакции
335
Помог
4 раз(а)
alabamaster1337, Странно) Ибо я поставил на тест плагин и он не пишет никаких ошибок.
Код:
 [ 22] Mario Coins             2.1         EvilCoder/tuty    coin.amxx        running
 
Сообщения
317
Реакции
132
Предупреждения
8
Помог
4 раз(а)
SonG, после убийства, когда должна выпадать монетка, сервер падает, логи я скинул
 
Сообщения
263
Реакции
335
Помог
4 раз(а)
alabamaster1337, У меня после убийства монета не выпадает, и серв не падает)))
 
Сообщения
317
Реакции
132
Предупреждения
8
Помог
4 раз(а)
SonG, уже не падает :D
дебаг логи

L 03/06/2017 - 14:08:52: [AMXX] Displaying debug trace (plugin "MarioCoins21.amxx")
L 03/06/2017 - 14:08:52: [AMXX] Run time error 4: index out of bounds
L 03/06/2017 - 14:08:52: [AMXX] [0] MarioCoins21.sma::bacon_PlayerKilled (line 161)
L 03/06/2017 - 14:08:54: [AMXX] Displaying debug trace (plugin "MarioCoins21.amxx")
L 03/06/2017 - 14:08:54: [AMXX] Run time error 4: index out of bounds
L 03/06/2017 - 14:08:54: [AMXX] [0] MarioCoins21.sma::bacon_PlayerKilled (line 161)
L 03/06/2017 - 14:08:56: [AMXX] Displaying debug trace (plugin "MarioCoins21.amxx")
L 03/06/2017 - 14:08:56: [AMXX] Run time error 4: index out of bounds
L 03/06/2017 - 14:08:56: [AMXX] [0] MarioCoins21.sma::bacon_PlayerKilled (line 161)
L 03/06/2017 - 14:08:58: [AMXX] Displaying debug trace (plugin "MarioCoins21.amxx")
L 03/06/2017 - 14:08:58: [AMXX] Run time error 4: index out of bounds
L 03/06/2017 - 14:08:58: [AMXX] [0] MarioCoins21.sma::bacon_PlayerKilled (line 161)
L 03/06/2017 - 14:09:15: [AMXX] Displaying debug trace (plugin "MarioCoins21.amxx")
L 03/06/2017 - 14:09:15: [AMXX] Run time error 4: index out of bounds
L 03/06/2017 - 14:09:15: [AMXX] [0] MarioCoins21.sma::bacon_PlayerKilled (line 161)
 
Сообщения
317
Реакции
132
Предупреждения
8
Помог
4 раз(а)
Vaqtincha, если что то должно было измениться, оно не изменилось, все те же логи
 
Сообщения
723
Реакции
610
Помог
13 раз(а)
Сообщения
443
Реакции
321
Помог
13 раз(а)
имхо изначально был deathmsg...
просто ТС наркоман и решил что аргументы совпадут
 
Сообщения
723
Реакции
610
Помог
13 раз(а)
Тогда так
Код:
public bacon_PlayerKilled(iVictim, iKiller, iGib)
{
// new iKiller = read_data(1);
// new iVictim = read_data(2);

if(iKiller == iVictim || get_user_team(iKiller) == get_user_team(iVictim))
{
return;
}

if(bCountTokenCoins[iVictim] >= get_pcvar_num(gCvarPluginMaxCoinsForLife))
{
// if(!is_user_alive(iVictim)) // WTF ?
{
set_task(0.1,"RegMenu",iVictim);
}
}

//........
 
Статус
В этой теме нельзя размещать новые ответы.

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

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