Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

плагин для зомби

Статус пользователя BaHeK
сообщение 12.8.2011, 20:49
Сообщение #1


Стаж: 17 лет

Сообщений: 571
Благодарностей: 505
Полезность: 651

open
Код
#include <amxmodx>
#include <fakemeta>

native zp_is_swarm_round()
native zp_is_plague_round()
native zp_is_survivor_round()
native zp_is_nemesis_round()
native zp_infect_user(a)
native zp_make_user_nemesis(a)
native zp_make_user_survivor(a)

new bool:g_IsRespawned[33],
g_TeleEffCvar, g_TypeCvar, g_NormalSpawn,
g_TypeCvarString[8], g_SwarmSpawnString[3], g_PlagueSpawnString[3], g_NormalSpawnString[3]

public plugin_init()
{
    register_plugin("[ZP] Special Respawn", "1.1", "BaHeK")
    register_event("TeamInfo", "event_TeamInfo", "a", "2=TERRORIST", "2=CT")
    g_TeleEffCvar = register_cvar("zp_special_tele_effect", "1")
    g_TypeCvar = register_cvar("zp_special_respawn", "a")
    g_NormalSpawn = register_cvar("zp_special_normal_sp", "h")
    set_task(1.0, "FuncCache")
}

public plugin_cfg()
    server_cmd("exec addons/amxmodx/configs/zp_special_respawn.cfg")

public client_putinserver(id)
    g_IsRespawned[id] = false

public event_TeamInfo()
{
    static id
    id = read_data(1)
    
    if (!g_IsRespawned[id])
    {
        set_task(4.0, "FuncRespawn", id)
        set_task(4.5, "FuncAnnounce", id)
        g_IsRespawned[id] = true
    }
}

public FuncRespawn(id)
{
    if (is_user_alive(id) || !g_TypeCvarString[0])
        return PLUGIN_HANDLED
    
    if (zp_is_swarm_round() || zp_is_plague_round() || zp_is_survivor_round() ||  zp_is_nemesis_round())
    {
        
        return PLUGIN_HANDLED
    }
    
    dllfunc(DLLFunc_Spawn, id)
    
    if (get_pcvar_num(g_TeleEffCvar))
        set_task(0.2, "FuncTeleport", id)
    
    set_task(0.8, "FuncDecision", id)
    
    return PLUGIN_HANDLED
}

public FuncDecision(id)
{
    if (!is_user_connected(id))
        return PLUGIN_HANDLED
    
    if (contain(g_NormalSpawnString, "z") != -1)
        zp_infect_user(id)
    
    return PLUGIN_HANDLED
}

public FuncTeleport(id)
{
    if (!is_user_alive(id))
        return
    
    static Float:iOrigin[3]
    pev(id, pev_origin, iOrigin)
    
    engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, iOrigin, 0)
    write_byte(TE_TELEPORT)
    engfunc(EngFunc_WriteCoord, iOrigin[0])
    engfunc(EngFunc_WriteCoord, iOrigin[1])
    engfunc(EngFunc_WriteCoord, iOrigin[2])
    message_end()
}

public FuncAnnounce(id)
{
    if (!is_user_alive(id))
        return
    
    static iSayTextMsg
    
    if (!iSayTextMsg)
        iSayTextMsg = get_user_msgid("SayText")
    
    message_begin(MSG_ONE_UNRELIABLE, iSayTextMsg, _, id)
    write_byte(id)
    write_string("^x04[ZP]^x01 You have been^x03 Respawned^x01 by server!")
    message_end()
}

public FuncCache()
{
    get_pcvar_string(g_TypeCvar, g_TypeCvarString, charsmax(g_TypeCvarString))
    get_pcvar_string(g_NormalSpawn, g_NormalSpawnString, charsmax(g_NormalSpawnString))
}

что нужно добавить к строчке
Код
if (zp_is_swarm_round() || zp_is_plague_round() || zp_is_survivor_round() ||  zp_is_nemesis_round())

чтобы человека возрадило в том случае когда он выбрал команду и класс(gign,sas и тд..)


Чуть-чуть нарушаю
http://img-host.su/aoN1.png
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя BaHeK
сообщение 18.8.2011, 17:08
Сообщение #2


Стаж: 17 лет

Сообщений: 571
Благодарностей: 505
Полезность: 651

up


Чуть-чуть нарушаю
http://img-host.su/aoN1.png
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: