obj
Dodgeball
density=1
icon = 'dodgeball.dmi'
var/Owner
verb
Get()
set src in view(1)
if(!src)return
var/list/L=new()
for(var/obj/Dodgeball/C in get_step(usr,turn(usr.dir,45)))L.Add(C)
if(L.Find(src))goto skip
for(var/obj/Dodgeball/C in get_step(usr,usr.dir))L.Add(C)
if(L.Find(src))goto skip
for(var/obj/Dodgeball/C in get_step(usr,turn(usr.dir,315)))L.Add(C)
skip
if(L.Find(src))
var/obj/Dodgeball/B
for(B in usr)break
walk(src,0)
if(B)
src.Owner=usr
walk(src,get_dir(usr,src))
else
src.loc=usr
src.icon_state="Ball"
usr.overlays.Add(src.icon)
hands.Add(src)
Throw()
for(var/obj/Dodgeball/A)
if(A in hands)
hands-=src
usr.loc=A.loc
flick("Punch2",usr)
icon_state = "Ball"
walk(A,get_dir(usr,A))
Bump(A)
if(ismob(A))
var/mob/Player/M=A
if(M.Team==src.Owner:Team)walk(src,0)
else
if(OutSide.Find(M))walk(src,0)
else
walk(src,0)
if(src.Owner:Team<>M.Team)
OutSide.Add(M)
M.loc=locate(/turf/Event/DodgeBall/Center)
if(M.Team=="Red")M.x+=11
else M.x-=2
if(OutSide.Find(src.Owner))
src.Owner:loc=locate(/turf/Event/DodgeBall/Center)
if(src.Owner:Team=="Blue")src.Owner:x+=9
OutSide.Remove(src)
DodgeballCheck()
else walk(src,turn(src.dir,180))
else
if(A:type==src.type)
if(A:dir==turn(src.dir,180))
walk(A,0)
walk(src,0)
else walk(src,0)
Problem description:I'm trying to throw the ball in the players hands but it just causes a bunch of runtime errors.