commit x64 compilation from lulu cause the other branch dont seems to compile properly at home

This commit is contained in:
2026-07-17 16:08:20 +02:00
parent c0f3eeb00d
commit 0efa4ee6f7
625 changed files with 117283 additions and 4426 deletions

View File

@ -0,0 +1,58 @@
/* -----------------------------------------------------------------------------
GSFramework
Copyright 2001-2013 Emmanuel Julien. All Rights Reserved.
----------------------------------------------------------------------------- */
#include "core/trigger.h"
using namespace GS;
using namespace GS::Core;
//------------------------------------------------------------------------------
void Trigger::DropItem(Item *item) {
ListForeachPtr(ItemInTrigger *, ti, items_in_trigger)
if (ti->item == item) {
items_in_trigger.Remove(ti);
delete ti;
}
}
void Trigger::MarkItem(Item *item)
{
ListForeachPtr(ItemInTrigger *, ti, items_in_trigger)
if (ti->item == item)
{
ti->inside = true;
return;
}
items_in_trigger.Add(new ItemInTrigger(item));
}
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
void Trigger::ReadyItemList()
{
ListForeachPtr(ItemInTrigger *, ti, items_in_trigger)
ti->inside = false;
}
void Trigger::PurgeItemList()
{
ListForeachPtr(ItemInTrigger *, ti, items_in_trigger)
if (!ti->inside)
DropItem(ti->item);
}
//------------------------------------------------------------------------------
bool Trigger::IsInside(const Vector4 &p)
{
Vector4 local = p * GetInverseMatrix();
return (local.x > -0.5) && (local.x < 0.5) && (local.y > -0.5) && (local.y < 0.5) && (local.z > -0.5) && (local.z < 0.5);
}
Trigger::~Trigger()
{
ListForeachPtr(ItemInTrigger *, ti, items_in_trigger)
delete ti;
}