// every 1 1$00 do
   0: GO 2
   2: DISABLE
// begin CreateCratesAnywhere ( Rand ( 2 , 5 ) , true ) ;
   3: LD_INT 2
   5: PPUSH
   6: LD_INT 5
   8: PPUSH
   9: CALL_OW 12
  13: PPUSH
  14: LD_INT 1
  16: PPUSH
  17: CALL_OW 57
// enable ;
  21: ENABLE
// end ; end_of_file
  22: END
// every 0 0$01 do var un , EnginerList , buildings , depots , i ;
  23: GO 25
  25: DISABLE
  26: LD_INT 0
  28: PPUSH
  29: PPUSH
  30: PPUSH
  31: PPUSH
  32: PPUSH
// begin enable ;
  33: ENABLE
// EnginerList := FilterAllUnits ( [ [ [ f_side , 1 ] , [ f_class , 2 ] , [ f_lives , 1000 ] ] ] ) ;
  34: LD_ADDR_VAR 0 2
  38: PUSH
  39: LD_INT 22
  41: PUSH
  42: LD_INT 1
  44: PUSH
  45: EMPTY
  46: LIST
  47: LIST
  48: PUSH
  49: LD_INT 25
  51: PUSH
  52: LD_INT 2
  54: PUSH
  55: EMPTY
  56: LIST
  57: LIST
  58: PUSH
  59: LD_INT 24
  61: PUSH
  62: LD_INT 1000
  64: PUSH
  65: EMPTY
  66: LIST
  67: LIST
  68: PUSH
  69: EMPTY
  70: LIST
  71: LIST
  72: LIST
  73: PUSH
  74: EMPTY
  75: LIST
  76: PPUSH
  77: CALL_OW 69
  81: ST_TO_ADDR
// buildings := FilterAllUnits ( [ [ [ f_side , 1 ] , [ f_type , unit_building ] , [ f_not , [ f_lives , 1000 ] ] ] ] ) ;
  82: LD_ADDR_VAR 0 3
  86: PUSH
  87: LD_INT 22
  89: PUSH
  90: LD_INT 1
  92: PUSH
  93: EMPTY
  94: LIST
  95: LIST
  96: PUSH
  97: LD_INT 21
  99: PUSH
 100: LD_INT 3
 102: PUSH
 103: EMPTY
 104: LIST
 105: LIST
 106: PUSH
 107: LD_INT 3
 109: PUSH
 110: LD_INT 24
 112: PUSH
 113: LD_INT 1000
 115: PUSH
 116: EMPTY
 117: LIST
 118: LIST
 119: PUSH
 120: EMPTY
 121: LIST
 122: LIST
 123: PUSH
 124: EMPTY
 125: LIST
 126: LIST
 127: LIST
 128: PUSH
 129: EMPTY
 130: LIST
 131: PPUSH
 132: CALL_OW 69
 136: ST_TO_ADDR
// if buildings > 0 then
 137: LD_VAR 0 3
 141: PUSH
 142: LD_INT 0
 144: GREATER
 145: IFFALSE 227
// begin for i = 1 to EnginerList do
 147: LD_ADDR_VAR 0 5
 151: PUSH
 152: DOUBLE
 153: LD_INT 1
 155: DEC
 156: ST_TO_ADDR
 157: LD_VAR 0 2
 161: PUSH
 162: FOR_TO
 163: IFFALSE 225
// begin if IsInUnit ( EnginerList [ i ] ) then
 165: LD_VAR 0 2
 169: PUSH
 170: LD_VAR 0 5
 174: ARRAY
 175: PPUSH
 176: CALL_OW 310
 180: IFFALSE 199
// ComExitBuilding ( EnginerList [ i ] ) else
 182: LD_VAR 0 2
 186: PUSH
 187: LD_VAR 0 5
 191: ARRAY
 192: PPUSH
 193: CALL_OW 122
 197: GO 223
// ComRepairBuilding ( EnginerList [ i ] , buildings [ 1 ] ) ;
 199: LD_VAR 0 2
 203: PUSH
 204: LD_VAR 0 5
 208: ARRAY
 209: PPUSH
 210: LD_VAR 0 3
 214: PUSH
 215: LD_INT 1
 217: ARRAY
 218: PPUSH
 219: CALL_OW 130
// end ;
 223: GO 162
 225: POP
 226: POP
// end ; if buildings = 0 then
 227: LD_VAR 0 3
 231: PUSH
 232: LD_INT 0
 234: EQUAL
 235: IFFALSE 295
// begin for i = 1 to EnginerList do
 237: LD_ADDR_VAR 0 5
 241: PUSH
 242: DOUBLE
 243: LD_INT 1
 245: DEC
 246: ST_TO_ADDR
 247: LD_VAR 0 2
 251: PUSH
 252: FOR_TO
 253: IFFALSE 293
// begin if not HasTask ( EnginerList [ i ] ) and not IsInUnit ( EnginerList [ i ] ) then
 255: LD_VAR 0 2
 259: PUSH
 260: LD_VAR 0 5
 264: ARRAY
 265: PPUSH
 266: CALL_OW 314
 270: NOT
 271: PUSH
 272: LD_VAR 0 2
 276: PUSH
 277: LD_VAR 0 5
 281: ARRAY
 282: PPUSH
 283: CALL_OW 310
 287: NOT
 288: AND
 289: IFFALSE 291
