1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- #pragma once
- #include "BasicBlocks.h"
- class Chest : public BasicBlock
- {
- private:
- bool open;
- int userEntityId;
- virtual void onDestroy() override;
- virtual void onDialogClosed(Framework::Text dialogId) override;
- Framework::Text getDialogId() const;
- protected:
- virtual bool onTick(
- TickQueue* zQueue, int numTicks, bool& blocked) override;
- public:
- Chest(
- int typeId, Framework::Vec3<int> pos, int dimensionId);
- virtual bool interact(Item* zItem, Entity* zActor) override;
- virtual void sendModelInfo(NetworkMessage* zMessage) override;
- };
- class ChestBlockType : public BasicBlockType
- {
- public:
- ChestBlockType(Framework::Text itemTypeName,
- ModelInfo* model,
- Framework::Text name,
- int mapColor,
- bool modelSubscription,
- float hardness,
- Framework::RCArray<Framework::Text> groupNames);
- virtual Block* createBlock(
- Framework::Vec3<int> position, int dimensionId) const override;
- virtual ItemType* createItemType() const override;
- };
- class ChestBlockTypeFactory
- : public SubTypeFactory<BlockType, ChestBlockType>
- {
- public:
- ChestBlockTypeFactory();
- ChestBlockType* fromJson(
- Framework::JSON::JSONObject* zJson) const override;
- Framework::JSON::JSONObject* toJson(ChestBlockType* zObject) const override;
- Framework::JSON::Validator::JSONValidator* getValidator(
- Framework::JSON::Validator::ObjectValidationBuilder<
- Framework::JSON::Validator::JSONValidator>* builder) const override;
- Framework::Text getTypeToken() const override;
- };
|