Teszt nemvolt:
Kód:
new bool:can_press[33], bool:has_longjump[33], bool:has_multi[33];
new jumpnum[33] = 0
new bool:dojump[33] = false
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_logevent("logevent_end", 2, "Round_End");
register_logevent("logevent_start", 2, "Round_Start");
register_clcmd("say /lj", "give_longjump");
register_clcmd("say /dj", "give_multi");
}
public give_multi(id)
{
if(can_press[id])
{
can_press[id] = false;
has_multi[id] = true;
set_task(15.0, "del_multi");
}
}
public del_multi(id)
{
has_longjump[id] = false;
can_press[id] = true;
}
public give_longjump(id)
{
if(can_press[id])
{
give_item(id, "item_longjump");
set_task(15.0, "del_longjump");
has_longjump[id] = true;
can_press[id] = false;
}
else
{
client_print(id, print_chat, "Most nem tudsz venni longjumpot!");
}
}
public del_longjump(id)
{
has_longjump[id] = false;
can_press[id] = true;
}
public logevent_end(i)
{
can_press[i] = false;
has_longjump[i] = false;
has_multi[i] = false;
}
public logevent_start(i)
{
can_press[i] = true;
has_longjump[i] = false;
has_multi[i] = false;
}
public client_connect(i)
{
can_press[i] = true;
has_longjump[i] = false;
has_multi[i] = false;
}
public client_disconnect(i)
{
can_press[i] = false;
has_longjump[i] = false;
has_multi[i] = false;
}
public client_PreThink(id)
{
multi(id);
}
public multi(id)
{
if(has_multi[id])
{
if(is_user_alive(id))
{
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] < 2)
{
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(has_multi[id]) {
if(is_user_alive(id)) {
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
}