Skip to content

Commit e721024

Browse files
committed
fix: update YYCC dependency
- move EnumsHelper into YYCC because it is widely used. - rename all calling to EnumsHelper due to this modification. - add version checker in code to make sure that user use correct YYCC library to compile. - modify some include syntax because the include directory layout changes of YYCC. - update CMake script to resolve the bug that we can not export LibCmo (thanks doyaGu and BLumia).
1 parent 73f1a1f commit e721024

17 files changed

+137
-224
lines changed

BMap/CMakeLists.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@ FILES
1818
target_include_directories(BMap
1919
PRIVATE
2020
"${CMAKE_CURRENT_LIST_DIR}"
21-
YYCC::YYCCommonplace
22-
LibCmo
2321
)
2422
# Setup linked library infomation
2523
target_link_libraries(BMap
@@ -52,6 +50,6 @@ PRIVATE
5250

5351
# Install BMap only on Release mode
5452
install(TARGETS BMap
55-
CONFIGURATIONS Release
53+
CONFIGURATIONS Release RelWithDebInfo MinSizeRel
5654
RUNTIME DESTINATION ${YYCC_INSTALL_BIN_PATH}
5755
)

CMake/custom_import_yycc.cmake

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ endif()
66

77
# Find YYCC library
88
# It will produce YYCC::YYCCommonplace target for including and linking.
9-
find_package(YYCCommonplace REQUIRED
10-
HINTS ${YYCC_PATH} NO_DEFAULT_PATH
11-
)
9+
#
10+
# Please note we MUST set CMake variable YYCCommonplace_ROOT to make sure CMake can found YYCC in out given path.
11+
# The cache status of YYCCommonplace_ROOT is doesn't matter.
12+
# CMake will throw error if we use HINTS feature in find_package to find YYCC.
13+
set(YYCCommonplace_ROOT ${YYCC_PATH} CACHE PATH
14+
"The path to YYCC CMake distribution installation path.")
15+
find_package(YYCCommonplace REQUIRED)

Documents/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,6 @@ add_custom_target (NeMoDocuments
1414

1515
# Install built documentation
1616
install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html
17+
CONFIGURATIONS Release RelWithDebInfo MinSizeRel
1718
DESTINATION ${NEMO_INSTALL_DOC_PATH}
1819
)

LibCmo/CK2/CKBitmapData.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -521,7 +521,7 @@ namespace LibCmo::CK2 {
521521
m_Slots.resize(count);
522522

523523
if (count == 0) {
524-
EnumsHelper::Add(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_INVALID);
524+
YYCC::EnumHelper::Add(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_INVALID);
525525
}
526526
}
527527

@@ -535,8 +535,8 @@ namespace LibCmo::CK2 {
535535
m_CurrentSlot = slot;
536536

537537
// NOTE: idk what the fuck this is. just interpter the IDA decompiled code.
538-
if (EnumsHelper::Has(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_CUBEMAP)) {
539-
EnumsHelper::Add(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_FORCERESTORE);
538+
if (YYCC::EnumHelper::Has(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_CUBEMAP)) {
539+
YYCC::EnumHelper::Add(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_FORCERESTORE);
540540
}
541541
}
542542

@@ -660,14 +660,14 @@ namespace LibCmo::CK2 {
660660
// but we decide split the flag settings and slot.
661661
// User should set slot count manually.
662662
if (is_cube) {
663-
EnumsHelper::Add(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_CUBEMAP);
663+
YYCC::EnumHelper::Add(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_CUBEMAP);
664664
} else {
665-
EnumsHelper::Rm(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_CUBEMAP);
665+
YYCC::EnumHelper::Remove(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_CUBEMAP);
666666
}
667667
}
668668

669669
bool CKBitmapData::IsCubeMap() const {
670-
return EnumsHelper::Has(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_CUBEMAP);
670+
return YYCC::EnumHelper::Has(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_CUBEMAP);
671671
}
672672

673673
const CKBitmapProperties& CKBitmapData::GetSaveFormat() const {
@@ -688,14 +688,14 @@ namespace LibCmo::CK2 {
688688

689689
void CKBitmapData::SetTransparent(bool Transparency) {
690690
if (Transparency) {
691-
EnumsHelper::Add(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_TRANSPARENT);
691+
YYCC::EnumHelper::Add(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_TRANSPARENT);
692692
} else {
693-
EnumsHelper::Rm(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_TRANSPARENT);
693+
YYCC::EnumHelper::Remove(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_TRANSPARENT);
694694
}
695695
}
696696

697697
bool CKBitmapData::IsTransparent() const {
698-
return EnumsHelper::Has(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_TRANSPARENT);
698+
return YYCC::EnumHelper::Has(m_BitmapFlags, CK_BITMAPDATA_FLAGS::CKBITMAPDATA_TRANSPARENT);
699699
}
700700

701701
void CKBitmapData::SetTransparentColor(CKDWORD col) {

LibCmo/CK2/CKFileReader.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -205,8 +205,8 @@ namespace LibCmo::CK2 {
205205
std::string name_conv;
206206

207207
// ========== compress feature process ==========
208-
if (EnumsHelper::Has(this->m_FileInfo.FileWriteMode, CK_FILE_WRITEMODE::CKFILE_CHUNKCOMPRESSED_OLD) ||
209-
EnumsHelper::Has(this->m_FileInfo.FileWriteMode, CK_FILE_WRITEMODE::CKFILE_WHOLECOMPRESSED)) {
208+
if (YYCC::EnumHelper::Has(this->m_FileInfo.FileWriteMode, CK_FILE_WRITEMODE::CKFILE_CHUNKCOMPRESSED_OLD) ||
209+
YYCC::EnumHelper::Has(this->m_FileInfo.FileWriteMode, CK_FILE_WRITEMODE::CKFILE_WHOLECOMPRESSED)) {
210210

211211
void* decomp_buffer = CKUnPackData(this->m_FileInfo.DataUnPackSize, parser->GetPtr(), this->m_FileInfo.DataPackSize);
212212
if (decomp_buffer != nullptr) {

LibCmo/CK2/CKFileWriter.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -216,8 +216,8 @@ namespace LibCmo::CK2 {
216216
}
217217

218218
// compress header if needed
219-
if (EnumsHelper::Has(fileWriteMode, CK_FILE_WRITEMODE::CKFILE_CHUNKCOMPRESSED_OLD) ||
220-
EnumsHelper::Has(fileWriteMode, CK_FILE_WRITEMODE::CKFILE_WHOLECOMPRESSED)) {
219+
if (YYCC::EnumHelper::Has(fileWriteMode, CK_FILE_WRITEMODE::CKFILE_CHUNKCOMPRESSED_OLD) ||
220+
YYCC::EnumHelper::Has(fileWriteMode, CK_FILE_WRITEMODE::CKFILE_WHOLECOMPRESSED)) {
221221

222222
CKDWORD comp_buf_size = 0;
223223
void* comp_buffer = CKPackData(hdrparser->GetBase(), hdrparser->GetSize(), comp_buf_size, m_Ctx->GetCompressionLevel());
@@ -263,8 +263,8 @@ namespace LibCmo::CK2 {
263263
}
264264

265265
// compress header if needed
266-
if (EnumsHelper::Has(fileWriteMode, CK_FILE_WRITEMODE::CKFILE_CHUNKCOMPRESSED_OLD) ||
267-
EnumsHelper::Has(fileWriteMode, CK_FILE_WRITEMODE::CKFILE_WHOLECOMPRESSED)) {
266+
if (YYCC::EnumHelper::Has(fileWriteMode, CK_FILE_WRITEMODE::CKFILE_CHUNKCOMPRESSED_OLD) ||
267+
YYCC::EnumHelper::Has(fileWriteMode, CK_FILE_WRITEMODE::CKFILE_WHOLECOMPRESSED)) {
268268

269269
CKDWORD comp_buf_size = 0;
270270
void* comp_buffer = CKPackData(datparser->GetBase(), datparser->GetSize(), comp_buf_size, m_Ctx->GetCompressionLevel());

LibCmo/CK2/CKStateChunkOthers.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -419,23 +419,23 @@ namespace LibCmo::CK2 {
419419
std::memcpy(this->m_pData, dwbuf + bufpos, sizeof(CKDWORD) * this->m_DataDwSize);
420420
bufpos += this->m_DataDwSize;
421421
}
422-
if (!EnumsHelper::Has(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_FILE)) {
422+
if (!YYCC::EnumHelper::Has(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_FILE)) {
423423
// forced no bind file
424424
this->m_BindFile = nullptr;
425425
}
426-
if (EnumsHelper::Has(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_IDS)) {
426+
if (YYCC::EnumHelper::Has(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_IDS)) {
427427
this->m_ObjectList.resize(dwbuf[bufpos]);
428428
bufpos += 1u;
429429
std::memcpy(this->m_ObjectList.data(), dwbuf + bufpos, sizeof(CKDWORD) * this->m_ObjectList.size());
430430
bufpos += this->m_ObjectList.size();
431431
}
432-
if (EnumsHelper::Has(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_CHN)) {
432+
if (YYCC::EnumHelper::Has(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_CHN)) {
433433
this->m_ChunkList.resize(dwbuf[bufpos]);
434434
bufpos += 1u;
435435
std::memcpy(this->m_ChunkList.data(), dwbuf + bufpos, sizeof(CKDWORD) * this->m_ChunkList.size());
436436
bufpos += this->m_ChunkList.size();
437437
}
438-
if (EnumsHelper::Has(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_MAN)) {
438+
if (YYCC::EnumHelper::Has(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_MAN)) {
439439
this->m_ManagerList.resize(dwbuf[bufpos]);
440440
bufpos += 1u;
441441
std::memcpy(this->m_ManagerList.data(), dwbuf + bufpos, sizeof(CKDWORD) * this->m_ManagerList.size());
@@ -459,19 +459,19 @@ namespace LibCmo::CK2 {
459459

460460
if (!m_ObjectList.empty()) {
461461
size += CKSizeof(CKDWORD) * static_cast<CKDWORD>(m_ObjectList.size()) + sizeof(CKDWORD);
462-
EnumsHelper::Add(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_IDS);
462+
YYCC::EnumHelper::Add(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_IDS);
463463
}
464464
if (!m_ChunkList.empty()) {
465465
size += CKSizeof(CKDWORD) * static_cast<CKDWORD>(m_ChunkList.size()) + sizeof(CKDWORD);
466-
EnumsHelper::Add(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_CHN);
466+
YYCC::EnumHelper::Add(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_CHN);
467467
}
468468
if (!m_ManagerList.empty()) {
469469
size += CKSizeof(CKDWORD) * static_cast<CKDWORD>(m_ManagerList.size()) + sizeof(CKDWORD);
470-
EnumsHelper::Add(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_MAN);
470+
YYCC::EnumHelper::Add(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_MAN);
471471
}
472472

473473
if (this->m_BindFile != nullptr) {
474-
EnumsHelper::Add(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_FILE);
474+
YYCC::EnumHelper::Add(options, CK_STATECHUNK_CHUNKOPTIONS::CHNK_OPTION_FILE);
475475
}
476476

477477
// if buffer provided, write it

LibCmo/CK2/MgrImpls/CKObjectManager.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ namespace LibCmo::CK2::MgrImpls {
8686

8787
// set to be deleted
8888
CK_OBJECT_FLAGS objflag = obj->GetObjectFlags();
89-
EnumsHelper::Add(objflag, CK_OBJECT_FLAGS::CK_OBJECT_TOBEDELETED);
89+
YYCC::EnumHelper::Add(objflag, CK_OBJECT_FLAGS::CK_OBJECT_TOBEDELETED);
9090
obj->SetObjectFlags(objflag);
9191

9292
// collect class id

LibCmo/CK2/ObjImpls/CK3dEntity.cpp

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ namespace LibCmo::CK2::ObjImpls {
99
CKRenderObject(ctx, ckid, name),
1010
m_PotentialMeshes(), m_CurrentMesh(nullptr),
1111
m_WorldMatrix(), m_ZOrder(0),
12-
m_MoveableFlags(EnumsHelper::Merge({
12+
m_MoveableFlags(YYCC::EnumHelper::Merge(
1313
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_PICKABLE,
1414
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_VISIBLE,
1515
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_RENDERCHANNELS,
1616
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_INVERSEWORLDMATVALID
17-
})),
17+
)),
1818
m_3dEntityFlags(static_cast<CK_3DENTITY_FLAGS>(0)) {}
1919

2020
CK3dEntity::~CK3dEntity() {}
@@ -53,15 +53,15 @@ namespace LibCmo::CK2::ObjImpls {
5353
// regulate self flag again
5454
// MARK: originally we should check parent here.
5555
// but we do not support parent and hierarchy feature, so we simply remove flag
56-
EnumsHelper::Rm(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PARENTVALID);
56+
YYCC::EnumHelper::Remove(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PARENTVALID);
5757
// MARK: originally we should check grouped into CKPlace here.
5858
// but we do not support CKPlace, so we simply remove this flag
59-
EnumsHelper::Rm(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PLACEVALID);
59+
YYCC::EnumHelper::Remove(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PLACEVALID);
6060
// check z-order, if not zero, save it
6161
if (m_ZOrder != 0) {
62-
EnumsHelper::Add(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_ZORDERVALID);
62+
YYCC::EnumHelper::Add(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_ZORDERVALID);
6363
} else {
64-
EnumsHelper::Rm(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_ZORDERVALID);
64+
YYCC::EnumHelper::Remove(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_ZORDERVALID);
6565
}
6666

6767
// write 2 flags
@@ -94,7 +94,7 @@ namespace LibCmo::CK2::ObjImpls {
9494
if (!suc) return false;
9595

9696
// backup moveable flags
97-
bool hasWorldAligned = EnumsHelper::Has(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_WORLDALIGNED);
97+
bool hasWorldAligned = YYCC::EnumHelper::Has(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_WORLDALIGNED);
9898

9999
// MARK: object animation is skipped
100100

@@ -132,11 +132,11 @@ namespace LibCmo::CK2::ObjImpls {
132132
chunk->ReadStruct(m_3dEntityFlags);
133133
chunk->ReadStruct(m_MoveableFlags);
134134
// remove some properties
135-
EnumsHelper::Rm(m_3dEntityFlags, EnumsHelper::Merge({
135+
YYCC::EnumHelper::Remove(m_3dEntityFlags,
136136
CK_3DENTITY_FLAGS::CK_3DENTITY_UPDATELASTFRAME,
137137
CK_3DENTITY_FLAGS::CK_3DENTITY_RESERVED0
138-
}));
139-
EnumsHelper::Rm(m_MoveableFlags, EnumsHelper::Merge({
138+
);
139+
YYCC::EnumHelper::Remove(m_MoveableFlags,
140140
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_RESERVED2,
141141
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_STENCILONLY,
142142
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_DONTUPDATEFROMPARENT,
@@ -145,13 +145,13 @@ namespace LibCmo::CK2::ObjImpls {
145145
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_BOXVALID,
146146
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_USERBOX,
147147
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_UPTODATE
148-
}));
148+
);
149149
if (hasWorldAligned) {
150-
EnumsHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_WORLDALIGNED);
150+
YYCC::EnumHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_WORLDALIGNED);
151151
}
152152

153153
// if order render first
154-
if (EnumsHelper::Has(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_RENDERFIRST)) {
154+
if (YYCC::EnumHelper::Has(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_RENDERFIRST)) {
155155
m_ZOrder = 10000;
156156
}
157157

@@ -171,47 +171,47 @@ namespace LibCmo::CK2::ObjImpls {
171171
VxMath::VxVector3 crossProduct = VxMath::NSVxVector::CrossProduct(col0, col1);
172172
CKFLOAT dotProduct = VxMath::NSVxVector::DotProduct(crossProduct, col2);
173173
if (dotProduct >= 0.0f) {
174-
EnumsHelper::Rm(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_INDIRECTMATRIX);
174+
YYCC::EnumHelper::Remove(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_INDIRECTMATRIX);
175175
} else {
176-
EnumsHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_INDIRECTMATRIX);
176+
YYCC::EnumHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_INDIRECTMATRIX);
177177
}
178178

179179
// copy visible data
180180
// process direct visible
181-
if (EnumsHelper::Has(m_ObjectFlags, CK_OBJECT_FLAGS::CK_OBJECT_VISIBLE)) {
182-
EnumsHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_VISIBLE);
181+
if (YYCC::EnumHelper::Has(m_ObjectFlags, CK_OBJECT_FLAGS::CK_OBJECT_VISIBLE)) {
182+
YYCC::EnumHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_VISIBLE);
183183
} else {
184-
EnumsHelper::Rm(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_VISIBLE);
184+
YYCC::EnumHelper::Remove(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_VISIBLE);
185185
}
186186
// process indirect visible
187-
if (EnumsHelper::Has(m_ObjectFlags, CK_OBJECT_FLAGS::CK_OBJECT_HIERACHICALHIDE)) {
188-
EnumsHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_HIERARCHICALHIDE);
187+
if (YYCC::EnumHelper::Has(m_ObjectFlags, CK_OBJECT_FLAGS::CK_OBJECT_HIERACHICALHIDE)) {
188+
YYCC::EnumHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_HIERARCHICALHIDE);
189189
} else {
190-
EnumsHelper::Rm(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_HIERARCHICALHIDE);
190+
YYCC::EnumHelper::Remove(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_HIERARCHICALHIDE);
191191
}
192192

193193
// read associated CKPlace
194-
if (EnumsHelper::Has(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PLACEVALID)) {
194+
if (YYCC::EnumHelper::Has(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PLACEVALID)) {
195195
// MARK: we drop the support of CKPlace.
196196
// so we just read it and skip it.
197197
CK_ID placeid;
198198
chunk->ReadObjectID(placeid);
199199
// and remove this flag
200-
EnumsHelper::Rm(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PLACEVALID);
200+
YYCC::EnumHelper::Remove(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PLACEVALID);
201201
}
202202

203203
// read parent
204-
if (EnumsHelper::Has(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PARENTVALID)) {
204+
if (YYCC::EnumHelper::Has(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PARENTVALID)) {
205205
// MAKR: we drop the support of parent and the whole 3dentity hierarchy system
206206
// we ignore this field.
207207
CK_ID parentid;
208208
chunk->ReadObjectID(parentid);
209209
// and remove this flag
210-
EnumsHelper::Rm(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PARENTVALID);
210+
YYCC::EnumHelper::Remove(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_PARENTVALID);
211211
}
212212

213213
// read priority (non-zero zorder)
214-
if (EnumsHelper::Has(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_ZORDERVALID)) {
214+
if (YYCC::EnumHelper::Has(m_3dEntityFlags, CK_3DENTITY_FLAGS::CK_3DENTITY_ZORDERVALID)) {
215215
chunk->ReadStruct(m_ZOrder);
216216
}
217217

@@ -227,16 +227,16 @@ namespace LibCmo::CK2::ObjImpls {
227227
void CK3dEntity::Show(CK_OBJECT_SHOWOPTION show) {
228228
CKObject::Show(show);
229229

230-
EnumsHelper::Rm(m_MoveableFlags, EnumsHelper::Merge({
230+
YYCC::EnumHelper::Remove(m_MoveableFlags,
231231
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_VISIBLE,
232-
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_HIERARCHICALHIDE,
233-
}));
232+
VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_HIERARCHICALHIDE
233+
);
234234
switch (show) {
235235
case CK_OBJECT_SHOWOPTION::CKSHOW:
236-
EnumsHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_VISIBLE);
236+
YYCC::EnumHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_VISIBLE);
237237
break;
238238
case CK_OBJECT_SHOWOPTION::CKHIERARCHICALHIDE:
239-
EnumsHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_HIERARCHICALHIDE);
239+
YYCC::EnumHelper::Add(m_MoveableFlags, VxMath::VX_MOVEABLE_FLAGS::VX_MOVEABLE_HIERARCHICALHIDE);
240240
break;
241241
case CK_OBJECT_SHOWOPTION::CKHIDE:
242242
break;

0 commit comments

Comments
 (0)