// end ;
 291: GO 252
 293: POP
 294: POP
// end ; end ;
 295: PPOPN 5
 297: END
// every 0 0$01 do var un , EnginerList , buildings , depots , i ;
 298: GO 300
 300: DISABLE
 301: LD_INT 0
 303: PPUSH
 304: PPUSH
 305: PPUSH
 306: PPUSH
 307: PPUSH
// begin enable ;
 308: ENABLE
// EnginerList := FilterAllUnits ( [ [ [ f_side , 1 ] , [ f_class , 3 ] , [ f_lives , 1000 ] ] ] ) ;
 309: LD_ADDR_VAR 0 2
 313: PUSH
 314: LD_INT 22
 316: PUSH
 317: LD_INT 1
 319: PUSH
 320: EMPTY
 321: LIST
 322: LIST
 323: PUSH
 324: LD_INT 25
 326: PUSH
 327: LD_INT 3
 329: PUSH
 330: EMPTY
 331: LIST
 332: LIST
 333: PUSH
 334: LD_INT 24
 336: PUSH
 337: LD_INT 1000
 339: PUSH
 340: EMPTY
 341: LIST
 342: LIST
 343: PUSH
 344: EMPTY
 345: LIST
 346: LIST
 347: LIST
 348: PUSH
 349: EMPTY
 350: LIST
 351: PPUSH
 352: CALL_OW 69
 356: ST_TO_ADDR
// buildings := FilterAllUnits ( [ [ [ f_side , 1 ] , [ f_type , unit_building ] , [ f_not , [ f_lives , 1000 ] ] ] ] ) ;
 357: LD_ADDR_VAR 0 3
 361: PUSH
 362: LD_INT 22
 364: PUSH
 365: LD_INT 1
 367: PUSH
 368: EMPTY
 369: LIST
 370: LIST
 371: PUSH
 372: LD_INT 21
 374: PUSH
 375: LD_INT 3
 377: PUSH
 378: EMPTY
 379: LIST
 380: LIST
 381: PUSH
 382: LD_INT 3
 384: PUSH
 385: LD_INT 24
 387: PUSH
 388: LD_INT 1000
 390: PUSH
 391: EMPTY
 392: LIST
 393: LIST
 394: PUSH
 395: EMPTY
 396: LIST
 397: LIST
 398: PUSH
 399: EMPTY
 400: LIST
 401: LIST
 402: LIST
 403: PUSH
 404: EMPTY
 405: LIST
 406: PPUSH
 407: CALL_OW 69
 411: ST_TO_ADDR
// if buildings > 0 then
 412: LD_VAR 0 3
 416: PUSH
 417: LD_INT 0
 419: GREATER
 420: IFFALSE 502
// begin for i = 1 to EnginerList do
 422: LD_ADDR_VAR 0 5
 426: PUSH
 427: DOUBLE
 428: LD_INT 1
 430: DEC
 431: ST_TO_ADDR
 432: LD_VAR 0 2
 436: PUSH
 437: FOR_TO
 438: IFFALSE 500
// begin if IsInUnit ( EnginerList [ i ] ) then
 440: LD_VAR 0 2
 444: PUSH
 445: LD_VAR 0 5
 449: ARRAY
 450: PPUSH
 451: CALL_OW 310
 455: IFFALSE 474
// ComExitBuilding ( EnginerList [ i ] ) else
 457: LD_VAR 0 2
 461: PUSH
 462: LD_VAR 0 5
 466: ARRAY
 467: PPUSH
 468: CALL_OW 122
 472: GO 498
// ComRepairBuilding ( EnginerList [ i ] , buildings [ 1 ] ) ;
 474: LD_VAR 0 2
 478: PUSH
 479: LD_VAR 0 5
 483: ARRAY
 484: PPUSH
 485: LD_VAR 0 3
 489: PUSH
 490: LD_INT 1
 492: ARRAY
 493: PPUSH
 494: CALL_OW 130
// end ;
 498: GO 437
 500: POP
 501: POP
// end ; if buildings = 0 then
 502: LD_VAR 0 3
 506: PUSH
 507: LD_INT 0
 509: EQUAL
 510: IFFALSE 570
// begin for i = 1 to EnginerList do
 512: LD_ADDR_VAR 0 5
 516: PUSH
 517: DOUBLE
 518: LD_INT 1
 520: DEC
 521: ST_TO_ADDR
 522: LD_VAR 0 2
 526: PUSH
 527: FOR_TO
 528: IFFALSE 568
// begin if not HasTask ( EnginerList [ i ] ) and not IsInUnit ( EnginerList [ i ] ) then
 530: LD_VAR 0 2
 534: PUSH
 535: LD_VAR 0 5
 539: ARRAY
 540: PPUSH
 541: CALL_OW 314
 545: NOT
 546: PUSH
 547: LD_VAR 0 2
 551: PUSH
 552: LD_VAR 0 5
 556: ARRAY
 557: PPUSH
 558: CALL_OW 310
 562: NOT
 563: AND
 564: IFFALSE 566
