1
0

Added all the items up to Beta 1.9.5. Added pistons and piston class.

git-svn-id: http://mc-server.googlecode.com/svn/trunk@63 0a769ca7-a7f5-676a-18bf-c427514a06d6
This commit is contained in:
admin@omencraft.com
2011-11-05 18:28:19 +00:00
parent cbc22b646d
commit f32b5aafe8
6 changed files with 372 additions and 18 deletions

50
source/cPiston.cpp Normal file
View File

@@ -0,0 +1,50 @@
#include "cPiston.h"
#include "cRoot.h"
#include "cWorld.h"
#include "BlockID.h"
cPiston::cPiston( cWorld* a_World )
:m_World ( a_World )
{
}
//Todo: All piston stuff below.
void cPiston::ExtendPiston( int pistx, int pisty, int pistz )
{
cWorld* World = cRoot::Get()->GetWorld();
char metadata = World->GetBlockMeta( pistx, pisty, pistz);
if ( ( (int)World->GetBlock( pistx, pisty, pistz ) == E_BLOCK_STICKY_PISTON ) || ( (int)World->GetBlock( pistx, pisty, pistz ) == E_BLOCK_PISTON ) ) {
//find direction piston is facing base on meta.
//verify piston is not already extended.
//check all 16 blocks in front of it for the first airblock
//if there's and air block move those found blocks by 1 and insert E_BLOCK_PISTON_EXTENSION in the spot infront of the piston facing right direction
}
}
void cPiston::RetractPiston( int pistx, int pisty, int pistz )
{
cWorld* World = cRoot::Get()->GetWorld();
char metadata = World->GetBlockMeta( pistx, pisty, pistz);
if ( (int)World->GetBlock( pistx, pisty, pistz ) == E_BLOCK_PISTON ) {
//find direction piston is facing base on meta.
//verify piston is extended.
//check block in front to see if it's an E_BLOCK_PISTON_EXTENSION
//delete that block
//set piston meta to unextended
}
if ( (int)World->GetBlock( pistx, pisty, pistz ) == E_BLOCK_STICKY_PISTON ) {
//find direction piston is facing base on meta.
//verify piston is extended.
//check block in front to see if it's an E_BLOCK_PISTON_EXTENSION
//delete that block
//move block one more in front of it to postion E_BLOCK_PISTON_EXTENSION was facing.
//set piston meta to unextended
}
}