ID:2227419
 
Code:
//where proc with error is called
if(aindex=="6")
var/obj/J=new/obj/Hitbox(src,hbw,hbh)
J.loc=get_step(src,turn(dir,180))
J.effect=heffect
J.distance=hdistance
J.HitboxCheck(0,0,1,moving=moves,1)

//proc where error is present
obj
proc
HitboxCheck(delaytime,multihit,blows,moving,backwards)
set waitfor=0
Relocation(moving,backwards)
if(delaytime) sleep(delaytime)
while(blows)
if(Owner.hnull)
Owner.hnull=0
break
for(var/mob/M in bounds(src))
if(M!=Owner && (!(M in hit)))
Owner.skillhit=1
if(Owner.skilluse)
M.SkillHit(10,Owner,effect,distance)
else
M.AttackHit(10,Owner,effect,distance)
if(!multihit) hit.Add(M)
blows--
sleep(1)
del src


Relocation(moving=0,behind=0)
set waitfor=0
do
if(moving)
loc=get_step(Owner,Owner.dir)
var/hits=bounds_dist(Owner,src)
if(hits!=0)
if(behind)
if(Owner.dir==LEFT)
bound_x=-hits
pixel_x=bound_x
if(Owner.dir==RIGHT)
bound_x=hits
pixel_x=bound_x
else
if(Owner.dir==LEFT)
bound_x=hits
pixel_x=bound_x
if(Owner.dir==RIGHT)
bound_x=-hits
pixel_x=bound_x
sleep(world.tick_lag)
while(moving)


Problem description:
I keep getting a run-time error saying positional parameters must precede all named args, but the thing is, to MY knowledge, I have no positional parameters in the arguments at all.
J.HitboxCheck(0,0,1,moving=moves,1)


moving=moves are your named args. Once you use a name, every following arg must also be a name.
In response to FKI
Ah, thanks, I appreciate it.
In response to FKI
Ah, and by "every following arg", you mean that
J.HitboxCheck(0,0,1,moving=moves,direction=1)
would be viable?
Yeah that's valid.
Thanks