2021-12-05 17:54:36 +00:00
# include "VeMissionConsole.h"
# include "InventoryComponent.h"
# include "Character.h"
# include "GameMessages.h"
void VeMissionConsole : : OnUse ( Entity * self , Entity * user ) {
2021-12-20 10:25:45 +00:00
LootGenerator : : Instance ( ) . DropActivityLoot ( user , self , 12551 ) ;
2021-12-05 17:54:36 +00:00
auto * inventoryComponent = user - > GetComponent < InventoryComponent > ( ) ;
if ( inventoryComponent ! = nullptr ) {
2022-04-23 12:13:06 +00:00
inventoryComponent - > AddItem ( 12547 , 1 , eInventoryType : : INVALID , { } , 0LL , true , false , 0LL , eInventoryType : : INVALID , 0 , false , - 1 , eLootSourceType : : LOOT_SOURCE_ACTIVITY ) ; // Add the panel required for pickup
2021-12-05 17:54:36 +00:00
}
// The flag to set is 101<number>
const auto flagNumber = self - > GetVar < std : : u16string > ( m_NumberVariable ) ;
const auto flag = std : : stoi ( " 101 " + GeneralUtils : : UTF16ToWTF8 ( flagNumber ) ) ;
auto * character = user - > GetCharacter ( ) ;
if ( character ! = nullptr ) {
character - > SetPlayerFlag ( flag , true ) ;
}
GameMessages : : SendNotifyClientObject ( self - > GetObjectID ( ) , u " " ) ;
GameMessages : : SendTerminateInteraction ( user - > GetObjectID ( ) , FROM_INTERACTION , self - > GetObjectID ( ) ) ;
}