Cog Probs... yet again...


[ Follow Ups ] [ Post Followup ] [ Jed Messages ]

Posted by GMS_SLUG on February 23, 1998 at 21:07:23:

The cog is supposed to release a group of thermal detonators down a shaft when a person enters a sector unless they've found and deactivated the switch that controls the trap beforehand. What keeps happening though, is that it just won't roll out any thermals...

# Jedi Knight Cog Script
#
# thermaltrap.cog
#
# Releases a round of thermals when player enters sector, unless the trap has
# been deactivated beforehand by a switch.
#
# [SLUG]
#
# (c) Slug enterprises 1998. Any similarity to any cog, living or dead is
# purely coincidental. (or due to the fact that this is a hi-jacked version
# of m2.dettrap.cog)
# ========================================================================================

symbols

message activate
message entered

surface switch desc=switch
sector shootsector linkid=1 desc=shootsector

thing tdg1 nolink,desc=tdg1
thing tdg2 nolink,desc=tdg2
thing tdg3 nolink,desc=tdg3
thing tdg4 nolink,desc=tdg4

int rounds=2 desc=rounds

flex rate=0.1 desc=rate
flex delay=3.0 desc=delay

int firing=0 local
int cur_round=0 local
int dummy local
int deactivaed=0 local

template proj_tpl=+grenade2 local

sound on_snd=set_hi2.wav local
sound off_snd=lgclick1.wav local

end

# ========================================================================================

code

activate:
deactivated = 1; // Deactivate the trap
return;

entered:
if(GetSenderID() == 1)
{
if(firing == 1) Return;
if(deactivated == 1) Return; // If deactivated, exit the activation code

firing = 1;
dummy = SetWallCel(switch, 1);
dummy = PlaySoundPos(on_snd, SurfaceCenter(switch), 1.0, 5.0, 10.0, 0);

cur_round = 0;
while(cur_round < rounds)
{
dummy = CreateThing(proj_tpl, tdg1);
Sleep(rate);
dummy = CreateThing(proj_tpl, tdg2);
Sleep(rate);
dummy = CreateThing(proj_tpl, tdg3);
Sleep(rate);
dummy = CreateThing(proj_tpl, tdg4);
Sleep(rate);

cur_round = cur_round + 1;
}

Sleep(delay);
dummy = SetWallCel(switch, 0);
dummy = PlaySoundPos(off_snd, SurfaceCenter(switch), 1.0, 5.0, 10.0, 0);
firing = 0;
Return;

end

Any help would, of course, be greatly appreciated..


Follow Ups:



Post a Followup

Name:
E-Mail:
Subject:
Comments:

Optional Link URL:
Link Title:
Optional Image URL:


[ Follow Ups ] [ Post Followup ] [ Jed Messages ]