12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #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;
- };
- 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;
- };
|