PS: Do not laugh at me about the script, must be all wrong
Name has written
Script
Quote
--------------------Knockback---------------------------------
recoil_factor = 3.5
addhook('hit','knockback')
function knockback(id,source,weapon)
local killer_x = player(source,'x')
local killer_y = player(source,'y')
local victim_x = player(id,'x')
local victim_y = player(id,'y')
local recoil = itemtype(weapon,'recoil') * recoil_factor
if player(source,'exists') then
if killer_x > victim_x then
if tile(player(id,'tilex') - 1,player(id,'tiley'),'walkable') then
parse('setpos '..id..' '..(player(id,'x') - recoil)..' '..player(id,'y'))
end
end
if killer_x < victim_x then
if tile(player(id,'tilex') + 1,player(id,'tiley'),'walkable') then
parse('setpos '..id..' '..(player(id,'x') + recoil)..' '..player(id,'y'))
end
end
if killer_y > victim_y then
if tile(player(id,'tilex'),player(id,'tiley') - 1,'walkable') then
parse('setpos '..id..' '..player(id,'x')..' '..(player(id,'y') - recoil))
end
end
if killer_y < victim_y then
if tile(player(id,'tilex'),player(id,'tiley') + 1,'walkable') then
parse('setpos '..id..' '..player(id,'x')..' '..(player(id,'y') + recoil))
end
end
end
end
-----------------Firsts Zombies----------------
addhook("startround","spawn")
addhook("maket","blabla")
function spawn()
i=math.random(1,32)
if (player(i, "exists")) then
parse('maket '..i)
if not('loop')
end
end
end
recoil_factor = 3.5
addhook('hit','knockback')
function knockback(id,source,weapon)
local killer_x = player(source,'x')
local killer_y = player(source,'y')
local victim_x = player(id,'x')
local victim_y = player(id,'y')
local recoil = itemtype(weapon,'recoil') * recoil_factor
if player(source,'exists') then
if killer_x > victim_x then
if tile(player(id,'tilex') - 1,player(id,'tiley'),'walkable') then
parse('setpos '..id..' '..(player(id,'x') - recoil)..' '..player(id,'y'))
end
end
if killer_x < victim_x then
if tile(player(id,'tilex') + 1,player(id,'tiley'),'walkable') then
parse('setpos '..id..' '..(player(id,'x') + recoil)..' '..player(id,'y'))
end
end
if killer_y > victim_y then
if tile(player(id,'tilex'),player(id,'tiley') - 1,'walkable') then
parse('setpos '..id..' '..player(id,'x')..' '..(player(id,'y') - recoil))
end
end
if killer_y < victim_y then
if tile(player(id,'tilex'),player(id,'tiley') + 1,'walkable') then
parse('setpos '..id..' '..player(id,'x')..' '..(player(id,'y') + recoil))
end
end
end
end
-----------------Firsts Zombies----------------
addhook("startround","spawn")
addhook("maket","blabla")
function spawn()
i=math.random(1,32)
if (player(i, "exists")) then
parse('maket '..i)
if not('loop')
end
end
end
explanation:
1- I tried to do a knockback system(copying parts from others scripts), but I could not create the power of knockback for each type of weapon.
2- I tried to do a first zombie selection. But I could not let the number of zombies in accordance with the number of survivors. For example: if have 4 survivors, 2 are going to be infected, randomly.
I would be grateful if you could help me finishing this script the way I explained above.
Sorry for bad english, and thanks.