Привет всем, обращаюсь сюда потому что все скриптеры гасятся и даже деньги их не интересуют..проблема такая, плагин разминки, с ошибкой вот такой L 02/24/2017 - 11:21:41: [AMXX] Displaying debug trace (plugin "WarmUpForPublic.amxx") L 02/24/2017 - 11:21:41: [AMXX] Run time error 10: native error (native "cs_get_user_team") L 02/24/2017 - 11:21:41: [AMXX] [0] WarmUpForPublic.sma::PlayerRespawn (line 149) как решить не знаю, никто не подскажет что там поменять надо или вписать.. а то логи уже так зас*ались ужас.. задолбался чистить..буду признателен кто поможет или финансово расчитаемся, там уже по ситуации.. вот сам плагин Код: #include <amxmodx> #include <amxmisc> #include <fakemeta> #include <hamsandwich> #include <fun> #include <cstrike> #define PLUGIN "Warn" #define VERSION "1.0" #define AUTHOR "KanyCT@" /*========================================== Настройкамана ===========================================*/ #define TIME 60 /*========================================== Массивы ===========================================*/ new g_Time new g_Sync /*========================================== Инициализация плагина ===========================================*/ public plugin_init() { //Регистрация плагина register_plugin(PLUGIN, VERSION, AUTHOR) //Регистрация Event событий register_event("TextMsg", "Event_GameCommenting", "a", "2=#Game_Commencing") //Регистрация Ham событий RegisterHam(Ham_Spawn, "player", "HamSpawn_Post", 1) RegisterHam(Ham_Killed, "player", "HamKilled_Pre", 0) g_Sync = CreateHudSyncObj() } /*========================================== Отлов старта новой игроы ===========================================*/ public Event_GameCommenting() { remove_task(100500) g_Time = TIME set_task(1.0, "Task_Autorestart", 100500, _, _, "b") } /*========================================== Обработка авторестарта ===========================================*/ public Task_Autorestart() { set_hudmessage(139, 139, 0, -1.0, 0.16, 0, 1.0, 1.0, 0.01, 1.5, -1) ShowSyncHudMsg(0, g_Sync, "Разминочка!^nРестарт через·: [ %d ]", g_Time) g_Time -= 1 if(g_Time <= 1) { g_Time = 0 remove_task(100500) server_cmd("sv_restartround 1") set_task(3.0, "WarmUpEnd") return } } /*========================================== Вывод сообщение после рестарта ===========================================*/ public WarmUpEnd() { set_hudmessage(139, 139, 0, -1.0, 0.75, 0, 6.0, 6.0, 0.01, 1.5, false ) ShowSyncHudMsg(0, g_Sync, "Разминка завершена!^nПриятной игры!") } /*========================================== Вход игрока ===========================================*/ public client_putinserver(id) { if(!task_exists(100500)) return HAM_IGNORED set_task(1.0, "PlayerRespawn", id) return HAM_IGNORED } /*========================================== Отлов спавна игрока ===========================================*/ public HamSpawn_Post(id) { if(!is_user_connected(id) || !is_user_alive(id)) return HAM_IGNORED if(!task_exists(100500)) return HAM_IGNORED if(cs_get_user_team(id) == CS_TEAM_CT) { give_item(id, "weapon_m4a1") cs_set_user_bpammo(id, CSW_M4A1, 90) }else if(cs_get_user_team(id) == CS_TEAM_T) { give_item(id, "weapon_ak47") cs_set_user_bpammo(id, CSW_AK47, 90) } DropWeapon(id, 2) give_item(id, "weapon_deagle") cs_set_user_bpammo(id, CSW_DEAGLE, 35) cs_set_user_money(id, 16000, 1) return HAM_IGNORED } /*========================================== Отлов смерти игрока ===========================================*/ public HamKilled_Pre(iVictim, iAttacker, iCourse) { if(!task_exists(100500)) return HAM_IGNORED if(!iVictim || !is_user_connected(iVictim)) return HAM_IGNORED set_task(1.0, "PlayerRespawn", iVictim) return HAM_IGNORED } /*========================================== Отлов смерти игрока ===========================================*/ public PlayerRespawn(id) { if(!task_exists(100500)) return PLUGIN_CONTINUE if(is_user_alive(id) || is_user_hltv(id) || cs_get_user_team(id) == CS_TEAM_SPECTATOR || cs_get_user_team(id) == CS_TEAM_UNASSIGNED) { set_task(1.0, "PlayerRespawn", id) return PLUGIN_CONTINUE } ExecuteHamB(Ham_CS_RoundRespawn, id) return PLUGIN_CONTINUE } /*========================================== Дроп оружие ===========================================*/ stock DropWeapon(id, iSlot) { new iEntity = get_pdata_cbase(id, (367 + iSlot), 5) if(iEntity > 0) { static iNext new szWeapon[32] do { iNext = get_pdata_cbase(iEntity, 42, 4) if(get_weaponname(get_pdata_int(iEntity, 43, 4), szWeapon, charsmax( szWeapon ))) engclient_cmd(id, "drop", szWeapon) } while(( iEntity = iNext) > 0) } }
Sekret^, Думаю нужно добавить проверку на коннект игрока в событии: Код: [0] WarmUpForPublic.sma::PlayerRespawn (line 149)
да умел бы)) я гуглил эту проблему, да там на коннект надо а я не умею)) вот и написал может кто поможет где то изменить в 149 строке вот даже строка эта if(is_user_alive(id) || is_user_hltv(id) || cs_get_user_team(id) == CS_TEAM_SPECTATOR || cs_get_user_team(id) == CS_TEAM_UNASSIGNED) а что писать сюда так я и не понимаю) не скриптер я..
Код: public PlayerRespawn(id) { if(!task_exists(100500)) return PLUGIN_CONTINUE if (!is_user_connected(id)) return PLUGIN_CONTINUE; if(is_user_alive(id) || is_user_hltv(id) || cs_get_user_team(id) == CS_TEAM_SPECTATOR || cs_get_user_team(id) == CS_TEAM_UNASSIGNED) { set_task(1.0, "PlayerRespawn", id) return PLUGIN_CONTINUE } ExecuteHamB(Ham_CS_RoundRespawn, id) return PLUGIN_CONTINUE } вот так? если да то выдаёт ошибку на табуляцию на строки 149, 152 вроде с отступами норм всё... но щас попробую будет ли работать норм
ооо я сделал как ты и сказал, пока ошибки не вылезают и пофиг что табуляция не прошла он скомп. спасибо добрый человек, но пока ещё потестю с пару картами
спасибо помогло ошибки не выскакивают больше и всё работает корректно, ну по крайней мере 2 часа уже точно))