From b691c43c44ff180d10e7d4a9afc83b98551ff586 Mon Sep 17 00:00:00 2001 From: daoge_cmd <3523206925@qq.com> Date: Sun, 1 Mar 2026 12:16:08 +0800 Subject: Initial commit --- .../Common/Tutorial/ChangeStateConstraint.h | 37 ++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 Minecraft.Client/Common/Tutorial/ChangeStateConstraint.h (limited to 'Minecraft.Client/Common/Tutorial/ChangeStateConstraint.h') diff --git a/Minecraft.Client/Common/Tutorial/ChangeStateConstraint.h b/Minecraft.Client/Common/Tutorial/ChangeStateConstraint.h new file mode 100644 index 00000000..2156870d --- /dev/null +++ b/Minecraft.Client/Common/Tutorial/ChangeStateConstraint.h @@ -0,0 +1,37 @@ +#pragma once + +#include "TutorialEnum.h" +#include "TutorialConstraint.h" + +class AABB; +class Tutorial; +class GameType; + +class ChangeStateConstraint : public TutorialConstraint +{ +private: + AABB *movementArea; + bool contains; // If true we must stay in this area, if false must stay out of this area + bool m_changeGameMode; + GameType *m_targetGameMode; + GameType *m_changedFromGameMode; + + eTutorial_State m_targetState; + eTutorial_State *m_sourceStates; + DWORD m_sourceStatesCount; + + bool m_bHasChanged; + eTutorial_State m_changedFromState; + + bool m_bComplete; + + Tutorial *m_tutorial; + +public: + virtual ConstraintType getType() { return e_ConstraintChangeState; } + + ChangeStateConstraint( Tutorial *tutorial, eTutorial_State targetState, eTutorial_State sourceStates[], DWORD sourceStatesCount, double x0, double y0, double z0, double x1, double y1, double z1, bool contains = true, bool changeGameMode = false, GameType *targetGameMode = NULL ); + ~ChangeStateConstraint(); + + virtual void tick(int iPad); +}; \ No newline at end of file -- cgit v1.2.3