aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/LocalPlayer.h
diff options
context:
space:
mode:
authordaoge <3523206925@qq.com>2026-03-03 03:04:10 +0800
committerGitHub <noreply@github.com>2026-03-03 03:04:10 +0800
commitb3feddfef372618c8a9d7a0abcaf18cfad866c18 (patch)
tree267761c3bb39241ba5c347bfbe2254d06686e287 /Minecraft.Client/LocalPlayer.h
parent84c31a2331f7a0ec85b9d438992e244f60e5020f (diff)
feat: TU19 (Dec 2014) Features & Content (#155)
* try to resolve merge conflict * feat: TU19 (Dec 2014) Features & Content (#32) * December 2014 files * Working release build * Fix compilation issues * Add sound to Windows64Media * Add DLC content and force Tutorial DLC * Revert "Add DLC content and force Tutorial DLC" This reverts commit 97a43994725008e35fceb984d5549df9c8cea470. * Disable broken light packing * Disable breakpoint during DLC texture map load Allows DLC loading but the DLC textures are still broken * Fix post build not working * ... * fix vs2022 build * fix cmake build --------- Co-authored-by: Loki <lokirautio@gmail.com>
Diffstat (limited to 'Minecraft.Client/LocalPlayer.h')
-rw-r--r--Minecraft.Client/LocalPlayer.h82
1 files changed, 51 insertions, 31 deletions
diff --git a/Minecraft.Client/LocalPlayer.h b/Minecraft.Client/LocalPlayer.h
index b1e8dd23..0a5b14b2 100644
--- a/Minecraft.Client/LocalPlayer.h
+++ b/Minecraft.Client/LocalPlayer.h
@@ -23,6 +23,8 @@ class LocalPlayer : public Player
public:
static const int SPRINT_DURATION = 20 * 30;
+ eINSTANCEOF GetType() { return eTYPE_LOCALPLAYER; }
+
Input *input;
protected:
Minecraft *minecraft;
@@ -43,15 +45,15 @@ public:
float yBob, xBob;
float yBobO, xBobO;
+ float portalTime;
+ float oPortalTime;
+
LocalPlayer(Minecraft *minecraft, Level *level, User *user, int dimension);
virtual ~LocalPlayer();
- void move(double xa, double ya, double za, bool noEntityCubes=false); // 4J - added noEntityCubes parameter
-
-
int m_iScreenSection; // assuming 4player splitscreen for now, or -1 for single player
__uint64 ullButtonsPressed; // Stores the button presses, since the inputmanager can be ticked faster than the minecraft
- // player tick, and a button press and release combo can be missed in the minecraft::tick
+ // player tick, and a button press and release combo can be missed in the minecraft::tick
__uint64 ullDpad_last;
__uint64 ullDpad_this;
@@ -68,7 +70,10 @@ public:
private:
float flyX, flyY, flyZ;
-
+
+ int jumpRidingTicks;
+ float jumpRidingScale;
+
protected:
// 4J-PB - player's xbox pad
int m_iPad;
@@ -76,49 +81,54 @@ protected:
bool m_bIsIdle;
private:
- // local player fly
- // --------------------------------------------------------------------------
- // smooth camera settings
+ // local player fly
+ // --------------------------------------------------------------------------
+ // smooth camera settings
SmoothFloat smoothFlyX;
- SmoothFloat smoothFlyY;
- SmoothFloat smoothFlyZ;
+ SmoothFloat smoothFlyY;
+ SmoothFloat smoothFlyZ;
- void calculateFlight(float xa, float ya, float za);
+ void calculateFlight(float xa, float ya, float za);
public:
virtual void serverAiStep();
protected:
- bool isEffectiveAI();
+ bool isEffectiveAi();
public:
- virtual void aiStep();
+ virtual void aiStep();
virtual void changeDimension(int i);
virtual float getFieldOfViewModifier();
- virtual void addAdditonalSaveData(CompoundTag *entityTag);
- virtual void readAdditionalSaveData(CompoundTag *entityTag);
- virtual void closeContainer();
- virtual void openTextEdit(shared_ptr<SignTileEntity> sign);
- virtual bool openContainer(shared_ptr<Container> container); // 4J added bool return
- virtual bool startCrafting(int x, int y, int z); // 4J added bool return
- virtual bool startEnchanting(int x, int y, int z); // 4J added bool return
+ virtual void addAdditonalSaveData(CompoundTag *entityTag);
+ virtual void readAdditionalSaveData(CompoundTag *entityTag);
+ virtual void closeContainer();
+ virtual void openTextEdit(shared_ptr<TileEntity> sign);
+ virtual bool openContainer(shared_ptr<Container> container); // 4J added bool return
+ virtual bool openHopper(shared_ptr<HopperTileEntity> container); // 4J added bool return
+ virtual bool openHopper(shared_ptr<MinecartHopper> container); // 4J added bool return
+ virtual bool openHorseInventory(shared_ptr<EntityHorse> horse, shared_ptr<Container> container); // 4J added bool return
+ virtual bool startCrafting(int x, int y, int z); // 4J added bool return
+ virtual bool openFireworks(int x, int y, int z); // 4J added
+ virtual bool startEnchanting(int x, int y, int z, const wstring &name); // 4J added bool return
virtual bool startRepairing(int x, int y, int z);
- virtual bool openFurnace(shared_ptr<FurnaceTileEntity> furnace); // 4J added bool return
+ virtual bool openFurnace(shared_ptr<FurnaceTileEntity> furnace); // 4J added bool return
virtual bool openBrewingStand(shared_ptr<BrewingStandTileEntity> brewingStand); // 4J added bool return
- virtual bool openTrap(shared_ptr<DispenserTileEntity> trap); // 4J added bool return
- virtual bool openTrading(shared_ptr<Merchant> traderTarget);
+ virtual bool openBeacon(shared_ptr<BeaconTileEntity> beacon); // 4J added bool return
+ virtual bool openTrap(shared_ptr<DispenserTileEntity> trap); // 4J added bool return
+ virtual bool openTrading(shared_ptr<Merchant> traderTarget, const wstring &name);
virtual void crit(shared_ptr<Entity> e);
virtual void magicCrit(shared_ptr<Entity> e);
- virtual void take(shared_ptr<Entity> e, int orgCount);
- virtual void chat(const wstring& message);
+ virtual void take(shared_ptr<Entity> e, int orgCount);
+ virtual void chat(const wstring& message);
virtual bool isSneaking();
//virtual bool isIdle();
- virtual void hurtTo(int newHealth, ETelemetryChallenges damageSource);
- virtual void respawn();
- virtual void animateRespawn();
- virtual void displayClientMessage(int messageId);
- virtual void awardStat(Stat *stat, byteArray param);
+ virtual void hurtTo(float newHealth, ETelemetryChallenges damageSource);
+ virtual void respawn();
+ virtual void animateRespawn();
+ virtual void displayClientMessage(int messageId);
+ virtual void awardStat(Stat *stat, byteArray param);
virtual int ThirdPersonView() { return m_iThirdPersonView;}
// 4J - have changed 3rd person view to be 0 if not enabled, 1 for mode like original, 2 reversed mode
virtual void SetThirdPersonView(int val) {m_iThirdPersonView=val;}
@@ -175,6 +185,17 @@ public:
void setSprinting(bool value);
void setExperienceValues(float experienceProgress, int totalExp, int experienceLevel);
+ // virtual void sendMessage(ChatMessageComponent *message); // 4J: removed
+ virtual Pos getCommandSenderWorldPosition();
+ virtual shared_ptr<ItemInstance> getCarriedItem();
+ virtual void playSound(int soundId, float volume, float pitch);
+ bool isRidingJumpable();
+ float getJumpRidingScale();
+
+protected:
+ virtual void sendRidingJump();
+
+public:
bool hasPermission(EGameCommand command);
void updateRichPresence();
@@ -183,7 +204,6 @@ public:
float m_sessionTimeStart;
float m_dimensionTimeStart;
-public:
void SetSessionTimerStart(void);
float getSessionTimer(void);