3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/screens/controllers/ClientInstanceScreenController.h"
7#include "mc/world/events/EventResult.h"
8#include "mc/world/events/NpcEventListener.h"
15namespace Json {
class Value; }
21 enum class InteractionState : schar {
31 ::ll::TypedStorage<8, 8, ::Player&> mPlayer;
32 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::INpcDialogueData>> mDialogueData;
33 ::ll::TypedStorage<1, 1, ::NpcDialogScreenController::InteractionState> mState;
38 NpcDialogScreenController& operator=(NpcDialogScreenController
const&);
39 NpcDialogScreenController(NpcDialogScreenController
const&);
40 NpcDialogScreenController();
45 virtual ~NpcDialogScreenController() =
default;
47 virtual void onCreation() ;
49 virtual void addStaticScreenVars(::Json::Value& globalVars) ;
51 virtual ::EventResult onNpcDialogueDataChange(::std::shared_ptr<::INpcDialogueData> data) ;
53 virtual ::EventResult onNpcInteractScreenClose(::ActorUniqueID npcId,
bool performClosingActions) ;
Definition ClientInstanceScreenController.h:5
Definition NpcDialogScreenController.h:5
MCAPI void $addStaticScreenVars(::Json::Value &globalVars)
MCAPI void _leaveScreen(bool performClosingActions)
MCAPI::EventResult $onNpcInteractScreenClose(::ActorUniqueID npcId, bool performClosingActions)
MCAPI::EventResult $onNpcDialogueDataChange(::std::shared_ptr<::INpcDialogueData > data)
Definition NpcEventListener.h:5
Definition ActorUniqueID.h:5
Definition INpcDialogueData.h:12