LeviLamina
Loading...
Searching...
No Matches
UnlockedRecipesClientComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/item/CreativeItemCategory.h"
7
8// auto generated forward declare list
9// clang-format off
10class Recipe;
11class Recipes;
12// clang-format on
13
14class UnlockedRecipesClientComponent {
15public:
16 // member variables
17 // NOLINTBEGIN
18 ::ll::TypedStorage<4, 4, int> mUnlockedCategories;
19 ::ll::TypedStorage<4, 4, int> mNewlyUnlockedCategories;
20 ::ll::TypedStorage<8, 64, ::std::unordered_set<int>> mUnlockedItems;
21 ::ll::TypedStorage<8, 64, ::std::unordered_set<::std::string>> mUnlockedRecipes;
22 ::ll::TypedStorage<8, 64, ::std::unordered_set<::std::string>> mNewlyUnlockedRecipes;
23 // NOLINTEND
24
25#ifdef LL_PLAT_S
26#else // LL_PLAT_C
27public:
28 // prevent constructor by default
29 UnlockedRecipesClientComponent& operator=(UnlockedRecipesClientComponent const&);
30 UnlockedRecipesClientComponent(UnlockedRecipesClientComponent const&);
31
32#endif
33public:
34 // member functions
35 // NOLINTBEGIN
36#ifdef LL_PLAT_C
37 MCAPI UnlockedRecipesClientComponent();
38
39 MCAPI void addUnlockedRecipes(
40 ::Recipes const& recipes,
41 ::std::vector<::std::string> const& unlockedRecipeIds,
42 bool newlyUnlocked
43 );
44
45 MCAPI void clearNewlyUnlockedData();
46
47 MCFOLD ::std::unordered_set<::std::string> const& getNewlyUnlockedRecipes() const;
48
49 MCAPI bool isCategoryUnlocked(::SharedTypes::CreativeItemCategory category) const;
50
51 MCAPI bool isItemUnlocked(int idAux) const;
52#endif
53
54 MCAPI bool isRecipeUnlocked(::Recipe const& recipe) const;
55
56 MCAPI bool isRecipeUnlocked(::std::string const& recipeId) const;
57
58#ifdef LL_PLAT_C
59 MCAPI ::UnlockedRecipesClientComponent& operator=(::UnlockedRecipesClientComponent&&);
60
61 MCAPI void removeAllRecipes();
62
63 MCAPI void removeRecipes(::Recipes const& recipes, ::std::vector<::std::string> const& unlockedRecipeIds);
64
65 MCAPI ~UnlockedRecipesClientComponent();
66#endif
67 // NOLINTEND
68
69public:
70 // constructor thunks
71 // NOLINTBEGIN
72#ifdef LL_PLAT_C
73 MCAPI void* $ctor();
74#endif
75 // NOLINTEND
76
77public:
78 // destructor thunk
79 // NOLINTBEGIN
80#ifdef LL_PLAT_C
81 MCAPI void $dtor();
82#endif
83 // NOLINTEND
84};
Definition Recipe.h:32
Definition Recipes.h:36