RecipieLoader.h 776 B

12345678910111213141516171819202122232425
  1. #pragma once
  2. #include <Array.h>
  3. #include "RecipieList.h"
  4. class RecipieLoader : public virtual Framework::ReferenceCounter
  5. {
  6. private:
  7. Framework::RCArray<RecipieList> lists;
  8. Framework::JSON::Validator::JSONValidator* validator;
  9. public:
  10. RecipieLoader();
  11. ~RecipieLoader();
  12. void loadRecipies(const char* path);
  13. RecipieList* zRecipieList(const char* name) const;
  14. void registerRecipieList(const char* name);
  15. Framework::Text getCrafingUIML(const ItemType* zTargetType);
  16. private:
  17. void loadRecipie(Framework::JSON::JSONObject* zRecipie);
  18. ItemFilter* loadFilter(Framework::JSON::JSONObject* zFilter);
  19. ItemModifier* loadModifier(Framework::JSON::JSONObject* zModifier);
  20. Framework::JSON::Validator::JSONValidator* zRecipieValidator();
  21. };