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

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

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

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

Запрет Multi Jump`a на первый раунд

, >><<
Статус пользователя pulse.
сообщение 21.2.2013, 20:20
Сообщение #1
Стаж: 13 лет

Сообщений: 260
Благодарностей: 12
Полезность: < 0

Всем еще здравствуйте, помогите пожалуйста реализовать то, чтобы плагин работал только со 2-го раунда, пожалуйста помогите :)
Исходник
Код
#include <amxmodx>
#include <amxmisc>
#include <engine>

#define ADMINACCESS ADMIN_RESERVATION

new jumpnum[33] = 0
new bool:dojump[33] = false

public plugin_init()
{
    register_plugin("MultiJump","1.1","Author")
    register_cvar("amx_maxjumps","1")
    register_cvar("amx_mjadminonly","0")
}

public client_putinserver(id)
{
    jumpnum[id] = 0
    dojump[id] = false
}

public client_disconnect(id)
{
    jumpnum[id] = 0
    dojump[id] = false
}

public client_PreThink(id)
{
    if(!is_user_alive(id)) return PLUGIN_CONTINUE
    if(get_cvar_num("amx_mjadminonly") && (!access(id,ADMINACCESS))) return PLUGIN_CONTINUE
    new nbut = get_user_button(id)
    new obut = get_user_oldbutton(id)
    if((nbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(obut & IN_JUMP))
    {
        if(jumpnum[id] < get_cvar_num("amx_maxjumps"))
        {
            dojump[id] = true
            jumpnum[id]++
            return PLUGIN_CONTINUE
        }
    }
    if((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
    {
        jumpnum[id] = 0
        return PLUGIN_CONTINUE
    }
    return PLUGIN_CONTINUE
}

public client_PostThink(id)
{
    if(!is_user_alive(id)) return PLUGIN_CONTINUE
    if(get_cvar_num("amx_mjadminonly") && (!access(id,ADMINACCESS))) return PLUGIN_CONTINUE
    if(dojump[id] == true)
    {
        new Float:velocity[3]    
        entity_get_vector(id,EV_VEC_velocity,velocity)
        velocity[2] = random_float(265.0,285.0)
        entity_set_vector(id,EV_VEC_velocity,velocity)
        dojump[id] = false
        return PLUGIN_CONTINUE
    }
    return PLUGIN_CONTINUE
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Andrei
сообщение 21.2.2013, 20:44
Сообщение #2


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

А ты мой плагин протестил?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя w0nd3r
сообщение 21.2.2013, 21:12
Сообщение #3


Стаж: 13 лет
Город: US

Сообщений: 1368
Благодарностей: 490
Полезность: 518

Bos93, Дай ссылку на свой плагин.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя pulse.
сообщение 22.2.2013, 10:17
Сообщение #4
Стаж: 13 лет

Сообщений: 260
Благодарностей: 12
Полезность: < 0

Цитата(Bos93 @ 21.2.2013, 21:44) *
А ты мой плагин протестил?

Да прости забыл отписать, все робит спасибо большое)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя iLLuSioN
сообщение 22.2.2013, 13:19
Сообщение #5
Иконка группы

Стаж: 19 лет

Сообщений: 6911
Благодарностей: 7990
Полезность: 1639

Скрытый текст
Код
#include <amxmodx>
#include <amxmisc>
#include <engine>

#define ADMINACCESS ADMIN_RESERVATION

new jumpnum[33] = 0
new bool:dojump[33] = false
new g_arr_round

public plugin_init()
{
    register_plugin("MultiJump","1.1","Author")
    register_cvar("amx_maxjumps","1")
    register_cvar("amx_mjadminonly","0")

    register_logevent("event_start_round", 2, "0=World triggered", "1=Round_Start")
    register_event("TextMsg", "RestartRound", "a", "2=#Game_will_restart_in")
}

public event_start_round ( )
    g_arr_round++

public RestartRound()
    g_arr_round = 0

public client_putinserver(id)
{
    jumpnum[id] = 0
    dojump[id] = false
}

public client_disconnect(id)
{
    jumpnum[id] = 0
    dojump[id] = false
}

public client_PreThink(id)
{
    if(!is_user_alive(id) || g_arr_round < 2) return PLUGIN_CONTINUE
    if(get_cvar_num("amx_mjadminonly") && (!access(id,ADMINACCESS))) return PLUGIN_CONTINUE
    new nbut = get_user_button(id)
    new obut = get_user_oldbutton(id)
    if((nbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(obut & IN_JUMP))
    {
        if(jumpnum[id] < get_cvar_num("amx_maxjumps"))
        {
            dojump[id] = true
            jumpnum[id]++
            return PLUGIN_CONTINUE
        }
    }
    if((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
    {
        jumpnum[id] = 0
        return PLUGIN_CONTINUE
    }
    return PLUGIN_CONTINUE
}

public client_PostThink(id)
{
    if(!is_user_alive(id) || g_arr_round < 2) return PLUGIN_CONTINUE
    if(get_cvar_num("amx_mjadminonly") && (!access(id,ADMINACCESS))) return PLUGIN_CONTINUE
    if(dojump[id] == true)
    {
        new Float:velocity[3]    
        entity_get_vector(id,EV_VEC_velocity,velocity)
        velocity[2] = random_float(265.0,285.0)
        entity_set_vector(id,EV_VEC_velocity,velocity)
        dojump[id] = false
        return PLUGIN_CONTINUE
    }
    return PLUGIN_CONTINUE
}


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: