Files
.github
cmake
dAuthServer
dChatFilter
dChatServer
dCommon
dDatabase
dGame
dBehaviors
AirMovementBehavior.cpp
AirMovementBehavior.h
AndBehavior.cpp
AndBehavior.h
ApplyBuffBehavior.cpp
ApplyBuffBehavior.h
AreaOfEffectBehavior.cpp
AreaOfEffectBehavior.h
AttackDelayBehavior.cpp
AttackDelayBehavior.h
BasicAttackBehavior.cpp
BasicAttackBehavior.h
Behavior.cpp
Behavior.h
BehaviorBranchContext.cpp
BehaviorBranchContext.h
BehaviorContext.cpp
BehaviorContext.h
BehaviorSlot.h
BehaviorTemplate.h
BlockBehavior.cpp
BlockBehavior.h
BuffBehavior.cpp
BuffBehavior.h
CMakeLists.txt
CarBoostBehavior.cpp
CarBoostBehavior.h
ChainBehavior.cpp
ChainBehavior.h
ChangeIdleFlagsBehavior.cpp
ChangeIdleFlagsBehavior.h
ChangeOrientationBehavior.cpp
ChangeOrientationBehavior.h
ChargeUpBehavior.cpp
ChargeUpBehavior.h
ClearTargetBehavior.cpp
ClearTargetBehavior.h
ConsumeItemBehavior.cpp
ConsumeItemBehavior.h
DamageAbsorptionBehavior.cpp
DamageAbsorptionBehavior.h
DamageReductionBehavior.cpp
DamageReductionBehavior.h
DarkInspirationBehavior.cpp
DarkInspirationBehavior.h
DurationBehavior.cpp
DurationBehavior.h
EmptyBehavior.h
EndBehavior.cpp
EndBehavior.h
FallSpeedBehavior.cpp
FallSpeedBehavior.h
ForceMovementBehavior.cpp
ForceMovementBehavior.h
HealBehavior.cpp
HealBehavior.h
ImaginationBehavior.cpp
ImaginationBehavior.h
ImmunityBehavior.cpp
ImmunityBehavior.h
InterruptBehavior.cpp
InterruptBehavior.h
JetPackBehavior.cpp
JetPackBehavior.h
KnockbackBehavior.cpp
KnockbackBehavior.h
LootBuffBehavior.cpp
LootBuffBehavior.h
MovementSwitchBehavior.cpp
MovementSwitchBehavior.h
NpcCombatSkillBehavior.cpp
NpcCombatSkillBehavior.h
OverTimeBehavior.cpp
OverTimeBehavior.h
PlayEffectBehavior.cpp
PlayEffectBehavior.h
ProjectileAttackBehavior.cpp
ProjectileAttackBehavior.h
PropertyTeleportBehavior.cpp
PropertyTeleportBehavior.h
PullToPointBehavior.cpp
PullToPointBehavior.h
RemoveBuffBehavior.cpp
RemoveBuffBehavior.h
RepairBehavior.cpp
RepairBehavior.h
SkillCastFailedBehavior.cpp
SkillCastFailedBehavior.h
SkillEventBehavior.cpp
SkillEventBehavior.h
SpawnBehavior.cpp
SpawnBehavior.h
SpawnQuickbuildBehavior.cpp
SpawnQuickbuildBehavior.h
SpeedBehavior.cpp
SpeedBehavior.h
StartBehavior.cpp
StartBehavior.h
StunBehavior.cpp
StunBehavior.h
SwitchBehavior.cpp
SwitchBehavior.h
SwitchMultipleBehavior.cpp
SwitchMultipleBehavior.h
TacArcBehavior.cpp
TacArcBehavior.h
TargetCasterBehavior.cpp
TargetCasterBehavior.h
TauntBehavior.cpp
TauntBehavior.h
VentureVisionBehavior.cpp
VentureVisionBehavior.h
VerifyBehavior.cpp
VerifyBehavior.h
dComponents
dEntity
dGameMessages
dInventory
dMission
dPropertyBehaviors
dUtilities
CMakeLists.txt
Character.cpp
Character.h
Entity.cpp
Entity.h
EntityManager.cpp
EntityManager.h
LeaderboardManager.cpp
LeaderboardManager.h
PlayerManager.cpp
PlayerManager.h
TeamManager.cpp
TeamManager.h
TradingManager.cpp
TradingManager.h
User.cpp
User.h
UserManager.cpp
UserManager.h
dMasterServer
dNavigation
dNet
dPhysics
dScripts
dServer
dWorldServer
dZoneManager
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
Dockerfile
LICENSE
README.md
SECURITY.md
build.sh
docker-compose.yml
entrypoint.sh
logo.png
systemd.example
versions.txt
DarkflameServer/dGame/dBehaviors/SkillEventBehavior.cpp
David Markowitz 3262bc3a86 chore: Remove news in Behavior members ()
* Remove news in behavior members

Tested that GrowingFlowers still have their SkillEvent fired with the correct parameters, gftikitorch works, sharks eating stinky fish still work

* explicitly default move assignment and copy operators/constructors

---------

Co-authored-by: jadebenn <jadebenn@users.noreply.github.com>
2024-03-24 21:43:01 -05:00

25 lines
1008 B
C++

#include "SkillEventBehavior.h"
#include "BehaviorBranchContext.h"
#include "BehaviorContext.h"
#include "EntityManager.h"
#include "CppScripts.h"
#include "Entity.h"
void SkillEventBehavior::Handle(BehaviorContext* context, RakNet::BitStream& bitStream, BehaviorBranchContext branch) {
auto* target = Game::entityManager->GetEntity(branch.target);
auto* caster = Game::entityManager->GetEntity(context->originator);
if (caster != nullptr && target != nullptr && !this->m_effectHandle.empty()) {
target->GetScript()->OnSkillEventFired(target, caster, this->m_effectHandle);
}
}
void SkillEventBehavior::Calculate(BehaviorContext* context, RakNet::BitStream& bitStream, BehaviorBranchContext branch) {
auto* target = Game::entityManager->GetEntity(branch.target);
auto* caster = Game::entityManager->GetEntity(context->originator);
if (caster != nullptr && target != nullptr && !this->m_effectHandle.empty()) {
target->GetScript()->OnSkillEventFired(target, caster, this->m_effectHandle);
}
}