@@ -52,6 +52,16 @@ def obj_modify(obj, asset, **kwargs):
5252 objfmt = obj .type .name
5353 data = obj .read ()
5454 name = f"{ asset .name } -{ obj .path_id } ."
55+ elif objfmt == "RectTransform" :
56+ if obj .path_id == 1234 : # or load from somewhere
57+ #print(data.m_AnchoredPosition.X,data.m_AnchoredPosition.Y,"->", end='')
58+ data .m_AnchoredPosition .X = 323
59+ data .m_AnchoredPosition .Y = - 60
60+ #print(data.m_AnchoredPosition.X,data.m_AnchoredPosition.Y)
61+ data .save ()
62+ elif objfmt == "SpriteRenderer" :
63+ data .m_DrawMode = 1
64+ obj .save_typetree (data ) # data is of type NodeHelper here
5565 if objfmt == "Sprite" :
5666 fname = next ((path for path in sprites if data .name == base_name (path )), None )
5767 if not fname : return []
@@ -60,13 +70,18 @@ def obj_modify(obj, asset, **kwargs):
6070 if _img .height != int (data .m_Rect .height ) or _img .width != int (data .m_Rect .width ):
6171 return [obj .path_id ]
6272 if data .name in ["demo_1_sprite_object_mod" ]:
63- data .m_RD .settingsRaw = 2
73+ data .m_RD .settingsRaw . settingsRaw = 2
6474 data .m_RD .textureRect = data .m_Rect
6575 data .m_RD .textureRectOffset = Vector2 (0 , 0 )
66- data .m_RD .uvTransform .X = 0
67- data .m_RD .uvTransform .Y = 0
68- data .m_RD .uvTransform .Z = 0
69- data .m_RD .uvTransform .W = 0
76+ #data.m_RD.m_SubMeshes = []
77+ #data.m_RD.m_IndexBuffer = b''
78+ #data.m_RD.m_VertexData.m_VertexCount = 0
79+ #data.m_RD.m_VertexData.m_Channels = []
80+ #data.m_RD.m_VertexData.m_Streams = []
81+ #data.m_RD.uvTransform.X = 0
82+ #data.m_RD.uvTransform.Y = 0
83+ #data.m_RD.uvTransform.Z = 0
84+ #data.m_RD.uvTransform.W = 0
7085 data .save ()
7186 else :
7287 with open (fname + ".bin" , "rb" ) as dat :
@@ -92,25 +107,31 @@ def obj_modify(obj, asset, **kwargs):
92107 with open (fname , "r" , encoding = "utf-8" ) as txt :
93108 data .text = txt .read ()
94109 data .save ()
110+ obj .assets_file .mark_changed ()
95111 elif objfmt == "MonoBehaviour" or objfmt == "Shader" :
96112 fname = next ((path for path in mbehavs if name in path ), None )
97113 if not fname : return []
98114 if ".json" == os .path .splitext (fname )[1 ]:
99115 script = data .m_Script .read ()
100116 nodes = ASSEMBLY_TREES [script .m_ClassName ]
101117 with open (fname , "r" , encoding = "utf-8-sig" ) as dat :
102- obj .save_typetree (json .load (dat ), nodes )
118+ try :
119+ jtranslated = json .load (dat )
120+ obj .save_typetree (jtranslated , nodes )
121+ except Exception as e :
122+ raise Exception (f"Error { e } in { fname } :\n { e .message } " )
103123 else :
104124 with open (fname , "rb" ) as dat :
105125 obj .set_raw_data (dat .read ())
106126 return [obj .path_id ]
107127
128+ print (f"Output folder is { OUT_PATH } " )
108129 for file_name in glob (ASSETS ):
109130 am = Environment ()
110131 if am is not None :
111132 am .out_path = os .path .dirname (OUT_PATH + file_name .replace (ROOT , '' ).replace ("\\ original\\ " , '' ))
112- am .load_file (file_name )
113- #am.load_file(get_reader_func(key)(file_name), name=file_name)
133+ am .load_file (file_name , name = base_name ( file_name ) )
134+ #am.load_file(get_reader_func(key)(file_name), name=base_name( file_name) )
114135 print (f"Processing { file_name } ..." )
115136 am .progress_function = tqdm
116137 am .process (partial (obj_modify , files = mbehavs ), TYPES )
0 commit comments