@@ -115,6 +115,7 @@ private static void Main(string[] args)
115
115
116
116
bool ? bigEndian = null ;
117
117
bool ? lang = null ;
118
+ bool ? beta = null ;
118
119
bool ? compression = null ;
119
120
120
121
var format = "default" ;
@@ -160,6 +161,23 @@ private static void Main(string[] args)
160
161
Console . WriteLine ( "Invalid Event Extra data type setting. Using file's default setting." ) ;
161
162
}
162
163
164
+ a ++ ;
165
+ break ;
166
+ case "-dcbeta" :
167
+ var dcBeta = args [ a + 1 ] ;
168
+
169
+ if ( dcBeta . Equals ( "false" , StringComparison . OrdinalIgnoreCase ) )
170
+ {
171
+ beta = false ;
172
+ }
173
+ else if ( dcBeta . Equals ( "true" , StringComparison . OrdinalIgnoreCase ) )
174
+ {
175
+ beta = true ;
176
+ }
177
+ else
178
+ {
179
+ Console . WriteLine ( "Invalid Event Extra data type setting. Using file's default setting." ) ;
180
+ }
163
181
a ++ ;
164
182
break ;
165
183
case "-format" :
@@ -230,16 +248,19 @@ private static void Main(string[] args)
230
248
System . Text . Encoding . RegisterProvider ( System . Text . CodePagesEncodingProvider . Instance ) ;
231
249
232
250
var endianGame = "" ;
251
+ var endianType = "" ;
233
252
234
253
if ( bigEndian . HasValue )
235
254
{
236
255
if ( bigEndian == false )
237
256
{
238
257
endianGame = "Dreamcast" ;
258
+ endianType = "Little Endian" ;
239
259
}
240
260
else
241
261
{
242
262
endianGame = "GameCube/PS3/X360/PC" ;
263
+ endianType = "Big Endian" ;
243
264
}
244
265
}
245
266
if ( name . Contains ( "TAILSPLAIN" , StringComparison . OrdinalIgnoreCase ) )
@@ -306,6 +327,14 @@ private static void Main(string[] args)
306
327
else if ( exfWCard . IsMatch ( name ) )
307
328
{
308
329
var dataGame = "" ;
330
+ var dataBeta = "" ;
331
+ var ext = ".prs" ;
332
+ if ( beta . HasValue )
333
+ {
334
+ if ( beta == true )
335
+ ext = ".scr" ;
336
+ }
337
+
309
338
310
339
if ( lang . HasValue )
311
340
{
@@ -318,19 +347,45 @@ private static void Main(string[] args)
318
347
dataGame = "File will only contain subtitle and audio timings." ;
319
348
}
320
349
}
321
-
322
- if ( bigEndian . HasValue && lang . HasValue )
350
+ if ( beta . HasValue )
351
+ {
352
+ if ( beta == true )
353
+ {
354
+ dataBeta = "This file will only work with SA2: The Trial if all Event Extra data is present." ;
355
+ }
356
+ else
357
+ {
358
+ dataBeta = "" ;
359
+ }
360
+ }
361
+ if ( bigEndian . HasValue && lang . HasValue && beta . HasValue )
362
+ {
363
+ Console . WriteLine ( $ "Building Event Extra file { name } for the { endianGame } version. { dataGame } \n { dataBeta } ") ;
364
+ }
365
+ else if ( bigEndian . HasValue && lang . HasValue )
323
366
{
324
367
Console . WriteLine ( $ "Building Event Extra file { name } for the { endianGame } version. { dataGame } ") ;
325
368
}
369
+ else if ( bigEndian . HasValue && beta . HasValue )
370
+ {
371
+ Console . WriteLine ( $ "Building Event Extra file { name } for the { endianGame } version.\n { dataBeta } ") ;
372
+ }
326
373
else if ( bigEndian . HasValue )
327
374
{
328
375
Console . WriteLine ( $ "Building Event Extra file { name } for the { endianGame } version.") ;
329
376
}
377
+ else if ( lang . HasValue && beta . HasValue )
378
+ {
379
+ Console . WriteLine ( $ "Building Event Extra file { name } . { dataGame } \n { dataBeta } ") ;
380
+ }
330
381
else if ( lang . HasValue )
331
382
{
332
383
Console . WriteLine ( $ "Building Event Extra file { name } . { dataGame } ") ;
333
384
}
385
+ else if ( beta . HasValue )
386
+ {
387
+ Console . WriteLine ( $ "Building Event Extra file { name } . \n { dataBeta } ") ;
388
+ }
334
389
else
335
390
{
336
391
Console . WriteLine ( $ "Building Event Extra file { name } ") ;
@@ -339,11 +394,11 @@ private static void Main(string[] args)
339
394
if ( fullPathBin . EndsWith ( ".prs" , StringComparison . OrdinalIgnoreCase )
340
395
|| fullPathBin . EndsWith ( ".scr" , StringComparison . OrdinalIgnoreCase ) )
341
396
{
342
- sa2EventExtra . Build ( bigEndian , lang , fullPathBin , fullPathOut ) ;
397
+ sa2EventExtra . Build ( bigEndian , lang , beta , fullPathBin , fullPathOut ) ;
343
398
}
344
399
else
345
400
{
346
- sa2EventExtra . Build ( bigEndian , lang , fullPathBin + ".prs" , fullPathOut ) ;
401
+ sa2EventExtra . Build ( bigEndian , lang , beta , fullPathBin + ext , fullPathOut ) ;
347
402
}
348
403
}
349
404
else if ( name . StartsWith ( "me" , StringComparison . OrdinalIgnoreCase ) )
0 commit comments