mirror of
https://bitbucket.org/theswgsource/src-1.2.git
synced 2026-07-14 00:01:30 -04:00
55 lines
1.5 KiB
C++
Executable File
55 lines
1.5 KiB
C++
Executable File
// NetworkTriggerVolume.cpp
|
|
// Copyright 2000-01, Sony Online Entertainment Inc., all rights reserved.
|
|
|
|
//-----------------------------------------------------------------------
|
|
|
|
#include "serverGame/FirstServerGame.h"
|
|
#include "NetworkTriggerVolume.h"
|
|
|
|
#include "serverGame/ObserveTracker.h"
|
|
#include "serverGame/ServerObject.h"
|
|
|
|
//-----------------------------------------------------------------------
|
|
|
|
NetworkTriggerVolume::NetworkTriggerVolume(ServerObject & owner, real radius) :
|
|
TriggerVolume(owner, radius, NetworkTriggerVolumeNamespace::NetworkTriggerVolumeName, true)
|
|
{
|
|
}
|
|
|
|
//-----------------------------------------------------------------------
|
|
|
|
NetworkTriggerVolume::~NetworkTriggerVolume()
|
|
{
|
|
}
|
|
|
|
//-----------------------------------------------------------------------
|
|
|
|
bool NetworkTriggerVolume::isNetworkTriggerVolume() const
|
|
{
|
|
return true;
|
|
}
|
|
|
|
//-----------------------------------------------------------------------
|
|
|
|
void NetworkTriggerVolume::virtualOnEnter(ServerObject& object)
|
|
{
|
|
// we never observe ourself due to trigger volumes
|
|
if (&object == &getOwner())
|
|
return;
|
|
|
|
Client *client = object.getClient();
|
|
if (client)
|
|
ObserveTracker::onClientEnteredNetworkTriggerVolume(*client, *this);
|
|
}
|
|
|
|
//-----------------------------------------------------------------------
|
|
|
|
void NetworkTriggerVolume::virtualOnExit(ServerObject& object)
|
|
{
|
|
Client *client = object.getClient();
|
|
if (client)
|
|
ObserveTracker::onClientExitedNetworkTriggerVolume(*client, *this);
|
|
}
|
|
|
|
//-----------------------------------------------------------------------
|