// end ;
 566: GO 527
 568: POP
 569: POP
// end ; end ; end_of_file
 570: PPOPN 5
 572: END
// every 0 0$01 trigger isDead ( D ) do
 573: LD_INT 317
 575: PPUSH
 576: CALL_OW 301
 580: IFFALSE 592
 582: GO 584
 584: DISABLE
// begin YouLost ( Demi_nie_zyje ) ;
 585: LD_STRING Demi_nie_zyje
 587: PPUSH
 588: CALL_OW 104
// end ;
 592: END
// every 0 0$01 trigger isDead ( KI ) do
 593: LD_INT 329
 595: PPUSH
 596: CALL_OW 301
 600: IFFALSE 612
 602: GO 604
 604: DISABLE
// begin YouLost ( Kimiko_nie_zyje ) ;
 605: LD_STRING Kimiko_nie_zyje
 607: PPUSH
 608: CALL_OW 104
// end ;
 612: END
// every 0 0$01 trigger isDead ( K ) do
 613: LD_INT 321
 615: PPUSH
 616: CALL_OW 301
 620: IFFALSE 632
 622: GO 624
 624: DISABLE
// begin YouLost ( Karen_nie_zyje ) ;
 625: LD_STRING Karen_nie_zyje
 627: PPUSH
 628: CALL_OW 104
// end ;
 632: END
// every 0 0$01 trigger isDead ( J ) do
 633: LD_INT 312
 635: PPUSH
 636: CALL_OW 301
 640: IFFALSE 652
 642: GO 644
 644: DISABLE
// begin YouLost ( John_nie_zyje ) ;
 645: LD_STRING John_nie_zyje
 647: PPUSH
 648: CALL_OW 104
// end ;
 652: END
// every 0 0$01 trigger isDead ( w1 ) and isDead ( w2 ) and isDead ( w3 ) do
 653: LD_INT 251
 655: PPUSH
 656: CALL_OW 301
 660: PUSH
 661: LD_INT 144
 663: PPUSH
 664: CALL_OW 301
 668: AND
 669: PUSH
 670: LD_INT 210
 672: PPUSH
 673: CALL_OW 301
 677: AND
 678: IFFALSE 724
 680: GO 682
 682: DISABLE
// begin AddMedal ( medal1 , 1 ) ;
 683: LD_STRING medal1
 685: PPUSH
 686: LD_INT 1
 688: PPUSH
 689: CALL_OW 101
// AddMedal ( medal2 , 1 ) ;
 693: LD_STRING medal2
 695: PPUSH
 696: LD_INT 1
 698: PPUSH
 699: CALL_OW 101
// AddMedal ( medal3 , 1 ) ;
 703: LD_STRING medal3
 705: PPUSH
 706: LD_INT 1
 708: PPUSH
 709: CALL_OW 101
// GiveMedals ( Main ) ;
 713: LD_STRING Main
 715: PPUSH
 716: CALL_OW 102
// Youwin ;
 720: CALL_OW 103
// end ;
 724: END
// on Contact ( side1 , side2 ) do begin if side1 = 5 and side2 = 8 then
 725: LD_VAR 0 1
 729: PUSH
 730: LD_INT 5
 732: EQUAL
 733: PUSH
 734: LD_VAR 0 2
 738: PUSH
 739: LD_INT 8
 741: EQUAL
 742: AND
 743: IFFALSE 752
// begin YouLost ( zaatakowales_sojusznika ) ;
 745: LD_STRING zaatakowales_sojusznika
 747: PPUSH
 748: CALL_OW 104
// end ; end ; end_of_file
 752: PPOPN 2
 754: END
// every 0 0$01 do
 755: GO 757
 757: DISABLE
// begin comenterunit ( [ n1 ] , l3 ) ;
 758: LD_INT 428
 760: PUSH
 761: EMPTY
 762: LIST
 763: PPUSH
 764: LD_INT 372
 766: PPUSH
 767: CALL_OW 120
// comenterunit ( [ n2 ] , l1 ) ;
 771: LD_INT 427
 773: PUSH
 774: EMPTY
 775: LIST
 776: PPUSH
 777: LD_INT 45
 779: PPUSH
 780: CALL_OW 120
// comenterunit ( [ m1 ] , f2 ) ;
 784: LD_INT 429
 786: PUSH
 787: EMPTY
 788: LIST
 789: PPUSH
 790: LD_INT 39
 792: PPUSH
 793: CALL_OW 120
// comenterunit ( [ s1 , s2 , s3 , s4 , s5 , s6 ] , arb ) ;
 797: LD_INT 430
 799: PUSH
 800: LD_INT 431
 802: PUSH
 803: LD_INT 432
 805: PUSH
 806: LD_INT 433
 808: PUSH
 809: LD_INT 435
 811: PUSH
 812: LD_INT 434
 814: PUSH
 815: EMPTY
 816: LIST
 817: LIST
 818: LIST
 819: LIST
 820: LIST
 821: LIST
 822: PPUSH
 823: LD_INT 178
 825: PPUSH
 826: CALL_OW 120
