From b3feddfef372618c8a9d7a0abcaf18cfad866c18 Mon Sep 17 00:00:00 2001 From: daoge <3523206925@qq.com> Date: Tue, 3 Mar 2026 03:04:10 +0800 Subject: 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 --- Minecraft.World/Arrow.h | 44 +++++++++++++++++++++++++------------------- 1 file changed, 25 insertions(+), 19 deletions(-) (limited to 'Minecraft.World/Arrow.h') diff --git a/Minecraft.World/Arrow.h b/Minecraft.World/Arrow.h index b96aa210..9cfa2f84 100644 --- a/Minecraft.World/Arrow.h +++ b/Minecraft.World/Arrow.h @@ -2,11 +2,12 @@ using namespace std; #include "Entity.h" +#include "Projectile.h" class Level; class CompoundTag; -class Arrow : public Entity +class Arrow : public Entity, public Projectile { public: eINSTANCEOF GetType() { return eTYPE_ARROW; } @@ -26,35 +27,35 @@ private: static const int FLAG_CRIT = 1; private: - int xTile; - int yTile; - int zTile; - int lastTile; - int lastData; - bool inGround; + int xTile; + int yTile; + int zTile; + int lastTile; + int lastData; + bool inGround; public: int pickup; - int shakeTime; - shared_ptr owner; + int shakeTime; + shared_ptr owner; private: double baseDamage; - int knockback; + int knockback; private: int life; - int flightTime; + int flightTime; // 4J - added common ctor code. void _init(); public: Arrow(Level *level); - Arrow(Level *level, shared_ptr mob, shared_ptr target, float power, float uncertainty); - Arrow(Level *level, double x, double y, double z); - Arrow(Level *level, shared_ptr mob, float power); + Arrow(Level *level, shared_ptr mob, shared_ptr target, float power, float uncertainty); + Arrow(Level *level, double x, double y, double z); + Arrow(Level *level, shared_ptr mob, float power); protected: virtual void defineSynchedData(); @@ -63,11 +64,16 @@ public: void shoot(double xd, double yd, double zd, float pow, float uncertainty); virtual void lerpTo(double x, double y, double z, float yRot, float xRot, int steps); virtual void lerpMotion(double xd, double yd, double zd); - virtual void tick(); - virtual void addAdditonalSaveData(CompoundTag *tag); - virtual void readAdditionalSaveData(CompoundTag *tag); - virtual void playerTouch(shared_ptr player); - virtual float getShadowHeightOffs(); + virtual void tick(); + virtual void addAdditonalSaveData(CompoundTag *tag); + virtual void readAdditionalSaveData(CompoundTag *tag); + virtual void playerTouch(shared_ptr player); + +protected: + virtual bool makeStepSound(); + +public: + virtual float getShadowHeightOffs(); void setBaseDamage(double baseDamage); double getBaseDamage(); -- cgit v1.2.3