Page 1 of 1

Trigger detect pass

Posted: Tue Apr 05, 2005 5:55 pm
by Almogaver
I need make a trigger that detects the step of the axis as how The Hunt at the allieds :D

Posted: Tue Apr 05, 2005 6:00 pm
by Deutsche Dogge
you sure didn't search at all...

Posted: Tue Apr 05, 2005 6:21 pm
by MPowell1944
Create a trigger_once with a key of setthread and a value of axis_arrived.

Now, in your mapscript, call the following thread. Copy and paste the thread into your mapscript.

Code: Select all

axis_arrived:

local.player = parm.other
if(local.player.dmteam == "axis")
{
iprintlnbold "The Axis have breached the perimeter!"
}

end
This uses the same thing as the Allied trigger on the Hunt. You can call the thread what you want, but I just used axis_arrived as an example.

Posted: Tue Apr 05, 2005 7:42 pm
by Rookie One.pl
Nah, nah, nah, what if the first player to enter the trigger is in allies? ;)

Posted: Tue Apr 05, 2005 7:54 pm
by MPowell1944
Then nothing happens. It only reacts to Axis, which is what you want.

Posted: Wed Apr 06, 2005 12:40 am
by Deutsche Dogge
trigger_once can get activated many times? (i never used them)

Posted: Wed Apr 06, 2005 10:26 am
by Master-Of-Fungus-Foo-D
its called a trigger_once for a reason ;)

Posted: Wed Apr 06, 2005 2:00 pm
by Rookie One.pl
Exactly, Fungus. :)

Powell, the trigger will execute once, no matter what player enters it.

Posted: Wed Apr 06, 2005 10:24 pm
by Master-Of-Fungus-Foo-D
Okay then just change to a trig multiple and make your script like this:

Code: Select all

axis_arrived:
if (level.axisbreached != 1 )
level.axisbreached = 1
local.player = parm.other
if(local.player.dmteam == "axis")
{
iprintlnbold "The Axis have breached the perimeter!"
}

end

Posted: Thu Apr 07, 2005 12:34 am
by Deutsche Dogge
Master-Of-Fungus-Foo-D wrote:Okay then just change to a trig multiple and make your script like this:

Code: Select all

axis_arrived:
if (level.axisbreached != 1 )
level.axisbreached = 1
local.player = parm.other
if(local.player.dmteam == "axis")
{
iprintlnbold "The Axis have breached the perimeter!"
}

end
Wrong, if the trigger can be activated only once, any player will trigger it as the trigger itself doesn,t check the dmteam of the player. So i guess a trigger_multiple should be used with this code:

Code: Select all

axis_arrived:
if(level.axisbreached != 1 )
{
    local.player = parm.other
    if(local.player.dmteam == "axis")
    {
        level.axisbreached = 1
        iprintlnbold "The Axis have breached the perimeter!"
    }
}
end
This way, any player triggers it but level.axisbreached is set only when the first axis triggers it, the subsequent triggering has no effect.