DATA { SCALE=40 FICHIER_MD2="data/dragon/dragon.3d" FICHIER_IMAGE="data/dragon/dragon_blue.png" FICHIER_BUMP="data/dragon/dragon_bump.png" ANIM { STAND="KEY0" RUN="KEY24" JUMP="KEY31" ATTACK="KEY40" SNDATTACK="KEY40" DEATH="KEY45" HURT="KEY49" TALK="KEY54" CHURT=4 CDEATH=5 CATTACK=5 CSNDATTACK=6 CSTAND=24 CTALK=24 CJUMP=9 CRUN=7 DONOTCOMPLETEKEYNAMES=1 } VIE=200 NON_PLAYER=1 FRIEND=1 FIRED=1 SLEEP=1 NO_TESSELATE=1 } SOUND { NB=3 SND:0 { FILE="data/sound/beasts/grarg.ogg" RATE=22050 } SND:1 { FILE="data/sound/beasts/stremon1.ogg" RATE=44100 } SND:2 { FILE="data/sound/np/bluedragon2.ogg" RATE=22050 } } SPEECH { NB=1 TALK:0 { TXT="Hello again! Your action make the Evil been awake... So, I will follow you during your travel throught DragonTooth canyon back to the village." } } PROG { void OPEN() { THIS.Rest=10; THIS.var1=0; set_number_fireballs(50); } void CLOSE() { } void LOOP() { if (THIS.State!=TALK) { if (is_sound_playing(2)==1) talk(0,250); } if (THIS.State==WALK) { ia_basic_stuffs(14); if (ennemi_in_environment()==1) { goto_ennemi(); THIS.Angle=rotation(); if (distance_to_ennemi()<240) { if (rand(100)>50) { mode_normal(); hit(); sound_play(1); } else hit_move(); } else { if (nb_fireballs()>0) { if (rand(100)>50) { mode_fireballs(); hit(); sound_play(1); } else move(DT); } else move(DT); } } else { if (follow_hero()==1) { THIS.Angle=rotation(); move(DT); } else idle(); } } if (THIS.State==IDLE) { if (test_collision_hero()==1) { if (THIS.var1==0) { THIS.var1=1; sound_play(2); talk(0,250); } } if ((ennemi_in_environment()==1)||(under_attack()==1)) { sound_play(0); walk(); } else { if (THIS.var1==1) { if (follow_hero()==1) walk(); } } } } }