From 705018102b3688cba0f740e7ea9f31491b7c39e6 Mon Sep 17 00:00:00 2001 From: Perize Date: Sat, 17 Mar 2018 02:27:46 +0900 Subject: [PATCH 1/2] fixed #277 --- .../sapphire_zone/Network/Handlers/SkillHandler.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/servers/sapphire_zone/Network/Handlers/SkillHandler.cpp b/src/servers/sapphire_zone/Network/Handlers/SkillHandler.cpp index 4ae0ebfe..3af720a8 100644 --- a/src/servers/sapphire_zone/Network/Handlers/SkillHandler.cpp +++ b/src/servers/sapphire_zone/Network/Handlers/SkillHandler.cpp @@ -76,11 +76,20 @@ void Core::Network::GameConnection::skillHandler( const Packets::GamePacket& inP else { Core::Entity::ActorPtr targetActor = player.getAsPlayer(); + if( targetId != player.getId() ) { targetActor = player.lookupTargetById( targetId ); } + // Check if we actually have an actor + if ( targetActor == nullptr ) + { + // todo: interrupt a cast. + player.sendDebug( "Invalid target." ); + return; + } + if( !player.actionHasCastTime( action ) ) { pScriptMgr->onCastFinish( player, targetActor->getAsChara(), action ); From 53ff01aa843a9360b90532d5cc5f170f488e50c9 Mon Sep 17 00:00:00 2001 From: Mordred <30826167+SapphireMordred@users.noreply.github.com> Date: Fri, 16 Mar 2018 19:31:42 +0100 Subject: [PATCH 2/2] style --- src/servers/sapphire_zone/Network/Handlers/SkillHandler.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/servers/sapphire_zone/Network/Handlers/SkillHandler.cpp b/src/servers/sapphire_zone/Network/Handlers/SkillHandler.cpp index 3af720a8..f3ed84d3 100644 --- a/src/servers/sapphire_zone/Network/Handlers/SkillHandler.cpp +++ b/src/servers/sapphire_zone/Network/Handlers/SkillHandler.cpp @@ -83,7 +83,7 @@ void Core::Network::GameConnection::skillHandler( const Packets::GamePacket& inP } // Check if we actually have an actor - if ( targetActor == nullptr ) + if( !targetActor ) { // todo: interrupt a cast. player.sendDebug( "Invalid target." );