
Ok so it's possibly a little sick, but it was the
Russians that came up with the idea (WW2, they trained dogs to run underneath
tanks, then strapped explosives to thier backs with proximity fuses). It's really
just a way to show a way to implement the chase code.
The included model is from a Cujo mod for quake (I
converted it, but don't have a pallete for Q2 so the colours are off) put the
code into a mod directory called cujo, and extract the model and skin to a
subdirectory called models. It won't work otherwise, unless you relink the skin
(don't email me asking how, look at the various model sites out there for
details. I'm a coder not a modeler/skinner)
Anyway, down to details. Add the files s_ai.c and cujo.c to your project. (s_ai.c is the same file as is in all the sentry tutorials) make sure to unzip s_ai.h to your mod source dir as well
Next open up g_local.h and find monsterinfo_t
monsterinfo;. Insert the code below, just under it
int BombDogpointset; vec3_t BombDogpoint;
Now open g_cmds.c. add the following prototypes in , just
after #include "g_local.h".
void Mark_BombDog_Spawn_Point(edict_t *ent);void Spawn_BombDog(edict_t *ent);
Now scroll to the bottom and find the following code
else if (Q_stricmp (cmd, "wave") == 0) Cmd_Wave_f (ent); else if (Q_stricmp(cmd, "playerlist") == 0) Cmd_PlayerList_f(ent);
and change it to
else if (Q_stricmp (cmd, "wave") == 0) Cmd_Wave_f (ent); else if (Q_stricmp(cmd,"marksentry")==0) Mark_BombDog_Spawn_Point(ent); else if (Q_stricmp(cmd,"spawnsentry")==0) Spawn_BombDog(ent); else if (Q_stricmp(cmd, "playerlist") == 0) Cmd_PlayerList_f(ent);
now go into the game and type makedog at the console. then
move off a short distance and type spawndog. a dog will appear rotating on the
spot marked. when it sees an enemy it will sprint off to it and explode.
Enjoy :)