public item_hook(id)
{
if (used_item[id])
{
hudmsg(id,2.0,"Haku mozesz uzyc raz na runde!")
return PLUGIN_CONTINUE
}
new target = Find_Best_Angle(id,1000.0,false)
if (!is_valid_ent(target))
{
hudmsg(id,2.0,"Obiekt jest poza zasiegiem.")
return PLUGIN_CONTINUE
}
AddFlag(id,Flag_Hooking)
set_user_gravity(target,0.0)
set_task(0.1,"hook_prethink",id+TASK_HOOK,"",0,"b")
hooked[id] = target
hook_prethink(id+TASK_HOOK)
emit_sound(id,CHAN_VOICE,"weapons/xbow_hit2.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
used_item[id] = true
return PLUGIN_HANDLED
}
public hook_prethink(id)
{
id -= TASK_HOOK
if(!is_user_alive(id) || !is_user_alive(hooked[id]))
{
RemoveFlag(id,Flag_Hooking)
return PLUGIN_HANDLED
}
if (get_user_button(id) & ~IN_USE)
{
RemoveFlag(id,Flag_Hooking)
return PLUGIN_HANDLED
}
if(!HasFlag(id,Flag_Hooking))
{
if (is_user_alive(hooked[id]))
set_user_gravity(id,1.0)
remove_task(id+TASK_HOOK)
return PLUGIN_HANDLED
}
//Get Id's origin
static origin1[3]
get_user_origin(id,origin1)
static origin2[3]
get_user_origin(hooked[id],origin2)
//Create blue beam
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(1) //TE_BEAMENTPOINT
write_short(id) // start entity
write_coord(origin2[0])
write_coord(origin2[1])
write_coord(origin2[2])
write_short(sprite_line)
write_byte(1) // framestart
write_byte(1) // framerate
write_byte(2) // life in 0.1's
write_byte(5) // width
write_byte(0) // noise
write_byte(0) // red
write_byte(0) // green
write_byte(255) // blue
write_byte(200) // brightness
write_byte(0) // speed
message_end()
//Calculate Velocity
new Float:velocity[3]
velocity[0] = (float(origin1[0]) - float(origin2[0])) * 3.0
velocity[1] = (float(origin1[1]) - float(origin2[1])) * 3.0
velocity[2] = (float(origin1[2]) - float(origin2[2])) * 3.0
new Float:dy
dy = velocity[0]*velocity[0] + velocity[1]*velocity[1] + velocity[2]*velocity[2]
new Float:dx
dx = (4+player_intelligence[id]/2) * 120.0 / floatsqroot(dy)
velocity[0] *= dx
velocity[1] *= dx
velocity[2] *= dx
set_pev(hooked[id],pev_velocity,velocity)
return PLUGIN_CONTINUE
}Z góry dzięki i pozdrawiam.
Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Edycja itemu 2
#1
Napisano 18.04.2010 15:49
#2
Napisano 18.04.2010 17:54
case 53:
{
player_item_name[id] = "Magic Hook"
player_item_id[id] = rannum
player_b_hook[id] = 1
show_hudmessage(id, "Znalazles przedmiot: %s :: Uzyj, aby rzucic hakiem",player_item_name[id])
}
Tak masz standardowo to wyzej
Zmien na:
x ------>ile chcesz tych hakow mi dziala moge uzyc 20 razy haka ;]
case 53:
{
player_item_name[id] = "Magic Hook"
player_item_id[id] = rannum
player_b_hook[id] = x(------>ile chcesz tych hakow mi dziala moge uzyc 20 razy haka ;])
show_hudmessage(id, "Znalazles przedmiot: %s :: Uzyj, aby rzucic hakiem",player_item_name[id])
}
#3
Napisano 18.04.2010 19:34
Znajdź w tym kodzie co dałeś;
used_item[id] = trueZmień na :
used_item[id] = falseU mnie działą
#4
Napisano 18.04.2010 19:42
#5
Napisano 18.04.2010 20:01
Założyciel powinien znać konsekwencje jeżeli nie zna i nie pyta o nie to wiesz...chciał to co ma...Szczerze mówiąc nie polecam . Na max int przyciąga natychmiastowo i jeśli jesteś troszeczkę wyżej/niżej zabija (przeciwnika)
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych


Dodatki SourceMod



Temat jest zamknięty









