#pragma once #include #include "RecipieList.h" class RecipieLoader : public virtual Framework::ReferenceCounter { private: Framework::RCArray lists; Framework::JSON::Validator::JSONValidator* validator; public: RecipieLoader(); ~RecipieLoader(); void loadRecipies(const char* path); RecipieList* zRecipieList(const char* name) const; void registerRecipieList(const char* name); Framework::Text getCrafingUIML(ItemType* zTargetType); private: void loadRecipie(Framework::JSON::JSONObject* zRecipie); ItemFilter* loadFilter(Framework::JSON::JSONObject* zFilter); ItemModifier* loadModifier(Framework::JSON::JSONObject* zModifier); Framework::JSON::Validator::JSONValidator* zRecipieValidator(); };