// comenterunit ( [ z1 , z2 , z3 , z4 , z5 , z6 ] , rb2 ) ;
 830: LD_INT 479
 832: PUSH
 833: LD_INT 480
 835: PUSH
 836: LD_INT 477
 838: PUSH
 839: LD_INT 476
 841: PUSH
 842: LD_INT 475
 844: PUSH
 845: LD_INT 478
 847: PUSH
 848: EMPTY
 849: LIST
 850: LIST
 851: LIST
 852: LIST
 853: LIST
 854: LIST
 855: PPUSH
 856: LD_INT 11
 858: PPUSH
 859: CALL_OW 120
// comenterunit ( [ z7 , z8 , z9 , z10 , z11 , z12 ] , rb1 ) ;
 863: LD_INT 405
 865: PUSH
 866: LD_INT 406
 868: PUSH
 869: LD_INT 407
 871: PUSH
 872: LD_INT 410
 874: PUSH
 875: LD_INT 409
 877: PUSH
 878: LD_INT 408
 880: PUSH
 881: EMPTY
 882: LIST
 883: LIST
 884: LIST
 885: LIST
 886: LIST
 887: LIST
 888: PPUSH
 889: LD_INT 388
 891: PPUSH
 892: CALL_OW 120
// comenterunit ( [ z13 , z14 , z15 , z16 , z17 , z18 ] , rb ) ;
 896: LD_INT 481
 898: PUSH
 899: LD_INT 484
 901: PUSH
 902: LD_INT 485
 904: PUSH
 905: LD_INT 486
 907: PUSH
 908: LD_INT 482
 910: PUSH
 911: LD_INT 483
 913: PUSH
 914: EMPTY
 915: LIST
 916: LIST
 917: LIST
 918: LIST
 919: LIST
 920: LIST
 921: PPUSH
 922: LD_INT 291
 924: PPUSH
 925: CALL_OW 120
// comenterunit ( [ m2 ] , f ) ;
 929: LD_INT 421
 931: PUSH
 932: EMPTY
 933: LIST
 934: PPUSH
 935: LD_INT 1
 937: PPUSH
 938: CALL_OW 120
// comenterunit ( [ n3 ] , l2 ) ;
 942: LD_INT 422
 944: PUSH
 945: EMPTY
 946: LIST
 947: PPUSH
 948: LD_INT 88
 950: PPUSH
 951: CALL_OW 120
// comenterunit ( [ n4 ] , l ) ;
 955: LD_INT 423
 957: PUSH
 958: EMPTY
 959: LIST
 960: PPUSH
 961: LD_INT 89
 963: PPUSH
 964: CALL_OW 120
// end ; end_of_file
 968: END
// export enemyattack ; starting begin ChangeSide ;
 969: CALL 1130 0 0
// SaveForQuickRestart ;
 973: CALL_OW 22
// Resetfog ;
 977: CALL_OW 335
// CenteronUnits ( AB ) ;
 981: LD_INT 305
 983: PPUSH
 984: CALL_OW 85
// IngameOn ;
 988: CALL_OW 8
// Dialogueon ;
 992: CALL_OW 6
// Say ( AB , d1 ) ;
 996: LD_INT 305
 998: PPUSH
 999: LD_STRING d1
