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 --- Minecraft.World/WaterAnimal.cpp | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 Minecraft.World/WaterAnimal.cpp (limited to 'Minecraft.World/WaterAnimal.cpp') diff --git a/Minecraft.World/WaterAnimal.cpp b/Minecraft.World/WaterAnimal.cpp new file mode 100644 index 00000000..0a7313d1 --- /dev/null +++ b/Minecraft.World/WaterAnimal.cpp @@ -0,0 +1,42 @@ +#include "stdafx.h" +#include "com.mojang.nbt.h" +#include "net.minecraft.world.level.tile.h" +#include "net.minecraft.world.phys.h" +#include "net.minecraft.world.level.h" +#include "WaterAnimal.h" + + + +WaterAnimal::WaterAnimal(Level *level) : PathfinderMob( level ) +{ + // 4J Stu - This function call had to be moved here from the Entity ctor to ensure that + // the derived version of the function is called + + // This should only be called for the most derive classes + //this->defineSynchedData(); +} + +bool WaterAnimal::isWaterMob() +{ + return true; //prevent drowning +} + +bool WaterAnimal::canSpawn() +{ + return level->isUnobstructed(bb); +} + +int WaterAnimal::getAmbientSoundInterval() +{ + return 20 * 6; +} + +bool WaterAnimal::removeWhenFarAway() +{ + return true; +} + +int WaterAnimal::getExperienceReward(shared_ptr killedBy) +{ + return 1 + level->random->nextInt(3); +} \ No newline at end of file -- cgit v1.2.3