1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-04-27 14:57:44 +00:00

Fixed an issue with teleport not picking the correct target position, eventaction unlocks player now

This commit is contained in:
Mordred 2018-02-21 23:30:35 +01:00
parent c2a95a2d7e
commit b806535f11
7 changed files with 5 additions and 21 deletions

View file

@ -172,6 +172,7 @@ Core::Data::Aetheryte::Aetheryte( uint32_t row_id, Core::Data::ExdDataGenerated*
placeName = exdData->getField< uint16_t >( row, 8 );
aethernetName = exdData->getField< uint16_t >( row, 9 );
territory = exdData->getField< uint16_t >( row, 10 );
levelId = exdData->getField< uint32_t >( row, 11 );
isAetheryte = exdData->getField< bool >( row, 15 );
aethernetGroup = exdData->getField< uint8_t >( row, 16 );
map = exdData->getField< uint16_t >( row, 19 );

View file

@ -496,6 +496,7 @@ struct Aetheryte
uint16_t placeName;
uint16_t aethernetName;
uint16_t territory;
uint32_t levelId;
bool isAetheryte;
uint8_t aethernetGroup;
uint16_t map;

View file

@ -53,7 +53,8 @@ void Core::Action::EventAction::onStart()
if( m_pSource->isPlayer() )
{
m_pSource->sendToInRangeSet( control, true );
//m_pSource->getAsPlayer()->setStateFlag( PlayerStateFlag::Occupied2 );
if( m_pSource->getAsPlayer()->hasStateFlag( PlayerStateFlag::InNpcEvent ) )
m_pSource->getAsPlayer()->unsetStateFlag( PlayerStateFlag::InNpcEvent );
}
else
m_pSource->sendToInRangeSet( control );

View file

@ -300,7 +300,7 @@ void Core::Entity::Player::teleport( uint16_t aetheryteId, uint8_t type )
setStateFlag( PlayerStateFlag::BetweenAreas );
auto targetPos = g_territoryMgr.getTerritoryPosition( data->territory );
auto targetPos = g_territoryMgr.getTerritoryPosition( data->levelId );
Common::FFXIVARR_POSITION3 pos;
pos.x = 0;
@ -652,17 +652,6 @@ void Core::Entity::Player::gainLevel()
classInfoPacket.data().currentExp = getExp();
queuePacket( classInfoPacket );
}
void Core::Entity::Player::unlock()
{
queuePacket( PlayerStateFlagsPacket( *getAsPlayer(), PlayerStateFlagList{} ) );
}
void Core::Entity::Player::sendStatusUpdate( bool toSelf )

View file

@ -56,7 +56,6 @@ Core::DebugCommandHandler::DebugCommandHandler()
registerCommand( "replay", &DebugCommandHandler::replay, "Replays a saved capture folder.", 1 );
registerCommand( "nudge", &DebugCommandHandler::nudge, "Nudges you forward/up/down.", 1 );
registerCommand( "info", &DebugCommandHandler::serverInfo, "Show server info.", 0 );
registerCommand( "unlock", &DebugCommandHandler::unlockCharacter, "Unlock character.", 1 );
registerCommand( "help", &DebugCommandHandler::help, "Shows registered commands.", 0 );
registerCommand( "script", &DebugCommandHandler::script, "Server script utilities.", 1 );
registerCommand( "instance", &DebugCommandHandler::instance, "Instance utilities", 1 );
@ -574,11 +573,6 @@ void Core::DebugCommandHandler::serverInfo( char * data, Entity::Player& player,
player.sendDebug( "Sessions: " + std::to_string( g_serverZone.getSessionCount() ) );
}
void Core::DebugCommandHandler::unlockCharacter( char* data, Entity::Player& player, boost::shared_ptr< DebugCommand > command )
{
player.unlock();
}
void Core::DebugCommandHandler::script( char* data, Entity::Player &player, boost::shared_ptr< DebugCommand > command )
{
std::string subCommand;

View file

@ -39,7 +39,6 @@ public:
}, 0 );
player.unlock();
}
}

View file

@ -211,7 +211,6 @@ public:
player.eventActionStart( 0x050002, 0x13, event, nullptr, 0x050002 );
player.unlock();
}
else if( actor == ACTOR2 )
Scene00002( player );