- Linux compatible fixes including updated makefile
- Mersenne Twister still says uint32 but it's now signed for compatibility with random uses needing negative values - Server seed is sent to clients, but needs to be able to be signed long long later on for authentic reasons - Protocol Version is required to match to ensure client compatibility, this should probably have a settings.ini check as well as store the value there git-svn-id: http://mc-server.googlecode.com/svn/trunk@121 0a769ca7-a7f5-676a-18bf-c427514a06d6
This commit is contained in:
@@ -2,9 +2,11 @@
|
||||
#include "Defines.h"
|
||||
#include "BlockID.h"
|
||||
#include "stdlib.h"
|
||||
#include "MersenneTwister.h"
|
||||
|
||||
ENUM_ITEM_ID cBlockToPickup::ToPickup( unsigned char a_BlockID, ENUM_ITEM_ID a_UsedItemID )
|
||||
{
|
||||
MTRand r1;
|
||||
(void)a_UsedItemID;
|
||||
|
||||
switch( a_BlockID )
|
||||
@@ -28,7 +30,7 @@ ENUM_ITEM_ID cBlockToPickup::ToPickup( unsigned char a_BlockID, ENUM_ITEM_ID a_U
|
||||
if( a_UsedItemID == E_ITEM_SHEARS )
|
||||
return E_ITEM_LEAVES;
|
||||
else
|
||||
if(rand() % 5 == 0) return E_ITEM_SAPLING;
|
||||
if(r1.randInt() % 5 == 0) return E_ITEM_SAPLING;
|
||||
return E_ITEM_EMPTY;
|
||||
case E_BLOCK_COAL_ORE:
|
||||
return E_ITEM_COAL;
|
||||
@@ -67,17 +69,18 @@ ENUM_ITEM_ID cBlockToPickup::ToPickup( unsigned char a_BlockID, ENUM_ITEM_ID a_U
|
||||
|
||||
char cBlockToPickup::PickupCount(unsigned char a_BlockID)
|
||||
{
|
||||
MTRand r1;
|
||||
switch(a_BlockID)
|
||||
{
|
||||
case E_BLOCK_REDSTONE_ORE_GLOWING:
|
||||
case E_BLOCK_REDSTONE_ORE:
|
||||
return rand() % 2 + 4;
|
||||
return r1.randInt() % 2 + 4;
|
||||
case E_BLOCK_GLOWSTONE:
|
||||
return rand() % 3 + 2;
|
||||
return r1.randInt() % 3 + 2;
|
||||
case E_BLOCK_MELON:
|
||||
return rand() % 8 + 3;
|
||||
return r1.randInt() % 8 + 3;
|
||||
case E_BLOCK_LAPIS_ORE:
|
||||
return rand() % 5 + 4;
|
||||
return r1.randInt() % 5 + 4;
|
||||
default:
|
||||
return 1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user