Coding my referee.

NED

Well-known member
I'm in the early time of coding a referee for some stages.

Basically this is what he will do :
Walk around mostly following player.
When he's on good distance (not too close) he will do one of the moves I given to him:
-Look around
-making some arm movement.

I would him hittable by both Players and Enemies.
With a limited life.
But he have to be invicible to grab moves.

Any idea how to do it?
NPC, enemy???

This is the header and his 2 "attacks"

Code:
name	referee
health  120#200####150#50
speed  9#7#8#12
type	enemy#npc#enemy
subtype	notgrab#chase
shadow 0
gfxshadow  1
nolife   0#1
#jumpheight 5#4.5#5.8
#jumpspeed 13#20#30
#jumpmove   0  3#use for Z jump
#atchain 1
makeinv 1
#running      	17 3.7 1.8 1 1
#grabdistance 42
jugglepoints  10#8
falldie	 1
bflash bflash
#throw 6 3
#holdblock 1
 palette data/chars/ref/idle01.GIF
 alternatepal   data/chars/mex/idlem1.GIF
 alternatepal   data/chars/mex/idlem2.GIF
 alternatepal   data/chars/mex/idlem3.GIF
 alternatepal   data/chars/mex/idlem4.GIF
 alternatepal   data/chars/mex/idlem5.GIF
 alternatepal   data/chars/mex/idlem6.GIF
 alternatepal   data/chars/mex/idlem7.GIF
 alternatepal   data/chars/mex/idlem8.GIF
 alternatepal   data/chars/mex/idlem9.GIF
 alternatepal   data/chars/mex/idlem10.GIF
  alternatepal   data/chars/mex/idle01.GIF
#blockback   1
#blockodds   1# block souvent
#aimove  chase#wander#avoid#chase#z
dust du dus dus
# candamage  player obstacle npc
 hostile   player npc
projectilehit enemy
risetime -100#-80#-60
#animationscript data/scripts/harden.c

load dus

anim	attack1 # FAKE COUNT
drawmethod	275 280# (x y) 256 = 100%
range 30 120#30 70# (+ proche, + loin) (default 0 70)
	loop	0
	offset	96 177
	bbox	72 86 49 92
	delay	15
	frame	data/chars/ref/a1.gif
	delay	9
	frame	data/chars/ref/a2.gif
	delay	22
	frame	data/chars/ref/a3.gif
	delay	6
	frame	data/chars/ref/a2.gif
	delay	15
	frame	data/chars/ref/a1.gif
	delay	9
	frame	data/chars/ref/a2.gif
	delay	22
	frame	data/chars/ref/a3.gif
	delay	6
	frame	data/chars/ref/a2.gif
	delay	16
	frame	data/chars/ref/idle02.gif

anim	freespecial1 # regarde un peu
drawmethod	275 280# (x y) 256 = 100%
range 20 110#30 70# (+ proche, + loin) (default 0 70)
	loop	0
	offset	96 177
	bbox	72 86 49 92
	delay	30
	frame	data/chars/ref/idle01.gif
	delay	12
	frame	data/chars/ref/idle02.gif
	delay	25
	frame	data/chars/ref/idle03.gif
	delay	20
	frame	data/chars/ref/idle02.gif
	delay	18
	frame	data/chars/ref/idle03.gif
	delay	12
	frame	data/chars/ref/idle02.gif
	delay	40
	frame	data/chars/ref/idle02.gif

EDIT------------------------------------------------------

with this settings it seems better, but as an enemy, other enemies don't attack him. And It will force player to beat him to finish the level... :(

Code:
type	enemy#npc#enemy#npc#enemy
subtype	chase#notgrab#chase
cantgrab 1# ne peut pas etre grab
 
I'm not sure how the AI for referee would be but I believe NPC is best choice for type since it's neutral, depending on hostile settings though.

Walk around mostly following player.

Why would he do that? why don't he follows opponent instead? :)
 
I don't know, but since player is the character we see the most, I selected it to be followed by the ref.

About npc, I'm OK with that too, but I like the idea the ref can be hit by all entities and even KOed. I already edited sprites for it.

As an enemy, the ref can be hit by players only. And causes problem because he HAVE to be beaten to finish the level. :(
 
That's not true. candamage controls which type the entity can damage. If you set candamage player to enemies, they can't hurt npcs, obstacles or anything non player type even if their attack happen to collide.
 
Seems OK

My player template is now set this way:
candamage    enemy obstacle npc

My regular enemy template is now set this way:
candamage  player obstacle npc
hostile  player npc
(So he can hit the ref, but don't particulary try to...) :)

My ref is now set this way:
type npc#enemy
subtype chase
cantgrab 1
 
Back
Top Bottom