Участник
Пользователь
- Сообщения
- 2,143
- Реакции
- 1,225
- Помог
- 44 раз(а)
Создание данных приблуд пока что не планируется?1) Телепорт зомби на респауны во время инфекция для эскейп карт
2) Антиинфекцию по флагу для кв.
public msg_teaminfo(msgid, dest, id)
{
if(!g_gamestarted)
return PLUGIN_CONTINUE
static team[2]
get_msg_arg_string(2, team, 1)
if(team[0] != 'U')
return PLUGIN_CONTINUE
id = get_msg_arg_int(1)
if(is_user_alive(id) || !g_disconnected[id])
return PLUGIN_CONTINUE
g_disconnected[id] = false
id = randomly_pick_zombie()
if(id)
{
fm_set_user_team(id, g_zombie[id] ? CS_TEAM_CT : CS_TEAM_T, 0)
set_pev(id, pev_deadflag, DEAD_RESPAWNABLE)
}
return PLUGIN_CONTINUE
}
А как вы проверили, что раунд продолжился? (если единственный игрок вышел).если останется один игрок и он отключится, раунд продолжится.
Рестарт раунда происходит потому, что имеется как минимум 2 игрока, каждый из которых в разных командах.После того, как начался раунд, при заходе нового игрока бывает рестарт.
В ZMB тоже есть подобное (правда не знаю работает корректно или нет, т.к. тестов не было)после выхода зомби рандомный игрок заменяет его
else if(IsSetBit(gp_iBit[BIT_ZOMBIE], iIndex))
{
g_iAliveZombies--;
remove_task(TASK_ID_PLAYER_HUD + iIndex);
remove_task(TASK_ID_ZOMBIE_HP_REGENERATION + iIndex);
if(g_bInfectionBegan)
{
if(g_iAliveZombies == 0)
{
if(g_iAliveHumans == 1)
{
if(g_bCvar_IfLastZombieDisconnect)
{
rg_round_end(1.0, WINSTATUS_CTS, ROUND_CTS_WIN);
}
}
else if(g_iAliveHumans > 1)
{
setRandomPlayerZombie();
}
}
}
}
Это легко правится. В client_disconect этот кусок кода (1258-1261):Мы с друзьями были за зомби. Был один выживший, он отключился. Но раунд не завершился)
else
{
g_iAliveHumans--;
}
else
{
g_iAliveHumans--;
if(g_bInfectionBegan)
{
if(g_iAliveZombies)
{
if(g_iAliveHumans == 0)
{
rg_round_end(1.0, WINSTATUS_TERRORISTS, ROUND_TERRORISTS_WIN);
}
}
}
}
В HC_CBasePlayer_TakeDamage_Pre добавить этот кусок кода:что до превращения в зомби люди могут ранить друг друга HE - гранатами.
if(IsSetBit(gp_iBit[BIT_HUMAN], iVictim) && iVictim == iAttacker)
{
if(bitsDamageType == DMG_GRENADE)
{
return HC_SUPERCEDE;
}
}
нет) Я пробовал ставить Custom Models, но "подружить" их не получилось. Написал свой простенький плагин, отлавливал спавн и менял модельку людям и инфицированному. Но эффект один, модель людей остается у зомби)radical1, cl_minmodels 1 может стоит?