3#include <actor/ProfileInfo.h>
4#include <basis/seadTypes.h>
5#include <actor/Profile.h>
6#include <telkin/Print.h>
15 for (size_t i = 0; i < N; i++) {
20 constexpr const char*
cstr()
const {
29
30
31
32template <
typename Derived>
36
37
38
42 tk::println(
"WARNING: .createInfo() called twice");
46 mCreateInfo = createInfo;
47 return *
static_cast<Derived*>(
this);
51
52
53
55 Derived&
flag(
const Profile::Flag flag) {
57 tk::println(
"WARNING: .flag() called twice");
62 return *
static_cast<Derived*>(
this);
66
67
68
72 tk::println(
"WARNING: .drawPriority() called twice");
76 mDrawPriority = drawPriority;
77 return *
static_cast<Derived*>(
this);
81
82
83
84
88 tk::println(
"WARNING: .executePriority() called twice");
92 mExecutePriority = executePriority;
93 return *
static_cast<Derived*>(
this);
97
98
99
100
101
102 template <ComptimeFixedString... Args> requires (
sizeof...(Args) > 0)
108 tk::
println(
"WARNING: SafeArray instanciation already used. Might be bad...");
116 return *
static_cast<
Derived*>(
this);
Base class for builder objects that operate on profiles. Tracks which fields were set and holds their...
Definition ProfileBuilder.h:33
Profile::Flag mFlag
The flag data for the profile we are building.
Definition ProfileBuilder.h:121
bool mDrawPriorityModified
Whether mDrawPriority was modified. Used for validation and partial application in red::ProfileEditBu...
Definition ProfileBuilder.h:129
sead::SafeString * mResources
The entry for ProfileInfo::cResList for the profile we are building. This is stored separately for cu...
Definition ProfileBuilder.h:125
bool mExecutePriorityModified
Whether mExecutePriority was modified. Used for validation and partial application in red::ProfileEdi...
Definition ProfileBuilder.h:130
s16 mDrawPriority
The drawPriority data for the profile we are building.
Definition ProfileBuilder.h:122
bool mFlagModified
Whether mFlag was modified. Used for validation and partial application in red::ProfileEditBuilder.
Definition ProfileBuilder.h:128
Derived & flag(const Profile::Flag flag)
Set the Flag field in the profile.
Definition ProfileBuilder.h:55
s16 mExecutePriority
The createInfo data for the profile we are building. This is a custom field added by RedCore.
Definition ProfileBuilder.h:123
u8 mResourceCount
The entry for ProfileInfo::cResNum for the profile we are building. This is stored separately for cus...
Definition ProfileBuilder.h:124
bool mCreateInfoModified
Whether mCreateInfo was modified. Used for validation and partial application in red::ProfileEditBuil...
Definition ProfileBuilder.h:127
Derived & drawPriority(const s16 drawPriority)
Set the drawPriority field in the profile.
Definition ProfileBuilder.h:70
Derived & executePriority(const s16 executePriority)
Set the executePriority field in the profile.
Definition ProfileBuilder.h:86
Derived & createInfo(const ActorCreateInfo *createInfo)
Set the ActorCreateInfo field in the profile.
Definition ProfileBuilder.h:40
bool mResourcesModified
Whether mResources was modified. Used for validation and partial application in red::ProfileEditBuild...
Definition ProfileBuilder.h:131
ProfileInfo::ResType mResourceType
The entry for ProfileInfo::cResType for the profile we are building. This is stored separately for cu...
Definition ProfileBuilder.h:126
Definition ActorDonutBlock.h:5
ComptimeFixedString(const char(&)[N]) -> ComptimeFixedString< N >
Definition ProfileBuilder.h:11
constexpr const char * cstr() const
Definition ProfileBuilder.h:20
constexpr ComptimeFixedString(const char(&str)[N])
Definition ProfileBuilder.h:14
char mValue[N]
Definition ProfileBuilder.h:12