Добавил бесконечные прыжки. Работает.
Хочу, чтобы когда нажимаешь на 5 вкл/выкл. бесконечные прыжки.
А у меня когда нажимаешь на 5 (при нажатии кнопки) прыгает.
Что делаю не так?
Заранее спасибо!
Subb98 писал(а): RevCrew, cyberforum предложил бы, но что меня там бесит: создаёшь тему с вопросом - тебе отвечают ссылками на похожие темы, где даны ответы точно такими же ссылками на похожие темы с ответами с точно такими же ссылками. Как будто не на форум зашёл, а на порно-сайт с unlimited-redirect'ами.
Модераторы: Subb98, liFe iS GoOD
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
}
Subb98 писал(а):servercsikqldikq, добрый вечер. Пожалуйста, измените название темы на информативное, в соответствии Вы должны зарегистрироваться, чтобы видеть ссылки.. Если Вы не сделаете этого в течение суток, я изменю название темы сам, однако в этом случае Вам будет выдано предупреждение в профиль.
Dart_Begep писал(а):Ошибка в client_PostThink :
- Код: Выделить всё
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
}
Конечно, как только ты включишь "бесконечный прыжок", ты сразу прыгнешь. Но только один раз. И независимо от клавиши прыжка.
amx_maxjumps 9999999 // количество дополнительных прыжков
case 4:
{
if(!dojump[id])
{
dojump[id] = true
}
else
{
dojump[id] = false
}
AdminMenu(id)
}
servercsikqldikq писал(а):Как сделать, чтобы мог вкл/выкл?
- Код: Выделить всё
case 4:
{
if(!dojump[id])
{
dojump[id] = true
}
else
{
dojump[id] = false
}
AdminMenu(id)
}
Разве не так?
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
}
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])
{
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]&&(jumpnum[id]>0))
{
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)
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
servercsikqldikq писал(а):Dart_Begep, спасибо! Вкл/выкл работает и не прыгает при нажатии 5!
Вот только одна проблемка..
Стоит нажать на пробел: само прыгает и не отключается.. о_О
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])
{
jumpnum[id]++
return PLUGIN_CONTINUE
}
else
{
dojump[id] = false
return PLUGIN_CONTINUE
}
}
if((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
{
jumpnum[id] = 0
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
if((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
{
jumpnum[id] = 0
return PLUGIN_CONTINUE
}
if(!dojump[id])
{
jumpnum[id] = 0
dojump[id] = true
}
else
{
dojump[id] = false
}
public client_PostThink(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)
if(dojump[id] && (jumpnum[id] > 0) && (nbut & IN_JUMP))
{
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)
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
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])
{
jumpnum[id]++
return PLUGIN_CONTINUE
}
else
dojump[id] = false
}
// если сброс при приземлении не нужен, следующий if не нужен
if((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
{
jumpnum[id] = 0
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
if((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
{
jumpnum[id] = 0
return PLUGIN_CONTINUE
}
Сейчас этот форум просматривают: Yandex [Bot] и гости: 14