12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- #pragma once
- #include "BlockType.h"
- #include "Block.h"
- class NoBlockBlockType;
- class NoBlock : public Block
- {
- public:
- static const NoBlock INSTANCE;
- protected:
- NoBlock();
- virtual bool onTick( TickQueue* zQueue, int numTicks, bool& blocked ) override;
- virtual void onPostTick() override;
- friend NoBlockBlockType;
- };
- class NoBlockBlockType : public BlockType
- {
- REGISTRABLE( NoBlockBlockType )
- protected:
- virtual Block* createBlock( Framework::Vec3<int> position, Game* zTarget ) override;
- virtual Item* createItem( Game* zTarget ) override;
- virtual Block* loadBlock( Framework::Vec3<int> position, Game* zTarget, Framework::StreamReader* zReader ) override;
- virtual void saveBlock( Block* zBlock, Framework::StreamWriter* zWriter ) override;
- virtual Item* getItemFromBlock( Block* zBlock, Game* zTarget ) override;
- virtual Block* createBlockAt( Framework::Vec3<int> position, Game* zTarget, Item* zUsedItem ) override;
- virtual const Block* zDefault() override;
- NoBlockBlockType();
- NoBlockBlockType( int id );
- };
- REGISTER( NoBlockBlockType, BlockType )
- class AirBlockBlockType : public NoBlockBlockType
- {
- REGISTRABLE( AirBlockBlockType )
- protected:
- AirBlockBlockType();
- };
- REGISTER( AirBlockBlockType, BlockType )
|