1001: PPUSH
1002: CALL_OW 88
// Say ( AB , d2 ) ;
1006: LD_INT 305
1008: PPUSH
1009: LD_STRING d2
1011: PPUSH
1012: CALL_OW 88
// Say ( j , d3 ) ;
1016: LD_INT 312
1018: PPUSH
1019: LD_STRING d3
1021: PPUSH
1022: CALL_OW 88
// Say ( k , d4 ) ;
1026: LD_INT 321
1028: PPUSH
1029: LD_STRING d4
1031: PPUSH
1032: CALL_OW 88
// Say ( d , d4a ) ;
1036: LD_INT 317
1038: PPUSH
1039: LD_STRING d4a
1041: PPUSH
1042: CALL_OW 88
// Say ( AB , d4b ) ;
1046: LD_INT 305
1048: PPUSH
1049: LD_STRING d4b
1051: PPUSH
1052: CALL_OW 88
// Say ( AB , d5 ) ;
1056: LD_INT 305
1058: PPUSH
1059: LD_STRING d5
1061: PPUSH
1062: CALL_OW 88
// Dialogueoff ;
1066: CALL_OW 7
// ingameoff ;
1070: CALL_OW 9
// ChangeMissionObjectives ( M1 ) ;
1074: LD_STRING M1
1076: PPUSH
1077: CALL_OW 337
// ChangeMissionObjectives ( CEL1 ) ;
1081: LD_STRING CEL1
1083: PPUSH
1084: CALL_OW 337
// AmericanAttack1 ;
1088: CALL 1189 0 0
// wait ( 0 0$60 ) ;
1092: LD_INT 2100
1094: PPUSH
1095: CALL_OW 67
// AmericanAttack2 ;
1099: CALL 1521 0 0
// wait ( 0 0$60 ) ;
1103: LD_INT 2100
1105: PPUSH
1106: CALL_OW 67
// ruattack ;
1110: CALL 1954 0 0
// wait ( 0 0$60 ) ;
1114: LD_INT 2100
1116: PPUSH
1117: CALL_OW 67
// EnemyAttack = 1 ;
1121: LD_ADDR_EXP 1
1125: PUSH
1126: LD_INT 1
1128: ST_TO_ADDR
// end ;
1129: END
// export function ChangeSide ; var un , kinlist ; begin
1130: LD_INT 0
1132: PPUSH
1133: PPUSH
1134: PPUSH
// kinlist = FilterAllUnits ( [ f_side , 2 ] ) ;
1135: LD_ADDR_VAR 0 3
1139: PUSH
1140: LD_INT 22
1142: PUSH
1143: LD_INT 2
1145: PUSH
1146: EMPTY
1147: LIST
1148: LIST
1149: PPUSH
1150: CALL_OW 69
1154: ST_TO_ADDR
// for un in kinlist do
1155: LD_ADDR_VAR 0 2
1159: PUSH
1160: LD_VAR 0 3
1164: PUSH
1165: FOR_IN
1166: IFFALSE 1182
// begin SetSide ( un , 5 ) ;
1168: LD_VAR 0 2
1172: PPUSH
1173: LD_INT 5
1175: PPUSH
1176: CALL_OW 235
// end ;
1180: GO 1165
1182: POP
1183: POP
// end ; end_of_file
1184: LD_VAR 0 1
1188: RET
// export rp1 , rp2 , rp3 , rp4 , rp5 , rp6 , rp7 , rp8 ; export function AmericanAttack1 ; var ap1 , ap2 , ap3 , ap4 , ap5 , ap6 , ap7 , ap8 ; begin
1189: LD_INT 0
1191: PPUSH
1192: PPUSH
1193: PPUSH
1194: PPUSH
1195: PPUSH
1196: PPUSH
1197: PPUSH
1198: PPUSH
1199: PPUSH
// uc_side = 1 ;
1200: LD_ADDR_OWVAR 20
1204: PUSH
1205: LD_INT 1
1207: ST_TO_ADDR
// uc_nation = 1 ;
1208: LD_ADDR_OWVAR 21
1212: PUSH
1213: LD_INT 1
1215: ST_TO_ADDR
// vc_chassis = 5 ;
1216: LD_ADDR_OWVAR 37
1220: PUSH
1221: LD_INT 5
1223: ST_TO_ADDR
// vc_engine = 3 ;
1224: LD_ADDR_OWVAR 39
1228: PUSH
1229: LD_INT 3
1231: ST_TO_ADDR
// vc_control = 3 ;
1232: LD_ADDR_OWVAR 38
1236: PUSH
1237: LD_INT 3
1239: ST_TO_ADDR
// vc_weapon = 4 ;
1240: LD_ADDR_OWVAR 40
1244: PUSH
1245: LD_INT 4
1247: ST_TO_ADDR
// ap1 = CreateVehicle ;
1248: LD_ADDR_VAR 0 2
1252: PUSH
1253: CALL_OW 45
1257: ST_TO_ADDR
// ap2 = CreateVehicle ;
1258: LD_ADDR_VAR 0 3
1262: PUSH
1263: CALL_OW 45
1267: ST_TO_ADDR
// ap3 = CreateVehicle ;
1268: LD_ADDR_VAR 0 4
1272: PUSH
1273: CALL_OW 45
1277: ST_TO_ADDR
// ap4 = CreateVehicle ;
1278: LD_ADDR_VAR 0 5
1282: PUSH
1283: CALL_OW 45
1287: ST_TO_ADDR
// vc_weapon = 6 ;
1288: LD_ADDR_OWVAR 40
1292: PUSH
1293: LD_INT 6
1295: ST_TO_ADDR
// ap5 = CreateVehicle ;
1296: LD_ADDR_VAR 0 6
1300: PUSH
1301: CALL_OW 45
1305: ST_TO_ADDR
// ap6 = CreateVehicle ;
1306: LD_ADDR_VAR 0 7
1310: PUSH
1311: CALL_OW 45
1315: ST_TO_ADDR
// ap7 = CreateVehicle ;
1316: LD_ADDR_VAR 0 8
1320: PUSH
1321: CALL_OW 45
1325: ST_TO_ADDR
// ap8 = CreateVehicle ;
1326: LD_ADDR_VAR 0 9
1330: PUSH
1331: CALL_OW 45
1335: ST_TO_ADDR
// PlaceUnitArea ( ap1 , AmericanSpawn1 , false ) ;
1336: LD_VAR 0 2
1340: PPUSH
1341: LD_INT 3
1343: PPUSH
1344: LD_INT 0
1346: PPUSH
1347: CALL_OW 49
// PlaceUnitArea ( ap2 , AmericanSpawn1 , false ) ;
1351: LD_VAR 0 3
1355: PPUSH
1356: LD_INT 3
1358: PPUSH
1359: LD_INT 0
1361: PPUSH
1362: CALL_OW 49
// PlaceUnitArea ( ap3 , AmericanSpawn1 , false ) ;
1366: LD_VAR 0 4
1370: PPUSH
1371: LD_INT 3
1373: PPUSH
1374: LD_INT 0
1376: PPUSH
1377: CALL_OW 49
// PlaceUnitArea ( ap4 , AmericanSpawn1 , false ) ;
1381: LD_VAR 0 5
1385: PPUSH
1386: LD_INT 3
1388: PPUSH
1389: LD_INT 0
1391: PPUSH
1392: CALL_OW 49
// PlaceUnitArea ( ap5 , AmericanSpawn1 , false ) ;
1396: LD_VAR 0 6
1400: PPUSH
1401: LD_INT 3
1403: PPUSH
1404: LD_INT 0
1406: PPUSH
1407: CALL_OW 49
// PlaceUnitArea ( ap6 , AmericanSpawn1 , false ) ;
1411: LD_VAR 0 7
1415: PPUSH
1416: LD_INT 3
1418: PPUSH
1419: LD_INT 0
1421: PPUSH
1422: CALL_OW 49
// PlaceUnitArea ( ap7 , AmericanSpawn1 , false ) ;
1426: LD_VAR 0 8
1430: PPUSH
1431: LD_INT 3
1433: PPUSH
1434: LD_INT 0
1436: PPUSH
1437: CALL_OW 49
// PlaceUnitArea ( ap8 , AmericanSpawn1 , false ) ;
1441: LD_VAR 0 9
1445: PPUSH
1446: LD_INT 3
1448: PPUSH
1449: LD_INT 0
1451: PPUSH
1452: CALL_OW 49
// ComAgressiveMove ( [ ap1 , ap2 , ap3 , ap4 , ap5 , ap6 , ap7 , ap8 ] , 150 , 88 ) ;
1456: LD_VAR 0 2
1460: PUSH
1461: LD_VAR 0 3
1465: PUSH
1466: LD_VAR 0 4
1470: PUSH
1471: LD_VAR 0 5
1475: PUSH
1476: LD_VAR 0 6
1480: PUSH
1481: LD_VAR 0 7
1485: PUSH
1486: LD_VAR 0 8
1490: PUSH
1491: LD_VAR 0 9
1495: PUSH
1496: EMPTY
1497: LIST
1498: LIST
1499: LIST
1500: LIST
1501: LIST
1502: LIST
1503: LIST
1504: LIST
1505: PPUSH
1506: LD_INT 150
1508: PPUSH
1509: LD_INT 88
1511: PPUSH
1512: CALL_OW 114
// end ;
1516: LD_VAR 0 1
1520: RET
// export function AmericanAttack2 ; var ap1 , ap2 , ap3 , ap4 , ap5 , ap6 , ap7 , ap8 ; begin
1521: LD_INT 0
1523: PPUSH
1524: PPUSH
1525: PPUSH
1526: PPUSH
1527: PPUSH
1528: PPUSH
1529: PPUSH
1530: PPUSH
1531: PPUSH
// uc_side = 4 ;
1532: LD_ADDR_OWVAR 20
1536: PUSH
1537: LD_INT 4
1539: ST_TO_ADDR
// uc_nation = 1 ;
1540: LD_ADDR_OWVAR 21
1544: PUSH
1545: LD_INT 1
1547: ST_TO_ADDR
// vc_chassis = 5 ;
1548: LD_ADDR_OWVAR 37
1552: PUSH
1553: LD_INT 5
1555: ST_TO_ADDR
// vc_engine = 3 ;
1556: LD_ADDR_OWVAR 39
1560: PUSH
1561: LD_INT 3
1563: ST_TO_ADDR
// vc_control = 3 ;
1564: LD_ADDR_OWVAR 38
1568: PUSH
1569: LD_INT 3
1571: ST_TO_ADDR
// vc_weapon = 6 ;
1572: LD_ADDR_OWVAR 40
1576: PUSH
1577: LD_INT 6
1579: ST_TO_ADDR
// ap1 = CreateVehicle ;
1580: LD_ADDR_VAR 0 2
1584: PUSH
1585: CALL_OW 45
1589: ST_TO_ADDR
// ap2 = CreateVehicle ;
1590: LD_ADDR_VAR 0 3
1594: PUSH
1595: CALL_OW 45
1599: ST_TO_ADDR
// ap3 = CreateVehicle ;
1600: LD_ADDR_VAR 0 4
1604: PUSH
1605: CALL_OW 45
1609: ST_TO_ADDR
// ap4 = CreateVehicle ;
1610: LD_ADDR_VAR 0 5
1614: PUSH
1615: CALL_OW 45
1619: ST_TO_ADDR
// vc_weapon = 4 ;
1620: LD_ADDR_OWVAR 40
1624: PUSH
1625: LD_INT 4
1627: ST_TO_ADDR
// ap5 = CreateVehicle ;
1628: LD_ADDR_VAR 0 6
1632: PUSH
1633: CALL_OW 45
1637: ST_TO_ADDR
// ap6 = CreateVehicle ;
1638: LD_ADDR_VAR 0 7
1642: PUSH
1643: CALL_OW 45
1647: ST_TO_ADDR
// ap7 = CreateVehicle ;
1648: LD_ADDR_VAR 0 8
1652: PUSH
1653: CALL_OW 45
1657: ST_TO_ADDR
// ap8 = CreateVehicle ;
1658: LD_ADDR_VAR 0 9
1662: PUSH
1663: CALL_OW 45
1667: ST_TO_ADDR
// PlaceUnitArea ( ap1 , AmericanSpawn2 , false ) ;
1668: LD_VAR 0 2
1672: PPUSH
1673: LD_INT 2
1675: PPUSH
1676: LD_INT 0
1678: PPUSH
1679: CALL_OW 49
// PlaceUnitArea ( ap2 , AmericanSpawn2 , false ) ;
1683: LD_VAR 0 3
1687: PPUSH
1688: LD_INT 2
1690: PPUSH
1691: LD_INT 0
1693: PPUSH
1694: CALL_OW 49
// PlaceUnitArea ( ap3 , AmericanSpawn2 , false ) ;
1698: LD_VAR 0 4
1702: PPUSH
1703: LD_INT 2
1705: PPUSH
1706: LD_INT 0
1708: PPUSH
1709: CALL_OW 49
// PlaceUnitArea ( ap4 , AmericanSpawn2 , false ) ;
1713: LD_VAR 0 5
1717: PPUSH
1718: LD_INT 2
1720: PPUSH
1721: LD_INT 0
1723: PPUSH
1724: CALL_OW 49
// PlaceUnitArea ( ap5 , AmericanSpawn2 , false ) ;
1728: LD_VAR 0 6
1732: PPUSH
1733: LD_INT 2
1735: PPUSH
1736: LD_INT 0
1738: PPUSH
1739: CALL_OW 49
// PlaceUnitArea ( ap6 , AmericanSpawn2 , false ) ;
1743: LD_VAR 0 7
1747: PPUSH
1748: LD_INT 2
1750: PPUSH
1751: LD_INT 0
1753: PPUSH
1754: CALL_OW 49
// PlaceUnitArea ( ap7 , AmericanSpawn2 , false ) ;
1758: LD_VAR 0 8
1762: PPUSH
1763: LD_INT 2
1765: PPUSH
1766: LD_INT 0
1768: PPUSH
1769: CALL_OW 49
// PlaceUnitArea ( ap8 , AmericanSpawn2 , false ) ;
1773: LD_VAR 0 9
1777: PPUSH
1778: LD_INT 2
1780: PPUSH
1781: LD_INT 0
1783: PPUSH
1784: CALL_OW 49
// ComAgressiveMove ( [ ap1 , ap2 , ap3 , ap4 , ap5 , ap6 , ap7 , ap8 ] , 151 , 78 ) ;
1788: LD_VAR 0 2
1792: PUSH
1793: LD_VAR 0 3
1797: PUSH
1798: LD_VAR 0 4
1802: PUSH
1803: LD_VAR 0 5
1807: PUSH
1808: LD_VAR 0 6
1812: PUSH
1813: LD_VAR 0 7
1817: PUSH
1818: LD_VAR 0 8
1822: PUSH
1823: LD_VAR 0 9
1827: PUSH
1828: EMPTY
1829: LIST
1830: LIST
1831: LIST
1832: LIST
1833: LIST
1834: LIST
1835: LIST
1836: LIST
1837: PPUSH
1838: LD_INT 151
1840: PPUSH
1841: LD_INT 78
1843: PPUSH
1844: CALL_OW 114
// ComAgressiveMove ( [ ap1 , ap2 , ap3 , ap4 , ap5 , ap6 , ap7 , ap8 ] , 151 , 78 ) ;
1848: LD_VAR 0 2
1852: PUSH
1853: LD_VAR 0 3
1857: PUSH
1858: LD_VAR 0 4
1862: PUSH
1863: LD_VAR 0 5
1867: PUSH
1868: LD_VAR 0 6
1872: PUSH
1873: LD_VAR 0 7
1877: PUSH
1878: LD_VAR 0 8
1882: PUSH
1883: LD_VAR 0 9
1887: PUSH
1888: EMPTY
1889: LIST
1890: LIST
1891: LIST
1892: LIST
1893: LIST
1894: LIST
1895: LIST
1896: LIST
1897: PPUSH
1898: LD_INT 151
1900: PPUSH
1901: LD_INT 78
1903: PPUSH
1904: CALL_OW 114
// end ;
1908: LD_VAR 0 1
1912: RET
// every 3 3$30 trigger enemyattack = 1 do
1913: LD_EXP 1
1917: PUSH
1918: LD_INT 1
1920: EQUAL
1921: IFFALSE 1953
1923: GO 1925
1925: DISABLE
// begin enable ;
1926: ENABLE
// AmericanAttack1 ;
1927: CALL 1189 0 0
// wait ( 0 0$60 ) ;
1931: LD_INT 2100
1933: PPUSH
1934: CALL_OW 67
// AmericanAttack2 ;
1938: CALL 1521 0 0
// wait ( 0 0$60 ) ;
1942: LD_INT 2100
1944: PPUSH
1945: CALL_OW 67
// ruattack ;
1949: CALL 1954 0 0
// end ;
1953: END
// export hg5 , hg6 , hg7 , hg8 , hg9 , hg10 ; export function ruattack ; begin
1954: LD_INT 0
1956: PPUSH
// uc_side = 3 ;
1957: LD_ADDR_OWVAR 20
1961: PUSH
1962: LD_INT 3
1964: ST_TO_ADDR
// uc_nation = nation_russian ;
1965: LD_ADDR_OWVAR 21
1969: PUSH
1970: LD_INT 3
1972: ST_TO_ADDR
// vc_chassis = ru_heavy_tracked ;
1973: LD_ADDR_OWVAR 37
1977: PUSH
1978: LD_INT 24
1980: ST_TO_ADDR
// vc_engine = engine_siberite ;
1981: LD_ADDR_OWVAR 39
1985: PUSH
1986: LD_INT 3
1988: ST_TO_ADDR
// vc_control = control_computer ;
1989: LD_ADDR_OWVAR 38
1993: PUSH
1994: LD_INT 3
1996: ST_TO_ADDR
// vc_weapon = ru_heavy_gun ;
1997: LD_ADDR_OWVAR 40
2001: PUSH
2002: LD_INT 46
2004: ST_TO_ADDR
// hg5 = CreateVehicle ;
2005: LD_ADDR_EXP 10
2009: PUSH
2010: CALL_OW 45
2014: ST_TO_ADDR
// hg6 = CreateVehicle ;
2015: LD_ADDR_EXP 11
2019: PUSH
2020: CALL_OW 45
2024: ST_TO_ADDR
// hg7 = CreateVehicle ;
2025: LD_ADDR_EXP 12
2029: PUSH
2030: CALL_OW 45
2034: ST_TO_ADDR
// PlaceUnitArea ( hg5 , sojuszru , false ) ;
2035: LD_EXP 10
2039: PPUSH
2040: LD_INT 1
2042: PPUSH
2043: LD_INT 0
2045: PPUSH
2046: CALL_OW 49
// PlaceUnitArea ( hg6 , sojuszru , false ) ;
2050: LD_EXP 11
2054: PPUSH
2055: LD_INT 1
2057: PPUSH
2058: LD_INT 0
2060: PPUSH
2061: CALL_OW 49
// PlaceUnitArea ( hg7 , sojuszru , false ) ;
2065: LD_EXP 12
2069: PPUSH
2070: LD_INT 1
2072: PPUSH
2073: LD_INT 0
2075: PPUSH
2076: CALL_OW 49
// comagressivemove ( [ hg5 , hg6 , hg7 ] , 70 , 61 ) ;
2080: LD_EXP 10
2084: PUSH
2085: LD_EXP 11
2089: PUSH
2090: LD_EXP 12
2094: PUSH
2095: EMPTY
2096: LIST
2097: LIST
2098: LIST
2099: PPUSH
2100: LD_INT 70
2102: PPUSH
2103: LD_INT 61
2105: PPUSH
2106: CALL_OW 114
// uc_nation = nation_russian ;
2110: LD_ADDR_OWVAR 21
2114: PUSH
2115: LD_INT 3
2117: ST_TO_ADDR
// vc_chassis = ru_heavy_tracked ;
2118: LD_ADDR_OWVAR 37
2122: PUSH
2123: LD_INT 24
2125: ST_TO_ADDR
// vc_engine = engine_siberite ;
2126: LD_ADDR_OWVAR 39
2130: PUSH
2131: LD_INT 3
2133: ST_TO_ADDR
// vc_control = control_computer ;
2134: LD_ADDR_OWVAR 38
2138: PUSH
2139: LD_INT 3
2141: ST_TO_ADDR
// vc_weapon = ru_rocket_launcher ;
2142: LD_ADDR_OWVAR 40
2146: PUSH
2147: LD_INT 45
2149: ST_TO_ADDR
// hg8 = CreateVehicle ;
2150: LD_ADDR_EXP 13
2154: PUSH
2155: CALL_OW 45
2159: ST_TO_ADDR
// hg9 = CreateVehicle ;
2160: LD_ADDR_EXP 14
2164: PUSH
2165: CALL_OW 45
2169: ST_TO_ADDR
// hg10 = CreateVehicle ;
2170: LD_ADDR_EXP 15
2174: PUSH
2175: CALL_OW 45
2179: ST_TO_ADDR
// PlaceUnitArea ( hg8 , sojuszru , false ) ;
2180: LD_EXP 13
2184: PPUSH
2185: LD_INT 1
2187: PPUSH
2188: LD_INT 0
2190: PPUSH
2191: CALL_OW 49
// PlaceUnitArea ( hg9 , sojuszru , false ) ;
2195: LD_EXP 14
2199: PPUSH
2200: LD_INT 1
2202: PPUSH
2203: LD_INT 0
2205: PPUSH
2206: CALL_OW 49
// PlaceUnitArea ( hg10 , sojuszru , false ) ;
2210: LD_EXP 15
2214: PPUSH
2215: LD_INT 1
2217: PPUSH
2218: LD_INT 0
2220: PPUSH
2221: CALL_OW 49
// comagressivemove ( [ hg8 , hg9 , hg10 ] , 70 , 61 ) ;
2225: LD_EXP 13
2229: PUSH
2230: LD_EXP 14
2234: PUSH
2235: LD_EXP 15
2239: PUSH
2240: EMPTY
2241: LIST
2242: LIST
2243: LIST
2244: PPUSH
2245: LD_INT 70
2247: PPUSH
2248: LD_INT 61
2250: PPUSH
2251: CALL_OW 114
// end ;
2255: LD_VAR 0 1
2259: RET
