Index: World.cpp
===================================================================
--- World.cpp	(revision 1639)
+++ World.cpp	(working copy)
@@ -628,44 +628,55 @@
 	int Height = GetHeight((int)SpawnPos.x, (int)SpawnPos.z);
 
 	int MobType = -1;
-	if (m_TimeOfDay >= 12000 + 1000)
+	
+	switch (GetDimension())
 	{
-		if (GetBiomeAt((int)SpawnPos.x, (int)SpawnPos.z) == biHell) // Spawn nether mobs
+		// Check if the dimension is overworld
+		case dimOverworld:
 		{
+			if (m_TimeOfDay >= 12000 + 1000)
+			{
+				if (GetBiomeAt((int)SpawnPos.x, (int)SpawnPos.z) == biHell) // Spawn nether mobs if the biome is biHell
+				{
+					switch (nightRand)
+					{
+						case 5: MobType = E_ENTITY_TYPE_GHAST;         break;
+						case 6: MobType = E_ENTITY_TYPE_ZOMBIE_PIGMAN; break;
+					}
+				}
+				else
+				{
+					switch (nightRand)
+					{
+						case 0: MobType = E_ENTITY_TYPE_SPIDER;      break;
+						case 2: MobType = E_ENTITY_TYPE_ENDERMAN;    break;
+						case 3: MobType = E_ENTITY_TYPE_CREEPER;     break;
+						case 4: MobType = E_ENTITY_TYPE_CAVE_SPIDER; break;
+						case 7: MobType = E_ENTITY_TYPE_SLIME;       break;
+						case 8: MobType = E_ENTITY_TYPE_SILVERFISH;  break;
+						case 9: MobType = E_ENTITY_TYPE_SKELETON;    break;
+					}
+				}
+			}
+		}
+		// Check if the dimension is Nether
+		case dimNether:
+		{
 			switch (nightRand)
 			{
-				case 1: MobType = E_ENTITY_TYPE_ZOMBIE;        break;  // _X 2013_06_25: Really? Zombies in the Nether?
 				case 5: MobType = E_ENTITY_TYPE_GHAST;         break;
 				case 6: MobType = E_ENTITY_TYPE_ZOMBIE_PIGMAN; break;
 			}
 		}
-		else
+		// Check if the dimension is The End
+		case dimEnd:
 		{
 			switch (nightRand)
 			{
-				case 0: MobType = E_ENTITY_TYPE_SPIDER;      break;
 				case 2: MobType = E_ENTITY_TYPE_ENDERMAN;    break;
-				case 3: MobType = E_ENTITY_TYPE_CREEPER;     break;
-				case 4: MobType = E_ENTITY_TYPE_CAVE_SPIDER; break;
-				case 7: MobType = E_ENTITY_TYPE_SLIME;       break;
-				case 8: MobType = E_ENTITY_TYPE_SILVERFISH;  break;
-				case 9: MobType = E_ENTITY_TYPE_SKELETON;    break;
 			}
 		}
 	}
-	else
-	{
-		switch (dayRand)
-		{
-			case 0: MobType = E_ENTITY_TYPE_CHICKEN; break;
-			case 1: MobType = E_ENTITY_TYPE_COW;     break;
-			case 2: MobType = E_ENTITY_TYPE_PIG;     break;
-			case 3: MobType = E_ENTITY_TYPE_SHEEP;   break;
-			case 4: MobType = E_ENTITY_TYPE_SQUID;   break;
-			case 5: MobType = E_ENTITY_TYPE_WOLF;    break;
-		}
-	}
-
 	if (MobType >= 0)
 	{
 		// A proper mob type was selected, now spawn the mob:
