1
0

New redstone simulator. Should work without crashes!

git-svn-id: http://mc-server.googlecode.com/svn/trunk@345 0a769ca7-a7f5-676a-18bf-c427514a06d6
This commit is contained in:
faketruth
2012-03-01 15:18:59 +00:00
parent 93d73ac520
commit 867fc8ee0d
11 changed files with 663 additions and 8 deletions

View File

@@ -56,7 +56,8 @@ void cPiston::ExtendPiston( int pistx, int pisty, int pistz ) {
char pistonMeta = m_World->GetBlockMeta( pistx, pisty, pistz );
char isSticky = (char)(pistonBlock == E_BLOCK_STICKY_PISTON) * 8;
bool recalc = false;
if (pistonMeta < 6) {// only extend if piston is not already extended
if ( (pistonMeta & 0x8) == 0x0 ) // only extend if piston is not already extended
{
unsigned short dist = FirstPassthroughBlock(pistx, pisty, pistz, pistonMeta);
if(dist>9000) return; // too many blocks
@@ -89,7 +90,7 @@ void cPiston::ExtendPiston( int pistx, int pisty, int pistz ) {
Action.m_Byte2 = pistonMeta;
m_World->BroadcastToChunkOfBlock(pistx, pisty, pistz, &Action);
m_World->FastSetBlock( pistx, pisty, pistz, pistonBlock, pistonMeta | 8 );
m_World->FastSetBlock( pistx, pisty, pistz, pistonBlock, pistonMeta | 0x8 );
int extx = pistx;
int exty = pisty;