mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-04-26 06:27:45 +00:00
Merge pull request #952 from pinapelz/master
Minor ItemAction and Player Title fixes
This commit is contained in:
commit
48c0127fa8
4 changed files with 19 additions and 1 deletions
|
@ -1023,6 +1023,7 @@ namespace Sapphire::Common
|
|||
ItemActionCompanion = 853,
|
||||
ItemActionVFX2 = 944,
|
||||
ItemActionMount = 1322,
|
||||
ItemActionSong = 5845,
|
||||
};
|
||||
|
||||
enum ActionEffectDisplayType : uint8_t
|
||||
|
|
|
@ -67,6 +67,13 @@ void ItemAction::execute()
|
|||
|
||||
break;
|
||||
}
|
||||
|
||||
case Common::ItemActionType::ItemActionSong:
|
||||
{
|
||||
handleSongItem();
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -102,4 +109,12 @@ void ItemAction::handleMountItem()
|
|||
|
||||
player->unlockMount( m_itemAction->data().Calcu0Arg[ 0 ] );
|
||||
player->dropInventoryItem( static_cast< Common::InventoryType >( m_itemSourceContainer ), static_cast< uint8_t >( m_itemSourceSlot ) );
|
||||
}
|
||||
|
||||
void ItemAction::handleSongItem()
|
||||
{
|
||||
auto player = getSourceChara()->getAsPlayer();
|
||||
|
||||
player->learnSong( m_itemAction->data().Calcu0Arg[ 0 ], m_id );
|
||||
player->dropInventoryItem( static_cast< Common::InventoryType >( m_itemSourceContainer ), static_cast< uint8_t >( m_itemSourceSlot ) );
|
||||
}
|
|
@ -31,6 +31,8 @@ namespace Sapphire::World::Action
|
|||
|
||||
void handleMountItem();
|
||||
|
||||
void handleSongItem();
|
||||
|
||||
private:
|
||||
std::shared_ptr< Excel::ExcelStruct< Excel::ItemAction > > m_itemAction;
|
||||
|
||||
|
|
|
@ -1183,7 +1183,7 @@ void Player::setTitle( uint16_t titleId )
|
|||
uint8_t value;
|
||||
Util::valueToFlagByteIndexValue( titleId, value, index );
|
||||
|
||||
if( ( m_titleList[ index ] & value ) == 0 ) // Player doesn't have title - bail
|
||||
if( ( m_titleList[ index ] & value ) == 0 && titleId != 0 ) // Player doesn't have title and is not "no title" - bail
|
||||
return;
|
||||
|
||||
m_activeTitle = titleId;
|
||||
|
|
Loading…
Add table
Reference in a new issue