/* ----------------------------------------------------------------------------- GSFramework Copyright 2001-2013 Emmanuel Julien. All Rights Reserved. ----------------------------------------------------------------------------- */ #include "scene3d/scene.h" #include "scene3d/mtrigger.h" using namespace GS::S3D; //------------------------------------------------------------------------------ void Scene::UpdateTriggers() { ListForeachPtr(MTrigger *, t, trigger_list) if (t->isActive()) { t->ReadyItemList(); ArrayListForeachPtr(MItem *, i, active_list) if (i->mitem_flags.IsSet(MItem::Flag_TriggerDetected)) // TODO make a dedicated list. if (i->isActive() && t->IsInside(i->GetBaseItem()->GetMatrix().GetRow(3))) t->MarkItem(i->GetBaseItem()); t->PurgeItemList(); } } //------------------------------------------------------------------------------