mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2025-08-04 17:54:01 +00:00
.github
dAuthServer
dChatFilter
dChatServer
dCommon
dDatabase
dGame
dMasterServer
dNavigation
dNet
dPhysics
dScripts
02_server
DLU
Enemy
Equipment
Map
AG
AG_Spider_Queen
AM
FV
GF
General
NS
NT
CMakeLists.txt
NtAssemblyTubeServer.cpp
NtAssemblyTubeServer.h
NtBeamImaginationCollectors.cpp
NtBeamImaginationCollectors.h
NtCombatChallengeDummy.cpp
NtCombatChallengeDummy.h
NtCombatChallengeExplodingDummy.cpp
NtCombatChallengeExplodingDummy.h
NtCombatChallengeServer.cpp
NtCombatChallengeServer.h
NtConsoleTeleportServer.cpp
NtConsoleTeleportServer.h
NtDarkitectRevealServer.cpp
NtDarkitectRevealServer.h
NtDirtCloudServer.cpp
NtDirtCloudServer.h
NtDukeServer.cpp
NtDukeServer.h
NtHaelServer.cpp
NtHaelServer.h
NtImagBeamBuffer.cpp
NtImagBeamBuffer.h
NtImagimeterVisibility.cpp
NtImagimeterVisibility.h
NtOverbuildServer.cpp
NtOverbuildServer.h
NtParadoxPanelServer.cpp
NtParadoxPanelServer.h
NtParadoxTeleServer.cpp
NtParadoxTeleServer.h
NtSentinelWalkwayServer.cpp
NtSentinelWalkwayServer.h
NtSleepingGuard.cpp
NtSleepingGuard.h
NtVandaServer.cpp
NtVandaServer.h
NtVentureCannonServer.cpp
NtVentureCannonServer.h
NtVentureSpeedPadServer.cpp
NtVentureSpeedPadServer.h
NtXRayServer.cpp
NtXRayServer.h
SpawnSaberCatServer.cpp
SpawnSaberCatServer.h
SpawnShrakeServer.cpp
SpawnShrakeServer.h
SpawnStegoServer.cpp
SpawnStegoServer.h
PR
Property
SS
VE
njhub
CMakeLists.txt
Minigame
Objects
Pets
CMakeLists.txt
EquipmentScripts
EquipmentTriggers
ai
client
zone
ActivityManager.cpp
ActivityManager.h
BaseConsoleTeleportServer.cpp
BaseConsoleTeleportServer.h
BasePropertyServer.cpp
BasePropertyServer.h
BaseRandomServer.cpp
BaseRandomServer.h
BaseSurvivalServer.cpp
BaseSurvivalServer.h
BaseWavesGenericEnemy.cpp
BaseWavesGenericEnemy.h
BaseWavesServer.cpp
BaseWavesServer.h
CMakeLists.txt
ChooseYourDestinationNsToNt.cpp
ChooseYourDestinationNsToNt.h
CppScripts.cpp
CppScripts.h
Darkitect.cpp
Darkitect.h
NPCAddRemoveItem.cpp
NPCAddRemoveItem.h
NtFactionSpyServer.cpp
NtFactionSpyServer.h
ScriptComponent.cpp
ScriptComponent.h
ScriptedPowerupSpawner.cpp
ScriptedPowerupSpawner.h
SpawnPetBaseServer.cpp
SpawnPetBaseServer.h
dWorldServer
dZoneManager
docker
docs
migrations
resources
tests
thirdparty
vanity
.dockerignore
.editorconfig
.env.example
.git-blame-ignore-revs
.gitattributes
.gitignore
.gitmodules
CMakeLists.txt
CMakePresets.json
CMakeVariables.txt
CONTRIBUTING.md
Docker.md
Docker_Windows.md
LICENSE
README.md
SECURITY.md
build.sh
docker-compose.yml
logo.png
versions.txt
54 lines
1.4 KiB
C++
54 lines
1.4 KiB
C++
#include "NtImagBeamBuffer.h"
|
|
#include "EntityManager.h"
|
|
#include "SkillComponent.h"
|
|
|
|
void NtImagBeamBuffer::OnStartup(Entity* self) {
|
|
self->SetProximityRadius(100, "ImagZone");
|
|
|
|
self->AddTimer("BuffImag", 2.0f);
|
|
}
|
|
|
|
void NtImagBeamBuffer::OnProximityUpdate(Entity* self, Entity* entering, std::string name, std::string status) {
|
|
if (name != "ImagZone" || !entering->IsPlayer()) {
|
|
return;
|
|
}
|
|
|
|
if (status == "ENTER") {
|
|
const auto& iter = std::find(m_EntitiesInProximity.begin(), m_EntitiesInProximity.end(), entering->GetObjectID());
|
|
|
|
if (iter == m_EntitiesInProximity.end()) {
|
|
m_EntitiesInProximity.push_back(entering->GetObjectID());
|
|
}
|
|
} else if (status == "LEAVE") {
|
|
const auto& iter = std::find(m_EntitiesInProximity.begin(), m_EntitiesInProximity.end(), entering->GetObjectID());
|
|
|
|
if (iter != m_EntitiesInProximity.end()) {
|
|
m_EntitiesInProximity.erase(iter);
|
|
}
|
|
}
|
|
}
|
|
|
|
void NtImagBeamBuffer::OnTimerDone(Entity* self, std::string timerName) {
|
|
if (timerName != "BuffImag") {
|
|
return;
|
|
}
|
|
|
|
auto* skillComponent = self->GetComponent<SkillComponent>();
|
|
|
|
if (skillComponent == nullptr) {
|
|
return;
|
|
}
|
|
|
|
for (const auto entityID : m_EntitiesInProximity) {
|
|
auto* entity = EntityManager::Instance()->GetEntity(entityID);
|
|
|
|
if (entity == nullptr) {
|
|
continue;
|
|
}
|
|
|
|
skillComponent->CalculateBehavior(1311, 30235, entityID, true);
|
|
}
|
|
|
|
self->AddTimer("BuffImag", 2.0f);
|
|
}
|