ID:156265
 
mob/Monster
Class="Monster"
var/mob/Target
Hobgoblin
icon='Hobgoblin.dmi'
Gold=2
Exp=1
Level=1
MaxHP=15here
MaxMP=10
Str=3
Def=1
New()
src.HP=src.MaxHP
src.MP=src.MaxMP
spawn()
src.Wander()
return ..()
proc/Wander()
while(src)
if(src.Target)
if(get_dist(src,src.Target)>1 && !step_to(src,src.Target,1))
src.Target=null;continue
src.dir=get_dir(src,src.Target)
src.Fight()
if(!ListCheck(src.Target,oview(5)))

src.Target=null
sleep(rand(10,15))
else
step_rand(src)
sleep(rand(15,25))

if(!src.Target)
for(var/mob/M in oview(5))
if(M.key)
if(step_to(src,M,1))

src.Target=M
sleep(5)
break
proc/Fight()
for(var/mob/M in get_step(src,src.dir))
if(M.key)
flick("Attack[src.icon_state]",src)
var/damage=src.Str-M.Def
damage=max(0,damage+rand(-1,1)
M.HP -= damage
M.DamageShow(damage,200,0,0)
M.DeathCheck(src)

Problem:I got this code from Rpgstarter but i dont know how sshell i make npc not move able until some one hit him
Take a look around here:

            if(!src.Target)
for(var/mob/M in oview(5))
if(M.key)
if(step_to(src,M,1))

src.Target=M
sleep(5)
break