Setting RubberWorm version override transfers to extended options.

This commit is contained in:
Ray Koopa 2020-06-28 19:52:11 +02:00
parent 13583a6971
commit 1d06fbd578

View File

@ -1059,7 +1059,385 @@ namespace Syroot.Worms.Armageddon
set
{
_rwVersionOverride = value;
// TODO: Configure V3 settings according to selected version.
// Configure V3 settings according to selected version.
void setBattyRope1To2() => BattyRope = true;
void setBattyRope3And5To9()
{
setBattyRope1To2();
RopeKnockForce = 100;
}
void set150Speed() => GameSpeed = 1.5f;
void setTestStuff1()
{
ExplosionFallDamage = true;
GirderRadiusAssist = true;
IndianRopeGlitch = true;
KeepControlHeadBump = true;
KeepControlSkim = SkimControlLoss.Keep;
RopeKnockForce = 100;
RopeRollDrops = RopeRollDrops.Rope;
SkipWalk = SkipWalk.Facilitated;
}
void setTestStuff2()
{
setTestStuff1();
BattyRope = true;
RopeRollDrops = RopeRollDrops.RopeJump;
KeepControlXImpact = true;
}
void setTestStuff3()
{
setTestStuff2();
ProjectileMaxSpeed = 0;
RopeMaxSpeed = 0;
}
void setTestStuff4()
{
setTestStuff3();
AntiLockPower = true;
CircularAim = true;
GirderRadiusAssist = false;
JetpackMaxSpeed = 5 * 2;
ProjectileMaxSpeed = 32 * 2;
RopeMaxSpeed = 16 * 2;
}
void setTestStuff5()
{
setTestStuff4();
ProjectileMaxSpeed = 0;
}
void setTestStuff6To9()
{
setTestStuff5();
GirderRadiusAssist = true;
}
void setRacingStuffPre()
{
WormPhasingAlly = WormPhasing.WormsWeapons;
WormPhasingEnemy = WormPhasing.WormsWeapons;
WormSelectKeepHotSeat = true;
}
void setRacingStuff()
{
WormPhasingAlly = WormPhasing.Worms;
WormPhasingEnemy = WormPhasing.Worms;
WormSelectKeepHotSeat = true;
}
void setBoomRacing()
{
WormPhasingEnemy = WormPhasing.WormsWeaponsDamage;
WormSelectKeepHotSeat = true;
}
switch (_rwVersionOverride)
{
case 11: // 3.5 Beta 3pre15[BattyRope1]
case 12: // 3.5 Beta 3pre15[BattyRope2]
setBattyRope1To2();
break;
case 15: // 3.5 Beta 3pre17[BattyRope3]
case 36: // 3.6.23.0[BattyRope5]
case 63: // 3.6.27.9[BattyRope5]
case 73: // 3.6.28.0[BattyRope5]
case 86: // 3.6.29.3[BattyRope6]
case 96: // 3.6.29.20[BattyRope6]
case 102: // 3.6.29.21[BattyRope6]
case 108: // 3.6.29.22[BattyRope7]
case 115: // 3.6.29.23[BattyRope7]
case 122: // 3.6.29.24[BattyRope7]
case 138: // 3.6.29.47[BattyRope8]
case 145: // 3.6.29.49[BattyRope8]
case 154: // 3.6.30.0[BattyRope8]
case 162: // 3.6.31.0[BattyRope8]
case 183: // 3.6.31.3[BattyRope8]
case 190: // 3.6.31.5[BattyRope8]
case 197: // 3.6.31.7[BattyRope8]
case 204: // 3.6.31.12[BattyRope8]
case 211: // 3.6.31.14[BattyRope8]
case 218: // 3.6.31.22[BattyRope8]
case 225: // 3.6.31.23[BattyRope8]
case 232: // 3.6.31.31[BattyRope9]
case 239: // 3.7.0.0 RC1-3[BattyRope9]
case 246: // 3.7.0.0[BattyRope9]
case 253: // 3.7.0.2[BattyRope9]
case 260: // 3.7.0.3[BattyRope9]
case 267: // 3.7.0.4[BattyRope9]
case 274: // 3.7.0.5[BattyRope9]
case 281: // 3.7.1.0[BattyRope9]
case 288: // 3.7.1.3[BattyRope9]
case 295: // 3.7.2.1[BattyRope9]
case 302: // 3.7.2.4[BattyRope9]
case 309: // 3.7.2.8[BattyRope9]
case 316: // 3.7.2.15[BattyRope9]
case 323: // 3.7.2.20[BattyRope9]
case 330: // 3.7.2.24[BattyRope9]
case 337: // 3.7.2.25[BattyRope9]
case 344: // 3.7.2.26[BattyRope9]
case 351: // 3.7.2.27[BattyRope9]
case 358: // 3.7.2.29[BattyRope9]
case 365: // 3.7.2.31[BattyRope9]
case 372: // 3.7.2.32[BattyRope9]
case 379: // 3.7.2.33[BattyRope9]
case 386: // 3.7.2.34[BattyRope9]
case 393: // 3.7.2.36[BattyRope9]
case 400: // 3.7.2.40[BattyRope9]
case 407: // 3.7.2.42[BattyRope9]
case 414: // 3.7.2.44[BattyRope9]
case 421: // 3.7.2.45[BattyRope9]
case 428: // 3.7.2.73[BattyRope9]
case 435: // 3.7.2.74[BattyRope9]
case 442: // 3.7.2.78[BattyRope9]
case 449: // 3.7.2.82[BattyRope9]
case 456: // 3.7.2.90[BattyRope9]
case 463: // 3.7.2.91[BattyRope9]
case 470: // 3.7.2.92[BattyRope9]
case 477: // 3.7.2.95[BattyRope9]
setBattyRope3And5To9();
break;
case 25: // 3.6.19.16[150% speed]
case 27: // 3.6.19.17[150% speed]
case 64: // 3.6.27.9[150% speed]
case 74: // 3.6.28.0[150% speed]
case 87: // 3.6.29.3[150% speed]
case 97: // 3.6.29.20[150% speed]
case 103: // 3.6.29.21[150% speed]
case 109: // 3.6.29.22[150% speed]
case 116: // 3.6.29.23[150% speed]
case 123: // 3.6.29.24[150% speed]
case 139: // 3.6.29.47[150% speed]
case 146: // 3.6.29.49[150% speed]
case 155: // 3.6.30.0[150% speed]
case 163: // 3.6.31.0[150% speed]
case 184: // 3.6.31.3[150% speed]
case 191: // 3.6.31.5[150% speed]
case 198: // 3.6.31.7[150% speed]
case 205: // 3.6.31.12[150% speed]
case 212: // 3.6.31.14[150% speed]
case 219: // 3.6.31.22[150% speed]
case 226: // 3.6.31.23[150% speed]
case 233: // 3.6.31.31[150% speed]
case 240: // 3.7.0.0 RC1-3[150% speed]
case 247: // 3.7.0.0[150% speed]
case 254: // 3.7.0.2[150% speed]
case 261: // 3.7.0.3[150% speed]
case 268: // 3.7.0.4[150% speed]
case 275: // 3.7.0.5[150% speed]
case 282: // 3.7.1.0[150% speed]
case 289: // 3.7.1.3[150% speed]
case 296: // 3.7.2.1[150% speed]
case 303: // 3.7.2.4[150% speed]
case 310: // 3.7.2.8[150% speed]
case 317: // 3.7.2.15[150% speed]
case 324: // 3.7.2.20[150% speed]
case 331: // 3.7.2.24[150% speed]
case 338: // 3.7.2.25[150% speed]
case 345: // 3.7.2.26[150% speed]
case 352: // 3.7.2.27[150% speed]
case 359: // 3.7.2.29[150% speed]
case 366: // 3.7.2.31[150% speed]
case 373: // 3.7.2.32[150% speed]
case 380: // 3.7.2.33[150% speed]
case 387: // 3.7.2.34[150% speed]
case 394: // 3.7.2.36[150% speed]
case 401: // 3.7.2.40[150% speed]
case 408: // 3.7.2.42[150% speed]
case 415: // 3.7.2.44[150% speed]
case 422: // 3.7.2.45[150% speed]
case 429: // 3.7.2.73[150% speed]
case 436: // 3.7.2.74[150% speed]
case 443: // 3.7.2.78[150% speed]
case 450: // 3.7.2.82[150% speed]
case 457: // 3.7.2.90[150% speed]
case 464: // 3.7.2.91[150% speed]
case 471: // 3.7.2.92[150% speed]
case 478: // 3.7.2.95[150% speed]
set150Speed();
break;
case 39: // 3.6.24.1[TestStuff1]
setTestStuff1();
break;
case 40: // 3.6.24.1[TestStuff2]
setTestStuff2();
break;
case 46: // 3.6.26.4c[TestStuff3]
case 65: // 3.6.27.9[TestStuff3]
setTestStuff3();
break;
case 69: // 3.6.27.11[TestStuff4]
setTestStuff4();
break;
case 75: // 3.6.28.0[TestStuff5]
setTestStuff5();
break;
case 88: // 3.6.29.3[TestStuff6]
case 98: // 3.6.29.20[TestStuff6]
case 104: // 3.6.29.21[TestStuff6]
case 110: // 3.6.29.22[TestStuff7]
case 117: // 3.6.29.23[TestStuff7]
case 124: // 3.6.29.24[TestStuff7]
case 140: // 3.6.29.47[TestStuff8]
case 147: // 3.6.29.49[TestStuff8]
case 156: // 3.6.30.0[TestStuff8]
case 164: // 3.6.31.0[TestStuff8]
case 185: // 3.6.31.3[TestStuff8]
case 192: // 3.6.31.5[TestStuff8]
case 199: // 3.6.31.7[TestStuff8]
case 206: // 3.6.31.12[TestStuff8]
case 213: // 3.6.31.14[TestStuff8]
case 220: // 3.6.31.22[TestStuff8]
case 227: // 3.6.31.23[TestStuff8]
case 234: // 3.6.31.31[TestStuff9]
case 241: // 3.7.0.0 RC1-3[TestStuff9]
case 248: // 3.7.0.0[TestStuff9]
case 255: // 3.7.0.2[TestStuff9]
case 262: // 3.7.0.3[TestStuff9]
case 269: // 3.7.0.4[TestStuff9]
case 276: // 3.7.0.5[TestStuff9]
case 283: // 3.7.1.0[TestStuff9]
case 290: // 3.7.1.3[TestStuff9]
case 297: // 3.7.2.1[TestStuff9]
case 304: // 3.7.2.4[TestStuff9]
case 311: // 3.7.2.8[TestStuff9]
case 318: // 3.7.2.15[TestStuff9]
case 325: // 3.7.2.20[TestStuff9]
case 332: // 3.7.2.24[TestStuff9]
case 339: // 3.7.2.25[TestStuff9]
case 346: // 3.7.2.26[TestStuff9]
case 353: // 3.7.2.27[TestStuff9]
case 360: // 3.7.2.29[TestStuff9]
case 367: // 3.7.2.31[TestStuff9]
case 374: // 3.7.2.32[TestStuff9]
case 381: // 3.7.2.33[TestStuff9]
case 388: // 3.7.2.34[TestStuff9]
case 395: // 3.7.2.36[TestStuff9]
case 402: // 3.7.2.40[TestStuff9]
case 409: // 3.7.2.42[TestStuff9]
case 416: // 3.7.2.44[TestStuff9]
case 423: // 3.7.2.45[TestStuff9]
case 430: // 3.7.2.73[TestStuff9]
case 437: // 3.7.2.74[TestStuff9]
case 444: // 3.7.2.78[TestStuff9]
case 451: // 3.7.2.82[TestStuff9]
case 458: // 3.7.2.90[TestStuff9]
case 465: // 3.7.2.91[TestStuff9]
case 472: // 3.7.2.92[TestStuff9]
case 479: // 3.7.2.95[TestStuff9]
setTestStuff6To9();
break;
case 99: // 3.6.29.20[RacingStuff-pre]
setRacingStuffPre();
break;
case 105: // 3.6.29.21[RacingStuff]
case 111: // 3.6.29.22[RacingStuff]
case 118: // 3.6.29.23[RacingStuff]
case 125: // 3.6.29.24[RacingStuff]
case 141: // 3.6.29.47[RacingStuff]
case 148: // 3.6.29.49[RacingStuff]
case 157: // 3.6.30.0[RacingStuff]
case 165: // 3.6.31.0[RacingStuff]
case 186: // 3.6.31.3[RacingStuff]
case 193: // 3.6.31.5[RacingStuff]
case 200: // 3.6.31.7[RacingStuff]
case 207: // 3.6.31.12[RacingStuff]
case 214: // 3.6.31.14[RacingStuff]
case 221: // 3.6.31.22[RacingStuff]
case 228: // 3.6.31.23[RacingStuff]
case 235: // 3.6.31.31[RacingStuff]
case 242: // 3.7.0.0 RC1-3[RacingStuff]
case 249: // 3.7.0.0[RacingStuff]
case 256: // 3.7.0.2[RacingStuff]
case 263: // 3.7.0.3[RacingStuff]
case 270: // 3.7.0.4[RacingStuff]
case 277: // 3.7.0.5[RacingStuff]
case 284: // 3.7.1.0[RacingStuff]
case 291: // 3.7.1.3[RacingStuff]
case 298: // 3.7.2.1[RacingStuff]
case 305: // 3.7.2.4[RacingStuff]
case 312: // 3.7.2.8[RacingStuff]
case 319: // 3.7.2.15[RacingStuff]
case 326: // 3.7.2.20[RacingStuff]
case 333: // 3.7.2.24[RacingStuff]
case 340: // 3.7.2.25[RacingStuff]
case 347: // 3.7.2.26[RacingStuff]
case 354: // 3.7.2.27[RacingStuff]
case 361: // 3.7.2.29[RacingStuff]
case 368: // 3.7.2.31[RacingStuff]
case 375: // 3.7.2.32[RacingStuff]
case 382: // 3.7.2.33[RacingStuff]
case 389: // 3.7.2.34[RacingStuff]
case 396: // 3.7.2.36[RacingStuff]
case 403: // 3.7.2.40[RacingStuff]
case 410: // 3.7.2.42[RacingStuff]
case 417: // 3.7.2.44[RacingStuff]
case 424: // 3.7.2.45[RacingStuff]
case 431: // 3.7.2.73[RacingStuff]
case 438: // 3.7.2.74[RacingStuff]
case 445: // 3.7.2.78[RacingStuff]
case 452: // 3.7.2.82[RacingStuff]
case 459: // 3.7.2.90[RacingStuff]
case 466: // 3.7.2.91[RacingStuff]
case 473: // 3.7.2.92[RacingStuff]
case 480: // 3.7.2.95[RacingStuff]
setRacingStuff();
break;
case 112: // 3.6.29.22[BoomRacing]
case 119: // 3.6.29.23[BoomRacing]
case 126: // 3.6.29.24[BoomRacing]
case 142: // 3.6.29.47[BoomRacing]
case 149: // 3.6.29.49[BoomRacing]
case 158: // 3.6.30.0[BoomRacing]
case 166: // 3.6.31.0[BoomRacing]
case 187: // 3.6.31.3[BoomRacing]
case 194: // 3.6.31.5[BoomRacing]
case 201: // 3.6.31.7[BoomRacing]
case 208: // 3.6.31.12[BoomRacing]
case 215: // 3.6.31.14[BoomRacing]
case 222: // 3.6.31.22[BoomRacing]
case 229: // 3.6.31.23[BoomRacing]
case 236: // 3.6.31.31[BoomRacing]
case 243: // 3.7.0.0 RC1-3[BoomRacing]
case 250: // 3.7.0.0[BoomRacing]
case 257: // 3.7.0.2[BoomRacing]
case 264: // 3.7.0.3[BoomRacing]
case 271: // 3.7.0.4[BoomRacing]
case 278: // 3.7.0.5[BoomRacing]
case 285: // 3.7.1.0[BoomRacing]
case 292: // 3.7.1.3[BoomRacing]
case 299: // 3.7.2.1[BoomRacing]
case 306: // 3.7.2.4[BoomRacing]
case 313: // 3.7.2.8[BoomRacing]
case 320: // 3.7.2.15[BoomRacing]
case 327: // 3.7.2.20[BoomRacing]
case 334: // 3.7.2.24[BoomRacing]
case 341: // 3.7.2.25[BoomRacing]
case 348: // 3.7.2.26[BoomRacing]
case 355: // 3.7.2.27[BoomRacing]
case 362: // 3.7.2.29[BoomRacing]
case 369: // 3.7.2.31[BoomRacing]
case 376: // 3.7.2.32[BoomRacing]
case 383: // 3.7.2.33[BoomRacing]
case 390: // 3.7.2.34[BoomRacing]
case 397: // 3.7.2.36[BoomRacing]
case 404: // 3.7.2.40[BoomRacing]
case 411: // 3.7.2.42[BoomRacing]
case 418: // 3.7.2.44[BoomRacing]
case 425: // 3.7.2.45[BoomRacing]
case 432: // 3.7.2.73[BoomRacing]
case 439: // 3.7.2.74[BoomRacing]
case 446: // 3.7.2.78[BoomRacing]
case 453: // 3.7.2.82[BoomRacing]
case 460: // 3.7.2.90[BoomRacing]
case 467: // 3.7.2.91[BoomRacing]
case 474: // 3.7.2.92[BoomRacing]
case 481: // 3.7.2.95[BoomRacing]
setBoomRacing();
break;
}
}
}