| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- //============================================================================================
- // Spirenkov Maxim, 2006
- //============================================================================================
- // ActivateTrigger
- //============================================================================================
- #include "ActivateTrigger.h"
- ActivateTrigger::ActivateTrigger()
- {
- }
- ActivateTrigger::~ActivateTrigger()
- {
- }
- //Инициализировать объект
- bool ActivateTrigger::Create(MOPReader & reader)
- {
- Activate(reader.Bool());
- activateTrigger.Init(reader);
- deactivateTrigger.Init(reader);
- return true;
- }
- //Активировать/деактивировать объект
- void ActivateTrigger::Activate(bool isActive)
- {
- MissionObject::Activate(isActive);
- if(isActive)
- {
- Registry(ACTIVATE_EVENT_GROUP, &ActivateTrigger::ActivateEvent, 0);
- Registry(DEACTIVATE_EVENT_GROUP, &ActivateTrigger::DeactivateEvent, 0);
- }else{
- Unregistry(ACTIVATE_EVENT_GROUP);
- Unregistry(DEACTIVATE_EVENT_GROUP);
- }
- }
- //Исполнить событие
- void _cdecl ActivateTrigger::Action(float dltTime, long level)
- {
- DelUpdate(&ActivateTrigger::Action);
- if(!IsActive()) return;
- activateTrigger.Activate(Mission(), false);
- }
- //Выполнить событие активации
- void _cdecl ActivateTrigger::ActivateEvent(const char * group, MissionObject * sender)
- {
- SetUpdate(&ActivateTrigger::Action, ML_ACTIVATE_TRIGGER);
- }
- //Выполнить событие деактивации
- void _cdecl ActivateTrigger::DeactivateEvent(const char * group, MissionObject * sender)
- {
- deactivateTrigger.Activate(Mission(), false);
- }
- //Пересоздать объект
- void ActivateTrigger::Restart()
- {
- DelUpdate();
- Unregistry();
- ReCreate();
- };
- //Инициализировать объект
- bool ActivateTrigger::EditMode_Create(MOPReader & reader)
- {
- return true;
- }
- MOP_BEGINLISTCG(ActivateTrigger, "Activate trigger", '1.00', 0, "Mission activate/deactivate trigger", "Managment")
- MOP_BOOL("Active", true)
- MOP_MISSIONTRIGGERC("Activate", "Activate mission")
- MOP_MISSIONTRIGGERC("Deactivate", "Deactivate mission")
- MOP_ENDLIST(ActivateTrigger)
|