fix issues
- fix usage error of ckid getter in bmap wrapper. - fix CKObject flag init value error. - fix CKFileWriter writing empty object name error. - regulate some statement.
This commit is contained in:
		| @ -279,7 +279,7 @@ class BMMaterial(BMObject): | ||||
|     def set_texture(self, tex_: BMTexture | None) -> None: | ||||
|         objid: bmap.bm_CKID = bmap.bm_CKID(g_InvalidCKID) | ||||
|         if tex_ is not None: | ||||
|             objid.value = tex_._get_ckid() | ||||
|             objid = tex_._get_ckid() | ||||
|         bmap.BMMaterial_SetTexture(self._get_pointer(), self._get_ckid(), objid) | ||||
|  | ||||
|     def get_texture_border_color(self) -> virtools_types.VxColor: | ||||
| @ -521,7 +521,7 @@ class BMMesh(BMObject): | ||||
|             if mtlobj is None: | ||||
|                 mtlid.value = g_InvalidCKID | ||||
|             else: | ||||
|                 mtlid.value = mtlobj._get_ckid() | ||||
|                 mtlid = mtlobj._get_ckid() | ||||
|             # set | ||||
|             bmap.BMMesh_SetMaterialSlot(self._get_pointer(), self._get_ckid(), idx, mtlid) | ||||
|  | ||||
| @ -551,7 +551,7 @@ class BM3dObject(BMObject): | ||||
|     def set_current_mesh(self, mesh: BMMesh | None) -> None: | ||||
|         ckid: bmap.bm_CKID = bmap.bm_CKID(g_InvalidCKID) | ||||
|         if mesh is not None: | ||||
|             ckid.value = mesh._get_ckid() | ||||
|             ckid = mesh._get_ckid() | ||||
|         bmap.BM3dObject_SetCurrentMesh(self._get_pointer(), self._get_ckid(), ckid) | ||||
|  | ||||
|     def get_visibility(self) -> bool: | ||||
| @ -733,31 +733,31 @@ class BMFileWriter(_AbstractPointer): | ||||
|         return class_type(self._get_pointer(), retid) | ||||
|  | ||||
|     def create_texture(self) -> BMTexture: | ||||
|         self.__create_ckobject( | ||||
|         return self.__create_ckobject( | ||||
|             BMTexture, | ||||
|             bmap.BMFile_CreateTexture | ||||
|         ) | ||||
|      | ||||
|     def create_material(self) -> BMMaterial: | ||||
|         self.__create_ckobject( | ||||
|         return self.__create_ckobject( | ||||
|             BMMaterial, | ||||
|             bmap.BMFile_CreateMaterial | ||||
|         ) | ||||
|      | ||||
|     def create_mesh(self) -> BMMesh: | ||||
|         self.__create_ckobject( | ||||
|         return self.__create_ckobject( | ||||
|             BMMesh, | ||||
|             bmap.BMFile_CreateMesh | ||||
|         ) | ||||
|      | ||||
|     def create_3dobject(self) -> BM3dObject: | ||||
|         self.__create_ckobject( | ||||
|         return self.__create_ckobject( | ||||
|             BM3dObject, | ||||
|             bmap.BMFile_Create3dObject | ||||
|         ) | ||||
|      | ||||
|     def create_group(self) -> BMGroup: | ||||
|         self.__create_ckobject( | ||||
|         return self.__create_ckobject( | ||||
|             BMGroup, | ||||
|             bmap.BMFile_CreateGroup | ||||
|         ) | ||||
|  | ||||
| @ -8,7 +8,7 @@ | ||||
| #endif | ||||
|   | ||||
| // Debug IronPad used. Force enable IronPad. | ||||
| #define IRONPAD_ENABLED 1 | ||||
| //#define IRONPAD_ENABLED 1 | ||||
|  | ||||
| namespace IronPad { | ||||
|  | ||||
|  | ||||
| @ -131,7 +131,7 @@ namespace LibCmo::CK2 { | ||||
| 					parser->Read(name_conv.data(), namelen); | ||||
| 					m_Ctx->GetUtf8String(name_conv, fileobj.Name); | ||||
| 				} else { | ||||
| 					fileobj.Name.clear(); | ||||
| 					XContainer::NSXString::FromCKSTRING(fileobj.Name, nullptr); | ||||
| 				} | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| @ -175,10 +175,15 @@ namespace LibCmo::CK2 { | ||||
| 			hdrparser->Write(&obj.FileIndex); | ||||
|  | ||||
| 			if (XContainer::NSXString::ToCKSTRING(obj.Name) != nullptr) { | ||||
| 				// if have name, write it | ||||
| 				m_Ctx->GetNativeString(obj.Name, name_conv); | ||||
| 				CKDWORD namelen = static_cast<CKDWORD>(name_conv.size()); | ||||
| 				hdrparser->Write(&namelen); | ||||
| 				hdrparser->Write(name_conv.data(), namelen); | ||||
| 			} else { | ||||
| 				// otherwise, write 0 to indicate no name | ||||
| 				CKDWORD namelen = 0; | ||||
| 				hdrparser->Write(&namelen); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
|  | ||||
| @ -7,7 +7,7 @@ namespace LibCmo::CK2::ObjImpls { | ||||
| 		m_ID(ckid), | ||||
| 		m_Name(), | ||||
| 		m_Context(ctx), | ||||
| 		m_ObjectFlags(CK_OBJECT_FLAGS::CK_PARAMETERIN_DISABLED) { | ||||
| 		m_ObjectFlags(CK_OBJECT_FLAGS::CK_OBJECT_VISIBLE) { | ||||
| 		// set name with possible nullptr. | ||||
| 		XContainer::NSXString::FromCKSTRING(m_Name, name); | ||||
| 	} | ||||
|  | ||||
		Reference in New Issue
	
	Block a user