@@ -98,7 +98,8 @@ public static void DoY5HActProcedure(MLO mlo) {
9898 }
9999 }
100100
101- public static void DoY0DCLegacyModelUpgrade ( MLO mlo ) {
101+ // One time upgrade of old mods
102+ public static void DoY0DCLegacyModsUpgrade ( MLO mlo ) {
102103 var parlessDir = new DirectoryInfo ( GamePath . ParlessDir ) ;
103104
104105 parlessDir . Create ( ) ;
@@ -110,24 +111,59 @@ public static void DoY0DCLegacyModelUpgrade(MLO mlo) {
110111 continue ;
111112
112113 var legacyCharaDir = Path . Combine ( modDir , "chara" , "w64" ) ;
114+ var legacyStageDir = Path . Combine ( modDir , "stage" , "w64" ) ;
115+ var legacyReactorDir = Path . Combine ( modDir , "reactorpar" , "reactor_w64" ) ;
113116
114- if ( ! Directory . Exists ( legacyCharaDir ) )
115- continue ;
116-
117- var newCharaDir = Path . Combine ( parlessDir . FullName , "chara" , "ngen" ) ;
117+ if ( Directory . Exists ( legacyCharaDir ) ) {
118+ var newCharaDir = Path . Combine ( parlessDir . FullName , "chara" , "ngen" ) ;
119+
120+ for ( var i = 0 ; i < mlo . Files . Count ; i ++ ) {
121+ var file = mlo . Files [ i ] ;
122+
123+ if ( file . Name . Contains ( "chara/w64" ) )
124+ file = file with {
125+ Name = file . Name . Replace ( "chara/w64" , "chara/ngen" )
126+ } ;
127+
128+ mlo . Files [ i ] = file ;
129+ }
130+
131+ Directory . Move ( legacyCharaDir , newCharaDir ) ;
132+ }
133+
134+ if ( Directory . Exists ( legacyStageDir ) ) {
135+ var newStageDir = Path . Combine ( parlessDir . FullName , "stage" , "ngen" ) ;
136+
137+ for ( var i = 0 ; i < mlo . Files . Count ; i ++ ) {
138+ var file = mlo . Files [ i ] ;
118139
119- for ( var i = 0 ; i < mlo . Files . Count ; i ++ ) {
120- var file = mlo . Files [ i ] ;
140+ if ( file . Name . Contains ( "stage/w64" ) )
141+ file = file with {
142+ Name = file . Name . Replace ( "stage/w64" , "stage/ngen" )
143+ } ;
121144
122- if ( file . Name . Contains ( "chara/w64" ) )
123- file = file with {
124- Name = file . Name . Replace ( "chara/w64" , "chara/ngen" )
125- } ;
145+ mlo . Files [ i ] = file ;
146+ }
126147
127- mlo . Files [ i ] = file ;
148+ Directory . Move ( legacyStageDir , newStageDir ) ;
128149 }
129150
130- Directory . Move ( legacyCharaDir , newCharaDir ) ;
151+ if ( Directory . Exists ( legacyReactorDir ) ) {
152+ var newReactorDir = Path . Combine ( parlessDir . FullName , "reactorpar" , "reactor_ngen" ) ;
153+
154+ for ( var i = 0 ; i < mlo . Files . Count ; i ++ ) {
155+ var file = mlo . Files [ i ] ;
156+
157+ if ( file . Name . Contains ( "reactor_w64/" ) )
158+ file = file with {
159+ Name = file . Name . Replace ( "reactor_w64/" , "reactor_ngen/" )
160+ } ;
161+
162+ mlo . Files [ i ] = file ;
163+ }
164+
165+ Directory . Move ( legacyReactorDir , newReactorDir ) ;
166+ }
131167 }
132168 }
133169
0 commit comments