From 0cb00996de574095fac49e181a11e6a766248743 Mon Sep 17 00:00:00 2001 From: madmaxoft Date: Fri, 16 Aug 2013 10:48:19 +0200 Subject: Replaced E_ENTITY_TYPE_XXX with cMonster::mtXXX. Also slightly improved the spawning algorithm. --- source/Mobs/AggressiveMonster.cpp | 1 + source/Mobs/Cavespider.cpp | 1 + source/Mobs/Monster.h | 36 +++++++++++++++++++++++++++++++++++- source/Mobs/PassiveMonster.cpp | 1 + source/Mobs/Skeleton.cpp | 1 + source/Mobs/Zombie.cpp | 1 + source/Mobs/Zombiepigman.cpp | 1 + 7 files changed, 41 insertions(+), 1 deletion(-) (limited to 'source/Mobs') diff --git a/source/Mobs/AggressiveMonster.cpp b/source/Mobs/AggressiveMonster.cpp index c6befa0ed..b266fc502 100644 --- a/source/Mobs/AggressiveMonster.cpp +++ b/source/Mobs/AggressiveMonster.cpp @@ -3,6 +3,7 @@ #include "AggressiveMonster.h" +#include "../World.h" #include "../Vector3f.h" #include "../Player.h" #include "../MersenneTwister.h" diff --git a/source/Mobs/Cavespider.cpp b/source/Mobs/Cavespider.cpp index b547362ad..569aadcc4 100644 --- a/source/Mobs/Cavespider.cpp +++ b/source/Mobs/Cavespider.cpp @@ -2,6 +2,7 @@ #include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules #include "Cavespider.h" +#include "../World.h" diff --git a/source/Mobs/Monster.h b/source/Mobs/Monster.h index ea7f935ea..b821285a0 100644 --- a/source/Mobs/Monster.h +++ b/source/Mobs/Monster.h @@ -3,7 +3,6 @@ #include "../Pawn.h" #include "../Defines.h" -#include "../World.h" #include "../BlockID.h" #include "../Item.h" @@ -13,6 +12,7 @@ class Vector3f; class cClientHandle; +class cWorld; @@ -23,7 +23,41 @@ class cMonster : { typedef cPawn super; public: + /// This identifies individual monster type, as well as their network type-ID + enum eType + { + mtCreeper = E_META_SPAWN_EGG_CREEPER, + mtSkeleton = E_META_SPAWN_EGG_SKELETON, + mtSpider = E_META_SPAWN_EGG_SPIDER, + mtGiant = E_META_SPAWN_EGG_GIANT, + mtZombie = E_META_SPAWN_EGG_ZOMBIE, + mtSlime = E_META_SPAWN_EGG_SLIME, + mtGhast = E_META_SPAWN_EGG_GHAST, + mtZombiePigman = E_META_SPAWN_EGG_ZOMBIE_PIGMAN, + mtEnderman = E_META_SPAWN_EGG_ENDERMAN, + mtCaveSpider = E_META_SPAWN_EGG_CAVE_SPIDER, + mtSilverfish = E_META_SPAWN_EGG_SILVERFISH, + mtBlaze = E_META_SPAWN_EGG_BLAZE, + mtMagmaCube = E_META_SPAWN_EGG_MAGMA_CUBE, + mtEnderDragon = E_META_SPAWN_EGG_ENDER_DRAGON, + mtWither = E_META_SPAWN_EGG_WITHER, + mtBat = E_META_SPAWN_EGG_BAT, + mtWitch = E_META_SPAWN_EGG_WITCH, + mtPig = E_META_SPAWN_EGG_PIG, + mtSheep = E_META_SPAWN_EGG_SHEEP, + mtCow = E_META_SPAWN_EGG_COW, + mtChicken = E_META_SPAWN_EGG_CHICKEN, + mtSquid = E_META_SPAWN_EGG_SQUID, + mtWolf = E_META_SPAWN_EGG_WOLF, + mtMooshroom = E_META_SPAWN_EGG_MOOSHROOM, + mtSnowGolem = E_META_SPAWN_EGG_SNOW_GOLEM, + mtOcelot = E_META_SPAWN_EGG_OCELOT, + mtIronGolem = E_META_SPAWN_EGG_IRON_GOLEM, + mtVillager = E_META_SPAWN_EGG_VILLAGER, + } ; + // tolua_end + float m_SightDistance; /** Creates the mob object. diff --git a/source/Mobs/PassiveMonster.cpp b/source/Mobs/PassiveMonster.cpp index 96cc1ba8f..7a6140c04 100644 --- a/source/Mobs/PassiveMonster.cpp +++ b/source/Mobs/PassiveMonster.cpp @@ -3,6 +3,7 @@ #include "PassiveMonster.h" #include "../MersenneTwister.h" +#include "../World.h" diff --git a/source/Mobs/Skeleton.cpp b/source/Mobs/Skeleton.cpp index 8dacbece8..bec912afa 100644 --- a/source/Mobs/Skeleton.cpp +++ b/source/Mobs/Skeleton.cpp @@ -2,6 +2,7 @@ #include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules #include "Skeleton.h" +#include "../World.h" diff --git a/source/Mobs/Zombie.cpp b/source/Mobs/Zombie.cpp index d0a929519..a6e39d6df 100644 --- a/source/Mobs/Zombie.cpp +++ b/source/Mobs/Zombie.cpp @@ -2,6 +2,7 @@ #include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules #include "Zombie.h" +#include "../World.h" diff --git a/source/Mobs/Zombiepigman.cpp b/source/Mobs/Zombiepigman.cpp index 6483e58c5..09b44816f 100644 --- a/source/Mobs/Zombiepigman.cpp +++ b/source/Mobs/Zombiepigman.cpp @@ -2,6 +2,7 @@ #include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules #include "Zombiepigman.h" +#include "../World.h" -- cgit v1.2.3