ID:140566
 
What is supposed to happen is that its sapposed to make you look like someone in your view then revert you back after 60 seconds.

mob
proc
hengejutsu(var/mob/M in oview(6))
if(src.henge == 1)
src.chakra -= 50
src.henge = 1
var/overlay= src.overlays.Copy()
var/icons = src.icon
var/iconss = src.icon_state
flick("Transform",src)
src.overlays = new
src.icon = M.icon
src.icon_state = M.icon_state
sleep(60)
src.icon = icons
src.icon_state = iconss
flick("Transform",src)
src.overlays += overlay
src.henge = 1
if(src.henge == 1)
return


Problem description:
I dont get any errors when i compile but i do get a runtime error and it is:

runtime error: Cannot read null.icon
proc name: hengejutsu (/mob/proc/hengejutsu)
usr: Setox (/mob)
src: Setox (/mob)
call stack:
Setox (/mob): hengejutsu(null)
Setox (/mob): execute()

Extra information:
When i change this proc to a verb and change all the src to usr it works perfectly, but as a proc it removes my hair and displays the run time error.
Also execute() is a proc to run a jutsu so basicly after you press the execute() it should run the proc hengejutsu().

I thank you for reading my post and i hope someone can help me.
Because when you call it like a proc without supplying an argument, the argument does not get magicked up for you. "in oview(6)" does nothing for a proc, it's strictly for verbs. Instead, you'll need to use locate() to grab a mob for M. Oh, and make sure it actually exists before trying to do anything with it.
In response to Garthor
Thanks Garthor i read it and learned but i still have no idea how i could make it so that you can transform to any mob in your view of 6, the only thing ive ever used locate for is to teleport im such a noob lol. So more help would be much appreciated Garthor.