- Implemented function to check item category
- (Cobble-)stone don´t drop item anymore if mined without pickaxe - FluidSimulator no longer causes compiler warning - Glowstone drops fixed git-svn-id: http://mc-server.googlecode.com/svn/trunk@109 0a769ca7-a7f5-676a-18bf-c427514a06d6master
parent
d6953a7ea2
commit
62abd8f29b
|
@ -140,3 +140,35 @@ inline float GetSpecialSignf( float a_Val )
|
|||
{
|
||||
return (a_Val <= 0.f)?-1.f:1.f;
|
||||
}
|
||||
|
||||
|
||||
|
||||
namespace ItemCategory
|
||||
{
|
||||
inline bool IsPickaxe(ENUM_ITEM_ID a_ItemID)
|
||||
{
|
||||
return a_ItemID == E_ITEM_WOODEN_PICKAXE
|
||||
|| a_ItemID == E_ITEM_STONE_PICKAXE
|
||||
|| a_ItemID == E_ITEM_IRON_PICKAXE
|
||||
|| a_ItemID == E_ITEM_GOLD_PICKAXE
|
||||
|| a_ItemID == E_ITEM_DIAMOND_PICKAXE;
|
||||
}
|
||||
|
||||
inline bool IsAxe(ENUM_ITEM_ID a_ItemID)
|
||||
{
|
||||
return a_ItemID == E_ITEM_WOODEN_AXE
|
||||
|| a_ItemID == E_ITEM_STONE_AXE
|
||||
|| a_ItemID == E_ITEM_IRON_AXE
|
||||
|| a_ItemID == E_ITEM_GOLD_AXE
|
||||
|| a_ItemID == E_ITEM_DIAMOND_AXE;
|
||||
}
|
||||
|
||||
inline bool IsSword(ENUM_ITEM_ID a_ItemID)
|
||||
{
|
||||
return a_ItemID == E_ITEM_WOODEN_SWORD
|
||||
|| a_ItemID == E_ITEM_STONE_SWORD
|
||||
|| a_ItemID == E_ITEM_IRON_SWORD
|
||||
|| a_ItemID == E_ITEM_GOLD_SWORD
|
||||
|| a_ItemID == E_ITEM_DIAMOND_SWORD;
|
||||
}
|
||||
}
|
|
@ -1,4 +1,5 @@
|
|||
#include "cBlockToPickup.h"
|
||||
#include "Defines.h"
|
||||
#include "BlockID.h"
|
||||
#include "stdlib.h"
|
||||
|
||||
|
@ -10,8 +11,11 @@ ENUM_ITEM_ID cBlockToPickup::ToPickup( unsigned char a_BlockID, ENUM_ITEM_ID a_U
|
|||
{
|
||||
case E_BLOCK_AIR:
|
||||
return E_ITEM_EMPTY;
|
||||
case E_BLOCK_COBBLESTONE:
|
||||
case E_BLOCK_STONE:
|
||||
return E_ITEM_COBBLESTONE;
|
||||
if(ItemCategory::IsPickaxe(a_UsedItemID))
|
||||
return E_ITEM_COBBLESTONE;
|
||||
return E_ITEM_EMPTY;
|
||||
case E_BLOCK_GRASS:
|
||||
return E_ITEM_DIRT;
|
||||
case E_BLOCK_GLASS:
|
||||
|
@ -54,6 +58,8 @@ ENUM_ITEM_ID cBlockToPickup::ToPickup( unsigned char a_BlockID, ENUM_ITEM_ID a_U
|
|||
return E_ITEM_WOODEN_DOOR;
|
||||
case E_BLOCK_IRON_DOOR:
|
||||
return E_ITEM_IRON_DOOR;
|
||||
case E_BLOCK_GLOWSTONE:
|
||||
return E_ITEM_GLOWSTONE_DUST;
|
||||
default:
|
||||
return (ENUM_ITEM_ID)a_BlockID;
|
||||
}
|
||||
|
@ -66,6 +72,8 @@ char cBlockToPickup::PickupCount(unsigned char a_BlockID)
|
|||
case E_BLOCK_REDSTONE_ORE_GLOWING:
|
||||
case E_BLOCK_REDSTONE_ORE:
|
||||
return rand() % 2 + 4;
|
||||
case E_BLOCK_GLOWSTONE:
|
||||
return rand() % 3 + 2;
|
||||
case E_BLOCK_MELON:
|
||||
return rand() % 8 + 3;
|
||||
case E_BLOCK_LAPIS_ORE:
|
||||
|
|
|
@ -73,8 +73,9 @@ public:
|
|||
|
||||
cFluidSimulator::cFluidSimulator( cWorld* a_World )
|
||||
: m_World(a_World)
|
||||
, m_Data(new FluidData(a_World, this))
|
||||
, m_Data(0)
|
||||
{
|
||||
m_Data = new FluidData(a_World, this);
|
||||
}
|
||||
|
||||
cFluidSimulator::~cFluidSimulator()
|
||||
|
|
Loading…
Reference in New Issue