#pragma once // using namespace std; #include "TutorialTask.h" class Level; // 4J Stu - Tasks that involve using a tile, with or without an item. e.g. // Opening a chest class UseTileTask : public TutorialTask { private: int x, y, z; const int tileId; bool useLocation; bool completed; public: UseTileTask(const int tileId, int x, int y, int z, Tutorial* tutorial, int descriptionId, bool enablePreCompletion = false, std::vector* inConstraints = NULL, bool bShowMinimumTime = false, bool bAllowFade = true, bool bTaskReminders = true); UseTileTask(const int tileId, Tutorial* tutorial, int descriptionId, bool enablePreCompletion = false, std::vector* inConstraints = NULL, bool bShowMinimumTime = false, bool bAllowFade = true, bool bTaskReminders = true); virtual bool isCompleted(); virtual void useItemOn(Level* level, std::shared_ptr item, int x, int y, int z, bool bTestUseOnly = false); };