Aller au contenu

Triggers!!


  • Veuillez vous connecter pour répondre
2 réponses à ce sujet

#1
Guest_templarioseco_*

Guest_templarioseco_*
  • Guests
Hey all!
Does anybody knows how to deactivate or delete a trigger with an script or a variable after you use it once?

thanks,

#2
Challseus

Challseus
  • Members
  • 1 032 messages
SetObjectActive(OBJECT_SELF, FALSE);

So for instance, you would have something like so:

void main ()
{
    event ev = GetCurrentEvent();
    int nEventType = GetEventType(ev);
    int bEventHandled = FALSE;
    switch (nEventType)
    {
        case EVENT_TYPE_ENTER:
        {
               //DO WHATEVER YOU NEED TO DO HERE

                SetObjectActive(OBJECT_SELF, FALSE);
            }
         }
         break;
    }
    if (!bEventHandled) //If this event wasn't handled by this script, let the core script try
    {
        HandleEvent(ev, RESOURCE_SCRIPT_TRIGGER_CORE);
    }
}

Hope this helps.

Modifié par Challseus, 14 mars 2010 - 10:30 .


#3
Guest_templarioseco_*

Guest_templarioseco_*
  • Guests
Thank you, but i used DestroyObject(OBJECT_SELF, 0); and problem solved.

the full script :



#include "log_h"

#include "utility_h"

#include "wrappers_h"

#include "events_h"



void main()

{

event ev = GetCurrentEvent();

int nEventType = GetEventType(ev);

Log_Events("", ev);

switch(nEventType)

{

case EVENT_TYPE_ENTER:

{

object oHero = GetHero();

CS_LoadCutscene(R"MYCUTSCENE.cut");

PlayCutscene();

DestroyObject(OBJECT_SELF, 0);

}

}

}