// export ru , am , al , le , sr ; export ams0 , ams1 , ams2 , ams3 , ams4 ; export ams0_sk , ams1_sk , ams2_sk , ams3_sk , ams4_sk ; export ams_1 , ams_2 , ams_3 , ams_4 ; export ams_1_sk , ams_2_sk , ams_3_sk , ams_4_sk ; export amm0 , amm0_sk , amm1 , amm1_sk , amm2 , amm2_sk , amm3 , amm3_sk , amm4 , amm4_sk , amm5 , amm5_sk , amm6 , amm6_sk ; export amv1 , amv1_ch , amv1_wp , amv2 , amv2_ch , amv2_wp , amv3 , amv3_ch , amv3_wp , amv4 , amv4_ch , amv4_wp , amv5 , amv5_ch , amv5_wp , amv6 , amv6_ch , amv6_wp ; export amsm0 , amsm1 , amsm2 , amsm3 , amsm4 , amsm5 ; export amsm0_sk , amsm1_sk , amsm2_sk , amsm3_sk , amsm4_sk , amsm5_sk ; export amsn0 , amsn0_sk , amsn1 , amsn1_sk , amsn2 , amsn2_sk ; export ame0 , ame0_sk , ame1 , ame1_sk , ame2 , ame2_sk , ame3 , ame3_sk , ame4 , ame4_sk ; export als0 , als1 , als2 , als3 , als4 ; export als0_sk , als1_sk , als2_sk , als3_sk , als4_sk ; export als_1 , als_2 , als_3 , als_4 ; export als_1_sk , als_2_sk , als_3_sk , als_4_sk ; export als__1 , als__2 , als__3 , als__4 ; export als__1_sk , als__2_sk , als__3_sk , als__4_sk ; export alm0 , alm0_sk , alm1 , alm1_sk , alm2 , alm2_sk , alm3 , alm3_sk , alm4 , alm4_sk , alm5 , alm5_sk , alm6 , alm6_sk ; export alv1 , alv1_ch , alv1_wp , alv2 , alv2_ch , alv2_wp , alv3 , alv3_ch , alv3_wp , alv4 , alv4_ch , alv4_wp , alv5 , alv5_ch , alv5_wp , alv6 , alv6_ch , alv6_wp ; export alsn0 , alsn0_sk , alsn1 , alsn1_sk , alsn2 , alsn2_sk ; export ale0 , ale0_sk , ale1 , ale1_sk , ale2 , ale2_sk , ale3 , ale3_sk ; export les0 , les1 , les2 ; export les0_sk , les1_sk , les2_sk ; export les_1 , les_2 , les_3 , les_4 ; export les_1_sk , les_2_sk , les_3_sk , les_4_sk ; export lem0 , lem0_sk , lem1 , lem1_sk , lem2 , lem2_sk , lem3 , lem3_sk ; export lev1 , lev1_ch , lev1_wp , lev2 , lev2_ch , lev2_wp , lev3 , lev3_ch , lev3_wp ; export lee0 , lee0_sk , lee1 , lee1_sk , lee2 , lee2_sk ; export lesc_1_sk , lesc_2_sk , lesc_3_sk , lesc_1 , lesc_2 , lesc_3 ; export poticadlo_min , poticadlo_max , lestavidul_min , lestavidul_max , amdoustavit_min , amdoustavit_max , al_att_min , al_att_max ; export albudovy , ambudovy , lebudovy , bdkoef , le_def_sk ; export fst_vybuch , lestavidul , amdoustavit ; export total_sr , al_att , al_def_skill , ru_def_skill , regid , al_surr , am_surr , before_sib_res ; var supply ; function setvars ; begin
   0: LD_INT 0
   2: PPUSH
// ru = 3 ;
   3: LD_ADDR_EXP 1
   7: PUSH
   8: LD_INT 3
  10: ST_TO_ADDR
// am = 1 ;
  11: LD_ADDR_EXP 2
  15: PUSH
  16: LD_INT 1
  18: ST_TO_ADDR
// al = 7 ;
  19: LD_ADDR_EXP 3
  23: PUSH
  24: LD_INT 7
  26: ST_TO_ADDR
// le = 8 ;
  27: LD_ADDR_EXP 4
  31: PUSH
  32: LD_INT 8
  34: ST_TO_ADDR
// sr = 6 ;
  35: LD_ADDR_EXP 5
  39: PUSH
  40: LD_INT 6
  42: ST_TO_ADDR
// ambudovy = [ amware00 , amfact00 , amlabf00 , amlabf01 , ambarr00 , amsimn00 , amcntw00 , amsibp00 , amsibp01 , amsibp02 ] ;
  43: LD_ADDR_EXP 208
  47: PUSH
  48: LD_INT 5
  50: PUSH
  51: LD_INT 6
  53: PUSH
  54: LD_INT 12
  56: PUSH
  57: LD_INT 13
  59: PUSH
  60: LD_INT 14
  62: PUSH
  63: LD_INT 15
  65: PUSH
  66: LD_INT 16
  68: PUSH
  69: LD_INT 17
  71: PUSH
  72: LD_INT 18
  74: PUSH
  75: LD_INT 19
  77: PUSH
  78: EMPTY
  79: LIST
  80: LIST
  81: LIST
  82: LIST
  83: LIST
  84: LIST
  85: LIST
  86: LIST
  87: LIST
  88: LIST
  89: ST_TO_ADDR
// albudovy = [ alware00 , alfact00 , alfact01 , allab00 , allab01 , allab02 , albarr00 , albarr01 , alspow00 , alspow01 , alspow02 , alspow03 , alsbmn00 , alcttw00 , altelp00 ] ;
  90: LD_ADDR_EXP 207
  94: PUSH
  95: LD_INT 25
  97: PUSH
  98: LD_INT 26
 100: PUSH
 101: LD_INT 34
 103: PUSH
 104: LD_INT 40
 106: PUSH
 107: LD_INT 33
 109: PUSH
 110: LD_INT 32
 112: PUSH
 113: LD_INT 41
 115: PUSH
 116: LD_INT 42
 118: PUSH
 119: LD_INT 46
 121: PUSH
 122: LD_INT 44
 124: PUSH
 125: LD_INT 43
 127: PUSH
 128: LD_INT 50
 130: PUSH
 131: LD_INT 45
 133: PUSH
 134: LD_INT 47
 136: PUSH
 137: LD_INT 48
 139: PUSH
 140: EMPTY
 141: LIST
 142: LIST
 143: LIST
 144: LIST
 145: LIST
 146: LIST
 147: LIST
 148: LIST
 149: LIST
 150: LIST
 151: LIST
 152: LIST
 153: LIST
 154: LIST
 155: LIST
 156: ST_TO_ADDR
// lebudovy = [ leware00 , lesmn00 , lebarr00 , lefact00 , lespow00 , lespow01 , lelabf00 , lelabf01 , lesopw02 , ledepo00 ] ;
 157: LD_ADDR_EXP 209
 161: PUSH
 162: LD_INT 51
 164: PUSH
 165: LD_INT 55
 167: PUSH
 168: LD_INT 56
 170: PUSH
 171: LD_INT 57
 173: PUSH
 174: LD_INT 63
 176: PUSH
 177: LD_INT 66
 179: PUSH
 180: LD_INT 64
 182: PUSH
 183: LD_INT 65
 185: PUSH
 186: LD_INT 67
 188: PUSH
 189: LD_INT 72
 191: PUSH
 192: EMPTY
 193: LIST
 194: LIST
 195: LIST
 196: LIST
 197: LIST
 198: LIST
 199: LIST
 200: LIST
 201: LIST
 202: LIST
 203: ST_TO_ADDR
// rusacimajisib = false ;
 204: LD_ADDR_EXP 242
 208: PUSH
 209: LD_INT 0
 211: ST_TO_ADDR
// amsibdeveldone = false ;
 212: LD_ADDR_EXP 241
 216: PUSH
 217: LD_INT 0
 219: ST_TO_ADDR
// legionmed = false ;
 220: LD_ADDR_EXP 247
 224: PUSH
 225: LD_INT 0
 227: ST_TO_ADDR
// vyhrozoval = false ;
 228: LD_ADDR_EXP 243
 232: PUSH
 233: LD_INT 0
 235: ST_TO_ADDR
// hodiliju = false ;
 236: LD_ADDR_EXP 246
 240: PUSH
 241: LD_INT 0
 243: ST_TO_ADDR
// lesurr = false ;
 244: LD_ADDR_EXP 248
 248: PUSH
 249: LD_INT 0
 251: ST_TO_ADDR
// fst_vybuch = 1 ;
 252: LD_ADDR_EXP 212
 256: PUSH
 257: LD_INT 1
 259: ST_TO_ADDR
// poticadlo_min = [ 12 , 6 , 6 ] [ difficulty ] ;
 260: LD_ADDR_EXP 199
 264: PUSH
 265: LD_INT 12
 267: PUSH
 268: LD_INT 6
 270: PUSH
 271: LD_INT 6
 273: PUSH
 274: EMPTY
 275: LIST
 276: LIST
 277: LIST
 278: PUSH
 279: LD_OWVAR 67
 283: ARRAY
 284: ST_TO_ADDR
// poticadlo_max = [ 42 , 36 , 24 ] [ difficulty ] ;
 285: LD_ADDR_EXP 200
 289: PUSH
 290: LD_INT 42
 292: PUSH
 293: LD_INT 36
 295: PUSH
 296: LD_INT 24
 298: PUSH
 299: EMPTY
 300: LIST
 301: LIST
 302: LIST
 303: PUSH
 304: LD_OWVAR 67
 308: ARRAY
 309: ST_TO_ADDR
// lestavidul_min = [ 18 , 6 , 6 ] [ difficulty ] ;
 310: LD_ADDR_EXP 201
 314: PUSH
 315: LD_INT 18
 317: PUSH
 318: LD_INT 6
 320: PUSH
 321: LD_INT 6
 323: PUSH
 324: EMPTY
 325: LIST
 326: LIST
 327: LIST
 328: PUSH
 329: LD_OWVAR 67
 333: ARRAY
 334: ST_TO_ADDR
// lestavidul_max = [ 30 , 18 , 12 ] [ difficulty ] ;
 335: LD_ADDR_EXP 202
 339: PUSH
 340: LD_INT 30
 342: PUSH
 343: LD_INT 18
 345: PUSH
 346: LD_INT 12
 348: PUSH
 349: EMPTY
 350: LIST
 351: LIST
 352: LIST
 353: PUSH
 354: LD_OWVAR 67
 358: ARRAY
 359: ST_TO_ADDR
// amdoustavit_min = [ 18 , 6 , 6 ] [ difficulty ] ;
 360: LD_ADDR_EXP 203
 364: PUSH
 365: LD_INT 18
 367: PUSH
 368: LD_INT 6
 370: PUSH
 371: LD_INT 6
 373: PUSH
 374: EMPTY
 375: LIST
 376: LIST
 377: LIST
 378: PUSH
 379: LD_OWVAR 67
 383: ARRAY
 384: ST_TO_ADDR
// amdoustavit_max = [ 30 , 18 , 12 ] [ difficulty ] ;
 385: LD_ADDR_EXP 204
 389: PUSH
 390: LD_INT 30
 392: PUSH
 393: LD_INT 18
 395: PUSH
 396: LD_INT 12
 398: PUSH
 399: EMPTY
 400: LIST
 401: LIST
 402: LIST
 403: PUSH
 404: LD_OWVAR 67
 408: ARRAY
 409: ST_TO_ADDR
// al_att_min = [ 90 , 90 , 60 ] [ difficulty ] ;
 410: LD_ADDR_EXP 205
 414: PUSH
 415: LD_INT 90
 417: PUSH
 418: LD_INT 90
 420: PUSH
 421: LD_INT 60
 423: PUSH
 424: EMPTY
 425: LIST
 426: LIST
 427: LIST
 428: PUSH
 429: LD_OWVAR 67
 433: ARRAY
 434: ST_TO_ADDR
// al_att_max = [ 150 , 120 , 90 ] [ difficulty ] ;
 435: LD_ADDR_EXP 206
 439: PUSH
 440: LD_INT 150
 442: PUSH
 443: LD_INT 120
 445: PUSH
 446: LD_INT 90
 448: PUSH
 449: EMPTY
 450: LIST
 451: LIST
 452: LIST
 453: PUSH
 454: LD_OWVAR 67
 458: ARRAY
 459: ST_TO_ADDR
// poticadlo = rand ( poticadlo_min , poticadlo_max ) ;
 460: LD_ADDR_EXP 240
 464: PUSH
 465: LD_EXP 199
 469: PPUSH
 470: LD_EXP 200
 474: PPUSH
 475: CALL_OW 12
 479: ST_TO_ADDR
// lestavidul = rand ( lestavidul_min , lestavidul_max ) ;
 480: LD_ADDR_EXP 213
 484: PUSH
 485: LD_EXP 201
 489: PPUSH
 490: LD_EXP 202
 494: PPUSH
 495: CALL_OW 12
 499: ST_TO_ADDR
// amdoustavit = rand ( amdoustavit_min , amdoustavit_max ) ;
 500: LD_ADDR_EXP 214
 504: PUSH
 505: LD_EXP 203
 509: PPUSH
 510: LD_EXP 204
 514: PPUSH
 515: CALL_OW 12
 519: ST_TO_ADDR
// ledolu = 0 ;
 520: LD_ADDR_EXP 227
 524: PUSH
 525: LD_INT 0
 527: ST_TO_ADDR
// poziceledolu = [ [ 115 , 130 ] , [ 113 , 121 ] , [ 103 , 126 ] , [ 103 , 133 ] ] ;
 528: LD_ADDR_EXP 228
 532: PUSH
 533: LD_INT 115
 535: PUSH
 536: LD_INT 130
 538: PUSH
 539: EMPTY
 540: LIST
 541: LIST
 542: PUSH
 543: LD_INT 113
 545: PUSH
 546: LD_INT 121
 548: PUSH
 549: EMPTY
 550: LIST
 551: LIST
 552: PUSH
 553: LD_INT 103
 555: PUSH
 556: LD_INT 126
 558: PUSH
 559: EMPTY
 560: LIST
 561: LIST
 562: PUSH
 563: LD_INT 103
 565: PUSH
 566: LD_INT 133
 568: PUSH
 569: EMPTY
 570: LIST
 571: LIST
 572: PUSH
 573: EMPTY
 574: LIST
 575: LIST
 576: LIST
 577: LIST
 578: ST_TO_ADDR
// vezeartef = 0 ;
 579: LD_ADDR_EXP 244
 583: PUSH
 584: LD_INT 0
 586: ST_TO_ADDR
// artef_gone = false ;
 587: LD_ADDR_EXP 245
 591: PUSH
 592: LD_INT 0
 594: ST_TO_ADDR
// total_sr = 0 ;
 595: LD_ADDR_EXP 215
 599: PUSH
 600: LD_INT 0
 602: ST_TO_ADDR
// al_att = rand ( al_att_min , al_att_max ) ;
 603: LD_ADDR_EXP 216
 607: PUSH
 608: LD_EXP 205
 612: PPUSH
 613: LD_EXP 206
 617: PPUSH
 618: CALL_OW 12
 622: ST_TO_ADDR
// regid = 0 ;
 623: LD_ADDR_EXP 219
 627: PUSH
 628: LD_INT 0
 630: ST_TO_ADDR
// al_surr = false ;
 631: LD_ADDR_EXP 220
 635: PUSH
 636: LD_INT 0
 638: ST_TO_ADDR
// am_surr = false ;
 639: LD_ADDR_EXP 221
 643: PUSH
 644: LD_INT 0
 646: ST_TO_ADDR
// before_sib_res = [ 20 20$0 , 10 10$0 , 0 ] [ difficulty ] ;
 647: LD_ADDR_EXP 222
 651: PUSH
 652: LD_INT 42000
 654: PUSH
 655: LD_INT 21000
 657: PUSH
 658: LD_INT 0
 660: PUSH
 661: EMPTY
 662: LIST
 663: LIST
 664: LIST
 665: PUSH
 666: LD_OWVAR 67
 670: ARRAY
 671: ST_TO_ADDR
// supply = 30 ;
 672: LD_ADDR_LOC 1
 676: PUSH
 677: LD_INT 30
 679: ST_TO_ADDR
// bdkoef = 3 ;
 680: LD_ADDR_EXP 210
 684: PUSH
 685: LD_INT 3
 687: ST_TO_ADDR
// ru_def_skill = [ 8 , 6 , 4 ] [ difficulty ] ;
 688: LD_ADDR_EXP 218
 692: PUSH
 693: LD_INT 8
 695: PUSH
 696: LD_INT 6
 698: PUSH
 699: LD_INT 4
 701: PUSH
 702: EMPTY
 703: LIST
 704: LIST
 705: LIST
 706: PUSH
 707: LD_OWVAR 67
 711: ARRAY
 712: ST_TO_ADDR
// al_def_skill = [ 6 , 8 , 9 ] [ difficulty ] ;
 713: LD_ADDR_EXP 217
 717: PUSH
 718: LD_INT 6
 720: PUSH
 721: LD_INT 8
 723: PUSH
 724: LD_INT 9
 726: PUSH
 727: EMPTY
 728: LIST
 729: LIST
 730: LIST
 731: PUSH
 732: LD_OWVAR 67
 736: ARRAY
 737: ST_TO_ADDR
// le_def_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 738: LD_ADDR_EXP 211
 742: PUSH
 743: LD_INT 6
 745: PUSH
 746: LD_INT 8
 748: PUSH
 749: LD_INT 10
 751: PUSH
 752: EMPTY
 753: LIST
 754: LIST
 755: LIST
 756: PUSH
 757: LD_OWVAR 67
 761: ARRAY
 762: ST_TO_ADDR
// ams0_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 763: LD_ADDR_EXP 11
 767: PUSH
 768: LD_INT 6
 770: PUSH
 771: LD_INT 8
 773: PUSH
 774: LD_INT 10
 776: PUSH
 777: EMPTY
 778: LIST
 779: LIST
 780: LIST
 781: PUSH
 782: LD_OWVAR 67
 786: ARRAY
 787: ST_TO_ADDR
// ams1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 788: LD_ADDR_EXP 12
 792: PUSH
 793: LD_INT 6
 795: PUSH
 796: LD_INT 8
 798: PUSH
 799: LD_INT 10
 801: PUSH
 802: EMPTY
 803: LIST
 804: LIST
 805: LIST
 806: PUSH
 807: LD_OWVAR 67
 811: ARRAY
 812: ST_TO_ADDR
// ams2_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 813: LD_ADDR_EXP 13
 817: PUSH
 818: LD_INT 6
 820: PUSH
 821: LD_INT 8
 823: PUSH
 824: LD_INT 10
 826: PUSH
 827: EMPTY
 828: LIST
 829: LIST
 830: LIST
 831: PUSH
 832: LD_OWVAR 67
 836: ARRAY
 837: ST_TO_ADDR
// ams3_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 838: LD_ADDR_EXP 14
 842: PUSH
 843: LD_INT 6
 845: PUSH
 846: LD_INT 8
 848: PUSH
 849: LD_INT 10
 851: PUSH
 852: EMPTY
 853: LIST
 854: LIST
 855: LIST
 856: PUSH
 857: LD_OWVAR 67
 861: ARRAY
 862: ST_TO_ADDR
// ams4_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 863: LD_ADDR_EXP 15
 867: PUSH
 868: LD_INT 6
 870: PUSH
 871: LD_INT 8
 873: PUSH
 874: LD_INT 10
 876: PUSH
 877: EMPTY
 878: LIST
 879: LIST
 880: LIST
 881: PUSH
 882: LD_OWVAR 67
 886: ARRAY
 887: ST_TO_ADDR
// ams_1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 888: LD_ADDR_EXP 20
 892: PUSH
 893: LD_INT 6
 895: PUSH
 896: LD_INT 8
 898: PUSH
 899: LD_INT 10
 901: PUSH
 902: EMPTY
 903: LIST
 904: LIST
 905: LIST
 906: PUSH
 907: LD_OWVAR 67
 911: ARRAY
 912: ST_TO_ADDR
// ams_2_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 913: LD_ADDR_EXP 21
 917: PUSH
 918: LD_INT 6
 920: PUSH
 921: LD_INT 8
 923: PUSH
 924: LD_INT 10
 926: PUSH
 927: EMPTY
 928: LIST
 929: LIST
 930: LIST
 931: PUSH
 932: LD_OWVAR 67
 936: ARRAY
 937: ST_TO_ADDR
// ams_3_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 938: LD_ADDR_EXP 22
 942: PUSH
 943: LD_INT 6
 945: PUSH
 946: LD_INT 8
 948: PUSH
 949: LD_INT 10
 951: PUSH
 952: EMPTY
 953: LIST
 954: LIST
 955: LIST
 956: PUSH
 957: LD_OWVAR 67
 961: ARRAY
 962: ST_TO_ADDR
// ams_4_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 963: LD_ADDR_EXP 23
 967: PUSH
 968: LD_INT 6
 970: PUSH
 971: LD_INT 8
 973: PUSH
 974: LD_INT 10
 976: PUSH
 977: EMPTY
 978: LIST
 979: LIST
 980: LIST
 981: PUSH
 982: LD_OWVAR 67
 986: ARRAY
 987: ST_TO_ADDR
// amm0_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
 988: LD_ADDR_EXP 25
 992: PUSH
 993: LD_INT 6
 995: PUSH
 996: LD_INT 8
 998: PUSH
 999: LD_INT 10
1001: PUSH
1002: EMPTY
1003: LIST
1004: LIST
1005: LIST
1006: PUSH
1007: LD_OWVAR 67
1011: ARRAY
1012: ST_TO_ADDR
// amm1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1013: LD_ADDR_EXP 27
1017: PUSH
1018: LD_INT 6
1020: PUSH
1021: LD_INT 8
1023: PUSH
1024: LD_INT 10
1026: PUSH
1027: EMPTY
1028: LIST
1029: LIST
1030: LIST
1031: PUSH
1032: LD_OWVAR 67
1036: ARRAY
1037: ST_TO_ADDR
// amm2_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1038: LD_ADDR_EXP 29
1042: PUSH
1043: LD_INT 6
1045: PUSH
1046: LD_INT 8
1048: PUSH
1049: LD_INT 10
1051: PUSH
1052: EMPTY
1053: LIST
1054: LIST
1055: LIST
1056: PUSH
1057: LD_OWVAR 67
1061: ARRAY
1062: ST_TO_ADDR
// amm3_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1063: LD_ADDR_EXP 31
1067: PUSH
1068: LD_INT 6
1070: PUSH
1071: LD_INT 8
1073: PUSH
1074: LD_INT 10
1076: PUSH
1077: EMPTY
1078: LIST
1079: LIST
1080: LIST
1081: PUSH
1082: LD_OWVAR 67
1086: ARRAY
1087: ST_TO_ADDR
// amm4_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1088: LD_ADDR_EXP 33
1092: PUSH
1093: LD_INT 6
1095: PUSH
1096: LD_INT 8
1098: PUSH
1099: LD_INT 10
1101: PUSH
1102: EMPTY
1103: LIST
1104: LIST
1105: LIST
1106: PUSH
1107: LD_OWVAR 67
1111: ARRAY
1112: ST_TO_ADDR
// amm5_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1113: LD_ADDR_EXP 35
1117: PUSH
1118: LD_INT 6
1120: PUSH
1121: LD_INT 8
1123: PUSH
1124: LD_INT 10
1126: PUSH
1127: EMPTY
1128: LIST
1129: LIST
1130: LIST
1131: PUSH
1132: LD_OWVAR 67
1136: ARRAY
1137: ST_TO_ADDR
// amm6_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1138: LD_ADDR_EXP 37
1142: PUSH
1143: LD_INT 6
1145: PUSH
1146: LD_INT 8
1148: PUSH
1149: LD_INT 10
1151: PUSH
1152: EMPTY
1153: LIST
1154: LIST
1155: LIST
1156: PUSH
1157: LD_OWVAR 67
1161: ARRAY
1162: ST_TO_ADDR
// amv1_ch = [ us_medium_tracked , us_morphling , us_heavy_tracked ] [ difficulty ] ;
1163: LD_ADDR_EXP 39
1167: PUSH
1168: LD_INT 3
1170: PUSH
1171: LD_INT 5
1173: PUSH
1174: LD_INT 4
1176: PUSH
1177: EMPTY
1178: LIST
1179: LIST
1180: LIST
1181: PUSH
1182: LD_OWVAR 67
1186: ARRAY
1187: ST_TO_ADDR
// amv1_wp = [ us_double_gun , us_heavy_gun , us_heavy_gun ] [ difficulty ] ;
1188: LD_ADDR_EXP 40
1192: PUSH
1193: LD_INT 5
1195: PUSH
1196: LD_INT 6
1198: PUSH
1199: LD_INT 6
1201: PUSH
1202: EMPTY
1203: LIST
1204: LIST
1205: LIST
1206: PUSH
1207: LD_OWVAR 67
1211: ARRAY
1212: ST_TO_ADDR
// amv2_ch = [ us_medium_tracked , us_medium_tracked , us_heavy_tracked ] [ difficulty ] ;
1213: LD_ADDR_EXP 42
1217: PUSH
1218: LD_INT 3
1220: PUSH
1221: LD_INT 3
1223: PUSH
1224: LD_INT 4
1226: PUSH
1227: EMPTY
1228: LIST
1229: LIST
1230: LIST
1231: PUSH
1232: LD_OWVAR 67
1236: ARRAY
1237: ST_TO_ADDR
// amv2_wp = [ us_rocket_launcher , us_rocket_launcher , us_rocket_launcher ] [ difficulty ] ;
1238: LD_ADDR_EXP 43
1242: PUSH
1243: LD_INT 7
1245: PUSH
1246: LD_INT 7
1248: PUSH
1249: LD_INT 7
1251: PUSH
1252: EMPTY
1253: LIST
1254: LIST
1255: LIST
1256: PUSH
1257: LD_OWVAR 67
1261: ARRAY
1262: ST_TO_ADDR
// amv3_ch = [ us_medium_wheeled , us_medium_tracked , us_heavy_tracked ] [ difficulty ] ;
1263: LD_ADDR_EXP 45
1267: PUSH
1268: LD_INT 2
1270: PUSH
1271: LD_INT 3
1273: PUSH
1274: LD_INT 4
1276: PUSH
1277: EMPTY
1278: LIST
1279: LIST
1280: LIST
1281: PUSH
1282: LD_OWVAR 67
1286: ARRAY
1287: ST_TO_ADDR
// amv3_wp = [ us_laser , us_laser , us_laser ] [ difficulty ] ;
1288: LD_ADDR_EXP 46
1292: PUSH
1293: LD_INT 9
1295: PUSH
1296: LD_INT 9
1298: PUSH
1299: LD_INT 9
1301: PUSH
1302: EMPTY
1303: LIST
1304: LIST
1305: LIST
1306: PUSH
1307: LD_OWVAR 67
1311: ARRAY
1312: ST_TO_ADDR
// amv4_ch = [ us_morphling , us_morphling , us_heavy_tracked ] [ difficulty ] ;
1313: LD_ADDR_EXP 48
1317: PUSH
1318: LD_INT 5
1320: PUSH
1321: LD_INT 5
1323: PUSH
1324: LD_INT 4
1326: PUSH
1327: EMPTY
1328: LIST
1329: LIST
1330: LIST
1331: PUSH
1332: LD_OWVAR 67
1336: ARRAY
1337: ST_TO_ADDR
// amv4_wp = [ us_heavy_gun , us_heavy_gun , us_heavy_gun ] [ difficulty ] ;
1338: LD_ADDR_EXP 49
1342: PUSH
1343: LD_INT 6
1345: PUSH
1346: LD_INT 6
1348: PUSH
1349: LD_INT 6
1351: PUSH
1352: EMPTY
1353: LIST
1354: LIST
1355: LIST
1356: PUSH
1357: LD_OWVAR 67
1361: ARRAY
1362: ST_TO_ADDR
// amv5_ch = [ us_medium_tracked , us_medium_tracked , us_heavy_tracked ] [ difficulty ] ;
1363: LD_ADDR_EXP 51
1367: PUSH
1368: LD_INT 3
1370: PUSH
1371: LD_INT 3
1373: PUSH
1374: LD_INT 4
1376: PUSH
1377: EMPTY
1378: LIST
1379: LIST
1380: LIST
1381: PUSH
1382: LD_OWVAR 67
1386: ARRAY
1387: ST_TO_ADDR
// amv5_wp = [ us_rocket_launcher , us_rocket_launcher , us_rocket_launcher ] [ difficulty ] ;
1388: LD_ADDR_EXP 52
1392: PUSH
1393: LD_INT 7
1395: PUSH
1396: LD_INT 7
1398: PUSH
1399: LD_INT 7
1401: PUSH
1402: EMPTY
1403: LIST
1404: LIST
1405: LIST
1406: PUSH
1407: LD_OWVAR 67
1411: ARRAY
1412: ST_TO_ADDR
// amv6_ch = [ us_heavy_tracked , us_heavy_tracked , us_heavy_tracked ] [ difficulty ] ;
1413: LD_ADDR_EXP 54
1417: PUSH
1418: LD_INT 4
1420: PUSH
1421: LD_INT 4
1423: PUSH
1424: LD_INT 4
1426: PUSH
1427: EMPTY
1428: LIST
1429: LIST
1430: LIST
1431: PUSH
1432: LD_OWVAR 67
1436: ARRAY
1437: ST_TO_ADDR
// amv6_wp = [ us_double_gun , us_heavy_gun , us_heavy_gun ] [ difficulty ] ;
1438: LD_ADDR_EXP 55
1442: PUSH
1443: LD_INT 5
1445: PUSH
1446: LD_INT 6
1448: PUSH
1449: LD_INT 6
1451: PUSH
1452: EMPTY
1453: LIST
1454: LIST
1455: LIST
1456: PUSH
1457: LD_OWVAR 67
1461: ARRAY
1462: ST_TO_ADDR
// amsm0_sk = [ 5 , 7 , 9 ] [ difficulty ] ;
1463: LD_ADDR_EXP 62
1467: PUSH
1468: LD_INT 5
1470: PUSH
1471: LD_INT 7
1473: PUSH
1474: LD_INT 9
1476: PUSH
1477: EMPTY
1478: LIST
1479: LIST
1480: LIST
1481: PUSH
1482: LD_OWVAR 67
1486: ARRAY
1487: ST_TO_ADDR
// amsm1_sk = [ 5 , 7 , 9 ] [ difficulty ] ;
1488: LD_ADDR_EXP 63
1492: PUSH
1493: LD_INT 5
1495: PUSH
1496: LD_INT 7
1498: PUSH
1499: LD_INT 9
1501: PUSH
1502: EMPTY
1503: LIST
1504: LIST
1505: LIST
1506: PUSH
1507: LD_OWVAR 67
1511: ARRAY
1512: ST_TO_ADDR
// amsm2_sk = [ 5 , 7 , 9 ] [ difficulty ] ;
1513: LD_ADDR_EXP 64
1517: PUSH
1518: LD_INT 5
1520: PUSH
1521: LD_INT 7
1523: PUSH
1524: LD_INT 9
1526: PUSH
1527: EMPTY
1528: LIST
1529: LIST
1530: LIST
1531: PUSH
1532: LD_OWVAR 67
1536: ARRAY
1537: ST_TO_ADDR
// amsm3_sk = [ 5 , 7 , 9 ] [ difficulty ] ;
1538: LD_ADDR_EXP 65
1542: PUSH
1543: LD_INT 5
1545: PUSH
1546: LD_INT 7
1548: PUSH
1549: LD_INT 9
1551: PUSH
1552: EMPTY
1553: LIST
1554: LIST
1555: LIST
1556: PUSH
1557: LD_OWVAR 67
1561: ARRAY
1562: ST_TO_ADDR
// amsm4_sk = [ 5 , 7 , 9 ] [ difficulty ] ;
1563: LD_ADDR_EXP 66
1567: PUSH
1568: LD_INT 5
1570: PUSH
1571: LD_INT 7
1573: PUSH
1574: LD_INT 9
1576: PUSH
1577: EMPTY
1578: LIST
1579: LIST
1580: LIST
1581: PUSH
1582: LD_OWVAR 67
1586: ARRAY
1587: ST_TO_ADDR
// amsm5_sk = [ 5 , 7 , 9 ] [ difficulty ] ;
1588: LD_ADDR_EXP 67
1592: PUSH
1593: LD_INT 5
1595: PUSH
1596: LD_INT 7
1598: PUSH
1599: LD_INT 9
1601: PUSH
1602: EMPTY
1603: LIST
1604: LIST
1605: LIST
1606: PUSH
1607: LD_OWVAR 67
1611: ARRAY
1612: ST_TO_ADDR
// amsn0_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1613: LD_ADDR_EXP 69
1617: PUSH
1618: LD_INT 6
1620: PUSH
1621: LD_INT 8
1623: PUSH
1624: LD_INT 10
1626: PUSH
1627: EMPTY
1628: LIST
1629: LIST
1630: LIST
1631: PUSH
1632: LD_OWVAR 67
1636: ARRAY
1637: ST_TO_ADDR
// amsn1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1638: LD_ADDR_EXP 71
1642: PUSH
1643: LD_INT 6
1645: PUSH
1646: LD_INT 8
1648: PUSH
1649: LD_INT 10
1651: PUSH
1652: EMPTY
1653: LIST
1654: LIST
1655: LIST
1656: PUSH
1657: LD_OWVAR 67
1661: ARRAY
1662: ST_TO_ADDR
// amsn2_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1663: LD_ADDR_EXP 73
1667: PUSH
1668: LD_INT 6
1670: PUSH
1671: LD_INT 8
1673: PUSH
1674: LD_INT 10
1676: PUSH
1677: EMPTY
1678: LIST
1679: LIST
1680: LIST
1681: PUSH
1682: LD_OWVAR 67
1686: ARRAY
1687: ST_TO_ADDR
// ame0_sk = [ 6 , 9 , 10 ] [ difficulty ] ;
1688: LD_ADDR_EXP 75
1692: PUSH
1693: LD_INT 6
1695: PUSH
1696: LD_INT 9
1698: PUSH
1699: LD_INT 10
1701: PUSH
1702: EMPTY
1703: LIST
1704: LIST
1705: LIST
1706: PUSH
1707: LD_OWVAR 67
1711: ARRAY
1712: ST_TO_ADDR
// ame1_sk = [ 6 , 9 , 10 ] [ difficulty ] ;
1713: LD_ADDR_EXP 77
1717: PUSH
1718: LD_INT 6
1720: PUSH
1721: LD_INT 9
1723: PUSH
1724: LD_INT 10
1726: PUSH
1727: EMPTY
1728: LIST
1729: LIST
1730: LIST
1731: PUSH
1732: LD_OWVAR 67
1736: ARRAY
1737: ST_TO_ADDR
// ame2_sk = [ 6 , 9 , 10 ] [ difficulty ] ;
1738: LD_ADDR_EXP 79
1742: PUSH
1743: LD_INT 6
1745: PUSH
1746: LD_INT 9
1748: PUSH
1749: LD_INT 10
1751: PUSH
1752: EMPTY
1753: LIST
1754: LIST
1755: LIST
1756: PUSH
1757: LD_OWVAR 67
1761: ARRAY
1762: ST_TO_ADDR
// ame3_sk = [ 6 , 9 , 10 ] [ difficulty ] ;
1763: LD_ADDR_EXP 81
1767: PUSH
1768: LD_INT 6
1770: PUSH
1771: LD_INT 9
1773: PUSH
1774: LD_INT 10
1776: PUSH
1777: EMPTY
1778: LIST
1779: LIST
1780: LIST
1781: PUSH
1782: LD_OWVAR 67
1786: ARRAY
1787: ST_TO_ADDR
// ame4_sk = [ 6 , 9 , 10 ] [ difficulty ] ;
1788: LD_ADDR_EXP 83
1792: PUSH
1793: LD_INT 6
1795: PUSH
1796: LD_INT 9
1798: PUSH
1799: LD_INT 10
1801: PUSH
1802: EMPTY
1803: LIST
1804: LIST
1805: LIST
1806: PUSH
1807: LD_OWVAR 67
1811: ARRAY
1812: ST_TO_ADDR
// als0_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1813: LD_ADDR_EXP 89
1817: PUSH
1818: LD_INT 6
1820: PUSH
1821: LD_INT 8
1823: PUSH
1824: LD_INT 10
1826: PUSH
1827: EMPTY
1828: LIST
1829: LIST
1830: LIST
1831: PUSH
1832: LD_OWVAR 67
1836: ARRAY
1837: ST_TO_ADDR
// als1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1838: LD_ADDR_EXP 90
1842: PUSH
1843: LD_INT 6
1845: PUSH
1846: LD_INT 8
1848: PUSH
1849: LD_INT 10
1851: PUSH
1852: EMPTY
1853: LIST
1854: LIST
1855: LIST
1856: PUSH
1857: LD_OWVAR 67
1861: ARRAY
1862: ST_TO_ADDR
// als2_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1863: LD_ADDR_EXP 91
1867: PUSH
1868: LD_INT 6
1870: PUSH
1871: LD_INT 8
1873: PUSH
1874: LD_INT 10
1876: PUSH
1877: EMPTY
1878: LIST
1879: LIST
1880: LIST
1881: PUSH
1882: LD_OWVAR 67
1886: ARRAY
1887: ST_TO_ADDR
// als3_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1888: LD_ADDR_EXP 92
1892: PUSH
1893: LD_INT 6
1895: PUSH
1896: LD_INT 8
1898: PUSH
1899: LD_INT 10
1901: PUSH
1902: EMPTY
1903: LIST
1904: LIST
1905: LIST
1906: PUSH
1907: LD_OWVAR 67
1911: ARRAY
1912: ST_TO_ADDR
// als4_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1913: LD_ADDR_EXP 93
1917: PUSH
1918: LD_INT 6
1920: PUSH
1921: LD_INT 8
1923: PUSH
1924: LD_INT 10
1926: PUSH
1927: EMPTY
1928: LIST
1929: LIST
1930: LIST
1931: PUSH
1932: LD_OWVAR 67
1936: ARRAY
1937: ST_TO_ADDR
// als_1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1938: LD_ADDR_EXP 98
1942: PUSH
1943: LD_INT 6
1945: PUSH
1946: LD_INT 8
1948: PUSH
1949: LD_INT 10
1951: PUSH
1952: EMPTY
1953: LIST
1954: LIST
1955: LIST
1956: PUSH
1957: LD_OWVAR 67
1961: ARRAY
1962: ST_TO_ADDR
// als_2_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1963: LD_ADDR_EXP 99
1967: PUSH
1968: LD_INT 6
1970: PUSH
1971: LD_INT 8
1973: PUSH
1974: LD_INT 10
1976: PUSH
1977: EMPTY
1978: LIST
1979: LIST
1980: LIST
1981: PUSH
1982: LD_OWVAR 67
1986: ARRAY
1987: ST_TO_ADDR
// als_3_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
1988: LD_ADDR_EXP 100
1992: PUSH
1993: LD_INT 6
1995: PUSH
1996: LD_INT 8
1998: PUSH
1999: LD_INT 10
2001: PUSH
2002: EMPTY
2003: LIST
2004: LIST
2005: LIST
2006: PUSH
2007: LD_OWVAR 67
2011: ARRAY
2012: ST_TO_ADDR
// als_4_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2013: LD_ADDR_EXP 101
2017: PUSH
2018: LD_INT 6
2020: PUSH
2021: LD_INT 8
2023: PUSH
2024: LD_INT 10
2026: PUSH
2027: EMPTY
2028: LIST
2029: LIST
2030: LIST
2031: PUSH
2032: LD_OWVAR 67
2036: ARRAY
2037: ST_TO_ADDR
// als__1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2038: LD_ADDR_EXP 106
2042: PUSH
2043: LD_INT 6
2045: PUSH
2046: LD_INT 8
2048: PUSH
2049: LD_INT 10
2051: PUSH
2052: EMPTY
2053: LIST
2054: LIST
2055: LIST
2056: PUSH
2057: LD_OWVAR 67
2061: ARRAY
2062: ST_TO_ADDR
// als__2_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2063: LD_ADDR_EXP 107
2067: PUSH
2068: LD_INT 6
2070: PUSH
2071: LD_INT 8
2073: PUSH
2074: LD_INT 10
2076: PUSH
2077: EMPTY
2078: LIST
2079: LIST
2080: LIST
2081: PUSH
2082: LD_OWVAR 67
2086: ARRAY
2087: ST_TO_ADDR
// als__3_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2088: LD_ADDR_EXP 108
2092: PUSH
2093: LD_INT 6
2095: PUSH
2096: LD_INT 8
2098: PUSH
2099: LD_INT 10
2101: PUSH
2102: EMPTY
2103: LIST
2104: LIST
2105: LIST
2106: PUSH
2107: LD_OWVAR 67
2111: ARRAY
2112: ST_TO_ADDR
// als__4_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2113: LD_ADDR_EXP 109
2117: PUSH
2118: LD_INT 6
2120: PUSH
2121: LD_INT 8
2123: PUSH
2124: LD_INT 10
2126: PUSH
2127: EMPTY
2128: LIST
2129: LIST
2130: LIST
2131: PUSH
2132: LD_OWVAR 67
2136: ARRAY
2137: ST_TO_ADDR
// alm0_sk = [ 5 , 8 , 9 ] [ difficulty ] ;
2138: LD_ADDR_EXP 111
2142: PUSH
2143: LD_INT 5
2145: PUSH
2146: LD_INT 8
2148: PUSH
2149: LD_INT 9
2151: PUSH
2152: EMPTY
2153: LIST
2154: LIST
2155: LIST
2156: PUSH
2157: LD_OWVAR 67
2161: ARRAY
2162: ST_TO_ADDR
// alm1_sk = [ 6 , 8 , 9 ] [ difficulty ] ;
2163: LD_ADDR_EXP 113
2167: PUSH
2168: LD_INT 6
2170: PUSH
2171: LD_INT 8
2173: PUSH
2174: LD_INT 9
2176: PUSH
2177: EMPTY
2178: LIST
2179: LIST
2180: LIST
2181: PUSH
2182: LD_OWVAR 67
2186: ARRAY
2187: ST_TO_ADDR
// alm2_sk = [ 5 , 8 , 9 ] [ difficulty ] ;
2188: LD_ADDR_EXP 115
2192: PUSH
2193: LD_INT 5
2195: PUSH
2196: LD_INT 8
2198: PUSH
2199: LD_INT 9
2201: PUSH
2202: EMPTY
2203: LIST
2204: LIST
2205: LIST
2206: PUSH
2207: LD_OWVAR 67
2211: ARRAY
2212: ST_TO_ADDR
// alm3_sk = [ 6 , 8 , 9 ] [ difficulty ] ;
2213: LD_ADDR_EXP 117
2217: PUSH
2218: LD_INT 6
2220: PUSH
2221: LD_INT 8
2223: PUSH
2224: LD_INT 9
2226: PUSH
2227: EMPTY
2228: LIST
2229: LIST
2230: LIST
2231: PUSH
2232: LD_OWVAR 67
2236: ARRAY
2237: ST_TO_ADDR
// alm4_sk = [ 5 , 8 , 9 ] [ difficulty ] ;
2238: LD_ADDR_EXP 119
2242: PUSH
2243: LD_INT 5
2245: PUSH
2246: LD_INT 8
2248: PUSH
2249: LD_INT 9
2251: PUSH
2252: EMPTY
2253: LIST
2254: LIST
2255: LIST
2256: PUSH
2257: LD_OWVAR 67
2261: ARRAY
2262: ST_TO_ADDR
// alm5_sk = [ 6 , 8 , 9 ] [ difficulty ] ;
2263: LD_ADDR_EXP 121
2267: PUSH
2268: LD_INT 6
2270: PUSH
2271: LD_INT 8
2273: PUSH
2274: LD_INT 9
2276: PUSH
2277: EMPTY
2278: LIST
2279: LIST
2280: LIST
2281: PUSH
2282: LD_OWVAR 67
2286: ARRAY
2287: ST_TO_ADDR
// alm6_sk = [ 6 , 8 , 9 ] [ difficulty ] ;
2288: LD_ADDR_EXP 123
2292: PUSH
2293: LD_INT 6
2295: PUSH
2296: LD_INT 8
2298: PUSH
2299: LD_INT 9
2301: PUSH
2302: EMPTY
2303: LIST
2304: LIST
2305: LIST
2306: PUSH
2307: LD_OWVAR 67
2311: ARRAY
2312: ST_TO_ADDR
// alv1_ch = [ us_medium_wheeled , us_medium_tracked , us_heavy_tracked ] [ difficulty ] ;
2313: LD_ADDR_EXP 125
2317: PUSH
2318: LD_INT 2
2320: PUSH
2321: LD_INT 3
2323: PUSH
2324: LD_INT 4
2326: PUSH
2327: EMPTY
2328: LIST
2329: LIST
2330: LIST
2331: PUSH
2332: LD_OWVAR 67
2336: ARRAY
2337: ST_TO_ADDR
// alv1_wp = [ us_laser , us_laser , us_laser ] [ difficulty ] ;
2338: LD_ADDR_EXP 126
2342: PUSH
2343: LD_INT 9
2345: PUSH
2346: LD_INT 9
2348: PUSH
2349: LD_INT 9
2351: PUSH
2352: EMPTY
2353: LIST
2354: LIST
2355: LIST
2356: PUSH
2357: LD_OWVAR 67
2361: ARRAY
2362: ST_TO_ADDR
// alv2_ch = [ us_medium_tracked , us_morphling , us_heavy_tracked ] [ difficulty ] ;
2363: LD_ADDR_EXP 128
2367: PUSH
2368: LD_INT 3
2370: PUSH
2371: LD_INT 5
2373: PUSH
2374: LD_INT 4
2376: PUSH
2377: EMPTY
2378: LIST
2379: LIST
2380: LIST
2381: PUSH
2382: LD_OWVAR 67
2386: ARRAY
2387: ST_TO_ADDR
// alv2_wp = [ us_double_gun , us_heavy_gun , us_heavy_gun ] [ difficulty ] ;
2388: LD_ADDR_EXP 129
2392: PUSH
2393: LD_INT 5
2395: PUSH
2396: LD_INT 6
2398: PUSH
2399: LD_INT 6
2401: PUSH
2402: EMPTY
2403: LIST
2404: LIST
2405: LIST
2406: PUSH
2407: LD_OWVAR 67
2411: ARRAY
2412: ST_TO_ADDR
// alv3_ch = [ ru_medium_wheeled , ru_medium_tracked , ru_heavy_tracked ] [ difficulty ] ;
2413: LD_ADDR_EXP 131
2417: PUSH
2418: LD_INT 21
2420: PUSH
2421: LD_INT 22
2423: PUSH
2424: LD_INT 24
2426: PUSH
2427: EMPTY
2428: LIST
2429: LIST
2430: LIST
2431: PUSH
2432: LD_OWVAR 67
2436: ARRAY
2437: ST_TO_ADDR
// alv3_wp = [ ru_gatling_gun , ru_gatling_gun , ru_gatling_gun ] [ difficulty ] ;
2438: LD_ADDR_EXP 132
2442: PUSH
2443: LD_INT 43
2445: PUSH
2446: LD_INT 43
2448: PUSH
2449: LD_INT 43
2451: PUSH
2452: EMPTY
2453: LIST
2454: LIST
2455: LIST
2456: PUSH
2457: LD_OWVAR 67
2461: ARRAY
2462: ST_TO_ADDR
// alv4_ch = [ ru_medium_tracked , ru_medium_tracked , ru_heavy_tracked ] [ difficulty ] ;
2463: LD_ADDR_EXP 134
2467: PUSH
2468: LD_INT 22
2470: PUSH
2471: LD_INT 22
2473: PUSH
2474: LD_INT 24
2476: PUSH
2477: EMPTY
2478: LIST
2479: LIST
2480: LIST
2481: PUSH
2482: LD_OWVAR 67
2486: ARRAY
2487: ST_TO_ADDR
// alv4_wp = [ ru_rocket_launcher , ru_rocket_launcher , ru_rocket_launcher ] [ difficulty ] ;
2488: LD_ADDR_EXP 135
2492: PUSH
2493: LD_INT 45
2495: PUSH
2496: LD_INT 45
2498: PUSH
2499: LD_INT 45
2501: PUSH
2502: EMPTY
2503: LIST
2504: LIST
2505: LIST
2506: PUSH
2507: LD_OWVAR 67
2511: ARRAY
2512: ST_TO_ADDR
// alv5_ch = [ us_medium_tracked , us_morphling , us_heavy_tracked ] [ difficulty ] ;
2513: LD_ADDR_EXP 137
2517: PUSH
2518: LD_INT 3
2520: PUSH
2521: LD_INT 5
2523: PUSH
2524: LD_INT 4
2526: PUSH
2527: EMPTY
2528: LIST
2529: LIST
2530: LIST
2531: PUSH
2532: LD_OWVAR 67
2536: ARRAY
2537: ST_TO_ADDR
// alv5_wp = [ us_laser , us_laser , us_laser ] [ difficulty ] ;
2538: LD_ADDR_EXP 138
2542: PUSH
2543: LD_INT 9
2545: PUSH
2546: LD_INT 9
2548: PUSH
2549: LD_INT 9
2551: PUSH
2552: EMPTY
2553: LIST
2554: LIST
2555: LIST
2556: PUSH
2557: LD_OWVAR 67
2561: ARRAY
2562: ST_TO_ADDR
// alv6_ch = [ us_medium_tracked , us_morphling , us_heavy_tracked ] [ difficulty ] ;
2563: LD_ADDR_EXP 140
2567: PUSH
2568: LD_INT 3
2570: PUSH
2571: LD_INT 5
2573: PUSH
2574: LD_INT 4
2576: PUSH
2577: EMPTY
2578: LIST
2579: LIST
2580: LIST
2581: PUSH
2582: LD_OWVAR 67
2586: ARRAY
2587: ST_TO_ADDR
// alv6_wp = [ us_laser , us_laser , us_laser ] [ difficulty ] ;
2588: LD_ADDR_EXP 141
2592: PUSH
2593: LD_INT 9
2595: PUSH
2596: LD_INT 9
2598: PUSH
2599: LD_INT 9
2601: PUSH
2602: EMPTY
2603: LIST
2604: LIST
2605: LIST
2606: PUSH
2607: LD_OWVAR 67
2611: ARRAY
2612: ST_TO_ADDR
// alsn0_sk = [ 6 , 8 , 9 ] [ difficulty ] ;
2613: LD_ADDR_EXP 143
2617: PUSH
2618: LD_INT 6
2620: PUSH
2621: LD_INT 8
2623: PUSH
2624: LD_INT 9
2626: PUSH
2627: EMPTY
2628: LIST
2629: LIST
2630: LIST
2631: PUSH
2632: LD_OWVAR 67
2636: ARRAY
2637: ST_TO_ADDR
// alsn1_sk = [ 6 , 8 , 9 ] [ difficulty ] ;
2638: LD_ADDR_EXP 145
2642: PUSH
2643: LD_INT 6
2645: PUSH
2646: LD_INT 8
2648: PUSH
2649: LD_INT 9
2651: PUSH
2652: EMPTY
2653: LIST
2654: LIST
2655: LIST
2656: PUSH
2657: LD_OWVAR 67
2661: ARRAY
2662: ST_TO_ADDR
// alsn2_sk = [ 6 , 7 , 8 ] [ difficulty ] ;
2663: LD_ADDR_EXP 147
2667: PUSH
2668: LD_INT 6
2670: PUSH
2671: LD_INT 7
2673: PUSH
2674: LD_INT 8
2676: PUSH
2677: EMPTY
2678: LIST
2679: LIST
2680: LIST
2681: PUSH
2682: LD_OWVAR 67
2686: ARRAY
2687: ST_TO_ADDR
// ale0_sk = [ 7 , 8 , 10 ] [ difficulty ] ;
2688: LD_ADDR_EXP 149
2692: PUSH
2693: LD_INT 7
2695: PUSH
2696: LD_INT 8
2698: PUSH
2699: LD_INT 10
2701: PUSH
2702: EMPTY
2703: LIST
2704: LIST
2705: LIST
2706: PUSH
2707: LD_OWVAR 67
2711: ARRAY
2712: ST_TO_ADDR
// ale1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2713: LD_ADDR_EXP 151
2717: PUSH
2718: LD_INT 6
2720: PUSH
2721: LD_INT 8
2723: PUSH
2724: LD_INT 10
2726: PUSH
2727: EMPTY
2728: LIST
2729: LIST
2730: LIST
2731: PUSH
2732: LD_OWVAR 67
2736: ARRAY
2737: ST_TO_ADDR
// ale2_sk = [ 7 , 8 , 10 ] [ difficulty ] ;
2738: LD_ADDR_EXP 153
2742: PUSH
2743: LD_INT 7
2745: PUSH
2746: LD_INT 8
2748: PUSH
2749: LD_INT 10
2751: PUSH
2752: EMPTY
2753: LIST
2754: LIST
2755: LIST
2756: PUSH
2757: LD_OWVAR 67
2761: ARRAY
2762: ST_TO_ADDR
// ale3_sk = [ 7 , 8 , 10 ] [ difficulty ] ;
2763: LD_ADDR_EXP 155
2767: PUSH
2768: LD_INT 7
2770: PUSH
2771: LD_INT 8
2773: PUSH
2774: LD_INT 10
2776: PUSH
2777: EMPTY
2778: LIST
2779: LIST
2780: LIST
2781: PUSH
2782: LD_OWVAR 67
2786: ARRAY
2787: ST_TO_ADDR
// les0_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2788: LD_ADDR_EXP 159
2792: PUSH
2793: LD_INT 6
2795: PUSH
2796: LD_INT 8
2798: PUSH
2799: LD_INT 10
2801: PUSH
2802: EMPTY
2803: LIST
2804: LIST
2805: LIST
2806: PUSH
2807: LD_OWVAR 67
2811: ARRAY
2812: ST_TO_ADDR
// les1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2813: LD_ADDR_EXP 160
2817: PUSH
2818: LD_INT 6
2820: PUSH
2821: LD_INT 8
2823: PUSH
2824: LD_INT 10
2826: PUSH
2827: EMPTY
2828: LIST
2829: LIST
2830: LIST
2831: PUSH
2832: LD_OWVAR 67
2836: ARRAY
2837: ST_TO_ADDR
// les2_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2838: LD_ADDR_EXP 161
2842: PUSH
2843: LD_INT 6
2845: PUSH
2846: LD_INT 8
2848: PUSH
2849: LD_INT 10
2851: PUSH
2852: EMPTY
2853: LIST
2854: LIST
2855: LIST
2856: PUSH
2857: LD_OWVAR 67
2861: ARRAY
2862: ST_TO_ADDR
// les_1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2863: LD_ADDR_EXP 166
2867: PUSH
2868: LD_INT 6
2870: PUSH
2871: LD_INT 8
2873: PUSH
2874: LD_INT 10
2876: PUSH
2877: EMPTY
2878: LIST
2879: LIST
2880: LIST
2881: PUSH
2882: LD_OWVAR 67
2886: ARRAY
2887: ST_TO_ADDR
// les_2_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2888: LD_ADDR_EXP 167
2892: PUSH
2893: LD_INT 6
2895: PUSH
2896: LD_INT 8
2898: PUSH
2899: LD_INT 10
2901: PUSH
2902: EMPTY
2903: LIST
2904: LIST
2905: LIST
2906: PUSH
2907: LD_OWVAR 67
2911: ARRAY
2912: ST_TO_ADDR
// les_3_sk = [ 7 , 9 , 10 ] [ difficulty ] ;
2913: LD_ADDR_EXP 168
2917: PUSH
2918: LD_INT 7
2920: PUSH
2921: LD_INT 9
2923: PUSH
2924: LD_INT 10
2926: PUSH
2927: EMPTY
2928: LIST
2929: LIST
2930: LIST
2931: PUSH
2932: LD_OWVAR 67
2936: ARRAY
2937: ST_TO_ADDR
// les_4_sk = [ 7 , 9 , 10 ] [ difficulty ] ;
2938: LD_ADDR_EXP 169
2942: PUSH
2943: LD_INT 7
2945: PUSH
2946: LD_INT 9
2948: PUSH
2949: LD_INT 10
2951: PUSH
2952: EMPTY
2953: LIST
2954: LIST
2955: LIST
2956: PUSH
2957: LD_OWVAR 67
2961: ARRAY
2962: ST_TO_ADDR
// lem0_sk = 10 ;
2963: LD_ADDR_EXP 171
2967: PUSH
2968: LD_INT 10
2970: ST_TO_ADDR
// lem1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
2971: LD_ADDR_EXP 173
2975: PUSH
2976: LD_INT 6
2978: PUSH
2979: LD_INT 8
2981: PUSH
2982: LD_INT 10
2984: PUSH
2985: EMPTY
2986: LIST
2987: LIST
2988: LIST
2989: PUSH
2990: LD_OWVAR 67
2994: ARRAY
2995: ST_TO_ADDR
// lem2_sk = [ 7 , 8 , 10 ] [ difficulty ] ;
2996: LD_ADDR_EXP 175
3000: PUSH
3001: LD_INT 7
3003: PUSH
3004: LD_INT 8
3006: PUSH
3007: LD_INT 10
3009: PUSH
3010: EMPTY
3011: LIST
3012: LIST
3013: LIST
3014: PUSH
3015: LD_OWVAR 67
3019: ARRAY
3020: ST_TO_ADDR
// lem3_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
3021: LD_ADDR_EXP 177
3025: PUSH
3026: LD_INT 6
3028: PUSH
3029: LD_INT 8
3031: PUSH
3032: LD_INT 10
3034: PUSH
3035: EMPTY
3036: LIST
3037: LIST
3038: LIST
3039: PUSH
3040: LD_OWVAR 67
3044: ARRAY
3045: ST_TO_ADDR
// lev1_ch = [ ar_medium_trike , ar_medium_trike , ar_half_tracked ] [ difficulty ] ;
3046: LD_ADDR_EXP 179
3050: PUSH
3051: LD_INT 13
3053: PUSH
3054: LD_INT 13
3056: PUSH
3057: LD_INT 14
3059: PUSH
3060: EMPTY
3061: LIST
3062: LIST
3063: LIST
3064: PUSH
3065: LD_OWVAR 67
3069: ARRAY
3070: ST_TO_ADDR
// lev1_wp = [ ar_flame_thrower , ar_flame_thrower , ar_flame_thrower ] [ difficulty ] ;
3071: LD_ADDR_EXP 180
3075: PUSH
3076: LD_INT 26
3078: PUSH
3079: LD_INT 26
3081: PUSH
3082: LD_INT 26
3084: PUSH
3085: EMPTY
3086: LIST
3087: LIST
3088: LIST
3089: PUSH
3090: LD_OWVAR 67
3094: ARRAY
3095: ST_TO_ADDR
// lev2_ch = [ ar_medium_trike , ar_medium_trike , ar_half_tracked ] [ difficulty ] ;
3096: LD_ADDR_EXP 182
3100: PUSH
3101: LD_INT 13
3103: PUSH
3104: LD_INT 13
3106: PUSH
3107: LD_INT 14
3109: PUSH
3110: EMPTY
3111: LIST
3112: LIST
3113: LIST
3114: PUSH
3115: LD_OWVAR 67
3119: ARRAY
3120: ST_TO_ADDR
// lev2_wp = [ ar_flame_thrower , ar_flame_thrower , ar_flame_thrower ] [ difficulty ] ;
3121: LD_ADDR_EXP 183
3125: PUSH
3126: LD_INT 26
3128: PUSH
3129: LD_INT 26
3131: PUSH
3132: LD_INT 26
3134: PUSH
3135: EMPTY
3136: LIST
3137: LIST
3138: LIST
3139: PUSH
3140: LD_OWVAR 67
3144: ARRAY
3145: ST_TO_ADDR
// lev3_ch = [ ar_half_tracked , ar_half_tracked , ar_half_tracked ] [ difficulty ] ;
3146: LD_ADDR_EXP 185
3150: PUSH
3151: LD_INT 14
3153: PUSH
3154: LD_INT 14
3156: PUSH
3157: LD_INT 14
3159: PUSH
3160: EMPTY
3161: LIST
3162: LIST
3163: LIST
3164: PUSH
3165: LD_OWVAR 67
3169: ARRAY
3170: ST_TO_ADDR
// lev3_wp = [ ar_rocket_launcher , ar_rocket_launcher , ar_rocket_launcher ] [ difficulty ] ;
3171: LD_ADDR_EXP 186
3175: PUSH
3176: LD_INT 28
3178: PUSH
3179: LD_INT 28
3181: PUSH
3182: LD_INT 28
3184: PUSH
3185: EMPTY
3186: LIST
3187: LIST
3188: LIST
3189: PUSH
3190: LD_OWVAR 67
3194: ARRAY
3195: ST_TO_ADDR
// lee0_sk = [ 5 , 8 , 10 ] [ difficulty ] ;
3196: LD_ADDR_EXP 188
3200: PUSH
3201: LD_INT 5
3203: PUSH
3204: LD_INT 8
3206: PUSH
3207: LD_INT 10
3209: PUSH
3210: EMPTY
3211: LIST
3212: LIST
3213: LIST
3214: PUSH
3215: LD_OWVAR 67
3219: ARRAY
3220: ST_TO_ADDR
// lee1_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
3221: LD_ADDR_EXP 190
3225: PUSH
3226: LD_INT 6
3228: PUSH
3229: LD_INT 8
3231: PUSH
3232: LD_INT 10
3234: PUSH
3235: EMPTY
3236: LIST
3237: LIST
3238: LIST
3239: PUSH
3240: LD_OWVAR 67
3244: ARRAY
3245: ST_TO_ADDR
// lee2_sk = [ 5 , 8 , 10 ] [ difficulty ] ;
3246: LD_ADDR_EXP 192
3250: PUSH
3251: LD_INT 5
3253: PUSH
3254: LD_INT 8
3256: PUSH
3257: LD_INT 10
3259: PUSH
3260: EMPTY
3261: LIST
3262: LIST
3263: LIST
3264: PUSH
3265: LD_OWVAR 67
3269: ARRAY
3270: ST_TO_ADDR
// lesc_1_sk = [ 5 , 7 , 9 ] [ difficulty ] ;
3271: LD_ADDR_EXP 193
3275: PUSH
3276: LD_INT 5
3278: PUSH
3279: LD_INT 7
3281: PUSH
3282: LD_INT 9
3284: PUSH
3285: EMPTY
3286: LIST
3287: LIST
3288: LIST
3289: PUSH
3290: LD_OWVAR 67
3294: ARRAY
3295: ST_TO_ADDR
// lesc_2_sk = [ 6 , 8 , 10 ] [ difficulty ] ;
3296: LD_ADDR_EXP 194
3300: PUSH
3301: LD_INT 6
3303: PUSH
3304: LD_INT 8
3306: PUSH
3307: LD_INT 10
3309: PUSH
3310: EMPTY
3311: LIST
3312: LIST
3313: LIST
3314: PUSH
3315: LD_OWVAR 67
3319: ARRAY
3320: ST_TO_ADDR
// lesc_3_sk = [ 5 , 7 , 9 ] [ difficulty ] ;
3321: LD_ADDR_EXP 195
3325: PUSH
3326: LD_INT 5
3328: PUSH
3329: LD_INT 7
3331: PUSH
3332: LD_INT 9
3334: PUSH
3335: EMPTY
3336: LIST
3337: LIST
3338: LIST
3339: PUSH
3340: LD_OWVAR 67
3344: ARRAY
3345: ST_TO_ADDR
// end ;
3346: LD_VAR 0 1
3350: RET
// export debug ; starting begin debug = false ;
3351: LD_ADDR_EXP 223
3355: PUSH
3356: LD_INT 0
3358: ST_TO_ADDR
// randomizeall ;
3359: CALL_OW 11
// disable ( 01 ) ;
3363: LD_INT 1
3365: DISABLE_MARKED
// disable ( 02 ) ;
3366: LD_INT 2
3368: DISABLE_MARKED
// disable ( 03 ) ;
3369: LD_INT 3
3371: DISABLE_MARKED
// disable ( 04 ) ;
3372: LD_INT 4
3374: DISABLE_MARKED
// disable ( 08 ) ;
3375: LD_INT 8
3377: DISABLE_MARKED
// disable ( 10 ) ;
3378: LD_INT 10
3380: DISABLE_MARKED
// setvars ;
3381: CALL 0 0 0
// prepare_americans ;
3385: CALL 8113 0 0
// prepare_aliance ;
3389: CALL 11160 0 0
// prepare_legion ;
3393: CALL 3640 0 0
// if debug then
3397: LD_EXP 223
3401: IFFALSE 3410
// msg ( Bacha, debug is on! ) ;
3403: LD_STRING Bacha, debug is on!
3405: PPUSH
3406: CALL_OW 100
// prepare_russians ;
3410: CALL 16724 0 0
// end ;
3414: END
// every 1 1$0 + 0 0$15 do
3415: GO 3417
3417: DISABLE
// begin createcratesarea ( 5 , target , true ) ;
3418: LD_INT 5
3420: PPUSH
3421: LD_INT 10
3423: PPUSH
3424: LD_INT 1
3426: PPUSH
3427: CALL_OW 55
// if supply < 10 then
3431: LD_LOC 1
3435: PUSH
3436: LD_INT 10
3438: LESS
3439: IFFALSE 3458
// begin supply = supply - 1 ;
3441: LD_ADDR_LOC 1
3445: PUSH
3446: LD_LOC 1
3450: PUSH
3451: LD_INT 1
3453: MINUS
3454: ST_TO_ADDR
// enable ;
3455: ENABLE
// end else
3456: GO 3461
// enable ( 01 ) ;
3458: LD_INT 1
3460: ENABLE_MARKED
// end ;
3461: END
// every 2 2$0 marked 01 do
3462: GO 3464
3464: DISABLE
// begin createcratesarea ( 5 , target , true ) ;
3465: LD_INT 5
3467: PPUSH
3468: LD_INT 10
3470: PPUSH
3471: LD_INT 1
3473: PPUSH
3474: CALL_OW 55
// if supply then
3478: LD_LOC 1
3482: IFFALSE 3501
// begin supply = supply - 1 ;
3484: LD_ADDR_LOC 1
3488: PUSH
3489: LD_LOC 1
3493: PUSH
3494: LD_INT 1
3496: MINUS
3497: ST_TO_ADDR
// enable ;
3498: ENABLE
// end else
3499: GO 3504
// enable ( 13 ) ;
3501: LD_INT 13
3503: ENABLE_MARKED
// end ;
3504: END
// every 4 4$0 marked 13 do
3505: GO 3507
3507: DISABLE
// begin createcratesarea ( 5 , target , true ) ;
3508: LD_INT 5
3510: PPUSH
3511: LD_INT 10
3513: PPUSH
3514: LD_INT 1
3516: PPUSH
3517: CALL_OW 55
// end ;
3521: END
// every 0 0$7 do
3522: GO 3524
3524: DISABLE
// begin randomize ;
3525: CALL_OW 10
// enable ;
3529: ENABLE
// end ;
3530: END
// every 1 1$0 do
3531: GO 3533
3533: DISABLE
// begin enable ;
3534: ENABLE
// if filterunitsinarea ( opoles , [ [ f_side , 0 ] ] ) > 7 then
3535: LD_INT 21
3537: PPUSH
3538: LD_INT 22
3540: PUSH
3541: LD_INT 0
3543: PUSH
3544: EMPTY
3545: LIST
3546: LIST
3547: PUSH
3548: EMPTY
3549: LIST
3550: PPUSH
3551: CALL_OW 70
3555: PUSH
3556: LD_INT 7
3558: GREATER
3559: IFFALSE 3563
// exit ;
3561: GO 3632
// if prob ( 33 ) then
3563: LD_INT 33
3565: PPUSH
3566: CALL_OW 13
3570: IFFALSE 3632
// begin uc_nation = nation_nature ;
3572: LD_ADDR_OWVAR 21
3576: PUSH
3577: LD_INT 0
3579: ST_TO_ADDR
// uc_side = 0 ;
3580: LD_ADDR_OWVAR 20
3584: PUSH
3585: LD_INT 0
3587: ST_TO_ADDR
// hc_agressivity = rand ( 0 , 20 ) ;
3588: LD_ADDR_OWVAR 35
3592: PUSH
3593: LD_INT 0
3595: PPUSH
3596: LD_INT 20
3598: PPUSH
3599: CALL_OW 12
3603: ST_TO_ADDR
// preparehuman ( sex_male , class_apeman , 0 ) ;
3604: LD_INT 1
3606: PPUSH
3607: LD_INT 12
3609: PPUSH
3610: LD_INT 0
3612: PPUSH
3613: CALL_OW 380
// placeunitarea ( createhuman , opoles , false ) ;
3617: CALL_OW 44
3621: PPUSH
3622: LD_INT 21
3624: PPUSH
3625: LD_INT 0
3627: PPUSH
3628: CALL_OW 49
// end ; end ;
3632: END
// on BehemothConstructed ( un ) do begin SA_BehemothConstructed ;
3633: CALL 27132 0 0
// end ; end_of_file
3637: PPOPN 1
3639: END
// export lecntw00 ; var leen_ ; var doprovod ; export function prepare_legion ; var tmp ; begin
3640: LD_INT 0
3642: PPUSH
3643: PPUSH
// uc_side = le ;
3644: LD_ADDR_OWVAR 20
3648: PUSH
3649: LD_EXP 4
3653: ST_TO_ADDR
// uc_nation = nation_arabian ;
3654: LD_ADDR_OWVAR 21
3658: PUSH
3659: LD_INT 2
3661: ST_TO_ADDR
// preparesoldier ( sex_male , les0_sk ) ;
3662: LD_INT 1
3664: PPUSH
3665: LD_EXP 159
3669: PPUSH
3670: CALL_OW 381
// tmp = createhuman ;
3674: LD_ADDR_VAR 0 2
3678: PUSH
3679: CALL_OW 44
3683: ST_TO_ADDR
// placeunitxyr ( tmp , 127 , 130 , 1 , false ) ;
3684: LD_VAR 0 2
3688: PPUSH
3689: LD_INT 127
3691: PPUSH
3692: LD_INT 130
3694: PPUSH
3695: LD_INT 1
3697: PPUSH
3698: LD_INT 0
3700: PPUSH
3701: CALL_OW 50
// comenterunit ( tmp , lebunk00 ) ;
3705: LD_VAR 0 2
3709: PPUSH
3710: LD_INT 52
3712: PPUSH
3713: CALL_OW 120
// les0 = tmp ;
3717: LD_ADDR_EXP 156
3721: PUSH
3722: LD_VAR 0 2
3726: ST_TO_ADDR
// preparesoldier ( sex_male , les1_sk ) ;
3727: LD_INT 1
3729: PPUSH
3730: LD_EXP 160
3734: PPUSH
3735: CALL_OW 381
// tmp = createhuman ;
3739: LD_ADDR_VAR 0 2
3743: PUSH
3744: CALL_OW 44
3748: ST_TO_ADDR
// placeunitxyr ( tmp , 143 , 118 , 1 , false ) ;
3749: LD_VAR 0 2
3753: PPUSH
3754: LD_INT 143
3756: PPUSH
3757: LD_INT 118
3759: PPUSH
3760: LD_INT 1
3762: PPUSH
3763: LD_INT 0
3765: PPUSH
3766: CALL_OW 50
// comenterunit ( tmp , lebunk01 ) ;
3770: LD_VAR 0 2
3774: PPUSH
3775: LD_INT 53
3777: PPUSH
3778: CALL_OW 120
// les1 = tmp ;
3782: LD_ADDR_EXP 157
3786: PUSH
3787: LD_VAR 0 2
3791: ST_TO_ADDR
// preparesoldier ( sex_male , les2_sk ) ;
3792: LD_INT 1
3794: PPUSH
3795: LD_EXP 161
3799: PPUSH
3800: CALL_OW 381
// tmp = createhuman ;
3804: LD_ADDR_VAR 0 2
3808: PUSH
3809: CALL_OW 44
3813: ST_TO_ADDR
// placeunitxyr ( tmp , 172 , 126 , 1 , false ) ;
3814: LD_VAR 0 2
3818: PPUSH
3819: LD_INT 172
3821: PPUSH
3822: LD_INT 126
3824: PPUSH
3825: LD_INT 1
3827: PPUSH
3828: LD_INT 0
3830: PPUSH
3831: CALL_OW 50
// comenterunit ( tmp , lebunk02 ) ;
3835: LD_VAR 0 2
3839: PPUSH
3840: LD_INT 54
3842: PPUSH
3843: CALL_OW 120
// les2 = tmp ;
3847: LD_ADDR_EXP 158
3851: PUSH
3852: LD_VAR 0 2
3856: ST_TO_ADDR
// preparesoldier ( sex_male , les_1_sk ) ;
3857: LD_INT 1
3859: PPUSH
3860: LD_EXP 166
3864: PPUSH
3865: CALL_OW 381
// tmp = createhuman ;
3869: LD_ADDR_VAR 0 2
3873: PUSH
3874: CALL_OW 44
3878: ST_TO_ADDR
// placeunitxyr ( tmp , 135 , 124 , 1 , false ) ;
3879: LD_VAR 0 2
3883: PPUSH
3884: LD_INT 135
3886: PPUSH
3887: LD_INT 124
3889: PPUSH
3890: LD_INT 1
3892: PPUSH
3893: LD_INT 0
3895: PPUSH
3896: CALL_OW 50
// comenterunit ( tmp , lebarr00 ) ;
3900: LD_VAR 0 2
3904: PPUSH
3905: LD_INT 56
3907: PPUSH
3908: CALL_OW 120
// les_1 = tmp ;
3912: LD_ADDR_EXP 162
3916: PUSH
3917: LD_VAR 0 2
3921: ST_TO_ADDR
// preparesoldier ( sex_male , les_2_sk ) ;
3922: LD_INT 1
3924: PPUSH
3925: LD_EXP 167
3929: PPUSH
3930: CALL_OW 381
// tmp = createhuman ;
3934: LD_ADDR_VAR 0 2
3938: PUSH
3939: CALL_OW 44
3943: ST_TO_ADDR
// placeunitxyr ( tmp , 135 , 124 , 1 , false ) ;
3944: LD_VAR 0 2
3948: PPUSH
3949: LD_INT 135
3951: PPUSH
3952: LD_INT 124
3954: PPUSH
3955: LD_INT 1
3957: PPUSH
3958: LD_INT 0
3960: PPUSH
3961: CALL_OW 50
// comenterunit ( tmp , lebarr00 ) ;
3965: LD_VAR 0 2
3969: PPUSH
3970: LD_INT 56
3972: PPUSH
3973: CALL_OW 120
// les_2 = tmp ;
3977: LD_ADDR_EXP 163
3981: PUSH
3982: LD_VAR 0 2
3986: ST_TO_ADDR
// preparehuman ( sex_male , class_mortar , les_3_sk ) ;
3987: LD_INT 1
3989: PPUSH
3990: LD_INT 8
3992: PPUSH
3993: LD_EXP 168
3997: PPUSH
3998: CALL_OW 380
// tmp = createhuman ;
4002: LD_ADDR_VAR 0 2
4006: PUSH
4007: CALL_OW 44
4011: ST_TO_ADDR
// placeunitxyr ( tmp , 135 , 124 , 1 , false ) ;
4012: LD_VAR 0 2
4016: PPUSH
4017: LD_INT 135
4019: PPUSH
4020: LD_INT 124
4022: PPUSH
4023: LD_INT 1
4025: PPUSH
4026: LD_INT 0
4028: PPUSH
4029: CALL_OW 50
// comenterunit ( tmp , lebarr00 ) ;
4033: LD_VAR 0 2
4037: PPUSH
4038: LD_INT 56
4040: PPUSH
4041: CALL_OW 120
// les_3 = tmp ;
4045: LD_ADDR_EXP 164
4049: PUSH
4050: LD_VAR 0 2
4054: ST_TO_ADDR
// preparehuman ( sex_male , class_mortar , les_4_sk ) ;
4055: LD_INT 1
4057: PPUSH
4058: LD_INT 8
4060: PPUSH
4061: LD_EXP 169
4065: PPUSH
4066: CALL_OW 380
// tmp = createhuman ;
4070: LD_ADDR_VAR 0 2
4074: PUSH
4075: CALL_OW 44
4079: ST_TO_ADDR
// placeunitxyr ( tmp , 135 , 124 , 1 , false ) ;
4080: LD_VAR 0 2
4084: PPUSH
4085: LD_INT 135
4087: PPUSH
4088: LD_INT 124
4090: PPUSH
4091: LD_INT 1
4093: PPUSH
4094: LD_INT 0
4096: PPUSH
4097: CALL_OW 50
// comenterunit ( tmp , lebarr00 ) ;
4101: LD_VAR 0 2
4105: PPUSH
4106: LD_INT 56
4108: PPUSH
4109: CALL_OW 120
// les_4 = tmp ;
4113: LD_ADDR_EXP 165
4117: PUSH
4118: LD_VAR 0 2
4122: ST_TO_ADDR
// doprovod = [ les_1 , les_2 , les_3 , les_4 ] ;
4123: LD_ADDR_LOC 3
4127: PUSH
4128: LD_EXP 162
4132: PUSH
4133: LD_EXP 163
4137: PUSH
4138: LD_EXP 164
4142: PUSH
4143: LD_EXP 165
4147: PUSH
4148: EMPTY
4149: LIST
4150: LIST
4151: LIST
4152: LIST
4153: ST_TO_ADDR
// preparescientist ( sex_male , lesc_1_sk ) ;
4154: LD_INT 1
4156: PPUSH
4157: LD_EXP 193
4161: PPUSH
4162: CALL_OW 384
// tmp = createhuman ;
4166: LD_ADDR_VAR 0 2
4170: PUSH
4171: CALL_OW 44
4175: ST_TO_ADDR
// placeunitxyr ( tmp , 134 , 133 , 1 , false ) ;
4176: LD_VAR 0 2
4180: PPUSH
4181: LD_INT 134
4183: PPUSH
4184: LD_INT 133
4186: PPUSH
4187: LD_INT 1
4189: PPUSH
4190: LD_INT 0
4192: PPUSH
4193: CALL_OW 50
// comenterunit ( tmp , lelabf01 ) ;
4197: LD_VAR 0 2
4201: PPUSH
4202: LD_INT 65
4204: PPUSH
4205: CALL_OW 120
// lesc_1 = tmp ;
4209: LD_ADDR_EXP 196
4213: PUSH
4214: LD_VAR 0 2
4218: ST_TO_ADDR
// preparescientist ( sex_male , lesc_2_sk ) ;
4219: LD_INT 1
4221: PPUSH
4222: LD_EXP 194
4226: PPUSH
4227: CALL_OW 384
// tmp = createhuman ;
4231: LD_ADDR_VAR 0 2
4235: PUSH
4236: CALL_OW 44
4240: ST_TO_ADDR
// placeunitxyr ( tmp , 134 , 133 , 1 , false ) ;
4241: LD_VAR 0 2
4245: PPUSH
4246: LD_INT 134
4248: PPUSH
4249: LD_INT 133
4251: PPUSH
4252: LD_INT 1
4254: PPUSH
4255: LD_INT 0
4257: PPUSH
4258: CALL_OW 50
// comenterunit ( tmp , lelabf01 ) ;
4262: LD_VAR 0 2
4266: PPUSH
4267: LD_INT 65
4269: PPUSH
4270: CALL_OW 120
// lesc_2 = tmp ;
4274: LD_ADDR_EXP 197
4278: PUSH
4279: LD_VAR 0 2
4283: ST_TO_ADDR
// preparescientist ( sex_male , lesc_3_sk ) ;
4284: LD_INT 1
4286: PPUSH
4287: LD_EXP 195
4291: PPUSH
4292: CALL_OW 384
// tmp = createhuman ;
4296: LD_ADDR_VAR 0 2
4300: PUSH
4301: CALL_OW 44
4305: ST_TO_ADDR
// placeunitxyr ( tmp , 134 , 133 , 1 , false ) ;
4306: LD_VAR 0 2
4310: PPUSH
4311: LD_INT 134
4313: PPUSH
4314: LD_INT 133
4316: PPUSH
4317: LD_INT 1
4319: PPUSH
4320: LD_INT 0
4322: PPUSH
4323: CALL_OW 50
// comenterunit ( tmp , lelabf01 ) ;
4327: LD_VAR 0 2
4331: PPUSH
4332: LD_INT 65
4334: PPUSH
4335: CALL_OW 120
// lesc_3 = tmp ;
4339: LD_ADDR_EXP 198
4343: PUSH
4344: LD_VAR 0 2
4348: ST_TO_ADDR
// vc_control = control_manual ;
4349: LD_ADDR_OWVAR 38
4353: PUSH
4354: LD_INT 1
4356: ST_TO_ADDR
// vc_engine = engine_siberite ;
4357: LD_ADDR_OWVAR 39
4361: PUSH
4362: LD_INT 3
4364: ST_TO_ADDR
// vc_chassis = ar_half_tracked ;
4365: LD_ADDR_OWVAR 37
4369: PUSH
4370: LD_INT 14
4372: ST_TO_ADDR
// vc_weapon = ar_control_tower ;
4373: LD_ADDR_OWVAR 40
4377: PUSH
4378: LD_INT 31
4380: ST_TO_ADDR
// lecntw00 = createvehicle ;
4381: LD_ADDR_EXP 224
4385: PUSH
4386: CALL_OW 45
4390: ST_TO_ADDR
// setdir ( lecntw00 , 5 ) ;
4391: LD_EXP 224
4395: PPUSH
4396: LD_INT 5
4398: PPUSH
4399: CALL_OW 233
// placeunitxyr ( lecntw00 , 159 , 136 , 1 , false ) ;
4403: LD_EXP 224
4407: PPUSH
4408: LD_INT 159
4410: PPUSH
4411: LD_INT 136
4413: PPUSH
4414: LD_INT 1
4416: PPUSH
4417: LD_INT 0
4419: PPUSH
4420: CALL_OW 50
// preparemechanic ( sex_female , lem0_sk ) ;
4424: LD_INT 2
4426: PPUSH
4427: LD_EXP 171
4431: PPUSH
4432: CALL_OW 383
// lem0 = createhuman ;
4436: LD_ADDR_EXP 170
4440: PUSH
4441: CALL_OW 44
4445: ST_TO_ADDR
// placehumaninunit ( lem0 , lecntw00 ) ;
4446: LD_EXP 170
4450: PPUSH
4451: LD_EXP 224
4455: PPUSH
4456: CALL_OW 52
// vc_chassis = lev1_ch ;
4460: LD_ADDR_OWVAR 37
4464: PUSH
4465: LD_EXP 179
4469: ST_TO_ADDR
// vc_weapon = lev1_wp ;
4470: LD_ADDR_OWVAR 40
4474: PUSH
4475: LD_EXP 180
4479: ST_TO_ADDR
// lev1 = createvehicle ;
4480: LD_ADDR_EXP 178
4484: PUSH
4485: CALL_OW 45
4489: ST_TO_ADDR
// setdir ( lev1 , 5 ) ;
4490: LD_EXP 178
4494: PPUSH
4495: LD_INT 5
4497: PPUSH
4498: CALL_OW 233
// placeunitxy ( lev1 , 128 , 123 , false ) ;
4502: LD_EXP 178
4506: PPUSH
4507: LD_INT 128
4509: PPUSH
4510: LD_INT 123
4512: PPUSH
4513: LD_INT 0
4515: PPUSH
4516: CALL_OW 48
// preparemechanic ( sex_male , lem1_sk ) ;
4520: LD_INT 1
4522: PPUSH
4523: LD_EXP 173
4527: PPUSH
4528: CALL_OW 383
// lem1 = createhuman ;
4532: LD_ADDR_EXP 172
4536: PUSH
4537: CALL_OW 44
4541: ST_TO_ADDR
// placehumaninunit ( lem1 , lev1 ) ;
4542: LD_EXP 172
4546: PPUSH
4547: LD_EXP 178
4551: PPUSH
4552: CALL_OW 52
// vc_chassis = lev2_ch ;
4556: LD_ADDR_OWVAR 37
4560: PUSH
4561: LD_EXP 182
4565: ST_TO_ADDR
// vc_weapon = lev2_wp ;
4566: LD_ADDR_OWVAR 40
4570: PUSH
4571: LD_EXP 183
4575: ST_TO_ADDR
// lev2 = createvehicle ;
4576: LD_ADDR_EXP 181
4580: PUSH
4581: CALL_OW 45
4585: ST_TO_ADDR
// setdir ( lev2 , 5 ) ;
4586: LD_EXP 181
4590: PPUSH
4591: LD_INT 5
4593: PPUSH
4594: CALL_OW 233
// placeunitxy ( lev2 , 137 , 119 , false ) ;
4598: LD_EXP 181
4602: PPUSH
4603: LD_INT 137
4605: PPUSH
4606: LD_INT 119
4608: PPUSH
4609: LD_INT 0
4611: PPUSH
4612: CALL_OW 48
// preparemechanic ( sex_male , lem2_sk ) ;
4616: LD_INT 1
4618: PPUSH
4619: LD_EXP 175
4623: PPUSH
4624: CALL_OW 383
// lem2 = createhuman ;
4628: LD_ADDR_EXP 174
4632: PUSH
4633: CALL_OW 44
4637: ST_TO_ADDR
// placehumaninunit ( lem2 , lev2 ) ;
4638: LD_EXP 174
4642: PPUSH
4643: LD_EXP 181
4647: PPUSH
4648: CALL_OW 52
// vc_chassis = lev3_ch ;
4652: LD_ADDR_OWVAR 37
4656: PUSH
4657: LD_EXP 185
4661: ST_TO_ADDR
// vc_weapon = lev3_wp ;
4662: LD_ADDR_OWVAR 40
4666: PUSH
4667: LD_EXP 186
4671: ST_TO_ADDR
// lev3 = createvehicle ;
4672: LD_ADDR_EXP 184
4676: PUSH
4677: CALL_OW 45
4681: ST_TO_ADDR
// setdir ( lev3 , 5 ) ;
4682: LD_EXP 184
4686: PPUSH
4687: LD_INT 5
4689: PPUSH
4690: CALL_OW 233
// placeunitxy ( lev3 , 158 , 118 , false ) ;
4694: LD_EXP 184
4698: PPUSH
4699: LD_INT 158
4701: PPUSH
4702: LD_INT 118
4704: PPUSH
4705: LD_INT 0
4707: PPUSH
4708: CALL_OW 48
// preparemechanic ( sex_male , lem3_sk ) ;
4712: LD_INT 1
4714: PPUSH
4715: LD_EXP 177
4719: PPUSH
4720: CALL_OW 383
// lem3 = createhuman ;
4724: LD_ADDR_EXP 176
4728: PUSH
4729: CALL_OW 44
4733: ST_TO_ADDR
// placehumaninunit ( lem3 , lev3 ) ;
4734: LD_EXP 176
4738: PPUSH
4739: LD_EXP 184
4743: PPUSH
4744: CALL_OW 52
// prepareengineer ( sex_female , 9 ) ;
4748: LD_INT 2
4750: PPUSH
4751: LD_INT 9
4753: PPUSH
4754: CALL_OW 382
// tmp = createhuman ;
4758: LD_ADDR_VAR 0 2
4762: PUSH
4763: CALL_OW 44
4767: ST_TO_ADDR
// placeunitxyr ( tmp , 151 , 133 , 1 , false ) ;
4768: LD_VAR 0 2
4772: PPUSH
4773: LD_INT 151
4775: PPUSH
4776: LD_INT 133
4778: PPUSH
4779: LD_INT 1
4781: PPUSH
4782: LD_INT 0
4784: PPUSH
4785: CALL_OW 50
// comenterunit ( tmp , leware00 ) ;
4789: LD_VAR 0 2
4793: PPUSH
4794: LD_INT 51
4796: PPUSH
4797: CALL_OW 120
// prepareengineer ( sex_female , 9 ) ;
4801: LD_INT 2
4803: PPUSH
4804: LD_INT 9
4806: PPUSH
4807: CALL_OW 382
// tmp = createhuman ;
4811: LD_ADDR_VAR 0 2
4815: PUSH
4816: CALL_OW 44
4820: ST_TO_ADDR
// placeunitxyr ( tmp , 132 , 136 , 1 , false ) ;
4821: LD_VAR 0 2
4825: PPUSH
4826: LD_INT 132
4828: PPUSH
4829: LD_INT 136
4831: PPUSH
4832: LD_INT 1
4834: PPUSH
4835: LD_INT 0
4837: PPUSH
4838: CALL_OW 50
// comremember ( tmp ) ;
4842: LD_VAR 0 2
4846: PPUSH
4847: CALL_OW 143
// comenterunit ( tmp , ledepo00 ) ;
4851: LD_VAR 0 2
4855: PPUSH
4856: LD_INT 72
4858: PPUSH
4859: CALL_OW 120
// leen_ = tmp ;
4863: LD_ADDR_LOC 2
4867: PUSH
4868: LD_VAR 0 2
4872: ST_TO_ADDR
// setresourcevisibility ( 115 , 130 , le ) ;
4873: LD_INT 115
4875: PPUSH
4876: LD_INT 130
4878: PPUSH
4879: LD_EXP 4
4883: PPUSH
4884: CALL_OW 441
// setresourcevisibility ( 113 , 121 , le ) ;
4888: LD_INT 113
4890: PPUSH
4891: LD_INT 121
4893: PPUSH
4894: LD_EXP 4
4898: PPUSH
4899: CALL_OW 441
// setresourcevisibility ( 103 , 126 , le ) ;
4903: LD_INT 103
4905: PPUSH
4906: LD_INT 126
4908: PPUSH
4909: LD_EXP 4
4913: PPUSH
4914: CALL_OW 441
// setresourcevisibility ( 103 , 133 , le ) ;
4918: LD_INT 103
4920: PPUSH
4921: LD_INT 133
4923: PPUSH
4924: LD_EXP 4
4928: PPUSH
4929: CALL_OW 441
// prepareengineer ( sex_male , lee0_sk ) ;
4933: LD_INT 1
4935: PPUSH
4936: LD_EXP 188
4940: PPUSH
4941: CALL_OW 382
// lee0 = createhuman ;
4945: LD_ADDR_EXP 187
4949: PUSH
4950: CALL_OW 44
4954: ST_TO_ADDR
// placeunitxyr ( lee0 , 128 , 128 , 1 , false ) ;
4955: LD_EXP 187
4959: PPUSH
4960: LD_INT 128
4962: PPUSH
4963: LD_INT 128
4965: PPUSH
4966: LD_INT 1
4968: PPUSH
4969: LD_INT 0
4971: PPUSH
4972: CALL_OW 50
// comhold ( lee0 ) ;
4976: LD_EXP 187
4980: PPUSH
4981: CALL_OW 140
// prepareengineer ( sex_male , lee1_sk ) ;
4985: LD_INT 1
4987: PPUSH
4988: LD_EXP 190
4992: PPUSH
4993: CALL_OW 382
// lee1 = createhuman ;
4997: LD_ADDR_EXP 189
5001: PUSH
5002: CALL_OW 44
5006: ST_TO_ADDR
// placeunitxyr ( lee1 , 141 , 119 , 1 , false ) ;
5007: LD_EXP 189
5011: PPUSH
5012: LD_INT 141
5014: PPUSH
5015: LD_INT 119
5017: PPUSH
5018: LD_INT 1
5020: PPUSH
5021: LD_INT 0
5023: PPUSH
5024: CALL_OW 50
// comhold ( lee1 ) ;
5028: LD_EXP 189
5032: PPUSH
5033: CALL_OW 140
// prepareengineer ( sex_male , lee2_sk ) ;
5037: LD_INT 1
5039: PPUSH
5040: LD_EXP 192
5044: PPUSH
5045: CALL_OW 382
// lee2 = createhuman ;
5049: LD_ADDR_EXP 191
5053: PUSH
5054: CALL_OW 44
5058: ST_TO_ADDR
// placeunitxyr ( lee2 , 174 , 127 , 1 , false ) ;
5059: LD_EXP 191
5063: PPUSH
5064: LD_INT 174
5066: PPUSH
5067: LD_INT 127
5069: PPUSH
5070: LD_INT 1
5072: PPUSH
5073: LD_INT 0
5075: PPUSH
5076: CALL_OW 50
// comhold ( lee2 ) ;
5080: LD_EXP 191
5084: PPUSH
5085: CALL_OW 140
// inzinyri = [ lee0 , lee1 , lee2 ] ;
5089: LD_ADDR_LOC 5
5093: PUSH
5094: LD_EXP 187
5098: PUSH
5099: LD_EXP 189
5103: PUSH
5104: LD_EXP 191
5108: PUSH
5109: EMPTY
5110: LIST
5111: LIST
5112: LIST
5113: ST_TO_ADDR
// comremember ( inzinyri ) ;
5114: LD_LOC 5
5118: PPUSH
5119: CALL_OW 143
// opravujte = [ [ lebunk00 , lebarr00 ] , [ lebarr00 , lebunk01 ] , [ lebunk02 ] ] ;
5123: LD_ADDR_LOC 4
5127: PUSH
5128: LD_INT 52
5130: PUSH
5131: LD_INT 56
5133: PUSH
5134: EMPTY
5135: LIST
5136: LIST
5137: PUSH
5138: LD_INT 56
5140: PUSH
5141: LD_INT 53
5143: PUSH
5144: EMPTY
5145: LIST
5146: LIST
5147: PUSH
5148: LD_INT 54
5150: PUSH
5151: EMPTY
5152: LIST
5153: PUSH
5154: EMPTY
5155: LIST
5156: LIST
5157: LIST
5158: ST_TO_ADDR
// legionari = filterallunits ( [ [ f_side , le ] , [ f_type , unit_human ] ] ) ;
5159: LD_ADDR_EXP 226
5163: PUSH
5164: LD_INT 22
5166: PUSH
5167: LD_EXP 4
5171: PUSH
5172: EMPTY
5173: LIST
5174: LIST
5175: PUSH
5176: LD_INT 21
5178: PUSH
5179: LD_INT 1
5181: PUSH
5182: EMPTY
5183: LIST
5184: LIST
5185: PUSH
5186: EMPTY
5187: LIST
5188: LIST
5189: PPUSH
5190: CALL_OW 69
5194: ST_TO_ADDR
// pocet_legionaru = 0 + legionari ;
5195: LD_ADDR_EXP 225
5199: PUSH
5200: LD_INT 0
5202: PUSH
5203: LD_EXP 226
5207: PLUS
5208: ST_TO_ADDR
// end ;
5209: LD_VAR 0 1
5213: RET
// export pocet_legionaru , legionari ; var opravujte ; var inzinyri ; every 0 0$3 do var tmp , tmp2 , tmp3 , oprav , buds , lives ;
5214: GO 5216
5216: DISABLE
5217: LD_INT 0
5219: PPUSH
5220: PPUSH
5221: PPUSH
5222: PPUSH
5223: PPUSH
5224: PPUSH
// begin for tmp = 1 to 0 + opravujte do
5225: LD_ADDR_VAR 0 1
5229: PUSH
5230: DOUBLE
5231: LD_INT 1
5233: DEC
5234: ST_TO_ADDR
5235: LD_INT 0
5237: PUSH
5238: LD_LOC 4
5242: PLUS
5243: PUSH
5244: FOR_TO
5245: IFFALSE 5476
// begin buds = [ ] ;
5247: LD_ADDR_VAR 0 5
5251: PUSH
5252: EMPTY
5253: ST_TO_ADDR
// lives = [ ] ;
5254: LD_ADDR_VAR 0 6
5258: PUSH
5259: EMPTY
5260: ST_TO_ADDR
// for tmp2 in opravujte [ tmp ] do
5261: LD_ADDR_VAR 0 2
5265: PUSH
5266: LD_LOC 4
5270: PUSH
5271: LD_VAR 0 1
5275: ARRAY
5276: PUSH
5277: FOR_IN
5278: IFFALSE 5340
// if ( getlives ( tmp2 ) < hranice_zdravi ) then
5280: LD_VAR 0 2
5284: PPUSH
5285: CALL_OW 256
5289: PUSH
5290: LD_INT 1000
5292: LESS
5293: IFFALSE 5338
// begin buds = buds ^ [ tmp2 ] ;
5295: LD_ADDR_VAR 0 5
5299: PUSH
5300: LD_VAR 0 5
5304: PUSH
5305: LD_VAR 0 2
5309: PUSH
5310: EMPTY
5311: LIST
5312: ADD
5313: ST_TO_ADDR
// lives = lives ^ [ getlives ( tmp2 ) ] ;
5314: LD_ADDR_VAR 0 6
5318: PUSH
5319: LD_VAR 0 6
5323: PUSH
5324: LD_VAR 0 2
5328: PPUSH
5329: CALL_OW 256
5333: PUSH
5334: EMPTY
5335: LIST
5336: ADD
5337: ST_TO_ADDR
// end ;
5338: GO 5277
5340: POP
5341: POP
// tmp2 = sortlistbylistasc ( buds , lives ) ;
5342: LD_ADDR_VAR 0 2
5346: PUSH
5347: LD_VAR 0 5
5351: PPUSH
5352: LD_VAR 0 6
5356: PPUSH
5357: CALL_OW 76
5361: ST_TO_ADDR
// if tmp2 then
5362: LD_VAR 0 2
5366: IFFALSE 5474
// begin comrepairbuilding ( inzinyri [ tmp ] , tmp2 [ 1 ] ) ;
5368: LD_LOC 5
5372: PUSH
5373: LD_VAR 0 1
5377: ARRAY
5378: PPUSH
5379: LD_VAR 0 2
5383: PUSH
5384: LD_INT 1
5386: ARRAY
5387: PPUSH
5388: CALL_OW 130
// for tmp3 = 2 to 0 + tmp2 do
5392: LD_ADDR_VAR 0 3
5396: PUSH
5397: DOUBLE
5398: LD_INT 2
5400: DEC
5401: ST_TO_ADDR
5402: LD_INT 0
5404: PUSH
5405: LD_VAR 0 2
5409: PLUS
5410: PUSH
5411: FOR_TO
5412: IFFALSE 5442
// addcomrepairbuilding ( inzinyri [ tmp ] , tmp2 [ tmp3 ] ) ;
5414: LD_LOC 5
5418: PUSH
5419: LD_VAR 0 1
5423: ARRAY
5424: PPUSH
5425: LD_VAR 0 2
5429: PUSH
5430: LD_VAR 0 3
5434: ARRAY
5435: PPUSH
5436: CALL_OW 190
5440: GO 5411
5442: POP
5443: POP
// addcomreturn ( inzinyri [ tmp ] ) ;
5444: LD_LOC 5
5448: PUSH
5449: LD_VAR 0 1
5453: ARRAY
5454: PPUSH
5455: CALL_OW 204
// addcomhold ( inzinyri [ tmp ] ) ;
5459: LD_LOC 5
5463: PUSH
5464: LD_VAR 0 1
5468: ARRAY
5469: PPUSH
5470: CALL_OW 200
// end ; end ;
5474: GO 5244
5476: POP
5477: POP
// enable ;
5478: ENABLE
// end ;
5479: PPOPN 6
5481: END
// export ledolu , poziceledolu ; every 0 0$10 + 15 15$0 marked 05 do var tmp , tmp1 , tmp2 ;
5482: GO 5484
5484: DISABLE
5485: LD_INT 0
5487: PPUSH
5488: PPUSH
5489: PPUSH
// begin lestavidul = lestavidul - 1 ;
5490: LD_ADDR_EXP 213
5494: PUSH
5495: LD_EXP 213
5499: PUSH
5500: LD_INT 1
5502: MINUS
5503: ST_TO_ADDR
// if not lestavidul then
5504: LD_EXP 213
5508: NOT
5509: IFFALSE 5830
// begin if debug then
5511: LD_EXP 223
5515: IFFALSE 5524
// msg ( le: deme stavet dul ) ;
5517: LD_STRING le: deme stavet dul
5519: PPUSH
5520: CALL_OW 100
// tmp = filterunitsinarea ( mothdep , [ [ f_side , le ] , [ f_btype , b_siberite_mine ] ] ) ;
5524: LD_ADDR_VAR 0 1
5528: PUSH
5529: LD_INT 9
5531: PPUSH
5532: LD_INT 22
5534: PUSH
5535: LD_EXP 4
5539: PUSH
5540: EMPTY
5541: LIST
5542: LIST
5543: PUSH
5544: LD_INT 30
5546: PUSH
5547: LD_INT 30
5549: PUSH
5550: EMPTY
5551: LIST
5552: LIST
5553: PUSH
5554: EMPTY
5555: LIST
5556: LIST
5557: PPUSH
5558: CALL_OW 70
5562: ST_TO_ADDR
// tmp1 = [ ] ;
5563: LD_ADDR_VAR 0 2
5567: PUSH
5568: EMPTY
5569: ST_TO_ADDR
// for tmp2 in tmp do
5570: LD_ADDR_VAR 0 3
5574: PUSH
5575: LD_VAR 0 1
5579: PUSH
5580: FOR_IN
5581: IFFALSE 5623
// tmp1 = tmp1 ^ [ [ getx ( tmp2 ) , gety ( tmp2 ) ] ] ;
5583: LD_ADDR_VAR 0 2
5587: PUSH
5588: LD_VAR 0 2
5592: PUSH
5593: LD_VAR 0 3
5597: PPUSH
5598: CALL_OW 250
5602: PUSH
5603: LD_VAR 0 3
5607: PPUSH
5608: CALL_OW 251
5612: PUSH
5613: EMPTY
5614: LIST
5615: LIST
5616: PUSH
5617: EMPTY
5618: LIST
5619: ADD
5620: ST_TO_ADDR
5621: GO 5580
5623: POP
5624: POP
// tmp1 = poziceledolu diff tmp1 ;
5625: LD_ADDR_VAR 0 2
5629: PUSH
5630: LD_EXP 228
5634: PUSH
5635: LD_VAR 0 2
5639: DIFF
5640: ST_TO_ADDR
// tmp = rand ( 1 , 0 + tmp1 ) ;
5641: LD_ADDR_VAR 0 1
5645: PUSH
5646: LD_INT 1
5648: PPUSH
5649: LD_INT 0
5651: PUSH
5652: LD_VAR 0 2
5656: PLUS
5657: PPUSH
5658: CALL_OW 12
5662: ST_TO_ADDR
// tmp2 = filterunitsinarea ( mothdep , [ [ f_nation , nation_nature ] , [ f_side , 0 ] ] ) ;
5663: LD_ADDR_VAR 0 3
5667: PUSH
5668: LD_INT 9
5670: PPUSH
5671: LD_INT 23
5673: PUSH
5674: LD_INT 0
5676: PUSH
5677: EMPTY
5678: LIST
5679: LIST
5680: PUSH
5681: LD_INT 22
5683: PUSH
5684: LD_INT 0
5686: PUSH
5687: EMPTY
5688: LIST
5689: LIST
5690: PUSH
5691: EMPTY
5692: LIST
5693: LIST
5694: PPUSH
5695: CALL_OW 70
5699: ST_TO_ADDR
// commovexy ( tmp2 , 93 , 113 ) ;
5700: LD_VAR 0 3
5704: PPUSH
5705: LD_INT 93
5707: PPUSH
5708: LD_INT 113
5710: PPUSH
5711: CALL_OW 111
// addcommovexy ( tmp2 , 89 , 127 ) ;
5715: LD_VAR 0 3
5719: PPUSH
5720: LD_INT 89
5722: PPUSH
5723: LD_INT 127
5725: PPUSH
5726: CALL_OW 171
// comexitbuilding ( leen_ ) ;
5730: LD_LOC 2
5734: PPUSH
5735: CALL_OW 122
// addcombuild ( leen_ , b_siberite_mine , tmp1 [ tmp ] [ 1 ] , tmp1 [ tmp ] [ 2 ] , 2 ) ;
5739: LD_LOC 2
5743: PPUSH
5744: LD_INT 30
5746: PPUSH
5747: LD_VAR 0 2
5751: PUSH
5752: LD_VAR 0 1
5756: ARRAY
5757: PUSH
5758: LD_INT 1
5760: ARRAY
5761: PPUSH
5762: LD_VAR 0 2
5766: PUSH
5767: LD_VAR 0 1
5771: ARRAY
5772: PUSH
5773: LD_INT 2
5775: ARRAY
5776: PPUSH
5777: LD_INT 2
5779: PPUSH
5780: CALL_OW 205
// commoveunit ( doprovod , leen_ ) ;
5784: LD_LOC 3
5788: PPUSH
5789: LD_LOC 2
5793: PPUSH
5794: CALL_OW 112
// if ledolu < 4 then
5798: LD_EXP 227
5802: PUSH
5803: LD_INT 4
5805: LESS
5806: IFFALSE 5828
// lestavidul = rand ( lestavidul_min , lestavidul_max ) ;
5808: LD_ADDR_EXP 213
5812: PUSH
5813: LD_EXP 201
5817: PPUSH
5818: LD_EXP 202
5822: PPUSH
5823: CALL_OW 12
5827: ST_TO_ADDR
// end else
5828: GO 5831
// enable ;
5830: ENABLE
// end ;
5831: PPOPN 3
5833: END
// every 0 0$10 + 15 15$5 marked 10 do
5834: GO 5836
5836: DISABLE
// begin while islive ( leen_ ) and not isinarea ( leen_ , lebase ) do
5837: LD_LOC 2
5841: PPUSH
5842: CALL_OW 300
5846: PUSH
5847: LD_LOC 2
5851: PPUSH
5852: LD_INT 13
5854: PPUSH
5855: CALL_OW 308
5859: NOT
5860: AND
5861: IFFALSE 5872
// wait ( 0 0$1 ) ;
5863: LD_INT 35
5865: PPUSH
5866: CALL_OW 67
5870: GO 5837
// comenterunit ( doprovod , lebarr00 ) ;
5872: LD_LOC 3
5876: PPUSH
5877: LD_INT 56
5879: PPUSH
5880: CALL_OW 120
// if islive ( leen_ ) then
5884: LD_LOC 2
5888: PPUSH
5889: CALL_OW 300
5893: IFFALSE 5910
// comenterunit ( [ leen_ ] , ledepo00 ) ;
5895: LD_LOC 2
5899: PUSH
5900: EMPTY
5901: LIST
5902: PPUSH
5903: LD_INT 72
5905: PPUSH
5906: CALL_OW 120
// end ;
5910: END
// on buildingcomplete ( un ) do if ( getbtype ( un ) = b_siberite_mine ) then
5911: LD_VAR 0 1
5915: PPUSH
5916: CALL_OW 266
5920: PUSH
5921: LD_INT 30
5923: EQUAL
5924: IFFALSE 6043
// if ( getside ( un ) = le ) and ( [ getx ( un ) , gety ( un ) ] in poziceledolu ) and not lesurr then
5926: LD_VAR 0 1
5930: PPUSH
5931: CALL_OW 255
5935: PUSH
5936: LD_EXP 4
5940: EQUAL
5941: PUSH
5942: LD_VAR 0 1
5946: PPUSH
5947: CALL_OW 250
5951: PUSH
5952: LD_VAR 0 1
5956: PPUSH
5957: CALL_OW 251
5961: PUSH
5962: EMPTY
5963: LIST
5964: LIST
5965: PUSH
5966: LD_EXP 228
5970: IN
5971: AND
5972: PUSH
5973: LD_EXP 248
5977: NOT
5978: AND
5979: IFFALSE 5986
// enable ( 05 ) else
5981: LD_INT 5
5983: ENABLE_MARKED
5984: GO 6043
// if ( getside ( un ) = am ) and ( getx ( un ) = 64 ) and ( gety ( un ) = 17 ) and not am_surr then
5986: LD_VAR 0 1
5990: PPUSH
5991: CALL_OW 255
5995: PUSH
5996: LD_EXP 2
6000: EQUAL
6001: PUSH
6002: LD_VAR 0 1
6006: PPUSH
6007: CALL_OW 250
6011: PUSH
6012: LD_INT 64
6014: EQUAL
6015: AND
6016: PUSH
6017: LD_VAR 0 1
6021: PPUSH
6022: CALL_OW 251
6026: PUSH
6027: LD_INT 17
6029: EQUAL
6030: AND
6031: PUSH
6032: LD_EXP 221
6036: NOT
6037: AND
6038: IFFALSE 6043
// enable ( 07 ) ;
6040: LD_INT 7
6042: ENABLE_MARKED
6043: PPOPN 1
6045: END
// var attid ; every 0 0$2 trigger rusacimajisib and not legdestr do var tmp , tmp1 , tmp2 , regid_le ;
6046: LD_EXP 242
6050: PUSH
6051: LD_EXP 239
6055: NOT
6056: AND
6057: IFFALSE 7428
6059: GO 6061
6061: DISABLE
6062: LD_INT 0
6064: PPUSH
6065: PPUSH
6066: PPUSH
6067: PPUSH
// begin if lesurr then
6068: LD_EXP 248
6072: IFFALSE 6076
// exit ;
6074: GO 7428
// if debug then
6076: LD_EXP 223
6080: IFFALSE 6089
// msg ( legion: attaaaaaaaaaack! ) ;
6082: LD_STRING legion: attaaaaaaaaaack!
6084: PPUSH
6085: CALL_OW 100
// uc_nation = nation_arabian ;
6089: LD_ADDR_OWVAR 21
6093: PUSH
6094: LD_INT 2
6096: ST_TO_ADDR
// uc_side = le ;
6097: LD_ADDR_OWVAR 20
6101: PUSH
6102: LD_EXP 4
6106: ST_TO_ADDR
// vc_control = control_manual ;
6107: LD_ADDR_OWVAR 38
6111: PUSH
6112: LD_INT 1
6114: ST_TO_ADDR
// vc_engine = engine_siberite ;
6115: LD_ADDR_OWVAR 39
6119: PUSH
6120: LD_INT 3
6122: ST_TO_ADDR
// vc_chassis = ar_half_tracked ;
6123: LD_ADDR_OWVAR 37
6127: PUSH
6128: LD_INT 14
6130: ST_TO_ADDR
// vc_weapon = ar_rocket_launcher ;
6131: LD_ADDR_OWVAR 40
6135: PUSH
6136: LD_INT 28
6138: ST_TO_ADDR
// tmp = createvehicle ;
6139: LD_ADDR_VAR 0 1
6143: PUSH
6144: CALL_OW 45
6148: ST_TO_ADDR
// setdir ( tmp , 5 ) ;
6149: LD_VAR 0 1
6153: PPUSH
6154: LD_INT 5
6156: PPUSH
6157: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
6161: LD_VAR 0 1
6165: PPUSH
6166: LD_INT 20
6168: PPUSH
6169: LD_INT 0
6171: PPUSH
6172: CALL_OW 49
// preparemechanic ( sex_male , le_def_sk ) ;
6176: LD_INT 1
6178: PPUSH
6179: LD_EXP 211
6183: PPUSH
6184: CALL_OW 383
// tmp1 = createhuman ;
6188: LD_ADDR_VAR 0 2
6192: PUSH
6193: CALL_OW 44
6197: ST_TO_ADDR
// placehumaninunit ( tmp1 , tmp ) ;
6198: LD_VAR 0 2
6202: PPUSH
6203: LD_VAR 0 1
6207: PPUSH
6208: CALL_OW 52
// vc_chassis = ar_half_tracked ;
6212: LD_ADDR_OWVAR 37
6216: PUSH
6217: LD_INT 14
6219: ST_TO_ADDR
// vc_weapon = ar_gun ;
6220: LD_ADDR_OWVAR 40
6224: PUSH
6225: LD_INT 27
6227: ST_TO_ADDR
// tmp = createvehicle ;
6228: LD_ADDR_VAR 0 1
6232: PUSH
6233: CALL_OW 45
6237: ST_TO_ADDR
// setdir ( tmp , 4 ) ;
6238: LD_VAR 0 1
6242: PPUSH
6243: LD_INT 4
6245: PPUSH
6246: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
6250: LD_VAR 0 1
6254: PPUSH
6255: LD_INT 20
6257: PPUSH
6258: LD_INT 0
6260: PPUSH
6261: CALL_OW 49
// preparemechanic ( sex_male , le_def_sk ) ;
6265: LD_INT 1
6267: PPUSH
6268: LD_EXP 211
6272: PPUSH
6273: CALL_OW 383
// tmp1 = createhuman ;
6277: LD_ADDR_VAR 0 2
6281: PUSH
6282: CALL_OW 44
6286: ST_TO_ADDR
// placehumaninunit ( tmp1 , tmp ) ;
6287: LD_VAR 0 2
6291: PPUSH
6292: LD_VAR 0 1
6296: PPUSH
6297: CALL_OW 52
// vc_chassis = ar_half_tracked ;
6301: LD_ADDR_OWVAR 37
6305: PUSH
6306: LD_INT 14
6308: ST_TO_ADDR
// vc_weapon = ar_flame_thrower ;
6309: LD_ADDR_OWVAR 40
6313: PUSH
6314: LD_INT 26
6316: ST_TO_ADDR
// tmp = createvehicle ;
6317: LD_ADDR_VAR 0 1
6321: PUSH
6322: CALL_OW 45
6326: ST_TO_ADDR
// setdir ( tmp , 5 ) ;
6327: LD_VAR 0 1
6331: PPUSH
6332: LD_INT 5
6334: PPUSH
6335: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
6339: LD_VAR 0 1
6343: PPUSH
6344: LD_INT 20
6346: PPUSH
6347: LD_INT 0
6349: PPUSH
6350: CALL_OW 49
// preparemechanic ( sex_male , le_def_sk ) ;
6354: LD_INT 1
6356: PPUSH
6357: LD_EXP 211
6361: PPUSH
6362: CALL_OW 383
// tmp1 = createhuman ;
6366: LD_ADDR_VAR 0 2
6370: PUSH
6371: CALL_OW 44
6375: ST_TO_ADDR
// placehumaninunit ( tmp1 , tmp ) ;
6376: LD_VAR 0 2
6380: PPUSH
6381: LD_VAR 0 1
6385: PPUSH
6386: CALL_OW 52
// vc_chassis = ar_half_tracked ;
6390: LD_ADDR_OWVAR 37
6394: PUSH
6395: LD_INT 14
6397: ST_TO_ADDR
// vc_weapon = ar_rocket_launcher ;
6398: LD_ADDR_OWVAR 40
6402: PUSH
6403: LD_INT 28
6405: ST_TO_ADDR
// tmp = createvehicle ;
6406: LD_ADDR_VAR 0 1
6410: PUSH
6411: CALL_OW 45
6415: ST_TO_ADDR
// setdir ( tmp , 5 ) ;
6416: LD_VAR 0 1
6420: PPUSH
6421: LD_INT 5
6423: PPUSH
6424: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
6428: LD_VAR 0 1
6432: PPUSH
6433: LD_INT 20
6435: PPUSH
6436: LD_INT 0
6438: PPUSH
6439: CALL_OW 49
// preparemechanic ( sex_male , le_def_sk ) ;
6443: LD_INT 1
6445: PPUSH
6446: LD_EXP 211
6450: PPUSH
6451: CALL_OW 383
// tmp1 = createhuman ;
6455: LD_ADDR_VAR 0 2
6459: PUSH
6460: CALL_OW 44
6464: ST_TO_ADDR
// placehumaninunit ( tmp1 , tmp ) ;
6465: LD_VAR 0 2
6469: PPUSH
6470: LD_VAR 0 1
6474: PPUSH
6475: CALL_OW 52
// vc_chassis = ar_half_tracked ;
6479: LD_ADDR_OWVAR 37
6483: PUSH
6484: LD_INT 14
6486: ST_TO_ADDR
// vc_weapon = ar_gun ;
6487: LD_ADDR_OWVAR 40
6491: PUSH
6492: LD_INT 27
6494: ST_TO_ADDR
// tmp = createvehicle ;
6495: LD_ADDR_VAR 0 1
6499: PUSH
6500: CALL_OW 45
6504: ST_TO_ADDR
// setdir ( tmp , 4 ) ;
6505: LD_VAR 0 1
6509: PPUSH
6510: LD_INT 4
6512: PPUSH
6513: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
6517: LD_VAR 0 1
6521: PPUSH
6522: LD_INT 20
6524: PPUSH
6525: LD_INT 0
6527: PPUSH
6528: CALL_OW 49
// preparemechanic ( sex_male , le_def_sk ) ;
6532: LD_INT 1
6534: PPUSH
6535: LD_EXP 211
6539: PPUSH
6540: CALL_OW 383
// tmp1 = createhuman ;
6544: LD_ADDR_VAR 0 2
6548: PUSH
6549: CALL_OW 44
6553: ST_TO_ADDR
// placehumaninunit ( tmp1 , tmp ) ;
6554: LD_VAR 0 2
6558: PPUSH
6559: LD_VAR 0 1
6563: PPUSH
6564: CALL_OW 52
// vc_chassis = ar_half_tracked ;
6568: LD_ADDR_OWVAR 37
6572: PUSH
6573: LD_INT 14
6575: ST_TO_ADDR
// vc_weapon = ar_flame_thrower ;
6576: LD_ADDR_OWVAR 40
6580: PUSH
6581: LD_INT 26
6583: ST_TO_ADDR
// tmp = createvehicle ;
6584: LD_ADDR_VAR 0 1
6588: PUSH
6589: CALL_OW 45
6593: ST_TO_ADDR
// setdir ( tmp , 5 ) ;
6594: LD_VAR 0 1
6598: PPUSH
6599: LD_INT 5
6601: PPUSH
6602: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
6606: LD_VAR 0 1
6610: PPUSH
6611: LD_INT 20
6613: PPUSH
6614: LD_INT 0
6616: PPUSH
6617: CALL_OW 49
// preparemechanic ( sex_male , le_def_sk ) ;
6621: LD_INT 1
6623: PPUSH
6624: LD_EXP 211
6628: PPUSH
6629: CALL_OW 383
// tmp1 = createhuman ;
6633: LD_ADDR_VAR 0 2
6637: PUSH
6638: CALL_OW 44
6642: ST_TO_ADDR
// placehumaninunit ( tmp1 , tmp ) ;
6643: LD_VAR 0 2
6647: PPUSH
6648: LD_VAR 0 1
6652: PPUSH
6653: CALL_OW 52
// vc_chassis = ar_half_tracked ;
6657: LD_ADDR_OWVAR 37
6661: PUSH
6662: LD_INT 14
6664: ST_TO_ADDR
// vc_weapon = ar_rocket_launcher ;
6665: LD_ADDR_OWVAR 40
6669: PUSH
6670: LD_INT 28
6672: ST_TO_ADDR
// tmp = createvehicle ;
6673: LD_ADDR_VAR 0 1
6677: PUSH
6678: CALL_OW 45
6682: ST_TO_ADDR
// setdir ( tmp , 5 ) ;
6683: LD_VAR 0 1
6687: PPUSH
6688: LD_INT 5
6690: PPUSH
6691: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
6695: LD_VAR 0 1
6699: PPUSH
6700: LD_INT 20
6702: PPUSH
6703: LD_INT 0
6705: PPUSH
6706: CALL_OW 49
// preparemechanic ( sex_male , le_def_sk ) ;
6710: LD_INT 1
6712: PPUSH
6713: LD_EXP 211
6717: PPUSH
6718: CALL_OW 383
// tmp1 = createhuman ;
6722: LD_ADDR_VAR 0 2
6726: PUSH
6727: CALL_OW 44
6731: ST_TO_ADDR
// placehumaninunit ( tmp1 , tmp ) ;
6732: LD_VAR 0 2
6736: PPUSH
6737: LD_VAR 0 1
6741: PPUSH
6742: CALL_OW 52
// vc_chassis = ar_half_tracked ;
6746: LD_ADDR_OWVAR 37
6750: PUSH
6751: LD_INT 14
6753: ST_TO_ADDR
// vc_weapon = ar_gun ;
6754: LD_ADDR_OWVAR 40
6758: PUSH
6759: LD_INT 27
6761: ST_TO_ADDR
// tmp = createvehicle ;
6762: LD_ADDR_VAR 0 1
6766: PUSH
6767: CALL_OW 45
6771: ST_TO_ADDR
// setdir ( tmp , 4 ) ;
6772: LD_VAR 0 1
6776: PPUSH
6777: LD_INT 4
6779: PPUSH
6780: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
6784: LD_VAR 0 1
6788: PPUSH
6789: LD_INT 20
6791: PPUSH
6792: LD_INT 0
6794: PPUSH
6795: CALL_OW 49
// preparemechanic ( sex_male , le_def_sk ) ;
6799: LD_INT 1
6801: PPUSH
6802: LD_EXP 211
6806: PPUSH
6807: CALL_OW 383
// tmp1 = createhuman ;
6811: LD_ADDR_VAR 0 2
6815: PUSH
6816: CALL_OW 44
6820: ST_TO_ADDR
// placehumaninunit ( tmp1 , tmp ) ;
6821: LD_VAR 0 2
6825: PPUSH
6826: LD_VAR 0 1
6830: PPUSH
6831: CALL_OW 52
// vc_chassis = ar_half_tracked ;
6835: LD_ADDR_OWVAR 37
6839: PUSH
6840: LD_INT 14
6842: ST_TO_ADDR
// vc_weapon = ar_flame_thrower ;
6843: LD_ADDR_OWVAR 40
6847: PUSH
6848: LD_INT 26
6850: ST_TO_ADDR
// tmp = createvehicle ;
6851: LD_ADDR_VAR 0 1
6855: PUSH
6856: CALL_OW 45
6860: ST_TO_ADDR
// setdir ( tmp , 5 ) ;
6861: LD_VAR 0 1
6865: PPUSH
6866: LD_INT 5
6868: PPUSH
6869: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
6873: LD_VAR 0 1
6877: PPUSH
6878: LD_INT 20
6880: PPUSH
6881: LD_INT 0
6883: PPUSH
6884: CALL_OW 49
// preparemechanic ( sex_male , le_def_sk ) ;
6888: LD_INT 1
6890: PPUSH
6891: LD_EXP 211
6895: PPUSH
6896: CALL_OW 383
// tmp1 = createhuman ;
6900: LD_ADDR_VAR 0 2
6904: PUSH
6905: CALL_OW 44
6909: ST_TO_ADDR
// placehumaninunit ( tmp1 , tmp ) ;
6910: LD_VAR 0 2
6914: PPUSH
6915: LD_VAR 0 1
6919: PPUSH
6920: CALL_OW 52
// vc_chassis = ar_half_tracked ;
6924: LD_ADDR_OWVAR 37
6928: PUSH
6929: LD_INT 14
6931: ST_TO_ADDR
// vc_weapon = ar_radar ;
6932: LD_ADDR_OWVAR 40
6936: PUSH
6937: LD_INT 30
6939: ST_TO_ADDR
// tmp = createvehicle ;
6940: LD_ADDR_VAR 0 1
6944: PUSH
6945: CALL_OW 45
6949: ST_TO_ADDR
// setdir ( tmp , 5 ) ;
6950: LD_VAR 0 1
6954: PPUSH
6955: LD_INT 5
6957: PPUSH
6958: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
6962: LD_VAR 0 1
6966: PPUSH
6967: LD_INT 20
6969: PPUSH
6970: LD_INT 0
6972: PPUSH
6973: CALL_OW 49
// preparemechanic ( sex_male , le_def_sk ) ;
6977: LD_INT 1
6979: PPUSH
6980: LD_EXP 211
6984: PPUSH
6985: CALL_OW 383
// tmp1 = createhuman ;
6989: LD_ADDR_VAR 0 2
6993: PUSH
6994: CALL_OW 44
6998: ST_TO_ADDR
// placehumaninunit ( tmp1 , tmp ) ;
6999: LD_VAR 0 2
7003: PPUSH
7004: LD_VAR 0 1
7008: PPUSH
7009: CALL_OW 52
// if difficulty > 1 then
7013: LD_OWVAR 67
7017: PUSH
7018: LD_INT 1
7020: GREATER
7021: IFFALSE 7248
// begin vc_control = control_remote ;
7023: LD_ADDR_OWVAR 38
7027: PUSH
7028: LD_INT 2
7030: ST_TO_ADDR
// vc_chassis = ar_half_tracked ;
7031: LD_ADDR_OWVAR 37
7035: PUSH
7036: LD_INT 14
7038: ST_TO_ADDR
// vc_weapon = ar_selfpropelled_bomb ;
7039: LD_ADDR_OWVAR 40
7043: PUSH
7044: LD_INT 29
7046: ST_TO_ADDR
// tmp = createvehicle ;
7047: LD_ADDR_VAR 0 1
7051: PUSH
7052: CALL_OW 45
7056: ST_TO_ADDR
// setdir ( tmp , 5 ) ;
7057: LD_VAR 0 1
7061: PPUSH
7062: LD_INT 5
7064: PPUSH
7065: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
7069: LD_VAR 0 1
7073: PPUSH
7074: LD_INT 20
7076: PPUSH
7077: LD_INT 0
7079: PPUSH
7080: CALL_OW 49
// linkvehicletohuman ( tmp , lem0 ) ;
7084: LD_VAR 0 1
7088: PPUSH
7089: LD_EXP 170
7093: PPUSH
7094: CALL_OW 53
// vc_control = control_remote ;
7098: LD_ADDR_OWVAR 38
7102: PUSH
7103: LD_INT 2
7105: ST_TO_ADDR
// vc_chassis = ar_half_tracked ;
7106: LD_ADDR_OWVAR 37
7110: PUSH
7111: LD_INT 14
7113: ST_TO_ADDR
// vc_weapon = ar_selfpropelled_bomb ;
7114: LD_ADDR_OWVAR 40
7118: PUSH
7119: LD_INT 29
7121: ST_TO_ADDR
// tmp = createvehicle ;
7122: LD_ADDR_VAR 0 1
7126: PUSH
7127: CALL_OW 45
7131: ST_TO_ADDR
// setdir ( tmp , 4 ) ;
7132: LD_VAR 0 1
7136: PPUSH
7137: LD_INT 4
7139: PPUSH
7140: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
7144: LD_VAR 0 1
7148: PPUSH
7149: LD_INT 20
7151: PPUSH
7152: LD_INT 0
7154: PPUSH
7155: CALL_OW 49
// linkvehicletohuman ( tmp , lem0 ) ;
7159: LD_VAR 0 1
7163: PPUSH
7164: LD_EXP 170
7168: PPUSH
7169: CALL_OW 53
// vc_control = control_remote ;
7173: LD_ADDR_OWVAR 38
7177: PUSH
7178: LD_INT 2
7180: ST_TO_ADDR
// vc_chassis = ar_half_tracked ;
7181: LD_ADDR_OWVAR 37
7185: PUSH
7186: LD_INT 14
7188: ST_TO_ADDR
// vc_weapon = ar_selfpropelled_bomb ;
7189: LD_ADDR_OWVAR 40
7193: PUSH
7194: LD_INT 29
7196: ST_TO_ADDR
// tmp = createvehicle ;
7197: LD_ADDR_VAR 0 1
7201: PUSH
7202: CALL_OW 45
7206: ST_TO_ADDR
// setdir ( tmp , 4 ) ;
7207: LD_VAR 0 1
7211: PPUSH
7212: LD_INT 4
7214: PPUSH
7215: CALL_OW 233
// placeunitarea ( tmp , lethiefsar , false ) ;
7219: LD_VAR 0 1
7223: PPUSH
7224: LD_INT 20
7226: PPUSH
7227: LD_INT 0
7229: PPUSH
7230: CALL_OW 49
// linkvehicletohuman ( tmp , lem0 ) ;
7234: LD_VAR 0 1
7238: PPUSH
7239: LD_EXP 170
7243: PPUSH
7244: CALL_OW 53
// end ; tmp = filterunitsinarea ( lethiefsar , [ [ f_or , [ f_weapon , ar_rocket_launcher ] , [ f_weapon , ar_gun ] , [ f_weapon , ar_flame_thrower ] ] ] ) ;
7248: LD_ADDR_VAR 0 1
7252: PUSH
7253: LD_INT 20
7255: PPUSH
7256: LD_INT 2
7258: PUSH
7259: LD_INT 34
7261: PUSH
7262: LD_INT 28
7264: PUSH
7265: EMPTY
7266: LIST
7267: LIST
7268: PUSH
7269: LD_INT 34
7271: PUSH
7272: LD_INT 27
7274: PUSH
7275: EMPTY
7276: LIST
7277: LIST
7278: PUSH
7279: LD_INT 34
7281: PUSH
7282: LD_INT 26
7284: PUSH
7285: EMPTY
7286: LIST
7287: LIST
7288: PUSH
7289: EMPTY
7290: LIST
7291: LIST
7292: LIST
7293: LIST
7294: PUSH
7295: EMPTY
7296: LIST
7297: PPUSH
7298: CALL_OW 70
7302: ST_TO_ADDR
// tmp1 = filterunitsinarea ( lethiefsar , [ [ f_weapon , ar_selfpropelled_bomb ] ] ) ;
7303: LD_ADDR_VAR 0 2
7307: PUSH
7308: LD_INT 20
7310: PPUSH
7311: LD_INT 34
7313: PUSH
7314: LD_INT 29
7316: PUSH
7317: EMPTY
7318: LIST
7319: LIST
7320: PUSH
7321: EMPTY
7322: LIST
7323: PPUSH
7324: CALL_OW 70
7328: ST_TO_ADDR
// tmp2 = filterunitsinarea ( lethiefsar , [ [ f_weapon , ar_radar ] ] ) ;
7329: LD_ADDR_VAR 0 3
7333: PUSH
7334: LD_INT 20
7336: PPUSH
7337: LD_INT 34
7339: PUSH
7340: LD_INT 30
7342: PUSH
7343: EMPTY
7344: LIST
7345: LIST
7346: PUSH
7347: EMPTY
7348: LIST
7349: PPUSH
7350: CALL_OW 70
7354: ST_TO_ADDR
// regid_le = mcregistry ( le , [ [ mc_reg_area_to_guard , target ] , mc_reg_ignore_fog ] ) ;
7355: LD_ADDR_VAR 0 4
7359: PUSH
7360: LD_EXP 4
7364: PPUSH
7365: LD_INT 2
7367: PUSH
7368: LD_INT 10
7370: PUSH
7371: EMPTY
7372: LIST
7373: LIST
7374: PUSH
7375: LD_INT 7
7377: PUSH
7378: EMPTY
7379: LIST
7380: LIST
7381: PPUSH
7382: CALL_OW 399
7386: ST_TO_ADDR
// attid = mcattack ( 100 , regid_le , tmp ^ tmp1 ^ tmp2 , [ mc_no_stop ] ) ;
7387: LD_ADDR_LOC 6
7391: PUSH
7392: LD_INT 100
7394: PPUSH
7395: LD_VAR 0 4
7399: PPUSH
7400: LD_VAR 0 1
7404: PUSH
7405: LD_VAR 0 2
7409: ADD
7410: PUSH
7411: LD_VAR 0 3
7415: ADD
7416: PPUSH
7417: LD_INT 10
7419: PUSH
7420: EMPTY
7421: LIST
7422: PPUSH
7423: CALL_OW 402
7427: ST_TO_ADDR
// end ;
7428: PPOPN 4
7430: END
// var lesni_opoce_ ; function lesni_opoce ; begin
7431: LD_INT 0
7433: PPUSH
// lesni_opoce_ = filterunitsinarea ( opoles , [ [ f_side , 0 ] , [ f_class , class_apeman ] ] ) ;
7434: LD_ADDR_LOC 7
7438: PUSH
7439: LD_INT 21
7441: PPUSH
7442: LD_INT 22
7444: PUSH
7445: LD_INT 0
7447: PUSH
7448: EMPTY
7449: LIST
7450: LIST
7451: PUSH
7452: LD_INT 25
7454: PUSH
7455: LD_INT 12
7457: PUSH
7458: EMPTY
7459: LIST
7460: LIST
7461: PUSH
7462: EMPTY
7463: LIST
7464: LIST
7465: PPUSH
7466: CALL_OW 70
7470: ST_TO_ADDR
// result = 0 + lesni_opoce_ ;
7471: LD_ADDR_VAR 0 1
7475: PUSH
7476: LD_INT 0
7478: PUSH
7479: LD_LOC 7
7483: PLUS
7484: ST_TO_ADDR
// end ;
7485: LD_VAR 0 1
7489: RET
// every 0 0$7 trigger lesni_opoce marked 09 do var tmp , tmp1 ;
7490: CALL 7431 0 0
7494: IFFALSE 7664
7496: GO 7498
7498: DISABLE
7499: LD_INT 0
7501: PPUSH
7502: PPUSH
// begin tmp1 = [ ] ;
7503: LD_ADDR_VAR 0 2
7507: PUSH
7508: EMPTY
7509: ST_TO_ADDR
// for tmp in lesni_opoce_ do
7510: LD_ADDR_VAR 0 1
7514: PUSH
7515: LD_LOC 7
7519: PUSH
7520: FOR_IN
7521: IFFALSE 7555
// tmp1 = tmp1 ^ [ getdistunitxy ( tmp , 134 , 133 ) ] ;
7523: LD_ADDR_VAR 0 2
7527: PUSH
7528: LD_VAR 0 2
7532: PUSH
7533: LD_VAR 0 1
7537: PPUSH
7538: LD_INT 134
7540: PPUSH
7541: LD_INT 133
7543: PPUSH
7544: CALL_OW 297
7548: PUSH
7549: EMPTY
7550: LIST
7551: ADD
7552: ST_TO_ADDR
7553: GO 7520
7555: POP
7556: POP
// tmp = worstfromlistbylist ( lesni_opoce_ , tmp1 ) ;
7557: LD_ADDR_VAR 0 1
7561: PUSH
7562: LD_LOC 7
7566: PPUSH
7567: LD_VAR 0 2
7571: PPUSH
7572: CALL_OW 78
7576: ST_TO_ADDR
// comtamexy ( [ lesc_1 , lesc_3 , lesc_2 ] , getx ( tmp ) , gety ( tmp ) ) ;
7577: LD_EXP 196
7581: PUSH
7582: LD_EXP 198
7586: PUSH
7587: LD_EXP 197
7591: PUSH
7592: EMPTY
7593: LIST
7594: LIST
7595: LIST
7596: PPUSH
7597: LD_VAR 0 1
7601: PPUSH
7602: CALL_OW 250
7606: PPUSH
7607: LD_VAR 0 1
7611: PPUSH
7612: CALL_OW 251
7616: PPUSH
7617: CALL_OW 131
// addcommoveunit ( [ lesc_1 , lesc_3 , lesc_2 ] , lelabf01 ) ;
7621: LD_EXP 196
7625: PUSH
7626: LD_EXP 198
7630: PUSH
7631: LD_EXP 197
7635: PUSH
7636: EMPTY
7637: LIST
7638: LIST
7639: LIST
7640: PPUSH
7641: LD_INT 65
7643: PPUSH
7644: CALL_OW 172
// wait ( rand ( 0 0$30 , 5 5$0 ) ) ;
7648: LD_INT 1050
7650: PPUSH
7651: LD_INT 10500
7653: PPUSH
7654: CALL_OW 12
7658: PPUSH
7659: CALL_OW 67
// enable ;
7663: ENABLE
// end ;
7664: PPOPN 2
7666: END
// on apemantamed ( ape , sci ) do var tmp , tmp1 , tmp2 ;
7667: LD_INT 0
7669: PPUSH
7670: PPUSH
7671: PPUSH
// begin if getside ( sci ) = le then
7672: LD_VAR 0 2
7676: PPUSH
7677: CALL_OW 255
7681: PUSH
7682: LD_EXP 4
7686: EQUAL
7687: IFFALSE 8110
// begin commoveunit ( ape , lebarr00 ) ;
7689: LD_VAR 0 1
7693: PPUSH
7694: LD_INT 56
7696: PPUSH
7697: CALL_OW 112
// addcomchangeprofession ( ape , class_apeman_kamikaze ) ;
7701: LD_VAR 0 1
7705: PPUSH
7706: LD_INT 17
7708: PPUSH
7709: CALL_OW 183
// addcomexitbuilding ( ape ) ;
7713: LD_VAR 0 1
7717: PPUSH
7718: CALL_OW 182
// tmp2 = filterunitsinarea ( target , [ [ f_side , ru ] , [ f_or , [ f_btype , b_bunker ] , [ f_btype , b_turret ] ] ] ) ;
7722: LD_ADDR_VAR 0 5
7726: PUSH
7727: LD_INT 10
7729: PPUSH
7730: LD_INT 22
7732: PUSH
7733: LD_EXP 1
7737: PUSH
7738: EMPTY
7739: LIST
7740: LIST
7741: PUSH
7742: LD_INT 2
7744: PUSH
7745: LD_INT 30
7747: PUSH
7748: LD_INT 32
7750: PUSH
7751: EMPTY
7752: LIST
7753: LIST
7754: PUSH
7755: LD_INT 30
7757: PUSH
7758: LD_INT 33
7760: PUSH
7761: EMPTY
7762: LIST
7763: LIST
7764: PUSH
7765: EMPTY
7766: LIST
7767: LIST
7768: LIST
7769: PUSH
7770: EMPTY
7771: LIST
7772: LIST
7773: PPUSH
7774: CALL_OW 70
7778: ST_TO_ADDR
// if not tmp2 then
7779: LD_VAR 0 5
7783: NOT
7784: IFFALSE 7825
// tmp2 = filterunitsinarea ( target , [ [ f_side , ru ] , [ f_type , unit_building ] ] ) ;
7786: LD_ADDR_VAR 0 5
7790: PUSH
7791: LD_INT 10
7793: PPUSH
7794: LD_INT 22
7796: PUSH
7797: LD_EXP 1
7801: PUSH
7802: EMPTY
7803: LIST
7804: LIST
7805: PUSH
7806: LD_INT 21
7808: PUSH
7809: LD_INT 3
7811: PUSH
7812: EMPTY
7813: LIST
7814: LIST
7815: PUSH
7816: EMPTY
7817: LIST
7818: LIST
7819: PPUSH
7820: CALL_OW 70
7824: ST_TO_ADDR
// if not tmp2 then
7825: LD_VAR 0 5
7829: NOT
7830: IFFALSE 7871
// tmp2 = filterunitsinarea ( target , [ [ f_side , ru ] , [ f_type , unit_vehicle ] ] ) ;
7832: LD_ADDR_VAR 0 5
7836: PUSH
7837: LD_INT 10
7839: PPUSH
7840: LD_INT 22
7842: PUSH
7843: LD_EXP 1
7847: PUSH
7848: EMPTY
7849: LIST
7850: LIST
7851: PUSH
7852: LD_INT 21
7854: PUSH
7855: LD_INT 2
7857: PUSH
7858: EMPTY
7859: LIST
7860: LIST
7861: PUSH
7862: EMPTY
7863: LIST
7864: LIST
7865: PPUSH
7866: CALL_OW 70
7870: ST_TO_ADDR
// if not tmp2 then
7871: LD_VAR 0 5
7875: NOT
7876: IFFALSE 7917
// tmp2 = filterunitsinarea ( target , [ [ f_side , ru ] , [ f_type , unit_human ] ] ) ;
7878: LD_ADDR_VAR 0 5
7882: PUSH
7883: LD_INT 10
7885: PPUSH
7886: LD_INT 22
7888: PUSH
7889: LD_EXP 1
7893: PUSH
7894: EMPTY
7895: LIST
7896: LIST
7897: PUSH
7898: LD_INT 21
7900: PUSH
7901: LD_INT 1
7903: PUSH
7904: EMPTY
7905: LIST
7906: LIST
7907: PUSH
7908: EMPTY
7909: LIST
7910: LIST
7911: PPUSH
7912: CALL_OW 70
7916: ST_TO_ADDR
// if not tmp2 then
7917: LD_VAR 0 5
7921: NOT
7922: IFFALSE 7960
// tmp2 = filterallunits ( [ [ f_side , ru ] , [ f_type , unit_vehicle ] ] ) ;
7924: LD_ADDR_VAR 0 5
7928: PUSH
7929: LD_INT 22
7931: PUSH
7932: LD_EXP 1
7936: PUSH
7937: EMPTY
7938: LIST
7939: LIST
7940: PUSH
7941: LD_INT 21
7943: PUSH
7944: LD_INT 2
7946: PUSH
7947: EMPTY
7948: LIST
7949: LIST
7950: PUSH
7951: EMPTY
7952: LIST
7953: LIST
7954: PPUSH
7955: CALL_OW 69
7959: ST_TO_ADDR
// if not tmp2 then
7960: LD_VAR 0 5
7964: NOT
7965: IFFALSE 8003
// tmp2 = filterallunits ( [ [ f_side , ru ] , [ f_type , unit_human ] ] ) ;
7967: LD_ADDR_VAR 0 5
7971: PUSH
7972: LD_INT 22
7974: PUSH
7975: LD_EXP 1
7979: PUSH
7980: EMPTY
7981: LIST
7982: LIST
7983: PUSH
7984: LD_INT 21
7986: PUSH
7987: LD_INT 1
7989: PUSH
7990: EMPTY
7991: LIST
7992: LIST
7993: PUSH
7994: EMPTY
7995: LIST
7996: LIST
7997: PPUSH
7998: CALL_OW 69
8002: ST_TO_ADDR
// tmp1 = [ ] ;
8003: LD_ADDR_VAR 0 4
8007: PUSH
8008: EMPTY
8009: ST_TO_ADDR
// for tmp in tmp2 do
8010: LD_ADDR_VAR 0 3
8014: PUSH
8015: LD_VAR 0 5
8019: PUSH
8020: FOR_IN
8021: IFFALSE 8055
// tmp1 = tmp1 ^ [ getdistunitxy ( tmp , 134 , 133 ) ] ;
8023: LD_ADDR_VAR 0 4
8027: PUSH
8028: LD_VAR 0 4
8032: PUSH
8033: LD_VAR 0 3
8037: PPUSH
8038: LD_INT 134
8040: PPUSH
8041: LD_INT 133
8043: PPUSH
8044: CALL_OW 297
8048: PUSH
8049: EMPTY
8050: LIST
8051: ADD
8052: ST_TO_ADDR
8053: GO 8020
8055: POP
8056: POP
// tmp = worstfromlistbylist ( tmp2 , tmp1 ) ;
8057: LD_ADDR_VAR 0 3
8061: PUSH
8062: LD_VAR 0 5
8066: PPUSH
8067: LD_VAR 0 4
8071: PPUSH
8072: CALL_OW 78
8076: ST_TO_ADDR
// if debug then
8077: LD_EXP 223
8081: IFFALSE 8096
// msg ( 2b kamikadzed:  & tmp ) ;
8083: LD_STRING 2b kamikadzed: 
8085: PUSH
8086: LD_VAR 0 3
8090: STR
8091: PPUSH
8092: CALL_OW 100
// addcomattackunit ( ape , tmp ) ;
8096: LD_VAR 0 1
8100: PPUSH
8101: LD_VAR 0 3
8105: PPUSH
8106: CALL_OW 175
// end ; end ; end_of_file
8110: PPOPN 5
8112: END
// var amen_ ; export function prepare_americans ; var tmp ; begin
8113: LD_INT 0
8115: PPUSH
8116: PPUSH
// uc_side = am ;
8117: LD_ADDR_OWVAR 20
8121: PUSH
8122: LD_EXP 2
8126: ST_TO_ADDR
// uc_nation = nation_american ;
8127: LD_ADDR_OWVAR 21
8131: PUSH
8132: LD_INT 1
8134: ST_TO_ADDR
// preparesoldier ( sex_male , ams0_sk ) ;
8135: LD_INT 1
8137: PPUSH
8138: LD_EXP 11
8142: PPUSH
8143: CALL_OW 381
// tmp = createhuman ;
8147: LD_ADDR_VAR 0 2
8151: PUSH
8152: CALL_OW 44
8156: ST_TO_ADDR
// placeunitxyr ( tmp , 80 , 19 , 1 , false ) ;
8157: LD_VAR 0 2
8161: PPUSH
8162: LD_INT 80
8164: PPUSH
8165: LD_INT 19
8167: PPUSH
8168: LD_INT 1
8170: PPUSH
8171: LD_INT 0
8173: PPUSH
8174: CALL_OW 50
// comenterunit ( tmp , ambunk00 ) ;
8178: LD_VAR 0 2
8182: PPUSH
8183: LD_INT 1
8185: PPUSH
8186: CALL_OW 120
// ams0 = tmp ;
8190: LD_ADDR_EXP 6
8194: PUSH
8195: LD_VAR 0 2
8199: ST_TO_ADDR
// preparesoldier ( sex_male , ams1_sk ) ;
8200: LD_INT 1
8202: PPUSH
8203: LD_EXP 12
8207: PPUSH
8208: CALL_OW 381
// tmp = createhuman ;
8212: LD_ADDR_VAR 0 2
8216: PUSH
8217: CALL_OW 44
8221: ST_TO_ADDR
// placeunitxyr ( tmp , 94 , 26 , 1 , false ) ;
8222: LD_VAR 0 2
8226: PPUSH
8227: LD_INT 94
8229: PPUSH
8230: LD_INT 26
8232: PPUSH
8233: LD_INT 1
8235: PPUSH
8236: LD_INT 0
8238: PPUSH
8239: CALL_OW 50
// comenterunit ( tmp , ambunk01 ) ;
8243: LD_VAR 0 2
8247: PPUSH
8248: LD_INT 2
8250: PPUSH
8251: CALL_OW 120
// ams1 = tmp ;
8255: LD_ADDR_EXP 7
8259: PUSH
8260: LD_VAR 0 2
8264: ST_TO_ADDR
// preparesoldier ( sex_male , ams2_sk ) ;
8265: LD_INT 1
8267: PPUSH
8268: LD_EXP 13
8272: PPUSH
8273: CALL_OW 381
// tmp = createhuman ;
8277: LD_ADDR_VAR 0 2
8281: PUSH
8282: CALL_OW 44
8286: ST_TO_ADDR
// placeunitxyr ( tmp , 103 , 27 , 1 , false ) ;
8287: LD_VAR 0 2
8291: PPUSH
8292: LD_INT 103
8294: PPUSH
8295: LD_INT 27
8297: PPUSH
8298: LD_INT 1
8300: PPUSH
8301: LD_INT 0
8303: PPUSH
8304: CALL_OW 50
// comenterunit ( tmp , ambunk02 ) ;
8308: LD_VAR 0 2
8312: PPUSH
8313: LD_INT 3
8315: PPUSH
8316: CALL_OW 120
// ams2 = tmp ;
8320: LD_ADDR_EXP 8
8324: PUSH
8325: LD_VAR 0 2
8329: ST_TO_ADDR
// preparesoldier ( sex_male , ams3_sk ) ;
8330: LD_INT 1
8332: PPUSH
8333: LD_EXP 14
8337: PPUSH
8338: CALL_OW 381
// tmp = createhuman ;
8342: LD_ADDR_VAR 0 2
8346: PUSH
8347: CALL_OW 44
8351: ST_TO_ADDR
// placeunitxyr ( tmp , 116 , 24 , 1 , false ) ;
8352: LD_VAR 0 2
8356: PPUSH
8357: LD_INT 116
8359: PPUSH
8360: LD_INT 24
8362: PPUSH
8363: LD_INT 1
8365: PPUSH
8366: LD_INT 0
8368: PPUSH
8369: CALL_OW 50
// comenterunit ( tmp , ambunk03 ) ;
8373: LD_VAR 0 2
8377: PPUSH
8378: LD_INT 4
8380: PPUSH
8381: CALL_OW 120
// ams3 = tmp ;
8385: LD_ADDR_EXP 9
8389: PUSH
8390: LD_VAR 0 2
8394: ST_TO_ADDR
// preparesoldier ( sex_male , ams4_sk ) ;
8395: LD_INT 1
8397: PPUSH
8398: LD_EXP 15
8402: PPUSH
8403: CALL_OW 381
// tmp = createhuman ;
8407: LD_ADDR_VAR 0 2
8411: PUSH
8412: CALL_OW 44
8416: ST_TO_ADDR
// placeunitxyr ( tmp , 113 , 4 , 1 , false ) ;
8417: LD_VAR 0 2
8421: PPUSH
8422: LD_INT 113
8424: PPUSH
8425: LD_INT 4
8427: PPUSH
8428: LD_INT 1
8430: PPUSH
8431: LD_INT 0
8433: PPUSH
8434: CALL_OW 50
// comenterunit ( tmp , ambunk04 ) ;
8438: LD_VAR 0 2
8442: PPUSH
8443: LD_INT 71
8445: PPUSH
8446: CALL_OW 120
// ams4 = tmp ;
8450: LD_ADDR_EXP 10
8454: PUSH
8455: LD_VAR 0 2
8459: ST_TO_ADDR
// preparesoldier ( sex_male , ams_1_sk ) ;
8460: LD_INT 1
8462: PPUSH
8463: LD_EXP 20
8467: PPUSH
8468: CALL_OW 381
// tmp = createhuman ;
8472: LD_ADDR_VAR 0 2
8476: PUSH
8477: CALL_OW 44
8481: ST_TO_ADDR
// placeunitxyr ( tmp , 88 , 15 , 1 , false ) ;
8482: LD_VAR 0 2
8486: PPUSH
8487: LD_INT 88
8489: PPUSH
8490: LD_INT 15
8492: PPUSH
8493: LD_INT 1
8495: PPUSH
8496: LD_INT 0
8498: PPUSH
8499: CALL_OW 50
// comenterunit ( tmp , ambarr00 ) ;
8503: LD_VAR 0 2
8507: PPUSH
8508: LD_INT 14
8510: PPUSH
8511: CALL_OW 120
// ams_1 = tmp ;
8515: LD_ADDR_EXP 16
8519: PUSH
8520: LD_VAR 0 2
8524: ST_TO_ADDR
// preparesoldier ( sex_male , ams_2_sk ) ;
8525: LD_INT 1
8527: PPUSH
8528: LD_EXP 21
8532: PPUSH
8533: CALL_OW 381
// tmp = createhuman ;
8537: LD_ADDR_VAR 0 2
8541: PUSH
8542: CALL_OW 44
8546: ST_TO_ADDR
// placeunitxyr ( tmp , 88 , 15 , 1 , false ) ;
8547: LD_VAR 0 2
8551: PPUSH
8552: LD_INT 88
8554: PPUSH
8555: LD_INT 15
8557: PPUSH
8558: LD_INT 1
8560: PPUSH
8561: LD_INT 0
8563: PPUSH
8564: CALL_OW 50
// comenterunit ( tmp , ambarr00 ) ;
8568: LD_VAR 0 2
8572: PPUSH
8573: LD_INT 14
8575: PPUSH
8576: CALL_OW 120
// ams_2 = tmp ;
8580: LD_ADDR_EXP 17
8584: PUSH
8585: LD_VAR 0 2
8589: ST_TO_ADDR
// preparehuman ( sex_male , class_soldier , ams_3_sk ) ;
8590: LD_INT 1
8592: PPUSH
8593: LD_INT 1
8595: PPUSH
8596: LD_EXP 22
8600: PPUSH
8601: CALL_OW 380
// tmp = createhuman ;
8605: LD_ADDR_VAR 0 2
8609: PUSH
8610: CALL_OW 44
8614: ST_TO_ADDR
// placeunitxyr ( tmp , 88 , 15 , 1 , false ) ;
8615: LD_VAR 0 2
8619: PPUSH
8620: LD_INT 88
8622: PPUSH
8623: LD_INT 15
8625: PPUSH
8626: LD_INT 1
8628: PPUSH
8629: LD_INT 0
8631: PPUSH
8632: CALL_OW 50
// comenterunit ( tmp , ambarr00 ) ;
8636: LD_VAR 0 2
8640: PPUSH
8641: LD_INT 14
8643: PPUSH
8644: CALL_OW 120
// ams_3 = tmp ;
8648: LD_ADDR_EXP 18
8652: PUSH
8653: LD_VAR 0 2
8657: ST_TO_ADDR
// preparehuman ( sex_male , class_sniper , ams_4_sk ) ;
8658: LD_INT 1
8660: PPUSH
8661: LD_INT 5
8663: PPUSH
8664: LD_EXP 23
8668: PPUSH
8669: CALL_OW 380
// tmp = createhuman ;
8673: LD_ADDR_VAR 0 2
8677: PUSH
8678: CALL_OW 44
8682: ST_TO_ADDR
// placeunitxyr ( tmp , 88 , 15 , 1 , false ) ;
8683: LD_VAR 0 2
8687: PPUSH
8688: LD_INT 88
8690: PPUSH
8691: LD_INT 15
8693: PPUSH
8694: LD_INT 1
8696: PPUSH
8697: LD_INT 0
8699: PPUSH
8700: CALL_OW 50
// comenterunit ( tmp , ambarr00 ) ;
8704: LD_VAR 0 2
8708: PPUSH
8709: LD_INT 14
8711: PPUSH
8712: CALL_OW 120
// ams_4 = tmp ;
8716: LD_ADDR_EXP 19
8720: PUSH
8721: LD_VAR 0 2
8725: ST_TO_ADDR
// preparemechanic ( sex_female , amm0_sk ) ;
8726: LD_INT 2
8728: PPUSH
8729: LD_EXP 25
8733: PPUSH
8734: CALL_OW 383
// amm0 = createhuman ;
8738: LD_ADDR_EXP 24
8742: PUSH
8743: CALL_OW 44
8747: ST_TO_ADDR
// placeunitxyr ( amm0 , 97 , 11 , 1 , false ) ;
8748: LD_EXP 24
8752: PPUSH
8753: LD_INT 97
8755: PPUSH
8756: LD_INT 11
8758: PPUSH
8759: LD_INT 1
8761: PPUSH
8762: LD_INT 0
8764: PPUSH
8765: CALL_OW 50
// comenterunit ( amm0 , amcntw00 ) ;
8769: LD_EXP 24
8773: PPUSH
8774: LD_INT 16
8776: PPUSH
8777: CALL_OW 120
// vc_control = control_manual ;
8781: LD_ADDR_OWVAR 38
8785: PUSH
8786: LD_INT 1
8788: ST_TO_ADDR
// vc_engine = engine_siberite ;
8789: LD_ADDR_OWVAR 39
8793: PUSH
8794: LD_INT 3
8796: ST_TO_ADDR
// vc_chassis = amv1_ch ;
8797: LD_ADDR_OWVAR 37
8801: PUSH
8802: LD_EXP 39
8806: ST_TO_ADDR
// vc_weapon = amv1_wp ;
8807: LD_ADDR_OWVAR 40
8811: PUSH
8812: LD_EXP 40
8816: ST_TO_ADDR
// amv1 = createvehicle ;
8817: LD_ADDR_EXP 38
8821: PUSH
8822: CALL_OW 45
8826: ST_TO_ADDR
// setdir ( amv1 , 3 ) ;
8827: LD_EXP 38
8831: PPUSH
8832: LD_INT 3
8834: PPUSH
8835: CALL_OW 233
// placeunitxy ( amv1 , 76 , 14 , false ) ;
8839: LD_EXP 38
8843: PPUSH
8844: LD_INT 76
8846: PPUSH
8847: LD_INT 14
8849: PPUSH
8850: LD_INT 0
8852: PPUSH
8853: CALL_OW 48
// preparemechanic ( sex_male , amm1_sk ) ;
8857: LD_INT 1
8859: PPUSH
8860: LD_EXP 27
8864: PPUSH
8865: CALL_OW 383
// amm1 = createhuman ;
8869: LD_ADDR_EXP 26
8873: PUSH
8874: CALL_OW 44
8878: ST_TO_ADDR
// placehumaninunit ( amm1 , amv1 ) ;
8879: LD_EXP 26
8883: PPUSH
8884: LD_EXP 38
8888: PPUSH
8889: CALL_OW 52
// vc_chassis = amv2_ch ;
8893: LD_ADDR_OWVAR 37
8897: PUSH
8898: LD_EXP 42
8902: ST_TO_ADDR
// vc_weapon = amv2_wp ;
8903: LD_ADDR_OWVAR 40
8907: PUSH
8908: LD_EXP 43
8912: ST_TO_ADDR
// amv2 = createvehicle ;
8913: LD_ADDR_EXP 41
8917: PUSH
8918: CALL_OW 45
8922: ST_TO_ADDR
// setdir ( amv2 , 2 ) ;
8923: LD_EXP 41
8927: PPUSH
8928: LD_INT 2
8930: PPUSH
8931: CALL_OW 233
// placeunitxy ( amv2 , 84 , 19 , false ) ;
8935: LD_EXP 41
8939: PPUSH
8940: LD_INT 84
8942: PPUSH
8943: LD_INT 19
8945: PPUSH
8946: LD_INT 0
8948: PPUSH
8949: CALL_OW 48
// preparemechanic ( sex_male , amm2_sk ) ;
8953: LD_INT 1
8955: PPUSH
8956: LD_EXP 29
8960: PPUSH
8961: CALL_OW 383
// amm2 = createhuman ;
8965: LD_ADDR_EXP 28
8969: PUSH
8970: CALL_OW 44
8974: ST_TO_ADDR
// placehumaninunit ( amm2 , amv2 ) ;
8975: LD_EXP 28
8979: PPUSH
8980: LD_EXP 41
8984: PPUSH
8985: CALL_OW 52
// vc_chassis = amv3_ch ;
8989: LD_ADDR_OWVAR 37
8993: PUSH
8994: LD_EXP 45
8998: ST_TO_ADDR
// vc_weapon = amv3_wp ;
8999: LD_ADDR_OWVAR 40
9003: PUSH
9004: LD_EXP 46
9008: ST_TO_ADDR
// amv3 = createvehicle ;
9009: LD_ADDR_EXP 44
9013: PUSH
9014: CALL_OW 45
9018: ST_TO_ADDR
// setdir ( amv3 , 4 ) ;
9019: LD_EXP 44
9023: PPUSH
9024: LD_INT 4
9026: PPUSH
9027: CALL_OW 233
// placeunitxy ( amv3 , 91 , 23 , false ) ;
9031: LD_EXP 44
9035: PPUSH
9036: LD_INT 91
9038: PPUSH
9039: LD_INT 23
9041: PPUSH
9042: LD_INT 0
9044: PPUSH
9045: CALL_OW 48
// preparemechanic ( sex_male , amm3_sk ) ;
9049: LD_INT 1
9051: PPUSH
9052: LD_EXP 31
9056: PPUSH
9057: CALL_OW 383
// amm3 = createhuman ;
9061: LD_ADDR_EXP 30
9065: PUSH
9066: CALL_OW 44
9070: ST_TO_ADDR
// placehumaninunit ( amm3 , amv3 ) ;
9071: LD_EXP 30
9075: PPUSH
9076: LD_EXP 44
9080: PPUSH
9081: CALL_OW 52
// vc_chassis = amv4_ch ;
9085: LD_ADDR_OWVAR 37
9089: PUSH
9090: LD_EXP 48
9094: ST_TO_ADDR
// vc_weapon = amv4_wp ;
9095: LD_ADDR_OWVAR 40
9099: PUSH
9100: LD_EXP 49
9104: ST_TO_ADDR
// amv4 = createvehicle ;
9105: LD_ADDR_EXP 47
9109: PUSH
9110: CALL_OW 45
9114: ST_TO_ADDR
// setdir ( amv4 , 2 ) ;
9115: LD_EXP 47
9119: PPUSH
9120: LD_INT 2
9122: PPUSH
9123: CALL_OW 233
// placeunitxy ( amv4 , 105 , 26 , false ) ;
9127: LD_EXP 47
9131: PPUSH
9132: LD_INT 105
9134: PPUSH
9135: LD_INT 26
9137: PPUSH
9138: LD_INT 0
9140: PPUSH
9141: CALL_OW 48
// preparemechanic ( sex_male , amm4_sk ) ;
9145: LD_INT 1
9147: PPUSH
9148: LD_EXP 33
9152: PPUSH
9153: CALL_OW 383
// amm4 = createhuman ;
9157: LD_ADDR_EXP 32
9161: PUSH
9162: CALL_OW 44
9166: ST_TO_ADDR
// placehumaninunit ( amm4 , amv4 ) ;
9167: LD_EXP 32
9171: PPUSH
9172: LD_EXP 47
9176: PPUSH
9177: CALL_OW 52
// vc_chassis = amv5_ch ;
9181: LD_ADDR_OWVAR 37
9185: PUSH
9186: LD_EXP 51
9190: ST_TO_ADDR
// vc_weapon = amv5_wp ;
9191: LD_ADDR_OWVAR 40
9195: PUSH
9196: LD_EXP 52
9200: ST_TO_ADDR
// amv5 = createvehicle ;
9201: LD_ADDR_EXP 50
9205: PUSH
9206: CALL_OW 45
9210: ST_TO_ADDR
// setdir ( amv5 , 3 ) ;
9211: LD_EXP 50
9215: PPUSH
9216: LD_INT 3
9218: PPUSH
9219: CALL_OW 233
// placeunitxy ( amv5 , 110 , 24 , false ) ;
9223: LD_EXP 50
9227: PPUSH
9228: LD_INT 110
9230: PPUSH
9231: LD_INT 24
9233: PPUSH
9234: LD_INT 0
9236: PPUSH
9237: CALL_OW 48
// preparemechanic ( sex_male , amm5_sk ) ;
9241: LD_INT 1
9243: PPUSH
9244: LD_EXP 35
9248: PPUSH
9249: CALL_OW 383
// amm5 = createhuman ;
9253: LD_ADDR_EXP 34
9257: PUSH
9258: CALL_OW 44
9262: ST_TO_ADDR
// placehumaninunit ( amm5 , amv5 ) ;
9263: LD_EXP 34
9267: PPUSH
9268: LD_EXP 50
9272: PPUSH
9273: CALL_OW 52
// vc_chassis = amv6_ch ;
9277: LD_ADDR_OWVAR 37
9281: PUSH
9282: LD_EXP 54
9286: ST_TO_ADDR
// vc_weapon = amv6_wp ;
9287: LD_ADDR_OWVAR 40
9291: PUSH
9292: LD_EXP 55
9296: ST_TO_ADDR
// amv6 = createvehicle ;
9297: LD_ADDR_EXP 53
9301: PUSH
9302: CALL_OW 45
9306: ST_TO_ADDR
// setdir ( amv6 , 2 ) ;
9307: LD_EXP 53
9311: PPUSH
9312: LD_INT 2
9314: PPUSH
9315: CALL_OW 233
// placeunitxy ( amv6 , 115 , 11 , false ) ;
9319: LD_EXP 53
9323: PPUSH
9324: LD_INT 115
9326: PPUSH
9327: LD_INT 11
9329: PPUSH
9330: LD_INT 0
9332: PPUSH
9333: CALL_OW 48
// preparemechanic ( sex_male , amm6_sk ) ;
9337: LD_INT 1
9339: PPUSH
9340: LD_EXP 37
9344: PPUSH
9345: CALL_OW 383
// amm6 = createhuman ;
9349: LD_ADDR_EXP 36
9353: PUSH
9354: CALL_OW 44
9358: ST_TO_ADDR
// placehumaninunit ( amm6 , amv6 ) ;
9359: LD_EXP 36
9363: PPUSH
9364: LD_EXP 53
9368: PPUSH
9369: CALL_OW 52
// doprovoda = [ amv1 , amv2 , amv3 ] ;
9373: LD_ADDR_LOC 11
9377: PUSH
9378: LD_EXP 38
9382: PUSH
9383: LD_EXP 41
9387: PUSH
9388: LD_EXP 44
9392: PUSH
9393: EMPTY
9394: LIST
9395: LIST
9396: LIST
9397: ST_TO_ADDR
// comremember ( doprovoda ) ;
9398: LD_LOC 11
9402: PPUSH
9403: CALL_OW 143
// preparehuman ( sex_male , class_sniper , amsn0_sk ) ;
9407: LD_INT 1
9409: PPUSH
9410: LD_INT 5
9412: PPUSH
9413: LD_EXP 69
9417: PPUSH
9418: CALL_OW 380
// amsn0 = createhuman ;
9422: LD_ADDR_EXP 68
9426: PUSH
9427: CALL_OW 44
9431: ST_TO_ADDR
// placeunitxyr ( amsn0 , 71 , 9 , 1 , false ) ;
9432: LD_EXP 68
9436: PPUSH
9437: LD_INT 71
9439: PPUSH
9440: LD_INT 9
9442: PPUSH
9443: LD_INT 1
9445: PPUSH
9446: LD_INT 0
9448: PPUSH
9449: CALL_OW 50
// comhold ( amsn0 ) ;
9453: LD_EXP 68
9457: PPUSH
9458: CALL_OW 140
// preparehuman ( sex_male , class_sniper , amsn1_sk ) ;
9462: LD_INT 1
9464: PPUSH
9465: LD_INT 5
9467: PPUSH
9468: LD_EXP 71
9472: PPUSH
9473: CALL_OW 380
// amsn1 = createhuman ;
9477: LD_ADDR_EXP 70
9481: PUSH
9482: CALL_OW 44
9486: ST_TO_ADDR
// placeunitxyr ( amsn1 , 97 , 27 , 1 , false ) ;
9487: LD_EXP 70
9491: PPUSH
9492: LD_INT 97
9494: PPUSH
9495: LD_INT 27
9497: PPUSH
9498: LD_INT 1
9500: PPUSH
9501: LD_INT 0
9503: PPUSH
9504: CALL_OW 50
// comhold ( amsn1 ) ;
9508: LD_EXP 70
9512: PPUSH
9513: CALL_OW 140
// preparehuman ( sex_male , class_sniper , amsn2_sk ) ;
9517: LD_INT 1
9519: PPUSH
9520: LD_INT 5
9522: PPUSH
9523: LD_EXP 73
9527: PPUSH
9528: CALL_OW 380
// amsn2 = createhuman ;
9532: LD_ADDR_EXP 72
9536: PUSH
9537: CALL_OW 44
9541: ST_TO_ADDR
// placeunitxyr ( amsn2 , 116 , 19 , 1 , false ) ;
9542: LD_EXP 72
9546: PPUSH
9547: LD_INT 116
9549: PPUSH
9550: LD_INT 19
9552: PPUSH
9553: LD_INT 1
9555: PPUSH
9556: LD_INT 0
9558: PPUSH
9559: CALL_OW 50
// comhold ( amsn2 ) ;
9563: LD_EXP 72
9567: PPUSH
9568: CALL_OW 140
// prepareengineer ( sex_female , 9 ) ;
9572: LD_INT 2
9574: PPUSH
9575: LD_INT 9
9577: PPUSH
9578: CALL_OW 382
// tmp = createhuman ;
9582: LD_ADDR_VAR 0 2
9586: PUSH
9587: CALL_OW 44
9591: ST_TO_ADDR
// placeunitxyr ( tmp , 86 , 8 , 1 , false ) ;
9592: LD_VAR 0 2
9596: PPUSH
9597: LD_INT 86
9599: PPUSH
9600: LD_INT 8
9602: PPUSH
9603: LD_INT 1
9605: PPUSH
9606: LD_INT 0
9608: PPUSH
9609: CALL_OW 50
// comenterunit ( tmp , amware00 ) ;
9613: LD_VAR 0 2
9617: PPUSH
9618: LD_INT 5
9620: PPUSH
9621: CALL_OW 120
// prepareengineer ( sex_female , 9 ) ;
9625: LD_INT 2
9627: PPUSH
9628: LD_INT 9
9630: PPUSH
9631: CALL_OW 382
// amen_ = createhuman ;
9635: LD_ADDR_LOC 8
9639: PUSH
9640: CALL_OW 44
9644: ST_TO_ADDR
// placeunitxyr ( amen_ , 86 , 8 , 1 , false ) ;
9645: LD_LOC 8
9649: PPUSH
9650: LD_INT 86
9652: PPUSH
9653: LD_INT 8
9655: PPUSH
9656: LD_INT 1
9658: PPUSH
9659: LD_INT 0
9661: PPUSH
9662: CALL_OW 50
// comremember ( amen_ ) ;
9666: LD_LOC 8
9670: PPUSH
9671: CALL_OW 143
// comenterunit ( amen_ , amware00 ) ;
9675: LD_LOC 8
9679: PPUSH
9680: LD_INT 5
9682: PPUSH
9683: CALL_OW 120
// setresourcevisibility ( 64 , 17 , am ) ;
9687: LD_INT 64
9689: PPUSH
9690: LD_INT 17
9692: PPUSH
9693: LD_EXP 2
9697: PPUSH
9698: CALL_OW 441
// prepareengineer ( sex_male , ame0_sk ) ;
9702: LD_INT 1
9704: PPUSH
9705: LD_EXP 75
9709: PPUSH
9710: CALL_OW 382
// ame0 = createhuman ;
9714: LD_ADDR_EXP 74
9718: PUSH
9719: CALL_OW 44
9723: ST_TO_ADDR
// placeunitxyr ( ame0 , 80 , 18 , 1 , false ) ;
9724: LD_EXP 74
9728: PPUSH
9729: LD_INT 80
9731: PPUSH
9732: LD_INT 18
9734: PPUSH
9735: LD_INT 1
9737: PPUSH
9738: LD_INT 0
9740: PPUSH
9741: CALL_OW 50
// comhold ( ame0 ) ;
9745: LD_EXP 74
9749: PPUSH
9750: CALL_OW 140
// prepareengineer ( sex_male , ame1_sk ) ;
9754: LD_INT 1
9756: PPUSH
9757: LD_EXP 77
9761: PPUSH
9762: CALL_OW 382
// ame1 = createhuman ;
9766: LD_ADDR_EXP 76
9770: PUSH
9771: CALL_OW 44
9775: ST_TO_ADDR
// placeunitxyr ( ame1 , 95 , 26 , 1 , false ) ;
9776: LD_EXP 76
9780: PPUSH
9781: LD_INT 95
9783: PPUSH
9784: LD_INT 26
9786: PPUSH
9787: LD_INT 1
9789: PPUSH
9790: LD_INT 0
9792: PPUSH
9793: CALL_OW 50
// comhold ( ame1 ) ;
9797: LD_EXP 76
9801: PPUSH
9802: CALL_OW 140
// prepareengineer ( sex_male , ame2_sk ) ;
9806: LD_INT 1
9808: PPUSH
9809: LD_EXP 79
9813: PPUSH
9814: CALL_OW 382
// ame2 = createhuman ;
9818: LD_ADDR_EXP 78
9822: PUSH
9823: CALL_OW 44
9827: ST_TO_ADDR
// placeunitxyr ( ame2 , 102 , 27 , 1 , false ) ;
9828: LD_EXP 78
9832: PPUSH
9833: LD_INT 102
9835: PPUSH
9836: LD_INT 27
9838: PPUSH
9839: LD_INT 1
9841: PPUSH
9842: LD_INT 0
9844: PPUSH
9845: CALL_OW 50
// comhold ( ame2 ) ;
9849: LD_EXP 78
9853: PPUSH
9854: CALL_OW 140
// prepareengineer ( sex_male , ame3_sk ) ;
9858: LD_INT 1
9860: PPUSH
9861: LD_EXP 81
9865: PPUSH
9866: CALL_OW 382
// ame3 = createhuman ;
9870: LD_ADDR_EXP 80
9874: PUSH
9875: CALL_OW 44
9879: ST_TO_ADDR
// placeunitxyr ( ame3 , 115 , 23 , 1 , false ) ;
9880: LD_EXP 80
9884: PPUSH
9885: LD_INT 115
9887: PPUSH
9888: LD_INT 23
9890: PPUSH
9891: LD_INT 1
9893: PPUSH
9894: LD_INT 0
9896: PPUSH
9897: CALL_OW 50
// comhold ( ame3 ) ;
9901: LD_EXP 80
9905: PPUSH
9906: CALL_OW 140
// prepareengineer ( sex_male , ame4_sk ) ;
9910: LD_INT 1
9912: PPUSH
9913: LD_EXP 83
9917: PPUSH
9918: CALL_OW 382
// ame4 = createhuman ;
9922: LD_ADDR_EXP 82
9926: PUSH
9927: CALL_OW 44
9931: ST_TO_ADDR
// placeunitxyr ( ame4 , 113 , 7 , 1 , false ) ;
9932: LD_EXP 82
9936: PPUSH
9937: LD_INT 113
9939: PPUSH
9940: LD_INT 7
9942: PPUSH
9943: LD_INT 1
9945: PPUSH
9946: LD_INT 0
9948: PPUSH
9949: CALL_OW 50
// comhold ( ame4 ) ;
9953: LD_EXP 82
9957: PPUSH
9958: CALL_OW 140
// preparescientist ( sex_female , amsm0_sk ) ;
9962: LD_INT 2
9964: PPUSH
9965: LD_EXP 62
9969: PPUSH
9970: CALL_OW 384
// amsm0 = createhuman ;
9974: LD_ADDR_EXP 56
9978: PUSH
9979: CALL_OW 44
9983: ST_TO_ADDR
// placeunitxyr ( amsm0 , 77 , 6 , 1 , false ) ;
9984: LD_EXP 56
9988: PPUSH
9989: LD_INT 77
9991: PPUSH
9992: LD_INT 6
9994: PPUSH
9995: LD_INT 1
9997: PPUSH
9998: LD_INT 0
10000: PPUSH
10001: CALL_OW 50
// comenterunit ( amsm0 , amlabf00 ) ;
10005: LD_EXP 56
10009: PPUSH
10010: LD_INT 12
10012: PPUSH
10013: CALL_OW 120
// preparemechanic ( sex_male , amsm1_sk ) ;
10017: LD_INT 1
10019: PPUSH
10020: LD_EXP 63
10024: PPUSH
10025: CALL_OW 383
// amsm1 = createhuman ;
10029: LD_ADDR_EXP 57
10033: PUSH
10034: CALL_OW 44
10038: ST_TO_ADDR
// placeunitxyr ( amsm1 , 77 , 6 , 1 , false ) ;
10039: LD_EXP 57
10043: PPUSH
10044: LD_INT 77
10046: PPUSH
10047: LD_INT 6
10049: PPUSH
10050: LD_INT 1
10052: PPUSH
10053: LD_INT 0
10055: PPUSH
10056: CALL_OW 50
// setclass ( amsm1 , class_scientistic ) ;
10060: LD_EXP 57
10064: PPUSH
10065: LD_INT 4
10067: PPUSH
10068: CALL_OW 336
// comenterunit ( amsm1 , amlabf00 ) ;
10072: LD_EXP 57
10076: PPUSH
10077: LD_INT 12
10079: PPUSH
10080: CALL_OW 120
// preparescientist ( sex_female , amsm2_sk ) ;
10084: LD_INT 2
10086: PPUSH
10087: LD_EXP 64
10091: PPUSH
10092: CALL_OW 384
// amsm2 = createhuman ;
10096: LD_ADDR_EXP 58
10100: PUSH
10101: CALL_OW 44
10105: ST_TO_ADDR
// placeunitxyr ( amsm2 , 77 , 6 , 1 , false ) ;
10106: LD_EXP 58
10110: PPUSH
10111: LD_INT 77
10113: PPUSH
10114: LD_INT 6
10116: PPUSH
10117: LD_INT 1
10119: PPUSH
10120: LD_INT 0
10122: PPUSH
10123: CALL_OW 50
// comenterunit ( amsm2 , amlabf00 ) ;
10127: LD_EXP 58
10131: PPUSH
10132: LD_INT 12
10134: PPUSH
10135: CALL_OW 120
// preparemechanic ( sex_male , amsm3_sk ) ;
10139: LD_INT 1
10141: PPUSH
10142: LD_EXP 65
10146: PPUSH
10147: CALL_OW 383
// amsm3 = createhuman ;
10151: LD_ADDR_EXP 59
10155: PUSH
10156: CALL_OW 44
10160: ST_TO_ADDR
// placeunitxyr ( amsm3 , 77 , 6 , 1 , false ) ;
10161: LD_EXP 59
10165: PPUSH
10166: LD_INT 77
10168: PPUSH
10169: LD_INT 6
10171: PPUSH
10172: LD_INT 1
10174: PPUSH
10175: LD_INT 0
10177: PPUSH
10178: CALL_OW 50
// setclass ( amsm3 , class_scientistic ) ;
10182: LD_EXP 59
10186: PPUSH
10187: LD_INT 4
10189: PPUSH
10190: CALL_OW 336
// comenterunit ( amsm3 , amlabf00 ) ;
10194: LD_EXP 59
10198: PPUSH
10199: LD_INT 12
10201: PPUSH
10202: CALL_OW 120
// preparescientist ( sex_female , amsm4_sk ) ;
10206: LD_INT 2
10208: PPUSH
10209: LD_EXP 66
10213: PPUSH
10214: CALL_OW 384
// amsm4 = createhuman ;
10218: LD_ADDR_EXP 60
10222: PUSH
10223: CALL_OW 44
10227: ST_TO_ADDR
// placeunitxyr ( amsm4 , 77 , 6 , 2 , false ) ;
10228: LD_EXP 60
10232: PPUSH
10233: LD_INT 77
10235: PPUSH
10236: LD_INT 6
10238: PPUSH
10239: LD_INT 2
10241: PPUSH
10242: LD_INT 0
10244: PPUSH
10245: CALL_OW 50
// comenterunit ( amsm4 , amlabf00 ) ;
10249: LD_EXP 60
10253: PPUSH
10254: LD_INT 12
10256: PPUSH
10257: CALL_OW 120
// preparemechanic ( sex_male , amsm5_sk ) ;
10261: LD_INT 1
10263: PPUSH
10264: LD_EXP 67
10268: PPUSH
10269: CALL_OW 383
// amsm5 = createhuman ;
10273: LD_ADDR_EXP 61
10277: PUSH
10278: CALL_OW 44
10282: ST_TO_ADDR
// placeunitxyr ( amsm5 , 77 , 6 , 2 , false ) ;
10283: LD_EXP 61
10287: PPUSH
10288: LD_INT 77
10290: PPUSH
10291: LD_INT 6
10293: PPUSH
10294: LD_INT 2
10296: PPUSH
10297: LD_INT 0
10299: PPUSH
10300: CALL_OW 50
// setclass ( amsm5 , class_scientistic ) ;
10304: LD_EXP 61
10308: PPUSH
10309: LD_INT 4
10311: PPUSH
10312: CALL_OW 336
// comenterunit ( amsm5 , amlabf00 ) ;
10316: LD_EXP 61
10320: PPUSH
10321: LD_INT 12
10323: PPUSH
10324: CALL_OW 120
// inzinyri = [ ame0 , ame1 , ame2 , ame3 , ame4 ] ;
10328: LD_ADDR_LOC 10
10332: PUSH
10333: LD_EXP 74
10337: PUSH
10338: LD_EXP 76
10342: PUSH
10343: LD_EXP 78
10347: PUSH
10348: LD_EXP 80
10352: PUSH
10353: LD_EXP 82
10357: PUSH
10358: EMPTY
10359: LIST
10360: LIST
10361: LIST
10362: LIST
10363: LIST
10364: ST_TO_ADDR
// comremember ( inzinyri ) ;
10365: LD_LOC 10
10369: PPUSH
10370: CALL_OW 143
// opravujte = [ [ amturr00 , ambunk00 , ambarr00 ] , [ ambarr00 , ambunk01 ] , [ ambunk02 ] , [ ambunk03 , amturr01 ] , [ amturr01 , ambunk04 ] ] ;
10374: LD_ADDR_LOC 9
10378: PUSH
10379: LD_INT 69
10381: PUSH
10382: LD_INT 1
10384: PUSH
10385: LD_INT 14
10387: PUSH
10388: EMPTY
10389: LIST
10390: LIST
10391: LIST
10392: PUSH
10393: LD_INT 14
10395: PUSH
10396: LD_INT 2
10398: PUSH
10399: EMPTY
10400: LIST
10401: LIST
10402: PUSH
10403: LD_INT 3
10405: PUSH
10406: EMPTY
10407: LIST
10408: PUSH
10409: LD_INT 4
10411: PUSH
10412: LD_INT 70
10414: PUSH
10415: EMPTY
10416: LIST
10417: LIST
10418: PUSH
10419: LD_INT 70
10421: PUSH
10422: LD_INT 71
10424: PUSH
10425: EMPTY
10426: LIST
10427: LIST
10428: PUSH
10429: EMPTY
10430: LIST
10431: LIST
10432: LIST
10433: LIST
10434: LIST
10435: ST_TO_ADDR
// americani = filterallunits ( [ [ f_side , am ] , [ f_type , unit_human ] ] ) ;
10436: LD_ADDR_EXP 230
10440: PUSH
10441: LD_INT 22
10443: PUSH
10444: LD_EXP 2
10448: PUSH
10449: EMPTY
10450: LIST
10451: LIST
10452: PUSH
10453: LD_INT 21
10455: PUSH
10456: LD_INT 1
10458: PUSH
10459: EMPTY
10460: LIST
10461: LIST
10462: PUSH
10463: EMPTY
10464: LIST
10465: LIST
10466: PPUSH
10467: CALL_OW 69
10471: ST_TO_ADDR
// pocet_americanu = 0 + americani ;
10472: LD_ADDR_EXP 229
10476: PUSH
10477: LD_INT 0
10479: PUSH
10480: LD_EXP 230
10484: PLUS
10485: ST_TO_ADDR
// end ;
10486: LD_VAR 0 1
10490: RET
// export pocet_americanu , americani ; var opravujte ; var inzinyri ; every 0 0$3 do var tmp , tmp2 , tmp3 , oprav , buds , lives ;
10491: GO 10493
10493: DISABLE
10494: LD_INT 0
10496: PPUSH
10497: PPUSH
10498: PPUSH
10499: PPUSH
10500: PPUSH
10501: PPUSH
// begin for tmp = 1 to 0 + opravujte do
10502: LD_ADDR_VAR 0 1
10506: PUSH
10507: DOUBLE
10508: LD_INT 1
10510: DEC
10511: ST_TO_ADDR
10512: LD_INT 0
10514: PUSH
10515: LD_LOC 9
10519: PLUS
10520: PUSH
10521: FOR_TO
10522: IFFALSE 10753
// begin buds = [ ] ;
10524: LD_ADDR_VAR 0 5
10528: PUSH
10529: EMPTY
10530: ST_TO_ADDR
// lives = [ ] ;
10531: LD_ADDR_VAR 0 6
10535: PUSH
10536: EMPTY
10537: ST_TO_ADDR
// for tmp2 in opravujte [ tmp ] do
10538: LD_ADDR_VAR 0 2
10542: PUSH
10543: LD_LOC 9
10547: PUSH
10548: LD_VAR 0 1
10552: ARRAY
10553: PUSH
10554: FOR_IN
10555: IFFALSE 10617
// if ( getlives ( tmp2 ) < hranice_zdravi ) then
10557: LD_VAR 0 2
10561: PPUSH
10562: CALL_OW 256
10566: PUSH
10567: LD_INT 1000
10569: LESS
10570: IFFALSE 10615
// begin buds = buds ^ [ tmp2 ] ;
10572: LD_ADDR_VAR 0 5
10576: PUSH
10577: LD_VAR 0 5
10581: PUSH
10582: LD_VAR 0 2
10586: PUSH
10587: EMPTY
10588: LIST
10589: ADD
10590: ST_TO_ADDR
// lives = lives ^ [ getlives ( tmp2 ) ] ;
10591: LD_ADDR_VAR 0 6
10595: PUSH
10596: LD_VAR 0 6
10600: PUSH
10601: LD_VAR 0 2
10605: PPUSH
10606: CALL_OW 256
10610: PUSH
10611: EMPTY
10612: LIST
10613: ADD
10614: ST_TO_ADDR
// end ;
10615: GO 10554
10617: POP
10618: POP
// tmp2 = sortlistbylistasc ( buds , lives ) ;
10619: LD_ADDR_VAR 0 2
10623: PUSH
10624: LD_VAR 0 5
10628: PPUSH
10629: LD_VAR 0 6
10633: PPUSH
10634: CALL_OW 76
10638: ST_TO_ADDR
// if tmp2 then
10639: LD_VAR 0 2
10643: IFFALSE 10751
// begin comrepairbuilding ( inzinyri [ tmp ] , tmp2 [ 1 ] ) ;
10645: LD_LOC 10
10649: PUSH
10650: LD_VAR 0 1
10654: ARRAY
10655: PPUSH
10656: LD_VAR 0 2
10660: PUSH
10661: LD_INT 1
10663: ARRAY
10664: PPUSH
10665: CALL_OW 130
// for tmp3 = 2 to 0 + tmp2 do
10669: LD_ADDR_VAR 0 3
10673: PUSH
10674: DOUBLE
10675: LD_INT 2
10677: DEC
10678: ST_TO_ADDR
10679: LD_INT 0
10681: PUSH
10682: LD_VAR 0 2
10686: PLUS
10687: PUSH
10688: FOR_TO
10689: IFFALSE 10719
// addcomrepairbuilding ( inzinyri [ tmp ] , tmp2 [ tmp3 ] ) ;
10691: LD_LOC 10
10695: PUSH
10696: LD_VAR 0 1
10700: ARRAY
10701: PPUSH
10702: LD_VAR 0 2
10706: PUSH
10707: LD_VAR 0 3
10711: ARRAY
10712: PPUSH
10713: CALL_OW 190
10717: GO 10688
10719: POP
10720: POP
// addcomreturn ( inzinyri [ tmp ] ) ;
10721: LD_LOC 10
10725: PUSH
10726: LD_VAR 0 1
10730: ARRAY
10731: PPUSH
10732: CALL_OW 204
// addcomhold ( inzinyri [ tmp ] ) ;
10736: LD_LOC 10
10740: PUSH
10741: LD_VAR 0 1
10745: ARRAY
10746: PPUSH
10747: CALL_OW 200
// end ; end ;
10751: GO 10521
10753: POP
10754: POP
// enable ;
10755: ENABLE
// end ;
10756: PPOPN 6
10758: END
// every 20 20$1 trigger not am_surr do
10759: LD_EXP 221
10763: NOT
10764: IFFALSE 10788
10766: GO 10768
10768: DISABLE
// begin wait ( before_sib_res ) ;
10769: LD_EXP 222
10773: PPUSH
10774: CALL_OW 67
// comresearch ( amlabf00 , tech_sibfiss ) ;
10778: LD_INT 12
10780: PPUSH
10781: LD_INT 25
10783: PPUSH
10784: CALL_OW 124
// end ;
10788: END
// every 0 0$3.1 + 7 trigger amsibdeveldone do var tmp ;
10789: LD_EXP 241
10793: IFFALSE 10912
10795: GO 10797
10797: DISABLE
10798: LD_INT 0
10800: PPUSH
// begin if debug then
10801: LD_EXP 223
10805: IFFALSE 10814
// msg ( am: deme stavet siberitofku ) ;
10807: LD_STRING am: deme stavet siberitofku
10809: PPUSH
10810: CALL_OW 100
// tmp = [ amsm0 , amsm1 , amsm2 , amsm3 , amsm4 , amsm5 ] ;
10814: LD_ADDR_VAR 0 1
10818: PUSH
10819: LD_EXP 56
10823: PUSH
10824: LD_EXP 57
10828: PUSH
10829: LD_EXP 58
10833: PUSH
10834: LD_EXP 59
10838: PUSH
10839: LD_EXP 60
10843: PUSH
10844: LD_EXP 61
10848: PUSH
10849: EMPTY
10850: LIST
10851: LIST
10852: LIST
10853: LIST
10854: LIST
10855: LIST
10856: ST_TO_ADDR
// comexitbuilding ( tmp ) ;
10857: LD_VAR 0 1
10861: PPUSH
10862: CALL_OW 122
// addcomenterunit ( tmp , amfact00 ) ;
10866: LD_VAR 0 1
10870: PPUSH
10871: LD_INT 6
10873: PPUSH
10874: CALL_OW 180
// addcomchangeprofession ( tmp , class_mechanic ) ;
10878: LD_VAR 0 1
10882: PPUSH
10883: LD_INT 3
10885: PPUSH
10886: CALL_OW 183
// comconstruct ( [ amfact00 ] , us_morphling , engine_siberite , control_remote , us_siberium_rocket ) ;
10890: LD_INT 6
10892: PUSH
10893: EMPTY
10894: LIST
10895: PPUSH
10896: LD_INT 5
10898: PPUSH
10899: LD_INT 3
10901: PPUSH
10902: LD_INT 2
10904: PPUSH
10905: LD_INT 8
10907: PPUSH
10908: CALL_OW 125
// end ;
10912: PPOPN 1
10914: END
// var doprovoda ; every 0 0$10 + 10 10$0 marked 07 do var tmp ;
10915: GO 10917
10917: DISABLE
10918: LD_INT 0
10920: PPUSH
// begin amdoustavit = amdoustavit - 1 ;
10921: LD_ADDR_EXP 214
10925: PUSH
10926: LD_EXP 214
10930: PUSH
10931: LD_INT 1
10933: MINUS
10934: ST_TO_ADDR
// tmp = hexinfo ( 64 , 17 ) ;
10935: LD_ADDR_VAR 0 1
10939: PUSH
10940: LD_INT 64
10942: PPUSH
10943: LD_INT 17
10945: PPUSH
10946: CALL_OW 428
10950: ST_TO_ADDR
// if not amdoustavit and tmp <= 0 then
10951: LD_EXP 214
10955: NOT
10956: PUSH
10957: LD_VAR 0 1
10961: PUSH
10962: LD_INT 0
10964: LESSEQUAL
10965: AND
10966: IFFALSE 11082
// begin if debug then
10968: LD_EXP 223
10972: IFFALSE 10981
// msg ( am: deme stavet dul ) ;
10974: LD_STRING am: deme stavet dul
10976: PPUSH
10977: CALL_OW 100
// combuild ( [ amen_ ] , b_siberite_mine , 64 , 17 , 0 ) ;
10981: LD_LOC 8
10985: PUSH
10986: EMPTY
10987: LIST
10988: PPUSH
10989: LD_INT 30
10991: PPUSH
10992: LD_INT 64
10994: PPUSH
10995: LD_INT 17
10997: PPUSH
10998: LD_INT 0
11000: PPUSH
11001: CALL_OW 145
// while isinarea ( amen_ , ambase ) do
11005: LD_LOC 8
11009: PPUSH
11010: LD_INT 11
11012: PPUSH
11013: CALL_OW 308
11017: IFFALSE 11028
// wait ( 0 0$1 ) ;
11019: LD_INT 35
11021: PPUSH
11022: CALL_OW 67
11026: GO 11005
// commoveunit ( doprovoda , amen_ ) ;
11028: LD_LOC 11
11032: PPUSH
11033: LD_LOC 8
11037: PPUSH
11038: CALL_OW 112
// enable ( 11 ) ;
11042: LD_INT 11
11044: ENABLE_MARKED
// addcomenterunit ( [ amen_ ] , amware00 ) ;
11045: LD_LOC 8
11049: PUSH
11050: EMPTY
11051: LIST
11052: PPUSH
11053: LD_INT 5
11055: PPUSH
11056: CALL_OW 180
// amdoustavit = rand ( amdoustavit_min , amdoustavit_max ) ;
11060: LD_ADDR_EXP 214
11064: PUSH
11065: LD_EXP 203
11069: PPUSH
11070: LD_EXP 204
11074: PPUSH
11075: CALL_OW 12
11079: ST_TO_ADDR
// end else
11080: GO 11083
// enable ;
11082: ENABLE
// end ;
11083: PPOPN 1
11085: END
// every 0 0$10 + 10 10$5 marked 11 do
11086: GO 11088
11088: DISABLE
// begin while islive ( amen_ ) and not isinarea ( amen_ , ambase ) do
11089: LD_LOC 8
11093: PPUSH
11094: CALL_OW 300
11098: PUSH
11099: LD_LOC 8
11103: PPUSH
11104: LD_INT 11
11106: PPUSH
11107: CALL_OW 308
11111: NOT
11112: AND
11113: IFFALSE 11124
// wait ( 0 0$1 ) ;
11115: LD_INT 35
11117: PPUSH
11118: CALL_OW 67
11122: GO 11089
// comreturn ( doprovoda ) ;
11124: LD_LOC 11
11128: PPUSH
11129: CALL_OW 144
// if islive ( amen_ ) then
11133: LD_LOC 8
11137: PPUSH
11138: CALL_OW 300
11142: IFFALSE 11159
// comenterunit ( [ amen_ ] , amware00 ) ;
11144: LD_LOC 8
11148: PUSH
11149: EMPTY
11150: LIST
11151: PPUSH
11152: LD_INT 5
11154: PPUSH
11155: CALL_OW 120
// end ; end_of_file
11159: END
// export function prepare_aliance ; var tmp ; begin
11160: LD_INT 0
11162: PPUSH
11163: PPUSH
// telep = [ ] ;
11164: LD_ADDR_LOC 18
11168: PUSH
11169: EMPTY
11170: ST_TO_ADDR
// uc_side = al ;
11171: LD_ADDR_OWVAR 20
11175: PUSH
11176: LD_EXP 3
11180: ST_TO_ADDR
// uc_nation = nation_american ;
11181: LD_ADDR_OWVAR 21
11185: PUSH
11186: LD_INT 1
11188: ST_TO_ADDR
// preparesoldier ( sex_male , als0_sk ) ;
11189: LD_INT 1
11191: PPUSH
11192: LD_EXP 89
11196: PPUSH
11197: CALL_OW 381
// tmp = createhuman ;
11201: LD_ADDR_VAR 0 2
11205: PUSH
11206: CALL_OW 44
11210: ST_TO_ADDR
// placeunitxyr ( tmp , 151 , 49 , 1 , false ) ;
11211: LD_VAR 0 2
11215: PPUSH
11216: LD_INT 151
11218: PPUSH
11219: LD_INT 49
11221: PPUSH
11222: LD_INT 1
11224: PPUSH
11225: LD_INT 0
11227: PPUSH
11228: CALL_OW 50
// comenterunit ( tmp , albunk00 ) ;
11232: LD_VAR 0 2
11236: PPUSH
11237: LD_INT 24
11239: PPUSH
11240: CALL_OW 120
// als0 = tmp ;
11244: LD_ADDR_EXP 84
11248: PUSH
11249: LD_VAR 0 2
11253: ST_TO_ADDR
// preparesoldier ( sex_male , als1_sk ) ;
11254: LD_INT 1
11256: PPUSH
11257: LD_EXP 90
11261: PPUSH
11262: CALL_OW 381
// tmp = createhuman ;
11266: LD_ADDR_VAR 0 2
11270: PUSH
11271: CALL_OW 44
11275: ST_TO_ADDR
// placeunitxyr ( tmp , 150 , 64 , 1 , false ) ;
11276: LD_VAR 0 2
11280: PPUSH
11281: LD_INT 150
11283: PPUSH
11284: LD_INT 64
11286: PPUSH
11287: LD_INT 1
11289: PPUSH
11290: LD_INT 0
11292: PPUSH
11293: CALL_OW 50
// comenterunit ( tmp , albunk01 ) ;
11297: LD_VAR 0 2
11301: PPUSH
11302: LD_INT 23
11304: PPUSH
11305: CALL_OW 120
// als1 = tmp ;
11309: LD_ADDR_EXP 85
11313: PUSH
11314: LD_VAR 0 2
11318: ST_TO_ADDR
// preparesoldier ( sex_male , als2_sk ) ;
11319: LD_INT 1
11321: PPUSH
11322: LD_EXP 91
11326: PPUSH
11327: CALL_OW 381
// tmp = createhuman ;
11331: LD_ADDR_VAR 0 2
11335: PUSH
11336: CALL_OW 44
11340: ST_TO_ADDR
// placeunitxyr ( tmp , 153 , 77 , 1 , false ) ;
11341: LD_VAR 0 2
11345: PPUSH
11346: LD_INT 153
11348: PPUSH
11349: LD_INT 77
11351: PPUSH
11352: LD_INT 1
11354: PPUSH
11355: LD_INT 0
11357: PPUSH
11358: CALL_OW 50
// comenterunit ( tmp , albunk02 ) ;
11362: LD_VAR 0 2
11366: PPUSH
11367: LD_INT 22
11369: PPUSH
11370: CALL_OW 120
// als2 = tmp ;
11374: LD_ADDR_EXP 86
11378: PUSH
11379: LD_VAR 0 2
11383: ST_TO_ADDR
// uc_nation = nation_russian ;
11384: LD_ADDR_OWVAR 21
11388: PUSH
11389: LD_INT 3
11391: ST_TO_ADDR
// preparesoldier ( sex_male , als3_sk ) ;
11392: LD_INT 1
11394: PPUSH
11395: LD_EXP 92
11399: PPUSH
11400: CALL_OW 381
// tmp = createhuman ;
11404: LD_ADDR_VAR 0 2
11408: PUSH
11409: CALL_OW 44
11413: ST_TO_ADDR
// placeunitxyr ( tmp , 163 , 89 , 1 , false ) ;
11414: LD_VAR 0 2
11418: PPUSH
11419: LD_INT 163
11421: PPUSH
11422: LD_INT 89
11424: PPUSH
11425: LD_INT 1
11427: PPUSH
11428: LD_INT 0
11430: PPUSH
11431: CALL_OW 50
// comenterunit ( tmp , albunk03 ) ;
11435: LD_VAR 0 2
11439: PPUSH
11440: LD_INT 21
11442: PPUSH
11443: CALL_OW 120
// als3 = tmp ;
11447: LD_ADDR_EXP 87
11451: PUSH
11452: LD_VAR 0 2
11456: ST_TO_ADDR
// preparesoldier ( sex_male , als4_sk ) ;
11457: LD_INT 1
11459: PPUSH
11460: LD_EXP 93
11464: PPUSH
11465: CALL_OW 381
// tmp = createhuman ;
11469: LD_ADDR_VAR 0 2
11473: PUSH
11474: CALL_OW 44
11478: ST_TO_ADDR
// placeunitxyr ( tmp , 172 , 97 , 1 , false ) ;
11479: LD_VAR 0 2
11483: PPUSH
11484: LD_INT 172
11486: PPUSH
11487: LD_INT 97
11489: PPUSH
11490: LD_INT 1
11492: PPUSH
11493: LD_INT 0
11495: PPUSH
11496: CALL_OW 50
// comenterunit ( tmp , albunk04 ) ;
11500: LD_VAR 0 2
11504: PPUSH
11505: LD_INT 20
11507: PPUSH
11508: CALL_OW 120
// als4 = tmp ;
11512: LD_ADDR_EXP 88
11516: PUSH
11517: LD_VAR 0 2
11521: ST_TO_ADDR
// uc_nation = nation_american ;
11522: LD_ADDR_OWVAR 21
11526: PUSH
11527: LD_INT 1
11529: ST_TO_ADDR
// preparesoldier ( sex_male , als_1_sk ) ;
11530: LD_INT 1
11532: PPUSH
11533: LD_EXP 98
11537: PPUSH
11538: CALL_OW 381
// tmp = createhuman ;
11542: LD_ADDR_VAR 0 2
11546: PUSH
11547: CALL_OW 44
11551: ST_TO_ADDR
// placeunitxyr ( tmp , 156 , 42 , 1 , false ) ;
11552: LD_VAR 0 2
11556: PPUSH
11557: LD_INT 156
11559: PPUSH
11560: LD_INT 42
11562: PPUSH
11563: LD_INT 1
11565: PPUSH
11566: LD_INT 0
11568: PPUSH
11569: CALL_OW 50
// comenterunit ( tmp , albarr00 ) ;
11573: LD_VAR 0 2
11577: PPUSH
11578: LD_INT 41
11580: PPUSH
11581: CALL_OW 120
// als_1 = tmp ;
11585: LD_ADDR_EXP 94
11589: PUSH
11590: LD_VAR 0 2
11594: ST_TO_ADDR
// preparesoldier ( sex_male , als_2_sk ) ;
11595: LD_INT 1
11597: PPUSH
11598: LD_EXP 99
11602: PPUSH
11603: CALL_OW 381
// tmp = createhuman ;
11607: LD_ADDR_VAR 0 2
11611: PUSH
11612: CALL_OW 44
11616: ST_TO_ADDR
// placeunitxyr ( tmp , 156 , 42 , 1 , false ) ;
11617: LD_VAR 0 2
11621: PPUSH
11622: LD_INT 156
11624: PPUSH
11625: LD_INT 42
11627: PPUSH
11628: LD_INT 1
11630: PPUSH
11631: LD_INT 0
11633: PPUSH
11634: CALL_OW 50
// comenterunit ( tmp , albarr00 ) ;
11638: LD_VAR 0 2
11642: PPUSH
11643: LD_INT 41
11645: PPUSH
11646: CALL_OW 120
// als_2 = tmp ;
11650: LD_ADDR_EXP 95
11654: PUSH
11655: LD_VAR 0 2
11659: ST_TO_ADDR
// preparehuman ( sex_male , class_sniper , als_3_sk ) ;
11660: LD_INT 1
11662: PPUSH
11663: LD_INT 5
11665: PPUSH
11666: LD_EXP 100
11670: PPUSH
11671: CALL_OW 380
// tmp = createhuman ;
11675: LD_ADDR_VAR 0 2
11679: PUSH
11680: CALL_OW 44
11684: ST_TO_ADDR
// placeunitxyr ( tmp , 156 , 42 , 1 , false ) ;
11685: LD_VAR 0 2
11689: PPUSH
11690: LD_INT 156
11692: PPUSH
11693: LD_INT 42
11695: PPUSH
11696: LD_INT 1
11698: PPUSH
11699: LD_INT 0
11701: PPUSH
11702: CALL_OW 50
// comenterunit ( tmp , albarr00 ) ;
11706: LD_VAR 0 2
11710: PPUSH
11711: LD_INT 41
11713: PPUSH
11714: CALL_OW 120
// als_3 = tmp ;
11718: LD_ADDR_EXP 96
11722: PUSH
11723: LD_VAR 0 2
11727: ST_TO_ADDR
// preparehuman ( sex_male , class_sniper , als_4_sk ) ;
11728: LD_INT 1
11730: PPUSH
11731: LD_INT 5
11733: PPUSH
11734: LD_EXP 101
11738: PPUSH
11739: CALL_OW 380
// tmp = createhuman ;
11743: LD_ADDR_VAR 0 2
11747: PUSH
11748: CALL_OW 44
11752: ST_TO_ADDR
// placeunitxyr ( tmp , 156 , 42 , 1 , false ) ;
11753: LD_VAR 0 2
11757: PPUSH
11758: LD_INT 156
11760: PPUSH
11761: LD_INT 42
11763: PPUSH
11764: LD_INT 1
11766: PPUSH
11767: LD_INT 0
11769: PPUSH
11770: CALL_OW 50
// comenterunit ( tmp , albarr00 ) ;
11774: LD_VAR 0 2
11778: PPUSH
11779: LD_INT 41
11781: PPUSH
11782: CALL_OW 120
// als_4 = tmp ;
11786: LD_ADDR_EXP 97
11790: PUSH
11791: LD_VAR 0 2
11795: ST_TO_ADDR
// uc_nation = nation_russian ;
11796: LD_ADDR_OWVAR 21
11800: PUSH
11801: LD_INT 3
11803: ST_TO_ADDR
// preparesoldier ( sex_male , als__1_sk ) ;
11804: LD_INT 1
11806: PPUSH
11807: LD_EXP 106
11811: PPUSH
11812: CALL_OW 381
// tmp = createhuman ;
11816: LD_ADDR_VAR 0 2
11820: PUSH
11821: CALL_OW 44
11825: ST_TO_ADDR
// placeunitxyr ( tmp , 185 , 101 , 1 , false ) ;
11826: LD_VAR 0 2
11830: PPUSH
11831: LD_INT 185
11833: PPUSH
11834: LD_INT 101
11836: PPUSH
11837: LD_INT 1
11839: PPUSH
11840: LD_INT 0
11842: PPUSH
11843: CALL_OW 50
// comenterunit ( tmp , albarr01 ) ;
11847: LD_VAR 0 2
11851: PPUSH
11852: LD_INT 42
11854: PPUSH
11855: CALL_OW 120
// als__1 = tmp ;
11859: LD_ADDR_EXP 102
11863: PUSH
11864: LD_VAR 0 2
11868: ST_TO_ADDR
// preparesoldier ( sex_male , als__2_sk ) ;
11869: LD_INT 1
11871: PPUSH
11872: LD_EXP 107
11876: PPUSH
11877: CALL_OW 381
// tmp = createhuman ;
11881: LD_ADDR_VAR 0 2
11885: PUSH
11886: CALL_OW 44
11890: ST_TO_ADDR
// placeunitxyr ( tmp , 185 , 101 , 1 , false ) ;
11891: LD_VAR 0 2
11895: PPUSH
11896: LD_INT 185
11898: PPUSH
11899: LD_INT 101
11901: PPUSH
11902: LD_INT 1
11904: PPUSH
11905: LD_INT 0
11907: PPUSH
11908: CALL_OW 50
// comenterunit ( tmp , albarr01 ) ;
11912: LD_VAR 0 2
11916: PPUSH
11917: LD_INT 42
11919: PPUSH
11920: CALL_OW 120
// als__2 = tmp ;
11924: LD_ADDR_EXP 103
11928: PUSH
11929: LD_VAR 0 2
11933: ST_TO_ADDR
// preparehuman ( sex_male , class_bazooker , als__3_sk ) ;
11934: LD_INT 1
11936: PPUSH
11937: LD_INT 9
11939: PPUSH
11940: LD_EXP 108
11944: PPUSH
11945: CALL_OW 380
// tmp = createhuman ;
11949: LD_ADDR_VAR 0 2
11953: PUSH
11954: CALL_OW 44
11958: ST_TO_ADDR
// placeunitxyr ( tmp , 185 , 101 , 1 , false ) ;
11959: LD_VAR 0 2
11963: PPUSH
11964: LD_INT 185
11966: PPUSH
11967: LD_INT 101
11969: PPUSH
11970: LD_INT 1
11972: PPUSH
11973: LD_INT 0
11975: PPUSH
11976: CALL_OW 50
// comenterunit ( tmp , albarr01 ) ;
11980: LD_VAR 0 2
11984: PPUSH
11985: LD_INT 42
11987: PPUSH
11988: CALL_OW 120
// als__3 = tmp ;
11992: LD_ADDR_EXP 104
11996: PUSH
11997: LD_VAR 0 2
12001: ST_TO_ADDR
// preparehuman ( sex_male , class_bazooker , als__4_sk ) ;
12002: LD_INT 1
12004: PPUSH
12005: LD_INT 9
12007: PPUSH
12008: LD_EXP 109
12012: PPUSH
12013: CALL_OW 380
// tmp = createhuman ;
12017: LD_ADDR_VAR 0 2
12021: PUSH
12022: CALL_OW 44
12026: ST_TO_ADDR
// placeunitxyr ( tmp , 185 , 101 , 1 , false ) ;
12027: LD_VAR 0 2
12031: PPUSH
12032: LD_INT 185
12034: PPUSH
12035: LD_INT 101
12037: PPUSH
12038: LD_INT 1
12040: PPUSH
12041: LD_INT 0
12043: PPUSH
12044: CALL_OW 50
// comenterunit ( tmp , albarr01 ) ;
12048: LD_VAR 0 2
12052: PPUSH
12053: LD_INT 42
12055: PPUSH
12056: CALL_OW 120
// als__4 = tmp ;
12060: LD_ADDR_EXP 105
12064: PUSH
12065: LD_VAR 0 2
12069: ST_TO_ADDR
// preparemechanic ( sex_female , alm0_sk ) ;
12070: LD_INT 2
12072: PPUSH
12073: LD_EXP 111
12077: PPUSH
12078: CALL_OW 383
// alm0 = createhuman ;
12082: LD_ADDR_EXP 110
12086: PUSH
12087: CALL_OW 44
12091: ST_TO_ADDR
// placeunitxyr ( alm0 , 157 , 55 , 1 , false ) ;
12092: LD_EXP 110
12096: PPUSH
12097: LD_INT 157
12099: PPUSH
12100: LD_INT 55
12102: PPUSH
12103: LD_INT 1
12105: PPUSH
12106: LD_INT 0
12108: PPUSH
12109: CALL_OW 50
// comenterunit ( alm0 , alcttw00 ) ;
12113: LD_EXP 110
12117: PPUSH
12118: LD_INT 47
12120: PPUSH
12121: CALL_OW 120
// vc_control = control_manual ;
12125: LD_ADDR_OWVAR 38
12129: PUSH
12130: LD_INT 1
12132: ST_TO_ADDR
// vc_engine = engine_siberite ;
12133: LD_ADDR_OWVAR 39
12137: PUSH
12138: LD_INT 3
12140: ST_TO_ADDR
// uc_nation = nation_american ;
12141: LD_ADDR_OWVAR 21
12145: PUSH
12146: LD_INT 1
12148: ST_TO_ADDR
// vc_chassis = alv1_ch ;
12149: LD_ADDR_OWVAR 37
12153: PUSH
12154: LD_EXP 125
12158: ST_TO_ADDR
// vc_weapon = alv1_wp ;
12159: LD_ADDR_OWVAR 40
12163: PUSH
12164: LD_EXP 126
12168: ST_TO_ADDR
// alv1 = createvehicle ;
12169: LD_ADDR_EXP 124
12173: PUSH
12174: CALL_OW 45
12178: ST_TO_ADDR
// setdir ( alv1 , 4 ) ;
12179: LD_EXP 124
12183: PPUSH
12184: LD_INT 4
12186: PPUSH
12187: CALL_OW 233
// placeunitxy ( alv1 , 150 , 42 , false ) ;
12191: LD_EXP 124
12195: PPUSH
12196: LD_INT 150
12198: PPUSH
12199: LD_INT 42
12201: PPUSH
12202: LD_INT 0
12204: PPUSH
12205: CALL_OW 48
// preparemechanic ( sex_male , alm1_sk ) ;
12209: LD_INT 1
12211: PPUSH
12212: LD_EXP 113
12216: PPUSH
12217: CALL_OW 383
// alm1 = createhuman ;
12221: LD_ADDR_EXP 112
12225: PUSH
12226: CALL_OW 44
12230: ST_TO_ADDR
// placehumaninunit ( alm1 , alv1 ) ;
12231: LD_EXP 112
12235: PPUSH
12236: LD_EXP 124
12240: PPUSH
12241: CALL_OW 52
// vc_chassis = alv2_ch ;
12245: LD_ADDR_OWVAR 37
12249: PUSH
12250: LD_EXP 128
12254: ST_TO_ADDR
// vc_weapon = alv2_wp ;
12255: LD_ADDR_OWVAR 40
12259: PUSH
12260: LD_EXP 129
12264: ST_TO_ADDR
// alv2 = createvehicle ;
12265: LD_ADDR_EXP 127
12269: PUSH
12270: CALL_OW 45
12274: ST_TO_ADDR
// setdir ( alv2 , 4 ) ;
12275: LD_EXP 127
12279: PPUSH
12280: LD_INT 4
12282: PPUSH
12283: CALL_OW 233
// placeunitxy ( alv2 , 152 , 68 , false ) ;
12287: LD_EXP 127
12291: PPUSH
12292: LD_INT 152
12294: PPUSH
12295: LD_INT 68
12297: PPUSH
12298: LD_INT 0
12300: PPUSH
12301: CALL_OW 48
// preparemechanic ( sex_male , alm2_sk ) ;
12305: LD_INT 1
12307: PPUSH
12308: LD_EXP 115
12312: PPUSH
12313: CALL_OW 383
// alm2 = createhuman ;
12317: LD_ADDR_EXP 114
12321: PUSH
12322: CALL_OW 44
12326: ST_TO_ADDR
// placehumaninunit ( alm2 , alv2 ) ;
12327: LD_EXP 114
12331: PPUSH
12332: LD_EXP 127
12336: PPUSH
12337: CALL_OW 52
// uc_nation = nation_russian ;
12341: LD_ADDR_OWVAR 21
12345: PUSH
12346: LD_INT 3
12348: ST_TO_ADDR
// vc_chassis = alv3_ch ;
12349: LD_ADDR_OWVAR 37
12353: PUSH
12354: LD_EXP 131
12358: ST_TO_ADDR
// vc_weapon = alv3_wp ;
12359: LD_ADDR_OWVAR 40
12363: PUSH
12364: LD_EXP 132
12368: ST_TO_ADDR
// alv3 = createvehicle ;
12369: LD_ADDR_EXP 130
12373: PUSH
12374: CALL_OW 45
12378: ST_TO_ADDR
// setdir ( alv3 , 5 ) ;
12379: LD_EXP 130
12383: PPUSH
12384: LD_INT 5
12386: PPUSH
12387: CALL_OW 233
// placeunitxy ( alv3 , 154 , 75 , false ) ;
12391: LD_EXP 130
12395: PPUSH
12396: LD_INT 154
12398: PPUSH
12399: LD_INT 75
12401: PPUSH
12402: LD_INT 0
12404: PPUSH
12405: CALL_OW 48
// preparemechanic ( sex_male , alm3_sk ) ;
12409: LD_INT 1
12411: PPUSH
12412: LD_EXP 117
12416: PPUSH
12417: CALL_OW 383
// alm3 = createhuman ;
12421: LD_ADDR_EXP 116
12425: PUSH
12426: CALL_OW 44
12430: ST_TO_ADDR
// placehumaninunit ( alm3 , alv3 ) ;
12431: LD_EXP 116
12435: PPUSH
12436: LD_EXP 130
12440: PPUSH
12441: CALL_OW 52
// vc_chassis = alv4_ch ;
12445: LD_ADDR_OWVAR 37
12449: PUSH
12450: LD_EXP 134
12454: ST_TO_ADDR
// vc_weapon = alv4_wp ;
12455: LD_ADDR_OWVAR 40
12459: PUSH
12460: LD_EXP 135
12464: ST_TO_ADDR
// alv4 = createvehicle ;
12465: LD_ADDR_EXP 133
12469: PUSH
12470: CALL_OW 45
12474: ST_TO_ADDR
// setdir ( alv4 , 3 ) ;
12475: LD_EXP 133
12479: PPUSH
12480: LD_INT 3
12482: PPUSH
12483: CALL_OW 233
// placeunitxy ( alv4 , 165 , 89 , false ) ;
12487: LD_EXP 133
12491: PPUSH
12492: LD_INT 165
12494: PPUSH
12495: LD_INT 89
12497: PPUSH
12498: LD_INT 0
12500: PPUSH
12501: CALL_OW 48
// preparemechanic ( sex_male , alm4_sk ) ;
12505: LD_INT 1
12507: PPUSH
12508: LD_EXP 119
12512: PPUSH
12513: CALL_OW 383
// alm4 = createhuman ;
12517: LD_ADDR_EXP 118
12521: PUSH
12522: CALL_OW 44
12526: ST_TO_ADDR
// placehumaninunit ( alm4 , alv4 ) ;
12527: LD_EXP 118
12531: PPUSH
12532: LD_EXP 133
12536: PPUSH
12537: CALL_OW 52
// uc_nation = nation_american ;
12541: LD_ADDR_OWVAR 21
12545: PUSH
12546: LD_INT 1
12548: ST_TO_ADDR
// vc_chassis = alv5_ch ;
12549: LD_ADDR_OWVAR 37
12553: PUSH
12554: LD_EXP 137
12558: ST_TO_ADDR
// vc_weapon = alv5_wp ;
12559: LD_ADDR_OWVAR 40
12563: PUSH
12564: LD_EXP 138
12568: ST_TO_ADDR
// alv5 = createvehicle ;
12569: LD_ADDR_EXP 136
12573: PUSH
12574: CALL_OW 45
12578: ST_TO_ADDR
// setdir ( alv5 , 4 ) ;
12579: LD_EXP 136
12583: PPUSH
12584: LD_INT 4
12586: PPUSH
12587: CALL_OW 233
// placeunitxy ( alv5 , 168 , 93 , false ) ;
12591: LD_EXP 136
12595: PPUSH
12596: LD_INT 168
12598: PPUSH
12599: LD_INT 93
12601: PPUSH
12602: LD_INT 0
12604: PPUSH
12605: CALL_OW 48
// preparemechanic ( sex_male , alm5_sk ) ;
12609: LD_INT 1
12611: PPUSH
12612: LD_EXP 121
12616: PPUSH
12617: CALL_OW 383
// alm5 = createhuman ;
12621: LD_ADDR_EXP 120
12625: PUSH
12626: CALL_OW 44
12630: ST_TO_ADDR
// placehumaninunit ( alm5 , alv5 ) ;
12631: LD_EXP 120
12635: PPUSH
12636: LD_EXP 136
12640: PPUSH
12641: CALL_OW 52
// vc_chassis = alv6_ch ;
12645: LD_ADDR_OWVAR 37
12649: PUSH
12650: LD_EXP 140
12654: ST_TO_ADDR
// vc_weapon = alv6_wp ;
12655: LD_ADDR_OWVAR 40
12659: PUSH
12660: LD_EXP 141
12664: ST_TO_ADDR
// alv6 = createvehicle ;
12665: LD_ADDR_EXP 139
12669: PUSH
12670: CALL_OW 45
12674: ST_TO_ADDR
// setdir ( alv6 , 3 ) ;
12675: LD_EXP 139
12679: PPUSH
12680: LD_INT 3
12682: PPUSH
12683: CALL_OW 233
// placeunitxy ( alv6 , 191 , 108 , false ) ;
12687: LD_EXP 139
12691: PPUSH
12692: LD_INT 191
12694: PPUSH
12695: LD_INT 108
12697: PPUSH
12698: LD_INT 0
12700: PPUSH
12701: CALL_OW 48
// preparemechanic ( sex_male , alm6_sk ) ;
12705: LD_INT 1
12707: PPUSH
12708: LD_EXP 123
12712: PPUSH
12713: CALL_OW 383
// alm6 = createhuman ;
12717: LD_ADDR_EXP 122
12721: PUSH
12722: CALL_OW 44
12726: ST_TO_ADDR
// placehumaninunit ( alm6 , alv6 ) ;
12727: LD_EXP 122
12731: PPUSH
12732: LD_EXP 139
12736: PPUSH
12737: CALL_OW 52
// uc_nation = nation_russian ;
12741: LD_ADDR_OWVAR 21
12745: PUSH
12746: LD_INT 3
12748: ST_TO_ADDR
// preparehuman ( sex_male , class_bazooker , alsn0_sk ) ;
12749: LD_INT 1
12751: PPUSH
12752: LD_INT 9
12754: PPUSH
12755: LD_EXP 143
12759: PPUSH
12760: CALL_OW 380
// alsn0 = createhuman ;
12764: LD_ADDR_EXP 142
12768: PUSH
12769: CALL_OW 44
12773: ST_TO_ADDR
// placeunitxyr ( alsn0 , 150 , 52 , 1 , false ) ;
12774: LD_EXP 142
12778: PPUSH
12779: LD_INT 150
12781: PPUSH
12782: LD_INT 52
12784: PPUSH
12785: LD_INT 1
12787: PPUSH
12788: LD_INT 0
12790: PPUSH
12791: CALL_OW 50
// comhold ( alsn0 ) ;
12795: LD_EXP 142
12799: PPUSH
12800: CALL_OW 140
// uc_nation = nation_american ;
12804: LD_ADDR_OWVAR 21
12808: PUSH
12809: LD_INT 1
12811: ST_TO_ADDR
// preparehuman ( sex_male , class_sniper , alsn1_sk ) ;
12812: LD_INT 1
12814: PPUSH
12815: LD_INT 5
12817: PPUSH
12818: LD_EXP 145
12822: PPUSH
12823: CALL_OW 380
// alsn1 = createhuman ;
12827: LD_ADDR_EXP 144
12831: PUSH
12832: CALL_OW 44
12836: ST_TO_ADDR
// placeunitxyr ( alsn1 , 154 , 77 , 1 , false ) ;
12837: LD_EXP 144
12841: PPUSH
12842: LD_INT 154
12844: PPUSH
12845: LD_INT 77
12847: PPUSH
12848: LD_INT 1
12850: PPUSH
12851: LD_INT 0
12853: PPUSH
12854: CALL_OW 50
// comhold ( alsn1 ) ;
12858: LD_EXP 144
12862: PPUSH
12863: CALL_OW 140
// preparehuman ( sex_male , class_sniper , alsn2_sk ) ;
12867: LD_INT 1
12869: PPUSH
12870: LD_INT 5
12872: PPUSH
12873: LD_EXP 147
12877: PPUSH
12878: CALL_OW 380
// alsn2 = createhuman ;
12882: LD_ADDR_EXP 146
12886: PUSH
12887: CALL_OW 44
12891: ST_TO_ADDR
// placeunitxyr ( alsn2 , 176 , 101 , 1 , false ) ;
12892: LD_EXP 146
12896: PPUSH
12897: LD_INT 176
12899: PPUSH
12900: LD_INT 101
12902: PPUSH
12903: LD_INT 1
12905: PPUSH
12906: LD_INT 0
12908: PPUSH
12909: CALL_OW 50
// comhold ( alsn2 ) ;
12913: LD_EXP 146
12917: PPUSH
12918: CALL_OW 140
// uc_nation = nation_russian ;
12922: LD_ADDR_OWVAR 21
12926: PUSH
12927: LD_INT 3
12929: ST_TO_ADDR
// prepareengineer ( sex_female , 9 ) ;
12930: LD_INT 2
12932: PPUSH
12933: LD_INT 9
12935: PPUSH
12936: CALL_OW 382
// tmp = createhuman ;
12940: LD_ADDR_VAR 0 2
12944: PUSH
12945: CALL_OW 44
12949: ST_TO_ADDR
// placeunitxyr ( tmp , 164 , 74 , 1 , false ) ;
12950: LD_VAR 0 2
12954: PPUSH
12955: LD_INT 164
12957: PPUSH
12958: LD_INT 74
12960: PPUSH
12961: LD_INT 1
12963: PPUSH
12964: LD_INT 0
12966: PPUSH
12967: CALL_OW 50
// comenterunit ( tmp , alware00 ) ;
12971: LD_VAR 0 2
12975: PPUSH
12976: LD_INT 25
12978: PPUSH
12979: CALL_OW 120
// uc_nation = nation_russian ;
12983: LD_ADDR_OWVAR 21
12987: PUSH
12988: LD_INT 3
12990: ST_TO_ADDR
// prepareengineer ( sex_male , ale0_sk ) ;
12991: LD_INT 1
12993: PPUSH
12994: LD_EXP 149
12998: PPUSH
12999: CALL_OW 382
// ale0 = createhuman ;
13003: LD_ADDR_EXP 148
13007: PUSH
13008: CALL_OW 44
13012: ST_TO_ADDR
// placeunitxyr ( ale0 , 151 , 47 , 1 , false ) ;
13013: LD_EXP 148
13017: PPUSH
13018: LD_INT 151
13020: PPUSH
13021: LD_INT 47
13023: PPUSH
13024: LD_INT 1
13026: PPUSH
13027: LD_INT 0
13029: PPUSH
13030: CALL_OW 50
// comhold ( ale0 ) ;
13034: LD_EXP 148
13038: PPUSH
13039: CALL_OW 140
// prepareengineer ( sex_male , ale1_sk ) ;
13043: LD_INT 1
13045: PPUSH
13046: LD_EXP 151
13050: PPUSH
13051: CALL_OW 382
// ale1 = createhuman ;
13055: LD_ADDR_EXP 150
13059: PUSH
13060: CALL_OW 44
13064: ST_TO_ADDR
// placeunitxyr ( ale1 , 151 , 60 , 1 , false ) ;
13065: LD_EXP 150
13069: PPUSH
13070: LD_INT 151
13072: PPUSH
13073: LD_INT 60
13075: PPUSH
13076: LD_INT 1
13078: PPUSH
13079: LD_INT 0
13081: PPUSH
13082: CALL_OW 50
// comhold ( ale1 ) ;
13086: LD_EXP 150
13090: PPUSH
13091: CALL_OW 140
// prepareengineer ( sex_male , ale2_sk ) ;
13095: LD_INT 1
13097: PPUSH
13098: LD_EXP 153
13102: PPUSH
13103: CALL_OW 382
// ale2 = createhuman ;
13107: LD_ADDR_EXP 152
13111: PUSH
13112: CALL_OW 44
13116: ST_TO_ADDR
// placeunitxyr ( ale2 , 160 , 86 , 1 , false ) ;
13117: LD_EXP 152
13121: PPUSH
13122: LD_INT 160
13124: PPUSH
13125: LD_INT 86
13127: PPUSH
13128: LD_INT 1
13130: PPUSH
13131: LD_INT 0
13133: PPUSH
13134: CALL_OW 50
// comhold ( ale2 ) ;
13138: LD_EXP 152
13142: PPUSH
13143: CALL_OW 140
// prepareengineer ( sex_male , ale3_sk ) ;
13147: LD_INT 1
13149: PPUSH
13150: LD_EXP 155
13154: PPUSH
13155: CALL_OW 382
// ale3 = createhuman ;
13159: LD_ADDR_EXP 154
13163: PUSH
13164: CALL_OW 44
13168: ST_TO_ADDR
// placeunitxyr ( ale3 , 173 , 97 , 1 , false ) ;
13169: LD_EXP 154
13173: PPUSH
13174: LD_INT 173
13176: PPUSH
13177: LD_INT 97
13179: PPUSH
13180: LD_INT 1
13182: PPUSH
13183: LD_INT 0
13185: PPUSH
13186: CALL_OW 50
// comhold ( ale3 ) ;
13190: LD_EXP 154
13194: PPUSH
13195: CALL_OW 140
// inzinyri = [ ale0 , ale1 , ale2 , ale3 ] ;
13199: LD_ADDR_LOC 13
13203: PUSH
13204: LD_EXP 148
13208: PUSH
13209: LD_EXP 150
13213: PUSH
13214: LD_EXP 152
13218: PUSH
13219: LD_EXP 154
13223: PUSH
13224: EMPTY
13225: LIST
13226: LIST
13227: LIST
13228: LIST
13229: ST_TO_ADDR
// comremember ( inzinyri ) ;
13230: LD_LOC 13
13234: PPUSH
13235: CALL_OW 143
// opravujte = [ [ albarr00 , albunk00 ] , [ alturr00 , albunk01 ] , [ albunk02 , albunk03 ] , [ albunk04 , alturr01 , albarr01 ] ] ;
13239: LD_ADDR_LOC 12
13243: PUSH
13244: LD_INT 41
13246: PUSH
13247: LD_INT 24
13249: PUSH
13250: EMPTY
13251: LIST
13252: LIST
13253: PUSH
13254: LD_INT 49
13256: PUSH
13257: LD_INT 23
13259: PUSH
13260: EMPTY
13261: LIST
13262: LIST
13263: PUSH
13264: LD_INT 22
13266: PUSH
13267: LD_INT 21
13269: PUSH
13270: EMPTY
13271: LIST
13272: LIST
13273: PUSH
13274: LD_INT 20
13276: PUSH
13277: LD_INT 68
13279: PUSH
13280: LD_INT 42
13282: PUSH
13283: EMPTY
13284: LIST
13285: LIST
13286: LIST
13287: PUSH
13288: EMPTY
13289: LIST
13290: LIST
13291: LIST
13292: LIST
13293: ST_TO_ADDR
// teleportexit ( altelp00 , 7 , 5 ) ;
13294: LD_INT 48
13296: PPUSH
13297: LD_INT 7
13299: PPUSH
13300: LD_INT 5
13302: PPUSH
13303: CALL_OW 243
// aliancnici = filterallunits ( [ [ f_side , al ] , [ f_type , unit_human ] ] ) ;
13307: LD_ADDR_EXP 232
13311: PUSH
13312: LD_INT 22
13314: PUSH
13315: LD_EXP 3
13319: PUSH
13320: EMPTY
13321: LIST
13322: LIST
13323: PUSH
13324: LD_INT 21
13326: PUSH
13327: LD_INT 1
13329: PUSH
13330: EMPTY
13331: LIST
13332: LIST
13333: PUSH
13334: EMPTY
13335: LIST
13336: LIST
13337: PPUSH
13338: CALL_OW 69
13342: ST_TO_ADDR
// pocet_aliancniku = 0 + aliancnici ;
13343: LD_ADDR_EXP 231
13347: PUSH
13348: LD_INT 0
13350: PUSH
13351: LD_EXP 232
13355: PLUS
13356: ST_TO_ADDR
// utocnici = [ ] ;
13357: LD_ADDR_LOC 16
13361: PUSH
13362: EMPTY
13363: ST_TO_ADDR
// end ;
13364: LD_VAR 0 1
13368: RET
// export pocet_aliancniku , aliancnici ; var opravujte ; var inzinyri ; every 0 0$3 + 2 do var tmp , tmp2 , tmp3 , oprav , buds , lives ;
13369: GO 13371
13371: DISABLE
13372: LD_INT 0
13374: PPUSH
13375: PPUSH
13376: PPUSH
13377: PPUSH
13378: PPUSH
13379: PPUSH
// begin for tmp = 1 to 0 + opravujte do
13380: LD_ADDR_VAR 0 1
13384: PUSH
13385: DOUBLE
13386: LD_INT 1
13388: DEC
13389: ST_TO_ADDR
13390: LD_INT 0
13392: PUSH
13393: LD_LOC 12
13397: PLUS
13398: PUSH
13399: FOR_TO
13400: IFFALSE 13631
// begin buds = [ ] ;
13402: LD_ADDR_VAR 0 5
13406: PUSH
13407: EMPTY
13408: ST_TO_ADDR
// lives = [ ] ;
13409: LD_ADDR_VAR 0 6
13413: PUSH
13414: EMPTY
13415: ST_TO_ADDR
// for tmp2 in opravujte [ tmp ] do
13416: LD_ADDR_VAR 0 2
13420: PUSH
13421: LD_LOC 12
13425: PUSH
13426: LD_VAR 0 1
13430: ARRAY
13431: PUSH
13432: FOR_IN
13433: IFFALSE 13495
// if ( getlives ( tmp2 ) < hranice_zdravi ) then
13435: LD_VAR 0 2
13439: PPUSH
13440: CALL_OW 256
13444: PUSH
13445: LD_INT 1000
13447: LESS
13448: IFFALSE 13493
// begin buds = buds ^ [ tmp2 ] ;
13450: LD_ADDR_VAR 0 5
13454: PUSH
13455: LD_VAR 0 5
13459: PUSH
13460: LD_VAR 0 2
13464: PUSH
13465: EMPTY
13466: LIST
13467: ADD
13468: ST_TO_ADDR
// lives = lives ^ [ getlives ( tmp2 ) ] ;
13469: LD_ADDR_VAR 0 6
13473: PUSH
13474: LD_VAR 0 6
13478: PUSH
13479: LD_VAR 0 2
13483: PPUSH
13484: CALL_OW 256
13488: PUSH
13489: EMPTY
13490: LIST
13491: ADD
13492: ST_TO_ADDR
// end ;
13493: GO 13432
13495: POP
13496: POP
// tmp2 = sortlistbylistasc ( buds , lives ) ;
13497: LD_ADDR_VAR 0 2
13501: PUSH
13502: LD_VAR 0 5
13506: PPUSH
13507: LD_VAR 0 6
13511: PPUSH
13512: CALL_OW 76
13516: ST_TO_ADDR
// if tmp2 then
13517: LD_VAR 0 2
13521: IFFALSE 13629
// begin comrepairbuilding ( inzinyri [ tmp ] , tmp2 [ 1 ] ) ;
13523: LD_LOC 13
13527: PUSH
13528: LD_VAR 0 1
13532: ARRAY
13533: PPUSH
13534: LD_VAR 0 2
13538: PUSH
13539: LD_INT 1
13541: ARRAY
13542: PPUSH
13543: CALL_OW 130
// for tmp3 = 2 to 0 + tmp2 do
13547: LD_ADDR_VAR 0 3
13551: PUSH
13552: DOUBLE
13553: LD_INT 2
13555: DEC
13556: ST_TO_ADDR
13557: LD_INT 0
13559: PUSH
13560: LD_VAR 0 2
13564: PLUS
13565: PUSH
13566: FOR_TO
13567: IFFALSE 13597
// addcomrepairbuilding ( inzinyri [ tmp ] , tmp2 [ tmp3 ] ) ;
13569: LD_LOC 13
13573: PUSH
13574: LD_VAR 0 1
13578: ARRAY
13579: PPUSH
13580: LD_VAR 0 2
13584: PUSH
13585: LD_VAR 0 3
13589: ARRAY
13590: PPUSH
13591: CALL_OW 190
13595: GO 13566
13597: POP
13598: POP
// addcomreturn ( inzinyri [ tmp ] ) ;
13599: LD_LOC 13
13603: PUSH
13604: LD_VAR 0 1
13608: ARRAY
13609: PPUSH
13610: CALL_OW 204
// addcomhold ( inzinyri [ tmp ] ) ;
13614: LD_LOC 13
13618: PUSH
13619: LD_VAR 0 1
13623: ARRAY
13624: PPUSH
13625: CALL_OW 200
// end ; end ;
13629: GO 13399
13631: POP
13632: POP
// enable ;
13633: ENABLE
// end ;
13634: PPOPN 6
13636: END
// every 0 0$1 marked 08 do var zkseznam , tmp , tmp1 ;
13637: GO 13639
13639: DISABLE
13640: LD_INT 0
13642: PPUSH
13643: PPUSH
13644: PPUSH
// begin wait ( 10 10$0 ) ;
13645: LD_INT 21000
13647: PPUSH
13648: CALL_OW 67
// if al_surr then
13652: LD_EXP 220
13656: IFFALSE 13660
// exit ;
13658: GO 14955
// if artef_gone then
13660: LD_EXP 245
13664: IFFALSE 13668
// exit ;
13666: GO 14955
// if debug then
13668: LD_EXP 223
13672: IFFALSE 13681
// msg ( al: armaggedon ) ;
13674: LD_STRING al: armaggedon
13676: PPUSH
13677: CALL_OW 100
// zkseznam = [ [ 64 , 17 ] , [ 51 , 12 ] , [ 58 , 24 ] , [ 70 , 32 ] , [ 45 , 19 ] , [ 55 , 35 ] , [ 46 , 31 ] , [ 61 , 41 ] , [ 58 , 46 ] , [ 51 , 40 ] , [ 55 , 47 ] , [ 60 , 51 ] , [ 64 , 53 ] , [ 37 , 41 ] , [ 38 , 59 ] , [ 45 , 50 ] , [ 48 , 57 ] , [ 47 , 48 ] , [ 35 , 16 ] , [ 38 , 51 ] , [ 55 , 61 ] , [ 64 , 60 ] , [ 60 , 63 ] , [ 76 , 60 ] , [ 74 , 71 ] , [ 71 , 73 ] , [ 74 , 77 ] , [ 54 , 65 ] , [ 60 , 68 ] , [ 57 , 69 ] , [ 62 , 71 ] , [ 58 , 71 ] , [ 61 , 73 ] , [ 63 , 74 ] , [ 66 , 75 ] , [ 60 , 74 ] , [ 63 , 76 ] , [ 62 , 76 ] , [ 64 , 77 ] , [ 65 , 77 ] , [ 46 , 65 ] , [ 50 , 67 ] , [ 53 , 68 ] , [ 56 , 72 ] , [ 56 , 74 ] , [ 47 , 69 ] , [ 46 , 72 ] , [ 46 , 78 ] , [ 42 , 81 ] , [ 50 , 83 ] , [ 55 , 85 ] , [ 60 , 78 ] , [ 59 , 79 ] , [ 59 , 82 ] , [ 63 , 81 ] , [ 67 , 79 ] , [ 64 , 79 ] , [ 67 , 82 ] , [ 68 , 83 ] , [ 66 , 83 ] , [ 71 , 84 ] , [ 64 , 84 ] , [ 70 , 87 ] , [ 75 , 91 ] , [ 68 , 90 ] , [ 58 , 93 ] , [ 63 , 95 ] , [ 67 , 94 ] , [ 75 , 95 ] , [ 62 , 99 ] , [ 68 , 105 ] , [ 70 , 100 ] , [ 73 , 98 ] , [ 75 , 105 ] , [ 84 , 82 ] , [ 81 , 89 ] , [ 91 , 94 ] , [ 77 , 114 ] , [ 74 , 122 ] , [ 81 , 100 ] , [ 81 , 106 ] , [ 88 , 104 ] , [ 91 , 120 ] , [ 103 , 126 ] , [ 89 , 132 ] , [ 103 , 133 ] , [ 112 , 120 ] , [ 115 , 130 ] , [ 102 , 107 ] , [ 62 , 77 ] , [ 65 , 78 ] ] ;
13681: LD_ADDR_VAR 0 1
13685: PUSH
13686: LD_INT 64
13688: PUSH
13689: LD_INT 17
13691: PUSH
13692: EMPTY
13693: LIST
13694: LIST
13695: PUSH
13696: LD_INT 51
13698: PUSH
13699: LD_INT 12
13701: PUSH
13702: EMPTY
13703: LIST
13704: LIST
13705: PUSH
13706: LD_INT 58
13708: PUSH
13709: LD_INT 24
13711: PUSH
13712: EMPTY
13713: LIST
13714: LIST
13715: PUSH
13716: LD_INT 70
13718: PUSH
13719: LD_INT 32
13721: PUSH
13722: EMPTY
13723: LIST
13724: LIST
13725: PUSH
13726: LD_INT 45
13728: PUSH
13729: LD_INT 19
13731: PUSH
13732: EMPTY
13733: LIST
13734: LIST
13735: PUSH
13736: LD_INT 55
13738: PUSH
13739: LD_INT 35
13741: PUSH
13742: EMPTY
13743: LIST
13744: LIST
13745: PUSH
13746: LD_INT 46
13748: PUSH
13749: LD_INT 31
13751: PUSH
13752: EMPTY
13753: LIST
13754: LIST
13755: PUSH
13756: LD_INT 61
13758: PUSH
13759: LD_INT 41
13761: PUSH
13762: EMPTY
13763: LIST
13764: LIST
13765: PUSH
13766: LD_INT 58
13768: PUSH
13769: LD_INT 46
13771: PUSH
13772: EMPTY
13773: LIST
13774: LIST
13775: PUSH
13776: LD_INT 51
13778: PUSH
13779: LD_INT 40
13781: PUSH
13782: EMPTY
13783: LIST
13784: LIST
13785: PUSH
13786: LD_INT 55
13788: PUSH
13789: LD_INT 47
13791: PUSH
13792: EMPTY
13793: LIST
13794: LIST
13795: PUSH
13796: LD_INT 60
13798: PUSH
13799: LD_INT 51
13801: PUSH
13802: EMPTY
13803: LIST
13804: LIST
13805: PUSH
13806: LD_INT 64
13808: PUSH
13809: LD_INT 53
13811: PUSH
13812: EMPTY
13813: LIST
13814: LIST
13815: PUSH
13816: LD_INT 37
13818: PUSH
13819: LD_INT 41
13821: PUSH
13822: EMPTY
13823: LIST
13824: LIST
13825: PUSH
13826: LD_INT 38
13828: PUSH
13829: LD_INT 59
13831: PUSH
13832: EMPTY
13833: LIST
13834: LIST
13835: PUSH
13836: LD_INT 45
13838: PUSH
13839: LD_INT 50
13841: PUSH
13842: EMPTY
13843: LIST
13844: LIST
13845: PUSH
13846: LD_INT 48
13848: PUSH
13849: LD_INT 57
13851: PUSH
13852: EMPTY
13853: LIST
13854: LIST
13855: PUSH
13856: LD_INT 47
13858: PUSH
13859: LD_INT 48
13861: PUSH
13862: EMPTY
13863: LIST
13864: LIST
13865: PUSH
13866: LD_INT 35
13868: PUSH
13869: LD_INT 16
13871: PUSH
13872: EMPTY
13873: LIST
13874: LIST
13875: PUSH
13876: LD_INT 38
13878: PUSH
13879: LD_INT 51
13881: PUSH
13882: EMPTY
13883: LIST
13884: LIST
13885: PUSH
13886: LD_INT 55
13888: PUSH
13889: LD_INT 61
13891: PUSH
13892: EMPTY
13893: LIST
13894: LIST
13895: PUSH
13896: LD_INT 64
13898: PUSH
13899: LD_INT 60
13901: PUSH
13902: EMPTY
13903: LIST
13904: LIST
13905: PUSH
13906: LD_INT 60
13908: PUSH
13909: LD_INT 63
13911: PUSH
13912: EMPTY
13913: LIST
13914: LIST
13915: PUSH
13916: LD_INT 76
13918: PUSH
13919: LD_INT 60
13921: PUSH
13922: EMPTY
13923: LIST
13924: LIST
13925: PUSH
13926: LD_INT 74
13928: PUSH
13929: LD_INT 71
13931: PUSH
13932: EMPTY
13933: LIST
13934: LIST
13935: PUSH
13936: LD_INT 71
13938: PUSH
13939: LD_INT 73
13941: PUSH
13942: EMPTY
13943: LIST
13944: LIST
13945: PUSH
13946: LD_INT 74
13948: PUSH
13949: LD_INT 77
13951: PUSH
13952: EMPTY
13953: LIST
13954: LIST
13955: PUSH
13956: LD_INT 54
13958: PUSH
13959: LD_INT 65
13961: PUSH
13962: EMPTY
13963: LIST
13964: LIST
13965: PUSH
13966: LD_INT 60
13968: PUSH
13969: LD_INT 68
13971: PUSH
13972: EMPTY
13973: LIST
13974: LIST
13975: PUSH
13976: LD_INT 57
13978: PUSH
13979: LD_INT 69
13981: PUSH
13982: EMPTY
13983: LIST
13984: LIST
13985: PUSH
13986: LD_INT 62
13988: PUSH
13989: LD_INT 71
13991: PUSH
13992: EMPTY
13993: LIST
13994: LIST
13995: PUSH
13996: LD_INT 58
13998: PUSH
13999: LD_INT 71
14001: PUSH
14002: EMPTY
14003: LIST
14004: LIST
14005: PUSH
14006: LD_INT 61
14008: PUSH
14009: LD_INT 73
14011: PUSH
14012: EMPTY
14013: LIST
14014: LIST
14015: PUSH
14016: LD_INT 63
14018: PUSH
14019: LD_INT 74
14021: PUSH
14022: EMPTY
14023: LIST
14024: LIST
14025: PUSH
14026: LD_INT 66
14028: PUSH
14029: LD_INT 75
14031: PUSH
14032: EMPTY
14033: LIST
14034: LIST
14035: PUSH
14036: LD_INT 60
14038: PUSH
14039: LD_INT 74
14041: PUSH
14042: EMPTY
14043: LIST
14044: LIST
14045: PUSH
14046: LD_INT 63
14048: PUSH
14049: LD_INT 76
14051: PUSH
14052: EMPTY
14053: LIST
14054: LIST
14055: PUSH
14056: LD_INT 62
14058: PUSH
14059: LD_INT 76
14061: PUSH
14062: EMPTY
14063: LIST
14064: LIST
14065: PUSH
14066: LD_INT 64
14068: PUSH
14069: LD_INT 77
14071: PUSH
14072: EMPTY
14073: LIST
14074: LIST
14075: PUSH
14076: LD_INT 65
14078: PUSH
14079: LD_INT 77
14081: PUSH
14082: EMPTY
14083: LIST
14084: LIST
14085: PUSH
14086: LD_INT 46
14088: PUSH
14089: LD_INT 65
14091: PUSH
14092: EMPTY
14093: LIST
14094: LIST
14095: PUSH
14096: LD_INT 50
14098: PUSH
14099: LD_INT 67
14101: PUSH
14102: EMPTY
14103: LIST
14104: LIST
14105: PUSH
14106: LD_INT 53
14108: PUSH
14109: LD_INT 68
14111: PUSH
14112: EMPTY
14113: LIST
14114: LIST
14115: PUSH
14116: LD_INT 56
14118: PUSH
14119: LD_INT 72
14121: PUSH
14122: EMPTY
14123: LIST
14124: LIST
14125: PUSH
14126: LD_INT 56
14128: PUSH
14129: LD_INT 74
14131: PUSH
14132: EMPTY
14133: LIST
14134: LIST
14135: PUSH
14136: LD_INT 47
14138: PUSH
14139: LD_INT 69
14141: PUSH
14142: EMPTY
14143: LIST
14144: LIST
14145: PUSH
14146: LD_INT 46
14148: PUSH
14149: LD_INT 72
14151: PUSH
14152: EMPTY
14153: LIST
14154: LIST
14155: PUSH
14156: LD_INT 46
14158: PUSH
14159: LD_INT 78
14161: PUSH
14162: EMPTY
14163: LIST
14164: LIST
14165: PUSH
14166: LD_INT 42
14168: PUSH
14169: LD_INT 81
14171: PUSH
14172: EMPTY
14173: LIST
14174: LIST
14175: PUSH
14176: LD_INT 50
14178: PUSH
14179: LD_INT 83
14181: PUSH
14182: EMPTY
14183: LIST
14184: LIST
14185: PUSH
14186: LD_INT 55
14188: PUSH
14189: LD_INT 85
14191: PUSH
14192: EMPTY
14193: LIST
14194: LIST
14195: PUSH
14196: LD_INT 60
14198: PUSH
14199: LD_INT 78
14201: PUSH
14202: EMPTY
14203: LIST
14204: LIST
14205: PUSH
14206: LD_INT 59
14208: PUSH
14209: LD_INT 79
14211: PUSH
14212: EMPTY
14213: LIST
14214: LIST
14215: PUSH
14216: LD_INT 59
14218: PUSH
14219: LD_INT 82
14221: PUSH
14222: EMPTY
14223: LIST
14224: LIST
14225: PUSH
14226: LD_INT 63
14228: PUSH
14229: LD_INT 81
14231: PUSH
14232: EMPTY
14233: LIST
14234: LIST
14235: PUSH
14236: LD_INT 67
14238: PUSH
14239: LD_INT 79
14241: PUSH
14242: EMPTY
14243: LIST
14244: LIST
14245: PUSH
14246: LD_INT 64
14248: PUSH
14249: LD_INT 79
14251: PUSH
14252: EMPTY
14253: LIST
14254: LIST
14255: PUSH
14256: LD_INT 67
14258: PUSH
14259: LD_INT 82
14261: PUSH
14262: EMPTY
14263: LIST
14264: LIST
14265: PUSH
14266: LD_INT 68
14268: PUSH
14269: LD_INT 83
14271: PUSH
14272: EMPTY
14273: LIST
14274: LIST
14275: PUSH
14276: LD_INT 66
14278: PUSH
14279: LD_INT 83
14281: PUSH
14282: EMPTY
14283: LIST
14284: LIST
14285: PUSH
14286: LD_INT 71
14288: PUSH
14289: LD_INT 84
14291: PUSH
14292: EMPTY
14293: LIST
14294: LIST
14295: PUSH
14296: LD_INT 64
14298: PUSH
14299: LD_INT 84
14301: PUSH
14302: EMPTY
14303: LIST
14304: LIST
14305: PUSH
14306: LD_INT 70
14308: PUSH
14309: LD_INT 87
14311: PUSH
14312: EMPTY
14313: LIST
14314: LIST
14315: PUSH
14316: LD_INT 75
14318: PUSH
14319: LD_INT 91
14321: PUSH
14322: EMPTY
14323: LIST
14324: LIST
14325: PUSH
14326: LD_INT 68
14328: PUSH
14329: LD_INT 90
14331: PUSH
14332: EMPTY
14333: LIST
14334: LIST
14335: PUSH
14336: LD_INT 58
14338: PUSH
14339: LD_INT 93
14341: PUSH
14342: EMPTY
14343: LIST
14344: LIST
14345: PUSH
14346: LD_INT 63
14348: PUSH
14349: LD_INT 95
14351: PUSH
14352: EMPTY
14353: LIST
14354: LIST
14355: PUSH
14356: LD_INT 67
14358: PUSH
14359: LD_INT 94
14361: PUSH
14362: EMPTY
14363: LIST
14364: LIST
14365: PUSH
14366: LD_INT 75
14368: PUSH
14369: LD_INT 95
14371: PUSH
14372: EMPTY
14373: LIST
14374: LIST
14375: PUSH
14376: LD_INT 62
14378: PUSH
14379: LD_INT 99
14381: PUSH
14382: EMPTY
14383: LIST
14384: LIST
14385: PUSH
14386: LD_INT 68
14388: PUSH
14389: LD_INT 105
14391: PUSH
14392: EMPTY
14393: LIST
14394: LIST
14395: PUSH
14396: LD_INT 70
14398: PUSH
14399: LD_INT 100
14401: PUSH
14402: EMPTY
14403: LIST
14404: LIST
14405: PUSH
14406: LD_INT 73
14408: PUSH
14409: LD_INT 98
14411: PUSH
14412: EMPTY
14413: LIST
14414: LIST
14415: PUSH
14416: LD_INT 75
14418: PUSH
14419: LD_INT 105
14421: PUSH
14422: EMPTY
14423: LIST
14424: LIST
14425: PUSH
14426: LD_INT 84
14428: PUSH
14429: LD_INT 82
14431: PUSH
14432: EMPTY
14433: LIST
14434: LIST
14435: PUSH
14436: LD_INT 81
14438: PUSH
14439: LD_INT 89
14441: PUSH
14442: EMPTY
14443: LIST
14444: LIST
14445: PUSH
14446: LD_INT 91
14448: PUSH
14449: LD_INT 94
14451: PUSH
14452: EMPTY
14453: LIST
14454: LIST
14455: PUSH
14456: LD_INT 77
14458: PUSH
14459: LD_INT 114
14461: PUSH
14462: EMPTY
14463: LIST
14464: LIST
14465: PUSH
14466: LD_INT 74
14468: PUSH
14469: LD_INT 122
14471: PUSH
14472: EMPTY
14473: LIST
14474: LIST
14475: PUSH
14476: LD_INT 81
14478: PUSH
14479: LD_INT 100
14481: PUSH
14482: EMPTY
14483: LIST
14484: LIST
14485: PUSH
14486: LD_INT 81
14488: PUSH
14489: LD_INT 106
14491: PUSH
14492: EMPTY
14493: LIST
14494: LIST
14495: PUSH
14496: LD_INT 88
14498: PUSH
14499: LD_INT 104
14501: PUSH
14502: EMPTY
14503: LIST
14504: LIST
14505: PUSH
14506: LD_INT 91
14508: PUSH
14509: LD_INT 120
14511: PUSH
14512: EMPTY
14513: LIST
14514: LIST
14515: PUSH
14516: LD_INT 103
14518: PUSH
14519: LD_INT 126
14521: PUSH
14522: EMPTY
14523: LIST
14524: LIST
14525: PUSH
14526: LD_INT 89
14528: PUSH
14529: LD_INT 132
14531: PUSH
14532: EMPTY
14533: LIST
14534: LIST
14535: PUSH
14536: LD_INT 103
14538: PUSH
14539: LD_INT 133
14541: PUSH
14542: EMPTY
14543: LIST
14544: LIST
14545: PUSH
14546: LD_INT 112
14548: PUSH
14549: LD_INT 120
14551: PUSH
14552: EMPTY
14553: LIST
14554: LIST
14555: PUSH
14556: LD_INT 115
14558: PUSH
14559: LD_INT 130
14561: PUSH
14562: EMPTY
14563: LIST
14564: LIST
14565: PUSH
14566: LD_INT 102
14568: PUSH
14569: LD_INT 107
14571: PUSH
14572: EMPTY
14573: LIST
14574: LIST
14575: PUSH
14576: LD_INT 62
14578: PUSH
14579: LD_INT 77
14581: PUSH
14582: EMPTY
14583: LIST
14584: LIST
14585: PUSH
14586: LD_INT 65
14588: PUSH
14589: LD_INT 78
14591: PUSH
14592: EMPTY
14593: LIST
14594: LIST
14595: PUSH
14596: EMPTY
14597: LIST
14598: LIST
14599: LIST
14600: LIST
14601: LIST
14602: LIST
14603: LIST
14604: LIST
14605: LIST
14606: LIST
14607: LIST
14608: LIST
14609: LIST
14610: LIST
14611: LIST
14612: LIST
14613: LIST
14614: LIST
14615: LIST
14616: LIST
14617: LIST
14618: LIST
14619: LIST
14620: LIST
14621: LIST
14622: LIST
14623: LIST
14624: LIST
14625: LIST
14626: LIST
14627: LIST
14628: LIST
14629: LIST
14630: LIST
14631: LIST
14632: LIST
14633: LIST
14634: LIST
14635: LIST
14636: LIST
14637: LIST
14638: LIST
14639: LIST
14640: LIST
14641: LIST
14642: LIST
14643: LIST
14644: LIST
14645: LIST
14646: LIST
14647: LIST
14648: LIST
14649: LIST
14650: LIST
14651: LIST
14652: LIST
14653: LIST
14654: LIST
14655: LIST
14656: LIST
14657: LIST
14658: LIST
14659: LIST
14660: LIST
14661: LIST
14662: LIST
14663: LIST
14664: LIST
14665: LIST
14666: LIST
14667: LIST
14668: LIST
14669: LIST
14670: LIST
14671: LIST
14672: LIST
14673: LIST
14674: LIST
14675: LIST
14676: LIST
14677: LIST
14678: LIST
14679: LIST
14680: LIST
14681: LIST
14682: LIST
14683: LIST
14684: LIST
14685: LIST
14686: LIST
14687: LIST
14688: ST_TO_ADDR
// for tmp in zkseznam do
14689: LD_ADDR_VAR 0 2
14693: PUSH
14694: LD_VAR 0 1
14698: PUSH
14699: FOR_IN
14700: IFFALSE 14756
// begin contaminate ( al , tmp [ 1 ] , tmp [ 2 ] ) ;
14702: LD_EXP 3
14706: PPUSH
14707: LD_VAR 0 2
14711: PUSH
14712: LD_INT 1
14714: ARRAY
14715: PPUSH
14716: LD_VAR 0 2
14720: PUSH
14721: LD_INT 2
14723: ARRAY
14724: PPUSH
14725: CALL_OW 489
// artcontamination ( tmp [ 1 ] , tmp [ 2 ] , 10 ) ;
14729: LD_VAR 0 2
14733: PUSH
14734: LD_INT 1
14736: ARRAY
14737: PPUSH
14738: LD_VAR 0 2
14742: PUSH
14743: LD_INT 2
14745: ARRAY
14746: PPUSH
14747: LD_INT 10
14749: PPUSH
14750: CALL_OW 495
// end ;
14754: GO 14699
14756: POP
14757: POP
// tmp = filterunitsinarea ( mlsibdeps , [ [ f_type , unit_building ] , [ f_side , ru ] ] ) ;
14758: LD_ADDR_VAR 0 2
14762: PUSH
14763: LD_INT 22
14765: PPUSH
14766: LD_INT 21
14768: PUSH
14769: LD_INT 3
14771: PUSH
14772: EMPTY
14773: LIST
14774: LIST
14775: PUSH
14776: LD_INT 22
14778: PUSH
14779: LD_EXP 1
14783: PUSH
14784: EMPTY
14785: LIST
14786: LIST
14787: PUSH
14788: EMPTY
14789: LIST
14790: LIST
14791: PPUSH
14792: CALL_OW 70
14796: ST_TO_ADDR
// if tmp then
14797: LD_VAR 0 2
14801: IFFALSE 14812
// centernowonunits ( tmp ) ;
14803: LD_VAR 0 2
14807: PPUSH
14808: CALL_OW 87
// for tmp1 in tmp do
14812: LD_ADDR_VAR 0 3
14816: PUSH
14817: LD_VAR 0 2
14821: PUSH
14822: FOR_IN
14823: IFFALSE 14855
// setlives ( tmp1 , hranice_umirani - rand ( 1 , hranice_umirani - 2 ) ) ;
14825: LD_VAR 0 3
14829: PPUSH
14830: LD_INT 250
14832: PUSH
14833: LD_INT 1
14835: PPUSH
14836: LD_INT 250
14838: PUSH
14839: LD_INT 2
14841: MINUS
14842: PPUSH
14843: CALL_OW 12
14847: MINUS
14848: PPUSH
14849: CALL_OW 234
14853: GO 14822
14855: POP
14856: POP
// tmp = filterunitsinarea ( mlsibdeps , [ [ f_type , unit_vehicle ] , [ f_side , ru ] ] ) ;
14857: LD_ADDR_VAR 0 2
14861: PUSH
14862: LD_INT 22
14864: PPUSH
14865: LD_INT 21
14867: PUSH
14868: LD_INT 2
14870: PUSH
14871: EMPTY
14872: LIST
14873: LIST
14874: PUSH
14875: LD_INT 22
14877: PUSH
14878: LD_EXP 1
14882: PUSH
14883: EMPTY
14884: LIST
14885: LIST
14886: PUSH
14887: EMPTY
14888: LIST
14889: LIST
14890: PPUSH
14891: CALL_OW 70
14895: ST_TO_ADDR
// for tmp1 in tmp do
14896: LD_ADDR_VAR 0 3
14900: PUSH
14901: LD_VAR 0 2
14905: PUSH
14906: FOR_IN
14907: IFFALSE 14939
// setlives ( tmp1 , hranice_umirani - rand ( 1 , hranice_umirani - 2 ) ) ;
14909: LD_VAR 0 3
14913: PPUSH
14914: LD_INT 250
14916: PUSH
14917: LD_INT 1
14919: PPUSH
14920: LD_INT 250
14922: PUSH
14923: LD_INT 2
14925: MINUS
14926: PPUSH
14927: CALL_OW 12
14931: MINUS
14932: PPUSH
14933: CALL_OW 234
14937: GO 14906
14939: POP
14940: POP
// wait ( 0 0$1 ) ;
14941: LD_INT 35
14943: PPUSH
14944: CALL_OW 67
// youlost ( Alliance ) ;
14948: LD_STRING Alliance
14950: PPUSH
14951: CALL_OW 104
// end ;
14955: PPOPN 3
14957: END
// var attida , attidb , utocnici , ridici , telep ; every 0 0$10 + 10 10$0 do var tmp , tmp1 , tmp2 ;
14958: GO 14960
14960: DISABLE
14961: LD_INT 0
14963: PPUSH
14964: PPUSH
14965: PPUSH
// begin if al_surr then
14966: LD_EXP 220
14970: IFFALSE 14974
// exit ;
14972: GO 16573
// al_att = al_att - 1 ;
14974: LD_ADDR_EXP 216
14978: PUSH
14979: LD_EXP 216
14983: PUSH
14984: LD_INT 1
14986: MINUS
14987: ST_TO_ADDR
// if not al_att then
14988: LD_EXP 216
14992: NOT
14993: IFFALSE 16572
// begin if debug then
14995: LD_EXP 223
14999: IFFALSE 15008
// msg ( al: attack from two sides ) ;
15001: LD_STRING al: attack from two sides
15003: PPUSH
15004: CALL_OW 100
// uc_side = al ;
15008: LD_ADDR_OWVAR 20
15012: PUSH
15013: LD_EXP 3
15017: ST_TO_ADDR
// uc_nation = nation_american ;
15018: LD_ADDR_OWVAR 21
15022: PUSH
15023: LD_INT 1
15025: ST_TO_ADDR
// vc_control = control_manual ;
15026: LD_ADDR_OWVAR 38
15030: PUSH
15031: LD_INT 1
15033: ST_TO_ADDR
// vc_engine = engine_siberite ;
15034: LD_ADDR_OWVAR 39
15038: PUSH
15039: LD_INT 3
15041: ST_TO_ADDR
// vc_chassis = [ us_medium_tracked , us_morphling , us_heavy_tracked ] [ difficulty ] ;
15042: LD_ADDR_OWVAR 37
15046: PUSH
15047: LD_INT 3
15049: PUSH
15050: LD_INT 5
15052: PUSH
15053: LD_INT 4
15055: PUSH
15056: EMPTY
15057: LIST
15058: LIST
15059: LIST
15060: PUSH
15061: LD_OWVAR 67
15065: ARRAY
15066: ST_TO_ADDR
// vc_weapon = [ us_double_gun , us_heavy_gun , us_heavy_gun ] [ difficulty ] ;
15067: LD_ADDR_OWVAR 40
15071: PUSH
15072: LD_INT 5
15074: PUSH
15075: LD_INT 6
15077: PUSH
15078: LD_INT 6
15080: PUSH
15081: EMPTY
15082: LIST
15083: LIST
15084: LIST
15085: PUSH
15086: LD_OWVAR 67
15090: ARRAY
15091: ST_TO_ADDR
// tmp = createvehicle ;
15092: LD_ADDR_VAR 0 1
15096: PUSH
15097: CALL_OW 45
15101: ST_TO_ADDR
// setdir ( tmp , 3 ) ;
15102: LD_VAR 0 1
15106: PPUSH
15107: LD_INT 3
15109: PPUSH
15110: CALL_OW 233
// placeunitarea ( tmp , alarriv , false ) ;
15114: LD_VAR 0 1
15118: PPUSH
15119: LD_INT 24
15121: PPUSH
15122: LD_INT 0
15124: PPUSH
15125: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
15129: LD_INT 1
15131: PPUSH
15132: LD_EXP 217
15136: PPUSH
15137: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
15141: CALL_OW 44
15145: PPUSH
15146: LD_VAR 0 1
15150: PPUSH
15151: CALL_OW 52
// vc_chassis = [ us_medium_tracked , us_medium_tracked , us_morphling ] [ difficulty ] ;
15155: LD_ADDR_OWVAR 37
15159: PUSH
15160: LD_INT 3
15162: PUSH
15163: LD_INT 3
15165: PUSH
15166: LD_INT 5
15168: PUSH
15169: EMPTY
15170: LIST
15171: LIST
15172: LIST
15173: PUSH
15174: LD_OWVAR 67
15178: ARRAY
15179: ST_TO_ADDR
// vc_weapon = us_rocket_launcher ;
15180: LD_ADDR_OWVAR 40
15184: PUSH
15185: LD_INT 7
15187: ST_TO_ADDR
// tmp = createvehicle ;
15188: LD_ADDR_VAR 0 1
15192: PUSH
15193: CALL_OW 45
15197: ST_TO_ADDR
// setdir ( tmp , 3 ) ;
15198: LD_VAR 0 1
15202: PPUSH
15203: LD_INT 3
15205: PPUSH
15206: CALL_OW 233
// placeunitarea ( tmp , alarriv , false ) ;
15210: LD_VAR 0 1
15214: PPUSH
15215: LD_INT 24
15217: PPUSH
15218: LD_INT 0
15220: PPUSH
15221: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
15225: LD_INT 1
15227: PPUSH
15228: LD_EXP 217
15232: PPUSH
15233: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
15237: CALL_OW 44
15241: PPUSH
15242: LD_VAR 0 1
15246: PPUSH
15247: CALL_OW 52
// vc_chassis = [ us_medium_tracked , us_medium_tracked , us_heavy_tracked ] [ difficulty ] ;
15251: LD_ADDR_OWVAR 37
15255: PUSH
15256: LD_INT 3
15258: PUSH
15259: LD_INT 3
15261: PUSH
15262: LD_INT 4
15264: PUSH
15265: EMPTY
15266: LIST
15267: LIST
15268: LIST
15269: PUSH
15270: LD_OWVAR 67
15274: ARRAY
15275: ST_TO_ADDR
// vc_weapon = us_laser ;
15276: LD_ADDR_OWVAR 40
15280: PUSH
15281: LD_INT 9
15283: ST_TO_ADDR
// tmp = createvehicle ;
15284: LD_ADDR_VAR 0 1
15288: PUSH
15289: CALL_OW 45
15293: ST_TO_ADDR
// setdir ( tmp , 3 ) ;
15294: LD_VAR 0 1
15298: PPUSH
15299: LD_INT 3
15301: PPUSH
15302: CALL_OW 233
// placeunitarea ( tmp , alarriv , false ) ;
15306: LD_VAR 0 1
15310: PPUSH
15311: LD_INT 24
15313: PPUSH
15314: LD_INT 0
15316: PPUSH
15317: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
15321: LD_INT 1
15323: PPUSH
15324: LD_EXP 217
15328: PPUSH
15329: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
15333: CALL_OW 44
15337: PPUSH
15338: LD_VAR 0 1
15342: PPUSH
15343: CALL_OW 52
// if difficulty > 1 then
15347: LD_OWVAR 67
15351: PUSH
15352: LD_INT 1
15354: GREATER
15355: IFFALSE 15453
// begin vc_chassis = [ 0 , us_medium_tracked , us_morphling ] [ difficulty ] ;
15357: LD_ADDR_OWVAR 37
15361: PUSH
15362: LD_INT 0
15364: PUSH
15365: LD_INT 3
15367: PUSH
15368: LD_INT 5
15370: PUSH
15371: EMPTY
15372: LIST
15373: LIST
15374: LIST
15375: PUSH
15376: LD_OWVAR 67
15380: ARRAY
15381: ST_TO_ADDR
// vc_weapon = us_laser ;
15382: LD_ADDR_OWVAR 40
15386: PUSH
15387: LD_INT 9
15389: ST_TO_ADDR
// tmp = createvehicle ;
15390: LD_ADDR_VAR 0 1
15394: PUSH
15395: CALL_OW 45
15399: ST_TO_ADDR
// setdir ( tmp , 3 ) ;
15400: LD_VAR 0 1
15404: PPUSH
15405: LD_INT 3
15407: PPUSH
15408: CALL_OW 233
// placeunitarea ( tmp , alarriv , false ) ;
15412: LD_VAR 0 1
15416: PPUSH
15417: LD_INT 24
15419: PPUSH
15420: LD_INT 0
15422: PPUSH
15423: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
15427: LD_INT 1
15429: PPUSH
15430: LD_EXP 217
15434: PPUSH
15435: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
15439: CALL_OW 44
15443: PPUSH
15444: LD_VAR 0 1
15448: PPUSH
15449: CALL_OW 52
// end ; uc_nation = nation_russian ;
15453: LD_ADDR_OWVAR 21
15457: PUSH
15458: LD_INT 3
15460: ST_TO_ADDR
// vc_chassis = [ ru_medium_wheeled , ru_medium_wheeled , ru_heavy_wheeled ] [ difficulty ] ;
15461: LD_ADDR_OWVAR 37
15465: PUSH
15466: LD_INT 21
15468: PUSH
15469: LD_INT 21
15471: PUSH
15472: LD_INT 23
15474: PUSH
15475: EMPTY
15476: LIST
15477: LIST
15478: LIST
15479: PUSH
15480: LD_OWVAR 67
15484: ARRAY
15485: ST_TO_ADDR
// vc_weapon = ru_gatling_gun ;
15486: LD_ADDR_OWVAR 40
15490: PUSH
15491: LD_INT 43
15493: ST_TO_ADDR
// tmp = createvehicle ;
15494: LD_ADDR_VAR 0 1
15498: PUSH
15499: CALL_OW 45
15503: ST_TO_ADDR
// setdir ( tmp , 3 ) ;
15504: LD_VAR 0 1
15508: PPUSH
15509: LD_INT 3
15511: PPUSH
15512: CALL_OW 233
// placeunitarea ( tmp , alarriv , false ) ;
15516: LD_VAR 0 1
15520: PPUSH
15521: LD_INT 24
15523: PPUSH
15524: LD_INT 0
15526: PPUSH
15527: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
15531: LD_INT 1
15533: PPUSH
15534: LD_EXP 217
15538: PPUSH
15539: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
15543: CALL_OW 44
15547: PPUSH
15548: LD_VAR 0 1
15552: PPUSH
15553: CALL_OW 52
// if difficulty > 1 then
15557: LD_OWVAR 67
15561: PUSH
15562: LD_INT 1
15564: GREATER
15565: IFFALSE 15646
// begin vc_chassis = ru_medium_wheeled ;
15567: LD_ADDR_OWVAR 37
15571: PUSH
15572: LD_INT 21
15574: ST_TO_ADDR
// vc_weapon = ru_gatling_gun ;
15575: LD_ADDR_OWVAR 40
15579: PUSH
15580: LD_INT 43
15582: ST_TO_ADDR
// tmp = createvehicle ;
15583: LD_ADDR_VAR 0 1
15587: PUSH
15588: CALL_OW 45
15592: ST_TO_ADDR
// setdir ( tmp , 3 ) ;
15593: LD_VAR 0 1
15597: PPUSH
15598: LD_INT 3
15600: PPUSH
15601: CALL_OW 233
// placeunitarea ( tmp , alarriv , false ) ;
15605: LD_VAR 0 1
15609: PPUSH
15610: LD_INT 24
15612: PPUSH
15613: LD_INT 0
15615: PPUSH
15616: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
15620: LD_INT 1
15622: PPUSH
15623: LD_EXP 217
15627: PPUSH
15628: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
15632: CALL_OW 44
15636: PPUSH
15637: LD_VAR 0 1
15641: PPUSH
15642: CALL_OW 52
// end ; vc_chassis = [ ru_heavy_wheeled , ru_heavy_wheeled , ru_heavy_tracked ] [ difficulty ] ;
15646: LD_ADDR_OWVAR 37
15650: PUSH
15651: LD_INT 23
15653: PUSH
15654: LD_INT 23
15656: PUSH
15657: LD_INT 24
15659: PUSH
15660: EMPTY
15661: LIST
15662: LIST
15663: LIST
15664: PUSH
15665: LD_OWVAR 67
15669: ARRAY
15670: ST_TO_ADDR
// vc_weapon = ru_rocket ;
15671: LD_ADDR_OWVAR 40
15675: PUSH
15676: LD_INT 47
15678: ST_TO_ADDR
// tmp = createvehicle ;
15679: LD_ADDR_VAR 0 1
15683: PUSH
15684: CALL_OW 45
15688: ST_TO_ADDR
// setdir ( tmp , 3 ) ;
15689: LD_VAR 0 1
15693: PPUSH
15694: LD_INT 3
15696: PPUSH
15697: CALL_OW 233
// placeunitarea ( tmp , alarriv , false ) ;
15701: LD_VAR 0 1
15705: PPUSH
15706: LD_INT 24
15708: PPUSH
15709: LD_INT 0
15711: PPUSH
15712: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
15716: LD_INT 1
15718: PPUSH
15719: LD_EXP 217
15723: PPUSH
15724: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
15728: CALL_OW 44
15732: PPUSH
15733: LD_VAR 0 1
15737: PPUSH
15738: CALL_OW 52
// if difficulty > 1 then
15742: LD_OWVAR 67
15746: PUSH
15747: LD_INT 1
15749: GREATER
15750: IFFALSE 15831
// begin vc_chassis = ru_heavy_wheeled ;
15752: LD_ADDR_OWVAR 37
15756: PUSH
15757: LD_INT 23
15759: ST_TO_ADDR
// vc_weapon = ru_rocket ;
15760: LD_ADDR_OWVAR 40
15764: PUSH
15765: LD_INT 47
15767: ST_TO_ADDR
// tmp = createvehicle ;
15768: LD_ADDR_VAR 0 1
15772: PUSH
15773: CALL_OW 45
15777: ST_TO_ADDR
// setdir ( tmp , 3 ) ;
15778: LD_VAR 0 1
15782: PPUSH
15783: LD_INT 3
15785: PPUSH
15786: CALL_OW 233
// placeunitarea ( tmp , alarriv , false ) ;
15790: LD_VAR 0 1
15794: PPUSH
15795: LD_INT 24
15797: PPUSH
15798: LD_INT 0
15800: PPUSH
15801: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
15805: LD_INT 1
15807: PPUSH
15808: LD_EXP 217
15812: PPUSH
15813: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
15817: CALL_OW 44
15821: PPUSH
15822: LD_VAR 0 1
15826: PPUSH
15827: CALL_OW 52
// end ; tmp1 = [ ] ;
15831: LD_ADDR_VAR 0 2
15835: PUSH
15836: EMPTY
15837: ST_TO_ADDR
// vc_chassis = [ ru_heavy_wheeled , ru_heavy_tracked , ru_heavy_tracked ] [ difficulty ] ;
15838: LD_ADDR_OWVAR 37
15842: PUSH
15843: LD_INT 23
15845: PUSH
15846: LD_INT 24
15848: PUSH
15849: LD_INT 24
15851: PUSH
15852: EMPTY
15853: LIST
15854: LIST
15855: LIST
15856: PUSH
15857: LD_OWVAR 67
15861: ARRAY
15862: ST_TO_ADDR
// vc_weapon = ru_rocket ;
15863: LD_ADDR_OWVAR 40
15867: PUSH
15868: LD_INT 47
15870: ST_TO_ADDR
// tmp = createvehicle ;
15871: LD_ADDR_VAR 0 1
15875: PUSH
15876: CALL_OW 45
15880: ST_TO_ADDR
// placeunitarea ( tmp , albaseinner , false ) ;
15881: LD_VAR 0 1
15885: PPUSH
15886: LD_INT 25
15888: PPUSH
15889: LD_INT 0
15891: PPUSH
15892: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
15896: LD_INT 1
15898: PPUSH
15899: LD_EXP 217
15903: PPUSH
15904: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
15908: CALL_OW 44
15912: PPUSH
15913: LD_VAR 0 1
15917: PPUSH
15918: CALL_OW 52
// tmp1 = tmp1 ^ [ tmp ] ;
15922: LD_ADDR_VAR 0 2
15926: PUSH
15927: LD_VAR 0 2
15931: PUSH
15932: LD_VAR 0 1
15936: PUSH
15937: EMPTY
15938: LIST
15939: ADD
15940: ST_TO_ADDR
// vc_chassis = [ ru_medium_wheeled , ru_medium_wheeled , ru_heavy_wheeled ] [ difficulty ] ;
15941: LD_ADDR_OWVAR 37
15945: PUSH
15946: LD_INT 21
15948: PUSH
15949: LD_INT 21
15951: PUSH
15952: LD_INT 23
15954: PUSH
15955: EMPTY
15956: LIST
15957: LIST
15958: LIST
15959: PUSH
15960: LD_OWVAR 67
15964: ARRAY
15965: ST_TO_ADDR
// vc_weapon = ru_gatling_gun ;
15966: LD_ADDR_OWVAR 40
15970: PUSH
15971: LD_INT 43
15973: ST_TO_ADDR
// tmp = createvehicle ;
15974: LD_ADDR_VAR 0 1
15978: PUSH
15979: CALL_OW 45
15983: ST_TO_ADDR
// placeunitarea ( tmp , albaseinner , false ) ;
15984: LD_VAR 0 1
15988: PPUSH
15989: LD_INT 25
15991: PPUSH
15992: LD_INT 0
15994: PPUSH
15995: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
15999: LD_INT 1
16001: PPUSH
16002: LD_EXP 217
16006: PPUSH
16007: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
16011: CALL_OW 44
16015: PPUSH
16016: LD_VAR 0 1
16020: PPUSH
16021: CALL_OW 52
// tmp1 = tmp1 ^ [ tmp ] ;
16025: LD_ADDR_VAR 0 2
16029: PUSH
16030: LD_VAR 0 2
16034: PUSH
16035: LD_VAR 0 1
16039: PUSH
16040: EMPTY
16041: LIST
16042: ADD
16043: ST_TO_ADDR
// uc_nation = nation_american ;
16044: LD_ADDR_OWVAR 21
16048: PUSH
16049: LD_INT 1
16051: ST_TO_ADDR
// vc_chassis = [ us_medium_tracked , us_medium_tracked , us_heavy_tracked ] [ difficulty ] ;
16052: LD_ADDR_OWVAR 37
16056: PUSH
16057: LD_INT 3
16059: PUSH
16060: LD_INT 3
16062: PUSH
16063: LD_INT 4
16065: PUSH
16066: EMPTY
16067: LIST
16068: LIST
16069: LIST
16070: PUSH
16071: LD_OWVAR 67
16075: ARRAY
16076: ST_TO_ADDR
// vc_weapon = us_rocket_launcher ;
16077: LD_ADDR_OWVAR 40
16081: PUSH
16082: LD_INT 7
16084: ST_TO_ADDR
// tmp = createvehicle ;
16085: LD_ADDR_VAR 0 1
16089: PUSH
16090: CALL_OW 45
16094: ST_TO_ADDR
// placeunitarea ( tmp , albaseinner , false ) ;
16095: LD_VAR 0 1
16099: PPUSH
16100: LD_INT 25
16102: PPUSH
16103: LD_INT 0
16105: PPUSH
16106: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
16110: LD_INT 1
16112: PPUSH
16113: LD_EXP 217
16117: PPUSH
16118: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
16122: CALL_OW 44
16126: PPUSH
16127: LD_VAR 0 1
16131: PPUSH
16132: CALL_OW 52
// tmp1 = tmp1 ^ [ tmp ] ;
16136: LD_ADDR_VAR 0 2
16140: PUSH
16141: LD_VAR 0 2
16145: PUSH
16146: LD_VAR 0 1
16150: PUSH
16151: EMPTY
16152: LIST
16153: ADD
16154: ST_TO_ADDR
// vc_chassis = [ us_medium_tracked , us_medium_tracked , us_heavy_tracked ] [ difficulty ] ;
16155: LD_ADDR_OWVAR 37
16159: PUSH
16160: LD_INT 3
16162: PUSH
16163: LD_INT 3
16165: PUSH
16166: LD_INT 4
16168: PUSH
16169: EMPTY
16170: LIST
16171: LIST
16172: LIST
16173: PUSH
16174: LD_OWVAR 67
16178: ARRAY
16179: ST_TO_ADDR
// vc_weapon = us_laser ;
16180: LD_ADDR_OWVAR 40
16184: PUSH
16185: LD_INT 9
16187: ST_TO_ADDR
// tmp = createvehicle ;
16188: LD_ADDR_VAR 0 1
16192: PUSH
16193: CALL_OW 45
16197: ST_TO_ADDR
// placeunitarea ( tmp , albaseinner , false ) ;
16198: LD_VAR 0 1
16202: PPUSH
16203: LD_INT 25
16205: PPUSH
16206: LD_INT 0
16208: PPUSH
16209: CALL_OW 49
// preparemechanic ( sex_male , al_def_skill ) ;
16213: LD_INT 1
16215: PPUSH
16216: LD_EXP 217
16220: PPUSH
16221: CALL_OW 383
// placehumaninunit ( createhuman , tmp ) ;
16225: CALL_OW 44
16229: PPUSH
16230: LD_VAR 0 1
16234: PPUSH
16235: CALL_OW 52
// tmp1 = tmp1 ^ [ tmp ] ;
16239: LD_ADDR_VAR 0 2
16243: PUSH
16244: LD_VAR 0 2
16248: PUSH
16249: LD_VAR 0 1
16253: PUSH
16254: EMPTY
16255: LIST
16256: ADD
16257: ST_TO_ADDR
// commoveunit ( tmp1 , altelp00 ) ;
16258: LD_VAR 0 2
16262: PPUSH
16263: LD_INT 48
16265: PPUSH
16266: CALL_OW 112
// tmp = filterunitsinarea ( alarriv , [ [ f_side , al ] , [ f_type , unit_vehicle ] ] ) ;
16270: LD_ADDR_VAR 0 1
16274: PUSH
16275: LD_INT 24
16277: PPUSH
16278: LD_INT 22
16280: PUSH
16281: LD_EXP 3
16285: PUSH
16286: EMPTY
16287: LIST
16288: LIST
16289: PUSH
16290: LD_INT 21
16292: PUSH
16293: LD_INT 2
16295: PUSH
16296: EMPTY
16297: LIST
16298: LIST
16299: PUSH
16300: EMPTY
16301: LIST
16302: LIST
16303: PPUSH
16304: CALL_OW 70
16308: ST_TO_ADDR
// utocnici = tmp ^ tmp1 ;
16309: LD_ADDR_LOC 16
16313: PUSH
16314: LD_VAR 0 1
16318: PUSH
16319: LD_VAR 0 2
16323: ADD
16324: ST_TO_ADDR
// ridici = [ ] ;
16325: LD_ADDR_LOC 17
16329: PUSH
16330: EMPTY
16331: ST_TO_ADDR
// for tmp2 in utocnici do
16332: LD_ADDR_VAR 0 3
16336: PUSH
16337: LD_LOC 16
16341: PUSH
16342: FOR_IN
16343: IFFALSE 16371
// ridici = ridici ^ [ isdrivenby ( tmp2 ) ] ;
16345: LD_ADDR_LOC 17
16349: PUSH
16350: LD_LOC 17
16354: PUSH
16355: LD_VAR 0 3
16359: PPUSH
16360: CALL_OW 311
16364: PUSH
16365: EMPTY
16366: LIST
16367: ADD
16368: ST_TO_ADDR
16369: GO 16342
16371: POP
16372: POP
// telep = [ ] ;
16373: LD_ADDR_LOC 18
16377: PUSH
16378: EMPTY
16379: ST_TO_ADDR
// if not regid then
16380: LD_EXP 219
16384: NOT
16385: IFFALSE 16430
// regid = mcregistry ( al , [ [ mc_reg_area_to_guard , target ] , [ mc_reg_refresh_time , 11 ] , mc_reg_ignore_fog ] ) ;
16387: LD_ADDR_EXP 219
16391: PUSH
16392: LD_EXP 3
16396: PPUSH
16397: LD_INT 2
16399: PUSH
16400: LD_INT 10
16402: PUSH
16403: EMPTY
16404: LIST
16405: LIST
16406: PUSH
16407: LD_INT 1
16409: PUSH
16410: LD_INT 11
16412: PUSH
16413: EMPTY
16414: LIST
16415: LIST
16416: PUSH
16417: LD_INT 7
16419: PUSH
16420: EMPTY
16421: LIST
16422: LIST
16423: LIST
16424: PPUSH
16425: CALL_OW 399
16429: ST_TO_ADDR
// attida = mcattack ( 100 , regid , tmp , [ mc_no_stop ] ) ;
16430: LD_ADDR_LOC 14
16434: PUSH
16435: LD_INT 100
16437: PPUSH
16438: LD_EXP 219
16442: PPUSH
16443: LD_VAR 0 1
16447: PPUSH
16448: LD_INT 10
16450: PUSH
16451: EMPTY
16452: LIST
16453: PPUSH
16454: CALL_OW 402
16458: ST_TO_ADDR
// while ( 0 + ( tmp1 diff filterunitsinarea ( albaseinner , [ [ f_side , al ] , [ f_type , unit_vehicle ] ] ) ) ) < ( 0 + tmp1 ) do
16459: LD_INT 0
16461: PUSH
16462: LD_VAR 0 2
16466: PUSH
16467: LD_INT 25
16469: PPUSH
16470: LD_INT 22
16472: PUSH
16473: LD_EXP 3
16477: PUSH
16478: EMPTY
16479: LIST
16480: LIST
16481: PUSH
16482: LD_INT 21
16484: PUSH
16485: LD_INT 2
16487: PUSH
16488: EMPTY
16489: LIST
16490: LIST
16491: PUSH
16492: EMPTY
16493: LIST
16494: LIST
16495: PPUSH
16496: CALL_OW 70
16500: DIFF
16501: PLUS
16502: PUSH
16503: LD_INT 0
16505: PUSH
16506: LD_VAR 0 2
16510: PLUS
16511: LESS
16512: IFFALSE 16523
// wait ( 0 0$1 ) ;
16514: LD_INT 35
16516: PPUSH
16517: CALL_OW 67
16521: GO 16459
// attidb = mcattack ( 100 , regid , tmp1 , [ mc_no_stop ] ) ;
16523: LD_ADDR_LOC 15
16527: PUSH
16528: LD_INT 100
16530: PPUSH
16531: LD_EXP 219
16535: PPUSH
16536: LD_VAR 0 2
16540: PPUSH
16541: LD_INT 10
16543: PUSH
16544: EMPTY
16545: LIST
16546: PPUSH
16547: CALL_OW 402
16551: ST_TO_ADDR
// al_att = rand ( al_att_min , al_att_max ) ;
16552: LD_ADDR_EXP 216
16556: PUSH
16557: LD_EXP 205
16561: PPUSH
16562: LD_EXP 206
16566: PPUSH
16567: CALL_OW 12
16571: ST_TO_ADDR
// end ; enable ;
16572: ENABLE
// end ;
16573: PPOPN 3
16575: END
// on spontaneousteleported ( un ) do if un in utocnici then
16576: LD_VAR 0 1
16580: PUSH
16581: LD_LOC 16
16585: IN
16586: IFFALSE 16607
// telep = telep ^ [ un ] ;
16588: LD_ADDR_LOC 18
16592: PUSH
16593: LD_LOC 18
16597: PUSH
16598: LD_VAR 0 1
16602: PUSH
16603: EMPTY
16604: LIST
16605: ADD
16606: ST_TO_ADDR
16607: PPOPN 1
16609: END
// every 0 0$5 trigger telep do var tmp , tmp1 , tmp2 ;
16610: LD_LOC 18
16614: IFFALSE 16721
16616: GO 16618
16618: DISABLE
16619: LD_INT 0
16621: PPUSH
16622: PPUSH
16623: PPUSH
// begin wait ( 5 ) ;
16624: LD_INT 5
16626: PPUSH
16627: CALL_OW 67
// tmp2 = unitfilter ( ridici , [ [ f_outside ] ] ) ;
16631: LD_ADDR_VAR 0 3
16635: PUSH
16636: LD_LOC 17
16640: PPUSH
16641: LD_INT 56
16643: PUSH
16644: EMPTY
16645: LIST
16646: PUSH
16647: EMPTY
16648: LIST
16649: PPUSH
16650: CALL_OW 72
16654: ST_TO_ADDR
// for tmp in telep do
16655: LD_ADDR_VAR 0 1
16659: PUSH
16660: LD_LOC 18
16664: PUSH
16665: FOR_IN
16666: IFFALSE 16718
// begin tmp1 = nearestunittounit ( tmp2 , tmp ) ;
16668: LD_ADDR_VAR 0 2
16672: PUSH
16673: LD_VAR 0 3
16677: PPUSH
16678: LD_VAR 0 1
16682: PPUSH
16683: CALL_OW 74
16687: ST_TO_ADDR
// addcomrepairvehicle ( tmp1 , tmp ) ;
16688: LD_VAR 0 2
16692: PPUSH
16693: LD_VAR 0 1
16697: PPUSH
16698: CALL_OW 189
// addcomenterunit ( tmp1 , tmp ) ;
16702: LD_VAR 0 2
16706: PPUSH
16707: LD_VAR 0 1
16711: PPUSH
16712: CALL_OW 180
// end ;
16716: GO 16665
16718: POP
16719: POP
// enable ;
16720: ENABLE
// end ; end_of_file
16721: PPOPN 3
16723: END
// var lidi , ostatni , vehikly , masha ; export burlak , jmm , roth , powel , heike , farmer ; var titov , belkov , kuzmov , gnyevko , kozlov , kiril , kapitsova , petrosyan , scholtze , dolgov , kovalyuk , karamazov , petrovova , gleb , lipshchin , xavier , fadeev , gladkov , bystrov , oblukov ; export legdestr ; export function prepare_russians ; var tmp , tmp2 , tmp3 , na , veh , survivors4 ; begin
16724: LD_INT 0
16726: PPUSH
16727: PPUSH
16728: PPUSH
16729: PPUSH
16730: PPUSH
16731: PPUSH
16732: PPUSH
// centernowonxy ( 99 , 102 ) ;
16733: LD_INT 99
16735: PPUSH
16736: LD_INT 102
16738: PPUSH
16739: CALL_OW 86
// na = 0 ;
16743: LD_ADDR_VAR 0 5
16747: PUSH
16748: LD_INT 0
16750: ST_TO_ADDR
// uc_side = ru ;
16751: LD_ADDR_OWVAR 20
16755: PUSH
16756: LD_EXP 1
16760: ST_TO_ADDR
// if testcharacters ( Burlak ) then
16761: LD_STRING Burlak
16763: PPUSH
16764: CALL_OW 28
16768: IFFALSE 16806
// if checkcharacterset ( Burlak ) then
16770: LD_STRING Burlak
16772: PPUSH
16773: CALL_OW 29
16777: IFFALSE 16797
// burlak = createcharacterwithclass ( Burlak , class_engineer ) else
16779: LD_ADDR_EXP 233
16783: PUSH
16784: LD_STRING Burlak
16786: PPUSH
16787: LD_INT 2
16789: PPUSH
16790: CALL_OW 35
16794: ST_TO_ADDR
16795: GO 16804
// msg ( jakto ze Burlak je chciplej?! ) else
16797: LD_STRING jakto ze Burlak je chciplej?!
16799: PPUSH
16800: CALL_OW 100
16804: GO 16813
// msg ( neny Burlak ) ;
16806: LD_STRING neny Burlak
16808: PPUSH
16809: CALL_OW 100
// uc_side = al ;
16813: LD_ADDR_OWVAR 20
16817: PUSH
16818: LD_EXP 3
16822: ST_TO_ADDR
// if testvariable ( JMMKilled ) then
16823: LD_STRING JMMKilled
16825: PPUSH
16826: CALL_OW 27
16830: IFFALSE 16851
// tmp = loadvariable ( JMMKilled , - 1 ) else
16832: LD_ADDR_VAR 0 2
16836: PUSH
16837: LD_STRING JMMKilled
16839: PPUSH
16840: LD_INT 1
16842: NEG
16843: PPUSH
16844: CALL_OW 30
16848: ST_TO_ADDR
16849: GO 16864
// buildquery ( neny JMMKilled , [ OK ] ) ;
16851: LD_STRING neny JMMKilled
16853: PPUSH
16854: LD_STRING OK
16856: PUSH
16857: EMPTY
16858: LIST
16859: PPUSH
16860: CALL_OW 99
// if tmp then
16864: LD_VAR 0 2
16868: IFFALSE 16880
// jmm = 0 else
16870: LD_ADDR_EXP 234
16874: PUSH
16875: LD_INT 0
16877: ST_TO_ADDR
16878: GO 16940
// begin jmm = newcharacter ( Macmillan ) ;
16880: LD_ADDR_EXP 234
16884: PUSH
16885: LD_STRING Macmillan
16887: PPUSH
16888: CALL_OW 25
16892: ST_TO_ADDR
// if not jmm then
16893: LD_EXP 234
16897: NOT
16898: IFFALSE 16907
// msg ( neny Macmillan ) ;
16900: LD_STRING neny Macmillan
16902: PPUSH
16903: CALL_OW 100
// placeunitxyr ( jmm , 164 , 74 , 1 , false ) ;
16907: LD_EXP 234
16911: PPUSH
16912: LD_INT 164
16914: PPUSH
16915: LD_INT 74
16917: PPUSH
16918: LD_INT 1
16920: PPUSH
16921: LD_INT 0
16923: PPUSH
16924: CALL_OW 50
// comenterunit ( jmm , alware00 ) ;
16928: LD_EXP 234
16932: PPUSH
16933: LD_INT 25
16935: PPUSH
16936: CALL_OW 120
// end ; roth = newcharacter ( Roth ) ;
16940: LD_ADDR_EXP 235
16944: PUSH
16945: LD_STRING Roth
16947: PPUSH
16948: CALL_OW 25
16952: ST_TO_ADDR
// if not roth then
16953: LD_EXP 235
16957: NOT
16958: IFFALSE 16967
// msg ( neny Roth ) ;
16960: LD_STRING neny Roth
16962: PPUSH
16963: CALL_OW 100
// placeunitxyr ( roth , 161 , 54 , 1 , false ) ;
16967: LD_EXP 235
16971: PPUSH
16972: LD_INT 161
16974: PPUSH
16975: LD_INT 54
16977: PPUSH
16978: LD_INT 1
16980: PPUSH
16981: LD_INT 0
16983: PPUSH
16984: CALL_OW 50
// comenterunit ( roth , allab00 ) ;
16988: LD_EXP 235
16992: PPUSH
16993: LD_INT 40
16995: PPUSH
16996: CALL_OW 120
// uc_side = am ;
17000: LD_ADDR_OWVAR 20
17004: PUSH
17005: LD_EXP 2
17009: ST_TO_ADDR
// powel = newcharacter ( Powell ) ;
17010: LD_ADDR_EXP 236
17014: PUSH
17015: LD_STRING Powell
17017: PPUSH
17018: CALL_OW 25
17022: ST_TO_ADDR
// if not powel then
17023: LD_EXP 236
17027: NOT
17028: IFFALSE 17037
// msg ( neny Powell ) ;
17030: LD_STRING neny Powell
17032: PPUSH
17033: CALL_OW 100
// placeunitxyr ( powel , 86 , 8 , 1 , false ) ;
17037: LD_EXP 236
17041: PPUSH
17042: LD_INT 86
17044: PPUSH
17045: LD_INT 8
17047: PPUSH
17048: LD_INT 1
17050: PPUSH
17051: LD_INT 0
17053: PPUSH
17054: CALL_OW 50
// comenterunit ( powel , amware00 ) ;
17058: LD_EXP 236
17062: PPUSH
17063: LD_INT 5
17065: PPUSH
17066: CALL_OW 120
// uc_side = le ;
17070: LD_ADDR_OWVAR 20
17074: PUSH
17075: LD_EXP 4
17079: ST_TO_ADDR
// if testcharacters ( Heike ) then
17080: LD_STRING Heike
17082: PPUSH
17083: CALL_OW 28
17087: IFFALSE 17169
// if checkcharacterset ( Heike ) and not LoadVariable ( HeikeKilled , true ) then
17089: LD_STRING Heike
17091: PPUSH
17092: CALL_OW 29
17096: PUSH
17097: LD_STRING HeikeKilled
17099: PPUSH
17100: LD_INT 1
17102: PPUSH
17103: CALL_OW 30
17107: NOT
17108: AND
17109: IFFALSE 17159
// begin heike = createcharacter ( Heike ) ;
17111: LD_ADDR_EXP 237
17115: PUSH
17116: LD_STRING Heike
17118: PPUSH
17119: CALL_OW 34
17123: ST_TO_ADDR
// placeunitxyr ( heike , 152 , 133 , 1 , false ) ;
17124: LD_EXP 237
17128: PPUSH
17129: LD_INT 152
17131: PPUSH
17132: LD_INT 133
17134: PPUSH
17135: LD_INT 1
17137: PPUSH
17138: LD_INT 0
17140: PPUSH
17141: CALL_OW 50
// comenterunit ( heike , leware00 ) ;
17145: LD_EXP 237
17149: PPUSH
17150: LD_INT 51
17152: PPUSH
17153: CALL_OW 120
// end else
17157: GO 17167
// heike = 0 else
17159: LD_ADDR_EXP 237
17163: PUSH
17164: LD_INT 0
17166: ST_TO_ADDR
17167: GO 17176
// msg ( neny Heike ) ;
17169: LD_STRING neny Heike
17171: PPUSH
17172: CALL_OW 100
// if not heike then
17176: LD_EXP 237
17180: NOT
17181: IFFALSE 17268
// if testcharacters ( Farmer ) then
17183: LD_STRING Farmer
17185: PPUSH
17186: CALL_OW 28
17190: IFFALSE 17259
// if checkcharacterset ( Farmer ) then
17192: LD_STRING Farmer
17194: PPUSH
17195: CALL_OW 29
17199: IFFALSE 17249
// begin farmer = createcharacter ( Farmer ) ;
17201: LD_ADDR_EXP 238
17205: PUSH
17206: LD_STRING Farmer
17208: PPUSH
17209: CALL_OW 34
17213: ST_TO_ADDR
// placeunitxyr ( farmer , 152 , 133 , 1 , false ) ;
17214: LD_EXP 238
17218: PPUSH
17219: LD_INT 152
17221: PPUSH
17222: LD_INT 133
17224: PPUSH
17225: LD_INT 1
17227: PPUSH
17228: LD_INT 0
17230: PPUSH
17231: CALL_OW 50
// comenterunit ( farmer , leware00 ) ;
17235: LD_EXP 238
17239: PPUSH
17240: LD_INT 51
17242: PPUSH
17243: CALL_OW 120
// end else
17247: GO 17257
// farmer = 0 else
17249: LD_ADDR_EXP 238
17253: PUSH
17254: LD_INT 0
17256: ST_TO_ADDR
17257: GO 17266
// msg ( neny Farmer ) else
17259: LD_STRING neny Farmer
17261: PPUSH
17262: CALL_OW 100
17266: GO 17276
// farmer = 0 ;
17268: LD_ADDR_EXP 238
17272: PUSH
17273: LD_INT 0
17275: ST_TO_ADDR
// uc_side = ru ;
17276: LD_ADDR_OWVAR 20
17280: PUSH
17281: LD_EXP 1
17285: ST_TO_ADDR
// if testcharacters ( Titov ) then
17286: LD_STRING Titov
17288: PPUSH
17289: CALL_OW 28
17293: IFFALSE 17343
// if checkcharacterset ( Titov ) then
17295: LD_STRING Titov
17297: PPUSH
17298: CALL_OW 29
17302: IFFALSE 17319
// titov = createcharacter ( Titov ) else
17304: LD_ADDR_LOC 23
17308: PUSH
17309: LD_STRING Titov
17311: PPUSH
17312: CALL_OW 34
17316: ST_TO_ADDR
17317: GO 17341
// begin titov = 0 ;
17319: LD_ADDR_LOC 23
17323: PUSH
17324: LD_INT 0
17326: ST_TO_ADDR
// na = na + 1 ;
17327: LD_ADDR_VAR 0 5
17331: PUSH
17332: LD_VAR 0 5
17336: PUSH
17337: LD_INT 1
17339: PLUS
17340: ST_TO_ADDR
// end else
17341: GO 17350
// msg ( neny Titov ) ;
17343: LD_STRING neny Titov
17345: PPUSH
17346: CALL_OW 100
// if testcharacters ( Belkov ) then
17350: LD_STRING Belkov
17352: PPUSH
17353: CALL_OW 28
17357: IFFALSE 17407
// if checkcharacterset ( Belkov ) then
17359: LD_STRING Belkov
17361: PPUSH
17362: CALL_OW 29
17366: IFFALSE 17383
// belkov = createcharacter ( Belkov ) else
17368: LD_ADDR_LOC 24
17372: PUSH
17373: LD_STRING Belkov
17375: PPUSH
17376: CALL_OW 34
17380: ST_TO_ADDR
17381: GO 17405
// begin belkov = 0 ;
17383: LD_ADDR_LOC 24
17387: PUSH
17388: LD_INT 0
17390: ST_TO_ADDR
// na = na + 1 ;
17391: LD_ADDR_VAR 0 5
17395: PUSH
17396: LD_VAR 0 5
17400: PUSH
17401: LD_INT 1
17403: PLUS
17404: ST_TO_ADDR
// end else
17405: GO 17414
// msg ( neny Belkov ) ;
17407: LD_STRING neny Belkov
17409: PPUSH
17410: CALL_OW 100
// if testcharacters ( Kuzmov ) then
17414: LD_STRING Kuzmov
17416: PPUSH
17417: CALL_OW 28
17421: IFFALSE 17471
// if checkcharacterset ( Kuzmov ) then
17423: LD_STRING Kuzmov
17425: PPUSH
17426: CALL_OW 29
17430: IFFALSE 17447
// kuzmov = createcharacter ( Kuzmov ) else
17432: LD_ADDR_LOC 25
17436: PUSH
17437: LD_STRING Kuzmov
17439: PPUSH
17440: CALL_OW 34
17444: ST_TO_ADDR
17445: GO 17469
// begin kuzmov = 0 ;
17447: LD_ADDR_LOC 25
17451: PUSH
17452: LD_INT 0
17454: ST_TO_ADDR
// na = na + 1 ;
17455: LD_ADDR_VAR 0 5
17459: PUSH
17460: LD_VAR 0 5
17464: PUSH
17465: LD_INT 1
17467: PLUS
17468: ST_TO_ADDR
// end else
17469: GO 17478
// msg ( neny Kuzmov ) ;
17471: LD_STRING neny Kuzmov
17473: PPUSH
17474: CALL_OW 100
// if testcharacters ( Gnyevko ) then
17478: LD_STRING Gnyevko
17480: PPUSH
17481: CALL_OW 28
17485: IFFALSE 17535
// if checkcharacterset ( Gnyevko ) then
17487: LD_STRING Gnyevko
17489: PPUSH
17490: CALL_OW 29
17494: IFFALSE 17511
// gnyevko = createcharacter ( Gnyevko ) else
17496: LD_ADDR_LOC 26
17500: PUSH
17501: LD_STRING Gnyevko
17503: PPUSH
17504: CALL_OW 34
17508: ST_TO_ADDR
17509: GO 17533
// begin gnyevko = 0 ;
17511: LD_ADDR_LOC 26
17515: PUSH
17516: LD_INT 0
17518: ST_TO_ADDR
// na = na + 1 ;
17519: LD_ADDR_VAR 0 5
17523: PUSH
17524: LD_VAR 0 5
17528: PUSH
17529: LD_INT 1
17531: PLUS
17532: ST_TO_ADDR
// end else
17533: GO 17542
// msg ( neny Gnyevko ) ;
17535: LD_STRING neny Gnyevko
17537: PPUSH
17538: CALL_OW 100
// if testcharacters ( Kozlov ) then
17542: LD_STRING Kozlov
17544: PPUSH
17545: CALL_OW 28
17549: IFFALSE 17599
// if checkcharacterset ( Kozlov ) then
17551: LD_STRING Kozlov
17553: PPUSH
17554: CALL_OW 29
17558: IFFALSE 17575
// kozlov = createcharacter ( Kozlov ) else
17560: LD_ADDR_LOC 27
17564: PUSH
17565: LD_STRING Kozlov
17567: PPUSH
17568: CALL_OW 34
17572: ST_TO_ADDR
17573: GO 17597
// begin kozlov = 0 ;
17575: LD_ADDR_LOC 27
17579: PUSH
17580: LD_INT 0
17582: ST_TO_ADDR
// na = na + 1 ;
17583: LD_ADDR_VAR 0 5
17587: PUSH
17588: LD_VAR 0 5
17592: PUSH
17593: LD_INT 1
17595: PLUS
17596: ST_TO_ADDR
// end else
17597: GO 17606
// msg ( neny Kozlov ) ;
17599: LD_STRING neny Kozlov
17601: PPUSH
17602: CALL_OW 100
// if testcharacters ( Kirilenkova ) then
17606: LD_STRING Kirilenkova
17608: PPUSH
17609: CALL_OW 28
17613: IFFALSE 17663
// if checkcharacterset ( Kirilenkova ) then
17615: LD_STRING Kirilenkova
17617: PPUSH
17618: CALL_OW 29
17622: IFFALSE 17639
// kiril = createcharacter ( Kirilenkova ) else
17624: LD_ADDR_LOC 28
17628: PUSH
17629: LD_STRING Kirilenkova
17631: PPUSH
17632: CALL_OW 34
17636: ST_TO_ADDR
17637: GO 17661
// begin kiril = 0 ;
17639: LD_ADDR_LOC 28
17643: PUSH
17644: LD_INT 0
17646: ST_TO_ADDR
// na = na + 1 ;
17647: LD_ADDR_VAR 0 5
17651: PUSH
17652: LD_VAR 0 5
17656: PUSH
17657: LD_INT 1
17659: PLUS
17660: ST_TO_ADDR
// end else
17661: GO 17670
// msg ( neny Kirilenkova ) ;
17663: LD_STRING neny Kirilenkova
17665: PPUSH
17666: CALL_OW 100
// if testcharacters ( Kapitsova ) then
17670: LD_STRING Kapitsova
17672: PPUSH
17673: CALL_OW 28
17677: IFFALSE 17727
// if checkcharacterset ( Kapitsova ) then
17679: LD_STRING Kapitsova
17681: PPUSH
17682: CALL_OW 29
17686: IFFALSE 17703
// kapitsova = createcharacter ( Kapitsova ) else
17688: LD_ADDR_LOC 29
17692: PUSH
17693: LD_STRING Kapitsova
17695: PPUSH
17696: CALL_OW 34
17700: ST_TO_ADDR
17701: GO 17725
// begin kapitsova = 0 ;
17703: LD_ADDR_LOC 29
17707: PUSH
17708: LD_INT 0
17710: ST_TO_ADDR
// na = na + 1 ;
17711: LD_ADDR_VAR 0 5
17715: PUSH
17716: LD_VAR 0 5
17720: PUSH
17721: LD_INT 1
17723: PLUS
17724: ST_TO_ADDR
// end else
17725: GO 17734
// msg ( neny Kapitsova ) ;
17727: LD_STRING neny Kapitsova
17729: PPUSH
17730: CALL_OW 100
// if testcharacters ( Petrosyan ) then
17734: LD_STRING Petrosyan
17736: PPUSH
17737: CALL_OW 28
17741: IFFALSE 17791
// if checkcharacterset ( Petrosyan ) then
17743: LD_STRING Petrosyan
17745: PPUSH
17746: CALL_OW 29
17750: IFFALSE 17767
// petrosyan = createcharacter ( Petrosyan ) else
17752: LD_ADDR_LOC 30
17756: PUSH
17757: LD_STRING Petrosyan
17759: PPUSH
17760: CALL_OW 34
17764: ST_TO_ADDR
17765: GO 17789
// begin petrosyan = 0 ;
17767: LD_ADDR_LOC 30
17771: PUSH
17772: LD_INT 0
17774: ST_TO_ADDR
// na = na + 1 ;
17775: LD_ADDR_VAR 0 5
17779: PUSH
17780: LD_VAR 0 5
17784: PUSH
17785: LD_INT 1
17787: PLUS
17788: ST_TO_ADDR
// end else
17789: GO 17798
// msg ( neny Petrosyan ) ;
17791: LD_STRING neny Petrosyan
17793: PPUSH
17794: CALL_OW 100
// if testcharacters ( Scholtze ) then
17798: LD_STRING Scholtze
17800: PPUSH
17801: CALL_OW 28
17805: IFFALSE 17855
// if checkcharacterset ( Scholtze ) then
17807: LD_STRING Scholtze
17809: PPUSH
17810: CALL_OW 29
17814: IFFALSE 17831
// scholtze = createcharacter ( Scholtze ) else
17816: LD_ADDR_LOC 31
17820: PUSH
17821: LD_STRING Scholtze
17823: PPUSH
17824: CALL_OW 34
17828: ST_TO_ADDR
17829: GO 17853
// begin scholtze = 0 ;
17831: LD_ADDR_LOC 31
17835: PUSH
17836: LD_INT 0
17838: ST_TO_ADDR
// na = na + 1 ;
17839: LD_ADDR_VAR 0 5
17843: PUSH
17844: LD_VAR 0 5
17848: PUSH
17849: LD_INT 1
17851: PLUS
17852: ST_TO_ADDR
// end else
17853: GO 17862
// msg ( neny Scholtze ) ;
17855: LD_STRING neny Scholtze
17857: PPUSH
17858: CALL_OW 100
// if testcharacters ( Dolgov ) then
17862: LD_STRING Dolgov
17864: PPUSH
17865: CALL_OW 28
17869: IFFALSE 17919
// if checkcharacterset ( Dolgov ) then
17871: LD_STRING Dolgov
17873: PPUSH
17874: CALL_OW 29
17878: IFFALSE 17895
// dolgov = createcharacter ( Dolgov ) else
17880: LD_ADDR_LOC 32
17884: PUSH
17885: LD_STRING Dolgov
17887: PPUSH
17888: CALL_OW 34
17892: ST_TO_ADDR
17893: GO 17917
// begin dolgov = 0 ;
17895: LD_ADDR_LOC 32
17899: PUSH
17900: LD_INT 0
17902: ST_TO_ADDR
// na = na + 1 ;
17903: LD_ADDR_VAR 0 5
17907: PUSH
17908: LD_VAR 0 5
17912: PUSH
17913: LD_INT 1
17915: PLUS
17916: ST_TO_ADDR
// end else
17917: GO 17926
// msg ( neny Dolgov ) ;
17919: LD_STRING neny Dolgov
17921: PPUSH
17922: CALL_OW 100
// if testcharacters ( Kovalyuk ) then
17926: LD_STRING Kovalyuk
17928: PPUSH
17929: CALL_OW 28
17933: IFFALSE 17983
// if checkcharacterset ( Kovalyuk ) then
17935: LD_STRING Kovalyuk
17937: PPUSH
17938: CALL_OW 29
17942: IFFALSE 17959
// kovalyuk = createcharacter ( Kovalyuk ) else
17944: LD_ADDR_LOC 33
17948: PUSH
17949: LD_STRING Kovalyuk
17951: PPUSH
17952: CALL_OW 34
17956: ST_TO_ADDR
17957: GO 17981
// begin kovalyuk = 0 ;
17959: LD_ADDR_LOC 33
17963: PUSH
17964: LD_INT 0
17966: ST_TO_ADDR
// na = na + 1 ;
17967: LD_ADDR_VAR 0 5
17971: PUSH
17972: LD_VAR 0 5
17976: PUSH
17977: LD_INT 1
17979: PLUS
17980: ST_TO_ADDR
// end else
17981: GO 17990
// msg ( neny Kovalyuk ) ;
17983: LD_STRING neny Kovalyuk
17985: PPUSH
17986: CALL_OW 100
// if testcharacters ( Karamazov ) then
17990: LD_STRING Karamazov
17992: PPUSH
17993: CALL_OW 28
17997: IFFALSE 18047
// if checkcharacterset ( Karamazov ) then
17999: LD_STRING Karamazov
18001: PPUSH
18002: CALL_OW 29
18006: IFFALSE 18023
// karamazov = createcharacter ( Karamazov ) else
18008: LD_ADDR_LOC 34
18012: PUSH
18013: LD_STRING Karamazov
18015: PPUSH
18016: CALL_OW 34
18020: ST_TO_ADDR
18021: GO 18045
// begin karamazov = 0 ;
18023: LD_ADDR_LOC 34
18027: PUSH
18028: LD_INT 0
18030: ST_TO_ADDR
// na = na + 1 ;
18031: LD_ADDR_VAR 0 5
18035: PUSH
18036: LD_VAR 0 5
18040: PUSH
18041: LD_INT 1
18043: PLUS
18044: ST_TO_ADDR
// end else
18045: GO 18054
// msg ( neny Karamazov ) ;
18047: LD_STRING neny Karamazov
18049: PPUSH
18050: CALL_OW 100
// if testcharacters ( Petrovova ) then
18054: LD_STRING Petrovova
18056: PPUSH
18057: CALL_OW 28
18061: IFFALSE 18111
// if checkcharacterset ( Petrovova ) then
18063: LD_STRING Petrovova
18065: PPUSH
18066: CALL_OW 29
18070: IFFALSE 18087
// petrovova = createcharacter ( Petrovova ) else
18072: LD_ADDR_LOC 35
18076: PUSH
18077: LD_STRING Petrovova
18079: PPUSH
18080: CALL_OW 34
18084: ST_TO_ADDR
18085: GO 18109
// begin petrovova = 0 ;
18087: LD_ADDR_LOC 35
18091: PUSH
18092: LD_INT 0
18094: ST_TO_ADDR
// na = na + 1 ;
18095: LD_ADDR_VAR 0 5
18099: PUSH
18100: LD_VAR 0 5
18104: PUSH
18105: LD_INT 1
18107: PLUS
18108: ST_TO_ADDR
// end else
18109: GO 18118
// msg ( neny Petrovova ) ;
18111: LD_STRING neny Petrovova
18113: PPUSH
18114: CALL_OW 100
// if testcharacters ( Gleb ) then
18118: LD_STRING Gleb
18120: PPUSH
18121: CALL_OW 28
18125: IFFALSE 18175
// if checkcharacterset ( Gleb ) then
18127: LD_STRING Gleb
18129: PPUSH
18130: CALL_OW 29
18134: IFFALSE 18151
// gleb = createcharacter ( Gleb ) else
18136: LD_ADDR_LOC 36
18140: PUSH
18141: LD_STRING Gleb
18143: PPUSH
18144: CALL_OW 34
18148: ST_TO_ADDR
18149: GO 18173
// begin gleb = 0 ;
18151: LD_ADDR_LOC 36
18155: PUSH
18156: LD_INT 0
18158: ST_TO_ADDR
// na = na + 1 ;
18159: LD_ADDR_VAR 0 5
18163: PUSH
18164: LD_VAR 0 5
18168: PUSH
18169: LD_INT 1
18171: PLUS
18172: ST_TO_ADDR
// end else
18173: GO 18182
// msg ( neny Gleb ) ;
18175: LD_STRING neny Gleb
18177: PPUSH
18178: CALL_OW 100
// if testcharacters ( Lipshchin ) then
18182: LD_STRING Lipshchin
18184: PPUSH
18185: CALL_OW 28
18189: IFFALSE 18239
// if checkcharacterset ( Lipshchin ) then
18191: LD_STRING Lipshchin
18193: PPUSH
18194: CALL_OW 29
18198: IFFALSE 18215
// lipshchin = createcharacter ( Lipshchin ) else
18200: LD_ADDR_LOC 37
18204: PUSH
18205: LD_STRING Lipshchin
18207: PPUSH
18208: CALL_OW 34
18212: ST_TO_ADDR
18213: GO 18237
// begin lipshchin = 0 ;
18215: LD_ADDR_LOC 37
18219: PUSH
18220: LD_INT 0
18222: ST_TO_ADDR
// na = na + 1 ;
18223: LD_ADDR_VAR 0 5
18227: PUSH
18228: LD_VAR 0 5
18232: PUSH
18233: LD_INT 1
18235: PLUS
18236: ST_TO_ADDR
// end else
18237: GO 18246
// msg ( neny Lipshchin ) ;
18239: LD_STRING neny Lipshchin
18241: PPUSH
18242: CALL_OW 100
// if testcharacters ( Xavier ) then
18246: LD_STRING Xavier
18248: PPUSH
18249: CALL_OW 28
18253: IFFALSE 18303
// if checkcharacterset ( Xavier ) then
18255: LD_STRING Xavier
18257: PPUSH
18258: CALL_OW 29
18262: IFFALSE 18279
// xavier = createcharacter ( Xavier ) else
18264: LD_ADDR_LOC 38
18268: PUSH
18269: LD_STRING Xavier
18271: PPUSH
18272: CALL_OW 34
18276: ST_TO_ADDR
18277: GO 18301
// begin xavier = 0 ;
18279: LD_ADDR_LOC 38
18283: PUSH
18284: LD_INT 0
18286: ST_TO_ADDR
// na = na + 1 ;
18287: LD_ADDR_VAR 0 5
18291: PUSH
18292: LD_VAR 0 5
18296: PUSH
18297: LD_INT 1
18299: PLUS
18300: ST_TO_ADDR
// end else
18301: GO 18310
// msg ( neny Xavier ) ;
18303: LD_STRING neny Xavier
18305: PPUSH
18306: CALL_OW 100
// if testcharacters ( Fadeev ) then
18310: LD_STRING Fadeev
18312: PPUSH
18313: CALL_OW 28
18317: IFFALSE 18367
// if checkcharacterset ( Fadeev ) then
18319: LD_STRING Fadeev
18321: PPUSH
18322: CALL_OW 29
18326: IFFALSE 18343
// fadeev = createcharacter ( Fadeev ) else
18328: LD_ADDR_LOC 39
18332: PUSH
18333: LD_STRING Fadeev
18335: PPUSH
18336: CALL_OW 34
18340: ST_TO_ADDR
18341: GO 18365
// begin fadeev = 0 ;
18343: LD_ADDR_LOC 39
18347: PUSH
18348: LD_INT 0
18350: ST_TO_ADDR
// na = na + 1 ;
18351: LD_ADDR_VAR 0 5
18355: PUSH
18356: LD_VAR 0 5
18360: PUSH
18361: LD_INT 1
18363: PLUS
18364: ST_TO_ADDR
// end else
18365: GO 18374
// msg ( neny Fadeev ) ;
18367: LD_STRING neny Fadeev
18369: PPUSH
18370: CALL_OW 100
// if testcharacters ( Gladkov ) then
18374: LD_STRING Gladkov
18376: PPUSH
18377: CALL_OW 28
18381: IFFALSE 18431
// if checkcharacterset ( Gladkov ) then
18383: LD_STRING Gladkov
18385: PPUSH
18386: CALL_OW 29
18390: IFFALSE 18407
// gladkov = createcharacter ( Gladkov ) else
18392: LD_ADDR_LOC 40
18396: PUSH
18397: LD_STRING Gladkov
18399: PPUSH
18400: CALL_OW 34
18404: ST_TO_ADDR
18405: GO 18429
// begin gladkov = 0 ;
18407: LD_ADDR_LOC 40
18411: PUSH
18412: LD_INT 0
18414: ST_TO_ADDR
// na = na + 1 ;
18415: LD_ADDR_VAR 0 5
18419: PUSH
18420: LD_VAR 0 5
18424: PUSH
18425: LD_INT 1
18427: PLUS
18428: ST_TO_ADDR
// end else
18429: GO 18438
// msg ( neny Gladkov ) ;
18431: LD_STRING neny Gladkov
18433: PPUSH
18434: CALL_OW 100
// if testcharacters ( Bystrov ) then
18438: LD_STRING Bystrov
18440: PPUSH
18441: CALL_OW 28
18445: IFFALSE 18495
// if checkcharacterset ( Bystrov ) then
18447: LD_STRING Bystrov
18449: PPUSH
18450: CALL_OW 29
18454: IFFALSE 18471
// bystrov = createcharacter ( Bystrov ) else
18456: LD_ADDR_LOC 41
18460: PUSH
18461: LD_STRING Bystrov
18463: PPUSH
18464: CALL_OW 34
18468: ST_TO_ADDR
18469: GO 18493
// begin bystrov = 0 ;
18471: LD_ADDR_LOC 41
18475: PUSH
18476: LD_INT 0
18478: ST_TO_ADDR
// na = na + 1 ;
18479: LD_ADDR_VAR 0 5
18483: PUSH
18484: LD_VAR 0 5
18488: PUSH
18489: LD_INT 1
18491: PLUS
18492: ST_TO_ADDR
// end else
18493: GO 18502
// msg ( neny Bystrov ) ;
18495: LD_STRING neny Bystrov
18497: PPUSH
18498: CALL_OW 100
// if testcharacters ( Oblukov ) then
18502: LD_STRING Oblukov
18504: PPUSH
18505: CALL_OW 28
18509: IFFALSE 18559
// if checkcharacterset ( Oblukov ) then
18511: LD_STRING Oblukov
18513: PPUSH
18514: CALL_OW 29
18518: IFFALSE 18535
// oblukov = createcharacter ( Oblukov ) else
18520: LD_ADDR_LOC 42
18524: PUSH
18525: LD_STRING Oblukov
18527: PPUSH
18528: CALL_OW 34
18532: ST_TO_ADDR
18533: GO 18557
// begin oblukov = 0 ;
18535: LD_ADDR_LOC 42
18539: PUSH
18540: LD_INT 0
18542: ST_TO_ADDR
// na = na + 1 ;
18543: LD_ADDR_VAR 0 5
18547: PUSH
18548: LD_VAR 0 5
18552: PUSH
18553: LD_INT 1
18555: PLUS
18556: ST_TO_ADDR
// end else
18557: GO 18566
// msg ( neny Oblukov ) ;
18559: LD_STRING neny Oblukov
18561: PPUSH
18562: CALL_OW 100
// uc_nation = nation_russian ;
18566: LD_ADDR_OWVAR 21
18570: PUSH
18571: LD_INT 3
18573: ST_TO_ADDR
// if not testvariable ( Masha ) then
18574: LD_STRING Masha
18576: PPUSH
18577: CALL_OW 27
18581: NOT
18582: IFFALSE 18591
// msg ( neny Masha ) ;
18584: LD_STRING neny Masha
18586: PPUSH
18587: CALL_OW 100
// veh = loadvariable ( Masha , [ ] ) ;
18591: LD_ADDR_VAR 0 6
18595: PUSH
18596: LD_STRING Masha
18598: PPUSH
18599: EMPTY
18600: PPUSH
18601: CALL_OW 30
18605: ST_TO_ADDR
// if veh then
18606: LD_VAR 0 6
18610: IFFALSE 18692
// begin vc_chassis = veh [ 1 ] ;
18612: LD_ADDR_OWVAR 37
18616: PUSH
18617: LD_VAR 0 6
18621: PUSH
18622: LD_INT 1
18624: ARRAY
18625: ST_TO_ADDR
// vc_engine = veh [ 2 ] ;
18626: LD_ADDR_OWVAR 39
18630: PUSH
18631: LD_VAR 0 6
18635: PUSH
18636: LD_INT 2
18638: ARRAY
18639: ST_TO_ADDR
// vc_control = veh [ 3 ] ;
18640: LD_ADDR_OWVAR 38
18644: PUSH
18645: LD_VAR 0 6
18649: PUSH
18650: LD_INT 3
18652: ARRAY
18653: ST_TO_ADDR
// vc_weapon = veh [ 4 ] ;
18654: LD_ADDR_OWVAR 40
18658: PUSH
18659: LD_VAR 0 6
18663: PUSH
18664: LD_INT 4
18666: ARRAY
18667: ST_TO_ADDR
// masha = createvehicle ;
18668: LD_ADDR_LOC 22
18672: PUSH
18673: CALL_OW 45
18677: ST_TO_ADDR
// setmark ( masha , 1 ) ;
18678: LD_LOC 22
18682: PPUSH
18683: LD_INT 1
18685: PPUSH
18686: CALL_OW 242
// end else
18690: GO 18700
// masha = 0 ;
18692: LD_ADDR_LOC 22
18696: PUSH
18697: LD_INT 0
18699: ST_TO_ADDR
// survivors4 = CreateCharacterSet ( survivors4 ) ;
18700: LD_ADDR_VAR 0 7
18704: PUSH
18705: LD_STRING survivors4
18707: PPUSH
18708: CALL_OW 31
18712: ST_TO_ADDR
// ostatni = [ ] ;
18713: LD_ADDR_LOC 20
18717: PUSH
18718: EMPTY
18719: ST_TO_ADDR
// for tmp = 1 to na do
18720: LD_ADDR_VAR 0 2
18724: PUSH
18725: DOUBLE
18726: LD_INT 1
18728: DEC
18729: ST_TO_ADDR
18730: LD_VAR 0 5
18734: PUSH
18735: FOR_TO
18736: IFFALSE 18826
// if survivors4 >= tmp then
18738: LD_VAR 0 7
18742: PUSH
18743: LD_VAR 0 2
18747: GREATEREQUAL
18748: IFFALSE 18774
// ostatni = ostatni ^ survivors4 [ tmp ] else
18750: LD_ADDR_LOC 20
18754: PUSH
18755: LD_LOC 20
18759: PUSH
18760: LD_VAR 0 7
18764: PUSH
18765: LD_VAR 0 2
18769: ARRAY
18770: ADD
18771: ST_TO_ADDR
18772: GO 18824
// begin preparehuman ( rand ( 1 , 2 ) , rand ( 1 , 4 ) , ru_def_skill ) ;
18774: LD_INT 1
18776: PPUSH
18777: LD_INT 2
18779: PPUSH
18780: CALL_OW 12
18784: PPUSH
18785: LD_INT 1
18787: PPUSH
18788: LD_INT 4
18790: PPUSH
18791: CALL_OW 12
18795: PPUSH
18796: LD_EXP 218
18800: PPUSH
18801: CALL_OW 380
// ostatni = ostatni ^ [ createhuman ] ;
18805: LD_ADDR_LOC 20
18809: PUSH
18810: LD_LOC 20
18814: PUSH
18815: CALL_OW 44
18819: PUSH
18820: EMPTY
18821: LIST
18822: ADD
18823: ST_TO_ADDR
// end ;
18824: GO 18735
18826: POP
18827: POP
// lidi = [ titov , belkov , kuzmov , gnyevko , kozlov , kiril , kapitsova , petrosyan , scholtze , dolgov , kovalyuk , karamazov , petrovova , gleb , lipshchin , xavier , fadeev , gladkov , bystrov , oblukov ] diff [ 0 ] ;
18828: LD_ADDR_LOC 19
18832: PUSH
18833: LD_LOC 23
18837: PUSH
18838: LD_LOC 24
18842: PUSH
18843: LD_LOC 25
18847: PUSH
18848: LD_LOC 26
18852: PUSH
18853: LD_LOC 27
18857: PUSH
18858: LD_LOC 28
18862: PUSH
18863: LD_LOC 29
18867: PUSH
18868: LD_LOC 30
18872: PUSH
18873: LD_LOC 31
18877: PUSH
18878: LD_LOC 32
18882: PUSH
18883: LD_LOC 33
18887: PUSH
18888: LD_LOC 34
18892: PUSH
18893: LD_LOC 35
18897: PUSH
18898: LD_LOC 36
18902: PUSH
18903: LD_LOC 37
18907: PUSH
18908: LD_LOC 38
18912: PUSH
18913: LD_LOC 39
18917: PUSH
18918: LD_LOC 40
18922: PUSH
18923: LD_LOC 41
18927: PUSH
18928: LD_LOC 42
18932: PUSH
18933: EMPTY
18934: LIST
18935: LIST
18936: LIST
18937: LIST
18938: LIST
18939: LIST
18940: LIST
18941: LIST
18942: LIST
18943: LIST
18944: LIST
18945: LIST
18946: LIST
18947: LIST
18948: LIST
18949: LIST
18950: LIST
18951: LIST
18952: LIST
18953: LIST
18954: PUSH
18955: LD_INT 0
18957: PUSH
18958: EMPTY
18959: LIST
18960: DIFF
18961: ST_TO_ADDR
// tmp3 = lidi ^ ostatni ;
18962: LD_ADDR_VAR 0 4
18966: PUSH
18967: LD_LOC 19
18971: PUSH
18972: LD_LOC 20
18976: ADD
18977: ST_TO_ADDR
// vehikly = [ ] ;
18978: LD_ADDR_LOC 21
18982: PUSH
18983: EMPTY
18984: ST_TO_ADDR
// vc_control = control_manual ;
18985: LD_ADDR_OWVAR 38
18989: PUSH
18990: LD_INT 1
18992: ST_TO_ADDR
// vc_engine = engine_siberite ;
18993: LD_ADDR_OWVAR 39
18997: PUSH
18998: LD_INT 3
19000: ST_TO_ADDR
// vc_weapon = ru_cargo_bay ;
19001: LD_ADDR_OWVAR 40
19005: PUSH
19006: LD_INT 51
19008: ST_TO_ADDR
// vc_chassis = ru_medium_wheeled ;
19009: LD_ADDR_OWVAR 37
19013: PUSH
19014: LD_INT 21
19016: ST_TO_ADDR
// for tmp = 1 to 3 do
19017: LD_ADDR_VAR 0 2
19021: PUSH
19022: DOUBLE
19023: LD_INT 1
19025: DEC
19026: ST_TO_ADDR
19027: LD_INT 3
19029: PUSH
19030: FOR_TO
19031: IFFALSE 19101
// begin tmp2 = createvehicle ;
19033: LD_ADDR_VAR 0 3
19037: PUSH
19038: CALL_OW 45
19042: ST_TO_ADDR
// setcargo ( tmp2 , mat_cans , 100 ) ;
19043: LD_VAR 0 3
19047: PPUSH
19048: LD_INT 1
19050: PPUSH
19051: LD_INT 100
19053: PPUSH
19054: CALL_OW 290
// placehumaninunit ( tmp3 [ tmp ] , tmp2 ) ;
19058: LD_VAR 0 4
19062: PUSH
19063: LD_VAR 0 2
19067: ARRAY
19068: PPUSH
19069: LD_VAR 0 3
19073: PPUSH
19074: CALL_OW 52
// placeunitxyr ( tmp2 , 12 , 14 , 8 , false ) ;
19078: LD_VAR 0 3
19082: PPUSH
19083: LD_INT 12
19085: PPUSH
19086: LD_INT 14
19088: PPUSH
19089: LD_INT 8
19091: PPUSH
19092: LD_INT 0
19094: PPUSH
19095: CALL_OW 50
// end ;
19099: GO 19030
19101: POP
19102: POP
// placeunitxyr ( tmp3 [ 4 ] , 12 , 14 , 8 , false ) ;
19103: LD_VAR 0 4
19107: PUSH
19108: LD_INT 4
19110: ARRAY
19111: PPUSH
19112: LD_INT 12
19114: PPUSH
19115: LD_INT 14
19117: PPUSH
19118: LD_INT 8
19120: PPUSH
19121: LD_INT 0
19123: PPUSH
19124: CALL_OW 50
// placeunitxyr ( tmp3 [ 5 ] , 12 , 14 , 8 , false ) ;
19128: LD_VAR 0 4
19132: PUSH
19133: LD_INT 5
19135: ARRAY
19136: PPUSH
19137: LD_INT 12
19139: PPUSH
19140: LD_INT 14
19142: PPUSH
19143: LD_INT 8
19145: PPUSH
19146: LD_INT 0
19148: PPUSH
19149: CALL_OW 50
// placeunitxyr ( tmp3 [ 6 ] , 12 , 14 , 8 , false ) ;
19153: LD_VAR 0 4
19157: PUSH
19158: LD_INT 6
19160: ARRAY
19161: PPUSH
19162: LD_INT 12
19164: PPUSH
19165: LD_INT 14
19167: PPUSH
19168: LD_INT 8
19170: PPUSH
19171: LD_INT 0
19173: PPUSH
19174: CALL_OW 50
// if masha then
19178: LD_LOC 22
19182: IFFALSE 19233
// begin setdir ( masha , 2 ) ;
19184: LD_LOC 22
19188: PPUSH
19189: LD_INT 2
19191: PPUSH
19192: CALL_OW 233
// placehumaninunit ( burlak , masha ) ;
19196: LD_EXP 233
19200: PPUSH
19201: LD_LOC 22
19205: PPUSH
19206: CALL_OW 52
// placeunitxyr ( masha , 12 , 14 , 8 , false ) ;
19210: LD_LOC 22
19214: PPUSH
19215: LD_INT 12
19217: PPUSH
19218: LD_INT 14
19220: PPUSH
19221: LD_INT 8
19223: PPUSH
19224: LD_INT 0
19226: PPUSH
19227: CALL_OW 50
// end else
19231: GO 19254
// placeunitxyr ( burlak , 12 , 14 , 8 , false ) ;
19233: LD_EXP 233
19237: PPUSH
19238: LD_INT 12
19240: PPUSH
19241: LD_INT 14
19243: PPUSH
19244: LD_INT 8
19246: PPUSH
19247: LD_INT 0
19249: PPUSH
19250: CALL_OW 50
// tmp2 = [ [ ru_medium_tracked , ru_rocket_launcher ] , [ ru_medium_tracked , ru_rocket_launcher ] , [ ru_medium_tracked , ru_gun ] , [ ru_medium_tracked , ru_gun ] , [ ru_medium_tracked , ru_gun ] , [ ru_medium_tracked , ru_rocket_launcher ] ] ;
19254: LD_ADDR_VAR 0 3
19258: PUSH
19259: LD_INT 22
19261: PUSH
19262: LD_INT 45
19264: PUSH
19265: EMPTY
19266: LIST
19267: LIST
19268: PUSH
19269: LD_INT 22
19271: PUSH
19272: LD_INT 45
19274: PUSH
19275: EMPTY
19276: LIST
19277: LIST
19278: PUSH
19279: LD_INT 22
19281: PUSH
19282: LD_INT 44
19284: PUSH
19285: EMPTY
19286: LIST
19287: LIST
19288: PUSH
19289: LD_INT 22
19291: PUSH
19292: LD_INT 44
19294: PUSH
19295: EMPTY
19296: LIST
19297: LIST
19298: PUSH
19299: LD_INT 22
19301: PUSH
19302: LD_INT 44
19304: PUSH
19305: EMPTY
19306: LIST
19307: LIST
19308: PUSH
19309: LD_INT 22
19311: PUSH
19312: LD_INT 45
19314: PUSH
19315: EMPTY
19316: LIST
19317: LIST
19318: PUSH
19319: EMPTY
19320: LIST
19321: LIST
19322: LIST
19323: LIST
19324: LIST
19325: LIST
19326: ST_TO_ADDR
// for tmp = 1 to 6 - ( 0 + ( [ masha ] diff [ 0 ] ) ) do
19327: LD_ADDR_VAR 0 2
19331: PUSH
19332: DOUBLE
19333: LD_INT 1
19335: DEC
19336: ST_TO_ADDR
19337: LD_INT 6
19339: PUSH
19340: LD_INT 0
19342: PUSH
19343: LD_LOC 22
19347: PUSH
19348: EMPTY
19349: LIST
19350: PUSH
19351: LD_INT 0
19353: PUSH
19354: EMPTY
19355: LIST
19356: DIFF
19357: PLUS
19358: MINUS
19359: PUSH
19360: FOR_TO
19361: IFFALSE 19507
// begin vc_weapon = tmp2 [ tmp ] [ 2 ] ;
19363: LD_ADDR_OWVAR 40
19367: PUSH
19368: LD_VAR 0 3
19372: PUSH
19373: LD_VAR 0 2
19377: ARRAY
19378: PUSH
19379: LD_INT 2
19381: ARRAY
19382: ST_TO_ADDR
// vc_chassis = tmp2 [ tmp ] [ 1 ] ;
19383: LD_ADDR_OWVAR 37
19387: PUSH
19388: LD_VAR 0 3
19392: PUSH
19393: LD_VAR 0 2
19397: ARRAY
19398: PUSH
19399: LD_INT 1
19401: ARRAY
19402: ST_TO_ADDR
// vehikly = vehikly ^ [ createvehicle ] ;
19403: LD_ADDR_LOC 21
19407: PUSH
19408: LD_LOC 21
19412: PUSH
19413: CALL_OW 45
19417: PUSH
19418: EMPTY
19419: LIST
19420: ADD
19421: ST_TO_ADDR
// placehumaninunit ( tmp3 [ tmp + 6 ] , vehikly [ tmp ] ) ;
19422: LD_VAR 0 4
19426: PUSH
19427: LD_VAR 0 2
19431: PUSH
19432: LD_INT 6
19434: PLUS
19435: ARRAY
19436: PPUSH
19437: LD_LOC 21
19441: PUSH
19442: LD_VAR 0 2
19446: ARRAY
19447: PPUSH
19448: CALL_OW 52
// setdir ( vehikly [ tmp ] , rand ( 2 , 3 ) ) ;
19452: LD_LOC 21
19456: PUSH
19457: LD_VAR 0 2
19461: ARRAY
19462: PPUSH
19463: LD_INT 2
19465: PPUSH
19466: LD_INT 3
19468: PPUSH
19469: CALL_OW 12
19473: PPUSH
19474: CALL_OW 233
// placeunitxyr ( vehikly [ tmp ] , 12 , 14 , 8 , false ) ;
19478: LD_LOC 21
19482: PUSH
19483: LD_VAR 0 2
19487: ARRAY
19488: PPUSH
19489: LD_INT 12
19491: PPUSH
19492: LD_INT 14
19494: PPUSH
19495: LD_INT 8
19497: PPUSH
19498: LD_INT 0
19500: PPUSH
19501: CALL_OW 50
// end ;
19505: GO 19360
19507: POP
19508: POP
// if masha then
19509: LD_LOC 22
19513: IFFALSE 19540
// placeunitxyr ( tmp3 [ 12 ] , 12 , 14 , 8 , false ) ;
19515: LD_VAR 0 4
19519: PUSH
19520: LD_INT 12
19522: ARRAY
19523: PPUSH
19524: LD_INT 12
19526: PPUSH
19527: LD_INT 14
19529: PPUSH
19530: LD_INT 8
19532: PPUSH
19533: LD_INT 0
19535: PPUSH
19536: CALL_OW 50
// for tmp = 13 to 20 do
19540: LD_ADDR_VAR 0 2
19544: PUSH
19545: DOUBLE
19546: LD_INT 13
19548: DEC
19549: ST_TO_ADDR
19550: LD_INT 20
19552: PUSH
19553: FOR_TO
19554: IFFALSE 19585
// placeunitxyr ( tmp3 [ tmp ] , 12 , 14 , 8 , false ) ;
19556: LD_VAR 0 4
19560: PUSH
19561: LD_VAR 0 2
19565: ARRAY
19566: PPUSH
19567: LD_INT 12
19569: PPUSH
19570: LD_INT 14
19572: PPUSH
19573: LD_INT 8
19575: PPUSH
19576: LD_INT 0
19578: PPUSH
19579: CALL_OW 50
19583: GO 19553
19585: POP
19586: POP
// centernowonunits ( vehikly ) ;
19587: LD_LOC 21
19591: PPUSH
19592: CALL_OW 87
// commovexy ( lidi ^ ostatni ^ [ burlak ] , 21 , 33 ) ;
19596: LD_LOC 19
19600: PUSH
19601: LD_LOC 20
19605: ADD
19606: PUSH
19607: LD_EXP 233
19611: PUSH
19612: EMPTY
19613: LIST
19614: ADD
19615: PPUSH
19616: LD_INT 21
19618: PPUSH
19619: LD_INT 33
19621: PPUSH
19622: CALL_OW 111
// wait ( 0 0$2 ) ;
19626: LD_INT 70
19628: PPUSH
19629: CALL_OW 67
// centeronxy ( 21 , 33 ) ;
19633: LD_INT 21
19635: PPUSH
19636: LD_INT 33
19638: PPUSH
19639: CALL_OW 84
// while not isinarea ( burlak , prichod ) do
19643: LD_EXP 233
19647: PPUSH
19648: LD_INT 8
19650: PPUSH
19651: CALL_OW 308
19655: NOT
19656: IFFALSE 19667
// wait ( 0 0$1 ) ;
19658: LD_INT 35
19660: PPUSH
19661: CALL_OW 67
19665: GO 19643
// legdestr = 0 ;
19667: LD_ADDR_EXP 239
19671: PUSH
19672: LD_INT 0
19674: ST_TO_ADDR
// if testvariable ( LegionDestroyed ) then
19675: LD_STRING LegionDestroyed
19677: PPUSH
19678: CALL_OW 27
19682: IFFALSE 19703
// legdestr = loadvariable ( LegionDestroyed , - 1 ) else
19684: LD_ADDR_EXP 239
19688: PUSH
19689: LD_STRING LegionDestroyed
19691: PPUSH
19692: LD_INT 1
19694: NEG
19695: PPUSH
19696: CALL_OW 30
19700: ST_TO_ADDR
19701: GO 19710
// msg ( neny LegionDestroyed ) ;
19703: LD_STRING neny LegionDestroyed
19705: PPUSH
19706: CALL_OW 100
// tmp2 = unitfilter ( lidi , [ [ f_sex , sex_male ] ] ) ;
19710: LD_ADDR_VAR 0 3
19714: PUSH
19715: LD_LOC 19
19719: PPUSH
19720: LD_INT 26
19722: PUSH
19723: LD_INT 1
19725: PUSH
19726: EMPTY
19727: LIST
19728: LIST
19729: PUSH
19730: EMPTY
19731: LIST
19732: PPUSH
19733: CALL_OW 72
19737: ST_TO_ADDR
// tmp3 = unitfilter ( ostatni , [ [ f_sex , sex_male ] ] ) ;
19738: LD_ADDR_VAR 0 4
19742: PUSH
19743: LD_LOC 20
19747: PPUSH
19748: LD_INT 26
19750: PUSH
19751: LD_INT 1
19753: PUSH
19754: EMPTY
19755: LIST
19756: LIST
19757: PUSH
19758: EMPTY
19759: LIST
19760: PPUSH
19761: CALL_OW 72
19765: ST_TO_ADDR
// dialogueon ;
19766: CALL_OW 6
// say ( burlak , DStart-Bur-1 ) ;
19770: LD_EXP 233
19774: PPUSH
19775: LD_STRING DStart-Bur-1
19777: PPUSH
19778: CALL_OW 88
// if not legdestr then
19782: LD_EXP 239
19786: NOT
19787: IFFALSE 19923
// if gladkov then
19789: LD_LOC 40
19793: IFFALSE 19809
// say ( gladkov , DStart-Gla-1 ) else
19795: LD_LOC 40
19799: PPUSH
19800: LD_STRING DStart-Gla-1
19802: PPUSH
19803: CALL_OW 88
19807: GO 19923
// if tmp3 then
19809: LD_VAR 0 4
19813: IFFALSE 19833
// say ( tmp3 [ 1 ] , DStart-Gla-1 ) else
19815: LD_VAR 0 4
19819: PUSH
19820: LD_INT 1
19822: ARRAY
19823: PPUSH
19824: LD_STRING DStart-Gla-1
19826: PPUSH
19827: CALL_OW 88
19831: GO 19923
// if tmp2 then
19833: LD_VAR 0 3
19837: IFFALSE 19857
// say ( tmp2 [ 1 ] , DStart-Gla-1 ) else
19839: LD_VAR 0 3
19843: PUSH
19844: LD_INT 1
19846: ARRAY
19847: PPUSH
19848: LD_STRING DStart-Gla-1
19850: PPUSH
19851: CALL_OW 88
19855: GO 19923
// if bystrov then
19857: LD_LOC 41
19861: IFFALSE 19877
// say ( bystrov , DStart-Bys-1 ) else
19863: LD_LOC 41
19867: PPUSH
19868: LD_STRING DStart-Bys-1
19870: PPUSH
19871: CALL_OW 88
19875: GO 19923
// if tmp3 then
19877: LD_VAR 0 4
19881: IFFALSE 19901
// say ( tmp3 [ 1 ] , DStart-Rsol1-1 ) else
19883: LD_VAR 0 4
19887: PUSH
19888: LD_INT 1
19890: ARRAY
19891: PPUSH
19892: LD_STRING DStart-Rsol1-1
19894: PPUSH
19895: CALL_OW 88
19899: GO 19923
// if tmp2 then
19901: LD_VAR 0 3
19905: IFFALSE 19923
// say ( tmp2 [ 1 ] , DStart-Rsol1-1 ) ;
19907: LD_VAR 0 3
19911: PUSH
19912: LD_INT 1
19914: ARRAY
19915: PPUSH
19916: LD_STRING DStart-Rsol1-1
19918: PPUSH
19919: CALL_OW 88
// say ( burlak , DStart-Bur-2 ) ;
19923: LD_EXP 233
19927: PPUSH
19928: LD_STRING DStart-Bur-2
19930: PPUSH
19931: CALL_OW 88
// if tmp2 then
19935: LD_VAR 0 3
19939: IFFALSE 19959
// say ( tmp2 [ 1 ] , DStart-Rsol1-2 ) else
19941: LD_VAR 0 3
19945: PUSH
19946: LD_INT 1
19948: ARRAY
19949: PPUSH
19950: LD_STRING DStart-Rsol1-2
19952: PPUSH
19953: CALL_OW 88
19957: GO 19981
// if tmp3 then
19959: LD_VAR 0 4
19963: IFFALSE 19981
// say ( tmp3 [ 1 ] , DStart-Rsol1-2 ) ;
19965: LD_VAR 0 4
19969: PUSH
19970: LD_INT 1
19972: ARRAY
19973: PPUSH
19974: LD_STRING DStart-Rsol1-2
19976: PPUSH
19977: CALL_OW 88
// say ( burlak , DStart-Bur-3 ) ;
19981: LD_EXP 233
19985: PPUSH
19986: LD_STRING DStart-Bur-3
19988: PPUSH
19989: CALL_OW 88
// dialogueoff ;
19993: CALL_OW 7
// saveforquickrestart ;
19997: CALL_OW 22
// wait ( 0 0$0.5 ) ;
20001: LD_INT 18
20003: PPUSH
20004: CALL_OW 67
// changemissionobjectives ( MStart ) ;
20008: LD_STRING MStart
20010: PPUSH
20011: CALL_OW 337
// end ;
20015: LD_VAR 0 1
20019: RET
// function visib_dep ; var tmp , tmp1 , deps ; begin
20020: LD_INT 0
20022: PPUSH
20023: PPUSH
20024: PPUSH
20025: PPUSH
// deps = [ [ 47 , 48 ] , [ 48 , 57 ] , [ 55 , 61 ] , [ 54 , 65 ] , [ 47 , 69 ] , [ 56 , 74 ] , [ 66 , 75 ] ] ;
20026: LD_ADDR_VAR 0 4
20030: PUSH
20031: LD_INT 47
20033: PUSH
20034: LD_INT 48
20036: PUSH
20037: EMPTY
20038: LIST
20039: LIST
20040: PUSH
20041: LD_INT 48
20043: PUSH
20044: LD_INT 57
20046: PUSH
20047: EMPTY
20048: LIST
20049: LIST
20050: PUSH
20051: LD_INT 55
20053: PUSH
20054: LD_INT 61
20056: PUSH
20057: EMPTY
20058: LIST
20059: LIST
20060: PUSH
20061: LD_INT 54
20063: PUSH
20064: LD_INT 65
20066: PUSH
20067: EMPTY
20068: LIST
20069: LIST
20070: PUSH
20071: LD_INT 47
20073: PUSH
20074: LD_INT 69
20076: PUSH
20077: EMPTY
20078: LIST
20079: LIST
20080: PUSH
20081: LD_INT 56
20083: PUSH
20084: LD_INT 74
20086: PUSH
20087: EMPTY
20088: LIST
20089: LIST
20090: PUSH
20091: LD_INT 66
20093: PUSH
20094: LD_INT 75
20096: PUSH
20097: EMPTY
20098: LIST
20099: LIST
20100: PUSH
20101: EMPTY
20102: LIST
20103: LIST
20104: LIST
20105: LIST
20106: LIST
20107: LIST
20108: LIST
20109: ST_TO_ADDR
// tmp1 = 0 ;
20110: LD_ADDR_VAR 0 3
20114: PUSH
20115: LD_INT 0
20117: ST_TO_ADDR
// for tmp in deps do
20118: LD_ADDR_VAR 0 2
20122: PUSH
20123: LD_VAR 0 4
20127: PUSH
20128: FOR_IN
20129: IFFALSE 20172
// tmp1 = tmp1 + getresourcevisibility ( tmp [ 1 ] , tmp [ 2 ] , ru ) ;
20131: LD_ADDR_VAR 0 3
20135: PUSH
20136: LD_VAR 0 3
20140: PUSH
20141: LD_VAR 0 2
20145: PUSH
20146: LD_INT 1
20148: ARRAY
20149: PPUSH
20150: LD_VAR 0 2
20154: PUSH
20155: LD_INT 2
20157: ARRAY
20158: PPUSH
20159: LD_EXP 1
20163: PPUSH
20164: CALL_OW 440
20168: PLUS
20169: ST_TO_ADDR
20170: GO 20128
20172: POP
20173: POP
// result = tmp1 ;
20174: LD_ADDR_VAR 0 1
20178: PUSH
20179: LD_VAR 0 3
20183: ST_TO_ADDR
// end ;
20184: LD_VAR 0 1
20188: RET
// every 0 0$1 trigger seearea ( ru , mthldvw ) do var tmp ;
20189: LD_EXP 1
20193: PPUSH
20194: LD_INT 7
20196: PPUSH
20197: CALL_OW 294
20201: IFFALSE 20370
20203: GO 20205
20205: DISABLE
20206: LD_INT 0
20208: PPUSH
// begin while visib_dep < 4 do
20209: CALL 20020 0 0
20213: PUSH
20214: LD_INT 4
20216: LESS
20217: IFFALSE 20228
// wait ( 0 0$1 ) ;
20219: LD_INT 35
20221: PPUSH
20222: CALL_OW 67
20226: GO 20209
// tmp = unitfilter ( ostatni , [ [ f_sex , sex_male ] ] ) ;
20228: LD_ADDR_VAR 0 1
20232: PUSH
20233: LD_LOC 20
20237: PPUSH
20238: LD_INT 26
20240: PUSH
20241: LD_INT 1
20243: PUSH
20244: EMPTY
20245: LIST
20246: LIST
20247: PUSH
20248: EMPTY
20249: LIST
20250: PPUSH
20251: CALL_OW 72
20255: ST_TO_ADDR
// if not tmp then
20256: LD_VAR 0 1
20260: NOT
20261: IFFALSE 20291
// tmp = unitfilter ( lidi , [ [ f_sex , sex_male ] ] ) ;
20263: LD_ADDR_VAR 0 1
20267: PUSH
20268: LD_LOC 19
20272: PPUSH
20273: LD_INT 26
20275: PUSH
20276: LD_INT 1
20278: PUSH
20279: EMPTY
20280: LIST
20281: LIST
20282: PUSH
20283: EMPTY
20284: LIST
20285: PPUSH
20286: CALL_OW 72
20290: ST_TO_ADDR
// dialogueon ;
20291: CALL_OW 6
// say ( burlak , DMotherlode-Bur-1 ) ;
20295: LD_EXP 233
20299: PPUSH
20300: LD_STRING DMotherlode-Bur-1
20302: PPUSH
20303: CALL_OW 88
// if belkov then
20307: LD_LOC 24
20311: IFFALSE 20325
// say ( belkov , DMotherlode-Bel-1 ) ;
20313: LD_LOC 24
20317: PPUSH
20318: LD_STRING DMotherlode-Bel-1
20320: PPUSH
20321: CALL_OW 88
// if tmp then
20325: LD_VAR 0 1
20329: IFFALSE 20347
// say ( tmp [ 1 ] , DMotherlode-Rsol1-1 ) ;
20331: LD_VAR 0 1
20335: PUSH
20336: LD_INT 1
20338: ARRAY
20339: PPUSH
20340: LD_STRING DMotherlode-Rsol1-1
20342: PPUSH
20343: CALL_OW 88
// say ( burlak , DMotherlode-Bur-2 ) ;
20347: LD_EXP 233
20351: PPUSH
20352: LD_STRING DMotherlode-Bur-2
20354: PPUSH
20355: CALL_OW 88
// dialogueoff ;
20359: CALL_OW 7
// changemissionobjectives ( MFindOut ) ;
20363: LD_STRING MFindOut
20365: PPUSH
20366: CALL_OW 337
// end ;
20370: PPOPN 1
20372: END
// export poticadlo ; every 0 0$10 + 5 5$0 marked 06 do var tmp , tmp2 , tmp3 ;
20373: GO 20375
20375: DISABLE
20376: LD_INT 0
20378: PPUSH
20379: PPUSH
20380: PPUSH
// begin if al_surr then
20381: LD_EXP 220
20385: IFFALSE 20391
// exit else
20387: GO 20816
20389: GO 20392
// enable ;
20391: ENABLE
// if artef_gone then
20392: LD_EXP 245
20396: IFFALSE 20401
// begin enable ;
20398: ENABLE
// exit ;
20399: GO 20816
// end ; poticadlo = poticadlo - 1 ;
20401: LD_ADDR_EXP 240
20405: PUSH
20406: LD_EXP 240
20410: PUSH
20411: LD_INT 1
20413: MINUS
20414: ST_TO_ADDR
// if not poticadlo then
20415: LD_EXP 240
20419: NOT
20420: IFFALSE 20816
// begin if debug then
20422: LD_EXP 223
20426: IFFALSE 20435
// msg ( al: preparing to kill a sib. building ) ;
20428: LD_STRING al: preparing to kill a sib. building
20430: PPUSH
20431: CALL_OW 100
// tmp2 = filterallunits ( [ [ f_side , ru ] , [ f_or , [ f_btype , b_siberite_mine ] , [ f_btype , b_siberite_power ] ] , f_not , [ f_constructed ] ] ) ;
20435: LD_ADDR_VAR 0 2
20439: PUSH
20440: LD_INT 22
20442: PUSH
20443: LD_EXP 1
20447: PUSH
20448: EMPTY
20449: LIST
20450: LIST
20451: PUSH
20452: LD_INT 2
20454: PUSH
20455: LD_INT 30
20457: PUSH
20458: LD_INT 30
20460: PUSH
20461: EMPTY
20462: LIST
20463: LIST
20464: PUSH
20465: LD_INT 30
20467: PUSH
20468: LD_INT 28
20470: PUSH
20471: EMPTY
20472: LIST
20473: LIST
20474: PUSH
20475: EMPTY
20476: LIST
20477: LIST
20478: LIST
20479: PUSH
20480: LD_INT 3
20482: PUSH
20483: LD_INT 57
20485: PUSH
20486: EMPTY
20487: LIST
20488: PUSH
20489: EMPTY
20490: LIST
20491: LIST
20492: LIST
20493: LIST
20494: PPUSH
20495: CALL_OW 69
20499: ST_TO_ADDR
// if not tmp2 then
20500: LD_VAR 0 2
20504: NOT
20505: IFFALSE 20520
// begin poticadlo = 1 ;
20507: LD_ADDR_EXP 240
20511: PUSH
20512: LD_INT 1
20514: ST_TO_ADDR
// enable ;
20515: ENABLE
// exit ;
20516: GO 20816
// end else
20518: GO 20599
// begin tmp = rand ( 1 , 0 + tmp2 ) ;
20520: LD_ADDR_VAR 0 1
20524: PUSH
20525: LD_INT 1
20527: PPUSH
20528: LD_INT 0
20530: PUSH
20531: LD_VAR 0 2
20535: PLUS
20536: PPUSH
20537: CALL_OW 12
20541: ST_TO_ADDR
// centernowonunits ( tmp2 [ tmp ] ) ;
20542: LD_VAR 0 2
20546: PUSH
20547: LD_VAR 0 1
20551: ARRAY
20552: PPUSH
20553: CALL_OW 87
// tmp3 = getbtype ( tmp2 [ tmp ] ) ;
20557: LD_ADDR_VAR 0 3
20561: PUSH
20562: LD_VAR 0 2
20566: PUSH
20567: LD_VAR 0 1
20571: ARRAY
20572: PPUSH
20573: CALL_OW 266
20577: ST_TO_ADDR
// setlives ( [ tmp2 [ tmp ] ] , 0 ) ;
20578: LD_VAR 0 2
20582: PUSH
20583: LD_VAR 0 1
20587: ARRAY
20588: PUSH
20589: EMPTY
20590: LIST
20591: PPUSH
20592: LD_INT 0
20594: PPUSH
20595: CALL_OW 234
// end ; if fst_vybuch then
20599: LD_EXP 212
20603: IFFALSE 20796
// begin tmp = unitfilter ( ostatni , [ [ f_sex , sex_male ] , [ f_ok ] ] ) ;
20605: LD_ADDR_VAR 0 1
20609: PUSH
20610: LD_LOC 20
20614: PPUSH
20615: LD_INT 26
20617: PUSH
20618: LD_INT 1
20620: PUSH
20621: EMPTY
20622: LIST
20623: LIST
20624: PUSH
20625: LD_INT 50
20627: PUSH
20628: EMPTY
20629: LIST
20630: PUSH
20631: EMPTY
20632: LIST
20633: LIST
20634: PPUSH
20635: CALL_OW 72
20639: ST_TO_ADDR
// if not tmp then
20640: LD_VAR 0 1
20644: NOT
20645: IFFALSE 20682
// tmp = unitfilter ( lidi , [ [ f_sex , sex_male ] , [ f_ok ] ] ) ;
20647: LD_ADDR_VAR 0 1
20651: PUSH
20652: LD_LOC 19
20656: PPUSH
20657: LD_INT 26
20659: PUSH
20660: LD_INT 1
20662: PUSH
20663: EMPTY
20664: LIST
20665: LIST
20666: PUSH
20667: LD_INT 50
20669: PUSH
20670: EMPTY
20671: LIST
20672: PUSH
20673: EMPTY
20674: LIST
20675: LIST
20676: PPUSH
20677: CALL_OW 72
20681: ST_TO_ADDR
// dialogueon ;
20682: CALL_OW 6
// if tmp3 = b_siberite_mine then
20686: LD_VAR 0 3
20690: PUSH
20691: LD_INT 30
20693: EQUAL
20694: IFFALSE 20750
// if tmp then
20696: LD_VAR 0 1
20700: IFFALSE 20748
// begin say ( tmp [ 1 ] , DAlaskDestroyed-Rsol1-1 ) ;
20702: LD_VAR 0 1
20706: PUSH
20707: LD_INT 1
20709: ARRAY
20710: PPUSH
20711: LD_STRING DAlaskDestroyed-Rsol1-1
20713: PPUSH
20714: CALL_OW 88
// say ( burlak , DAlaskDestroyed-Bur-1 ) ;
20718: LD_EXP 233
20722: PPUSH
20723: LD_STRING DAlaskDestroyed-Bur-1
20725: PPUSH
20726: CALL_OW 88
// say ( tmp [ 1 ] , DAlaskDestroyed-Rsol1-2 ) ;
20730: LD_VAR 0 1
20734: PUSH
20735: LD_INT 1
20737: ARRAY
20738: PPUSH
20739: LD_STRING DAlaskDestroyed-Rsol1-2
20741: PPUSH
20742: CALL_OW 88
// end else
20746: GO 20748
// else
20748: GO 20772
// if tmp then
20750: LD_VAR 0 1
20754: IFFALSE 20772
// say ( tmp [ 1 ] , DAlaskDestroyed-Rsol2-2 ) ;
20756: LD_VAR 0 1
20760: PUSH
20761: LD_INT 1
20763: ARRAY
20764: PPUSH
20765: LD_STRING DAlaskDestroyed-Rsol2-2
20767: PPUSH
20768: CALL_OW 88
// say ( burlak , DAlaskDestroyed-Bur-2 ) ;
20772: LD_EXP 233
20776: PPUSH
20777: LD_STRING DAlaskDestroyed-Bur-2
20779: PPUSH
20780: CALL_OW 88
// dialogueoff ;
20784: CALL_OW 7
// fst_vybuch = 0 ;
20788: LD_ADDR_EXP 212
20792: PUSH
20793: LD_INT 0
20795: ST_TO_ADDR
// end ; poticadlo = rand ( poticadlo_min , poticadlo_max ) ;
20796: LD_ADDR_EXP 240
20800: PUSH
20801: LD_EXP 199
20805: PPUSH
20806: LD_EXP 200
20810: PPUSH
20811: CALL_OW 12
20815: ST_TO_ADDR
// end ; end ;
20816: PPOPN 3
20818: END
// var dul_v_ml_ ; function dul_v_ml ; var tmp , tmp1 ; begin
20819: LD_INT 0
20821: PPUSH
20822: PPUSH
20823: PPUSH
// dul_v_ml_ = 0 ;
20824: LD_ADDR_LOC 43
20828: PUSH
20829: LD_INT 0
20831: ST_TO_ADDR
// tmp = filterunitsinarea ( mothdep , [ [ f_btype , b_siberite_mine ] , f_not , [ f_side , ru ] ] ) ;
20832: LD_ADDR_VAR 0 2
20836: PUSH
20837: LD_INT 9
20839: PPUSH
20840: LD_INT 30
20842: PUSH
20843: LD_INT 30
20845: PUSH
20846: EMPTY
20847: LIST
20848: LIST
20849: PUSH
20850: LD_INT 3
20852: PUSH
20853: LD_INT 22
20855: PUSH
20856: LD_EXP 1
20860: PUSH
20861: EMPTY
20862: LIST
20863: LIST
20864: PUSH
20865: EMPTY
20866: LIST
20867: LIST
20868: LIST
20869: PPUSH
20870: CALL_OW 70
20874: ST_TO_ADDR
// for tmp1 in tmp do
20875: LD_ADDR_VAR 0 3
20879: PUSH
20880: LD_VAR 0 2
20884: PUSH
20885: FOR_IN
20886: IFFALSE 20958
// if not isconstructed ( tmp1 ) and ( getlives ( tmp1 ) > hranice_umirani ) then
20888: LD_VAR 0 3
20892: PPUSH
20893: CALL_OW 304
20897: NOT
20898: PUSH
20899: LD_VAR 0 3
20903: PPUSH
20904: CALL_OW 256
20908: PUSH
20909: LD_INT 250
20911: GREATER
20912: AND
20913: IFFALSE 20956
// begin dul_v_ml_ = tmp1 ;
20915: LD_ADDR_LOC 43
20919: PUSH
20920: LD_VAR 0 3
20924: ST_TO_ADDR
// result = true ;
20925: LD_ADDR_VAR 0 1
20929: PUSH
20930: LD_INT 1
20932: ST_TO_ADDR
// if debug then
20933: LD_EXP 223
20937: IFFALSE 20952
// msg ( tmp1 & :dul u arabu ) ;
20939: LD_VAR 0 3
20943: PUSH
20944: LD_STRING :dul u arabu
20946: STR
20947: PPUSH
20948: CALL_OW 100
// exit ;
20952: POP
20953: POP
20954: GO 21083
// end ;
20956: GO 20885
20958: POP
20959: POP
// tmp = hexinfo ( 64 , 17 ) ;
20960: LD_ADDR_VAR 0 2
20964: PUSH
20965: LD_INT 64
20967: PPUSH
20968: LD_INT 17
20970: PPUSH
20971: CALL_OW 428
20975: ST_TO_ADDR
// if ( getbtype ( tmp ) = b_siberite_mine ) and ( getlives ( tmp ) > hranice_umirani ) and not isconstructed ( tmp ) then
20976: LD_VAR 0 2
20980: PPUSH
20981: CALL_OW 266
20985: PUSH
20986: LD_INT 30
20988: EQUAL
20989: PUSH
20990: LD_VAR 0 2
20994: PPUSH
20995: CALL_OW 256
20999: PUSH
21000: LD_INT 250
21002: GREATER
21003: AND
21004: PUSH
21005: LD_VAR 0 2
21009: PPUSH
21010: CALL_OW 304
21014: NOT
21015: AND
21016: IFFALSE 21038
// begin dul_v_ml_ = tmp ;
21018: LD_ADDR_LOC 43
21022: PUSH
21023: LD_VAR 0 2
21027: ST_TO_ADDR
// result = true ;
21028: LD_ADDR_VAR 0 1
21032: PUSH
21033: LD_INT 1
21035: ST_TO_ADDR
// end else
21036: GO 21046
// result = false ;
21038: LD_ADDR_VAR 0 1
21042: PUSH
21043: LD_INT 0
21045: ST_TO_ADDR
// if debug and tmp and not isconstructed ( tmp ) then
21046: LD_EXP 223
21050: PUSH
21051: LD_VAR 0 2
21055: AND
21056: PUSH
21057: LD_VAR 0 2
21061: PPUSH
21062: CALL_OW 304
21066: NOT
21067: AND
21068: IFFALSE 21083
// msg ( tmp & :dul u amiku ) ;
21070: LD_VAR 0 2
21074: PUSH
21075: LD_STRING :dul u amiku
21077: STR
21078: PPUSH
21079: CALL_OW 100
// end ;
21083: LD_VAR 0 1
21087: RET
// every 0 0$3 trigger dul_v_ml do var tmp ;
21088: CALL 20819 0 0
21092: IFFALSE 21270
21094: GO 21096
21096: DISABLE
21097: LD_INT 0
21099: PPUSH
// begin tmp = unitfilter ( ostatni , [ [ f_sex , sex_male ] , [ f_ok ] ] ) ;
21100: LD_ADDR_VAR 0 1
21104: PUSH
21105: LD_LOC 20
21109: PPUSH
21110: LD_INT 26
21112: PUSH
21113: LD_INT 1
21115: PUSH
21116: EMPTY
21117: LIST
21118: LIST
21119: PUSH
21120: LD_INT 50
21122: PUSH
21123: EMPTY
21124: LIST
21125: PUSH
21126: EMPTY
21127: LIST
21128: LIST
21129: PPUSH
21130: CALL_OW 72
21134: ST_TO_ADDR
// if not tmp then
21135: LD_VAR 0 1
21139: NOT
21140: IFFALSE 21177
// tmp = unitfilter ( lidi , [ [ f_sex , sex_male ] , [ f_ok ] ] ) ;
21142: LD_ADDR_VAR 0 1
21146: PUSH
21147: LD_LOC 19
21151: PPUSH
21152: LD_INT 26
21154: PUSH
21155: LD_INT 1
21157: PUSH
21158: EMPTY
21159: LIST
21160: LIST
21161: PUSH
21162: LD_INT 50
21164: PUSH
21165: EMPTY
21166: LIST
21167: PUSH
21168: EMPTY
21169: LIST
21170: LIST
21171: PPUSH
21172: CALL_OW 72
21176: ST_TO_ADDR
// centernowonunits ( [ dul_v_ml_ ] ) ;
21177: LD_LOC 43
21181: PUSH
21182: EMPTY
21183: LIST
21184: PPUSH
21185: CALL_OW 87
// placeseeing ( getx ( dul_v_ml_ ) , gety ( dul_v_ml_ ) , ru , 5 ) ;
21189: LD_LOC 43
21193: PPUSH
21194: CALL_OW 250
21198: PPUSH
21199: LD_LOC 43
21203: PPUSH
21204: CALL_OW 251
21208: PPUSH
21209: LD_EXP 1
21213: PPUSH
21214: LD_INT 5
21216: PPUSH
21217: CALL_OW 330
// if tmp then
21221: LD_VAR 0 1
21225: IFFALSE 21263
// begin dialogueon ;
21227: CALL_OW 6
// say ( tmp [ 1 ] , DMines-Rsol1-1 ) ;
21231: LD_VAR 0 1
21235: PUSH
21236: LD_INT 1
21238: ARRAY
21239: PPUSH
21240: LD_STRING DMines-Rsol1-1
21242: PPUSH
21243: CALL_OW 88
// say ( burlak , DMines-Bur-1 ) ;
21247: LD_EXP 233
21251: PPUSH
21252: LD_STRING DMines-Bur-1
21254: PPUSH
21255: CALL_OW 88
// dialogueoff ;
21259: CALL_OW 7
// end ; youlost ( Motherlode ) ;
21263: LD_STRING Motherlode
21265: PPUSH
21266: CALL_OW 104
// end ;
21270: PPOPN 1
21272: END
// export amsibdeveldone ; on researchcomplete ( tech , lab ) do var tmp ;
21273: LD_INT 0
21275: PPUSH
// if ( tech = tech_sibfiss ) and ( getside ( lab ) = ru ) then
21276: LD_VAR 0 1
21280: PUSH
21281: LD_INT 25
21283: EQUAL
21284: PUSH
21285: LD_VAR 0 2
21289: PPUSH
21290: CALL_OW 255
21294: PUSH
21295: LD_EXP 1
21299: EQUAL
21300: AND
21301: IFFALSE 21434
// begin tmp = unitfilter ( ostatni , [ [ f_class , class_scientistic ] , [ f_sex , sex_male ] , [ f_ok ] ] ) ;
21303: LD_ADDR_VAR 0 3
21307: PUSH
21308: LD_LOC 20
21312: PPUSH
21313: LD_INT 25
21315: PUSH
21316: LD_INT 4
21318: PUSH
21319: EMPTY
21320: LIST
21321: LIST
21322: PUSH
21323: LD_INT 26
21325: PUSH
21326: LD_INT 1
21328: PUSH
21329: EMPTY
21330: LIST
21331: LIST
21332: PUSH
21333: LD_INT 50
21335: PUSH
21336: EMPTY
21337: LIST
21338: PUSH
21339: EMPTY
21340: LIST
21341: LIST
21342: LIST
21343: PPUSH
21344: CALL_OW 72
21348: ST_TO_ADDR
// if not tmp then
21349: LD_VAR 0 3
21353: NOT
21354: IFFALSE 21402
// tmp = unitfilter ( lidi , [ [ f_class , class_scientistic ] , [ f_sex , sex_male ] , [ f_ok ] ] ) ;
21356: LD_ADDR_VAR 0 3
21360: PUSH
21361: LD_LOC 19
21365: PPUSH
21366: LD_INT 25
21368: PUSH
21369: LD_INT 4
21371: PUSH
21372: EMPTY
21373: LIST
21374: LIST
21375: PUSH
21376: LD_INT 26
21378: PUSH
21379: LD_INT 1
21381: PUSH
21382: EMPTY
21383: LIST
21384: LIST
21385: PUSH
21386: LD_INT 50
21388: PUSH
21389: EMPTY
21390: LIST
21391: PUSH
21392: EMPTY
21393: LIST
21394: LIST
21395: LIST
21396: PPUSH
21397: CALL_OW 72
21401: ST_TO_ADDR
// if tmp then
21402: LD_VAR 0 3
21406: IFFALSE 21432
// begin dialogueon ;
21408: CALL_OW 6
// say ( tmp [ 1 ] , DRuBomb-Sci-1 ) ;
21412: LD_VAR 0 3
21416: PUSH
21417: LD_INT 1
21419: ARRAY
21420: PPUSH
21421: LD_STRING DRuBomb-Sci-1
21423: PPUSH
21424: CALL_OW 88
// dialogueoff ;
21428: CALL_OW 7
// end end else
21432: GO 21469
// if ( tech = tech_sibfiss ) and ( getside ( lab ) = am ) then
21434: LD_VAR 0 1
21438: PUSH
21439: LD_INT 25
21441: EQUAL
21442: PUSH
21443: LD_VAR 0 2
21447: PPUSH
21448: CALL_OW 255
21452: PUSH
21453: LD_EXP 2
21457: EQUAL
21458: AND
21459: IFFALSE 21469
// amsibdeveldone = true ;
21461: LD_ADDR_EXP 241
21465: PUSH
21466: LD_INT 1
21468: ST_TO_ADDR
21469: PPOPN 3
21471: END
// export rusacimajisib ; on vehicleconstructed ( veh , fact ) do if ( getside ( veh ) = ru ) and ( getweapon ( veh ) = ru_siberium_rocket ) and not rusacimajisib then
21472: LD_VAR 0 1
21476: PPUSH
21477: CALL_OW 255
21481: PUSH
21482: LD_EXP 1
21486: EQUAL
21487: PUSH
21488: LD_VAR 0 1
21492: PPUSH
21493: CALL_OW 264
21497: PUSH
21498: LD_INT 48
21500: EQUAL
21501: AND
21502: PUSH
21503: LD_EXP 242
21507: NOT
21508: AND
21509: IFFALSE 21517
// sibdone else
21511: CALL 21640 0 0
21515: GO 21553
// if ( getside ( veh ) = am ) and ( getweapon ( veh ) = us_siberium_rocket ) then
21517: LD_VAR 0 1
21521: PPUSH
21522: CALL_OW 255
21526: PUSH
21527: LD_EXP 2
21531: EQUAL
21532: PUSH
21533: LD_VAR 0 1
21537: PPUSH
21538: CALL_OW 264
21542: PUSH
21543: LD_INT 8
21545: EQUAL
21546: AND
21547: IFFALSE 21553
// sibdone2 ;
21549: CALL 22192 0 0
21553: PPOPN 2
21555: END
// on weaponplaced ( bunk , fact ) do if ( getside ( bunk ) = ru ) and ( getbweapon ( bunk ) = ru_siberium_rocket ) and not rusacimajisib then
21556: LD_VAR 0 1
21560: PPUSH
21561: CALL_OW 255
21565: PUSH
21566: LD_EXP 1
21570: EQUAL
21571: PUSH
21572: LD_VAR 0 1
21576: PPUSH
21577: CALL_OW 269
21581: PUSH
21582: LD_INT 48
21584: EQUAL
21585: AND
21586: PUSH
21587: LD_EXP 242
21591: NOT
21592: AND
21593: IFFALSE 21601
// sibdone else
21595: CALL 21640 0 0
21599: GO 21637
// if ( getside ( bunk ) = am ) and ( getbweapon ( bunk ) = us_siberium_rocket ) then
21601: LD_VAR 0 1
21605: PPUSH
21606: CALL_OW 255
21610: PUSH
21611: LD_EXP 2
21615: EQUAL
21616: PUSH
21617: LD_VAR 0 1
21621: PPUSH
21622: CALL_OW 269
21626: PUSH
21627: LD_INT 8
21629: EQUAL
21630: AND
21631: IFFALSE 21637
// sibdone2 ;
21633: CALL 22192 0 0
21637: PPOPN 2
21639: END
// export vyhrozoval ; function sibdone ; var tmp ; begin
21640: LD_INT 0
21642: PPUSH
21643: PPUSH
// rusacimajisib = true ;
21644: LD_ADDR_EXP 242
21648: PUSH
21649: LD_INT 1
21651: ST_TO_ADDR
// tmp = unitfilter ( ostatni , [ [ f_sex , sex_male ] , [ f_ok ] ] ) ;
21652: LD_ADDR_VAR 0 2
21656: PUSH
21657: LD_LOC 20
21661: PPUSH
21662: LD_INT 26
21664: PUSH
21665: LD_INT 1
21667: PUSH
21668: EMPTY
21669: LIST
21670: LIST
21671: PUSH
21672: LD_INT 50
21674: PUSH
21675: EMPTY
21676: LIST
21677: PUSH
21678: EMPTY
21679: LIST
21680: LIST
21681: PPUSH
21682: CALL_OW 72
21686: ST_TO_ADDR
// if not tmp then
21687: LD_VAR 0 2
21691: NOT
21692: IFFALSE 21729
// tmp = unitfilter ( lidi , [ [ f_sex , sex_male ] , [ f_ok ] ] ) ;
21694: LD_ADDR_VAR 0 2
21698: PUSH
21699: LD_LOC 19
21703: PPUSH
21704: LD_INT 26
21706: PUSH
21707: LD_INT 1
21709: PUSH
21710: EMPTY
21711: LIST
21712: LIST
21713: PUSH
21714: LD_INT 50
21716: PUSH
21717: EMPTY
21718: LIST
21719: PUSH
21720: EMPTY
21721: LIST
21722: LIST
21723: PPUSH
21724: CALL_OW 72
21728: ST_TO_ADDR
// dialogueon ;
21729: CALL_OW 6
// if tmp then
21733: LD_VAR 0 2
21737: IFFALSE 21755
// say ( tmp [ 1 ] , DRuBomb-Rsol1-1 ) ;
21739: LD_VAR 0 2
21743: PUSH
21744: LD_INT 1
21746: ARRAY
21747: PPUSH
21748: LD_STRING DRuBomb-Rsol1-1
21750: PPUSH
21751: CALL_OW 88
// dialogueoff ;
21755: CALL_OW 7
// case query ( QUseBomb ) of 1 :
21759: LD_STRING QUseBomb
21761: PPUSH
21762: CALL_OW 97
21766: PUSH
21767: LD_INT 1
21769: DOUBLE
21770: EQUAL
21771: IFTRUE 21775
21773: GO 22168
21775: POP
// begin vyhrozoval = true ;
21776: LD_ADDR_EXP 243
21780: PUSH
21781: LD_INT 1
21783: ST_TO_ADDR
// dialogueon ;
21784: CALL_OW 6
// forcesay ( burlak , DQrUseBomb#1-Bur-1 ) ;
21788: LD_EXP 233
21792: PPUSH
21793: LD_STRING DQrUseBomb#1-Bur-1
21795: PPUSH
21796: CALL_OW 91
// if isok ( powel ) then
21800: LD_EXP 236
21804: PPUSH
21805: CALL_OW 302
21809: IFFALSE 21825
// say ( powel , DQrUseBomb#1-Pow-1 ) else
21811: LD_EXP 236
21815: PPUSH
21816: LD_STRING DQrUseBomb#1-Pow-1
21818: PPUSH
21819: CALL_OW 88
21823: GO 21890
// begin tmp = filterallunits ( [ [ f_side , am ] , [ f_sex , sex_male ] , [ f_ok ] ] ) ;
21825: LD_ADDR_VAR 0 2
21829: PUSH
21830: LD_INT 22
21832: PUSH
21833: LD_EXP 2
21837: PUSH
21838: EMPTY
21839: LIST
21840: LIST
21841: PUSH
21842: LD_INT 26
21844: PUSH
21845: LD_INT 1
21847: PUSH
21848: EMPTY
21849: LIST
21850: LIST
21851: PUSH
21852: LD_INT 50
21854: PUSH
21855: EMPTY
21856: LIST
21857: PUSH
21858: EMPTY
21859: LIST
21860: LIST
21861: LIST
21862: PPUSH
21863: CALL_OW 69
21867: ST_TO_ADDR
// if tmp then
21868: LD_VAR 0 2
21872: IFFALSE 21890
// say ( tmp [ 1 ] , DQrUseBomb#1-Pow-1 ) ;
21874: LD_VAR 0 2
21878: PUSH
21879: LD_INT 1
21881: ARRAY
21882: PPUSH
21883: LD_STRING DQrUseBomb#1-Pow-1
21885: PPUSH
21886: CALL_OW 88
// end ; if isok ( jmm ) then
21890: LD_EXP 234
21894: PPUSH
21895: CALL_OW 302
21899: IFFALSE 21915
// say ( jmm , DQrUseBomb#1-JMM-1 ) else
21901: LD_EXP 234
21905: PPUSH
21906: LD_STRING DQrUseBomb#1-JMM-1
21908: PPUSH
21909: CALL_OW 88
21913: GO 21980
// begin tmp = filterallunits ( [ [ f_side , al ] , [ f_sex , sex_male ] , [ f_ok ] ] ) ;
21915: LD_ADDR_VAR 0 2
21919: PUSH
21920: LD_INT 22
21922: PUSH
21923: LD_EXP 3
21927: PUSH
21928: EMPTY
21929: LIST
21930: LIST
21931: PUSH
21932: LD_INT 26
21934: PUSH
21935: LD_INT 1
21937: PUSH
21938: EMPTY
21939: LIST
21940: LIST
21941: PUSH
21942: LD_INT 50
21944: PUSH
21945: EMPTY
21946: LIST
21947: PUSH
21948: EMPTY
21949: LIST
21950: LIST
21951: LIST
21952: PPUSH
21953: CALL_OW 69
21957: ST_TO_ADDR
// if tmp then
21958: LD_VAR 0 2
21962: IFFALSE 21980
// say ( tmp [ 1 ] , DQrUseBomb#1-JMM-1 ) ;
21964: LD_VAR 0 2
21968: PUSH
21969: LD_INT 1
21971: ARRAY
21972: PPUSH
21973: LD_STRING DQrUseBomb#1-JMM-1
21975: PPUSH
21976: CALL_OW 88
// end ; if isok ( heike ) then
21980: LD_EXP 237
21984: PPUSH
21985: CALL_OW 302
21989: IFFALSE 22005
// say ( heike , DQrUseBomb#1-Hke-1 ) else
21991: LD_EXP 237
21995: PPUSH
21996: LD_STRING DQrUseBomb#1-Hke-1
21998: PPUSH
21999: CALL_OW 88
22003: GO 22162
// if isok ( farmer ) then
22005: LD_EXP 238
22009: PPUSH
22010: CALL_OW 302
22014: IFFALSE 22030
// say ( farmer , DQrUseBomb#1-Frm-1 ) else
22016: LD_EXP 238
22020: PPUSH
22021: LD_STRING DQrUseBomb#1-Frm-1
22023: PPUSH
22024: CALL_OW 88
22028: GO 22162
// begin tmp = filterallunits ( [ [ f_side , le ] , [ f_sex , sex_male ] , [ f_ok ] ] ) ;
22030: LD_ADDR_VAR 0 2
22034: PUSH
22035: LD_INT 22
22037: PUSH
22038: LD_EXP 4
22042: PUSH
22043: EMPTY
22044: LIST
22045: LIST
22046: PUSH
22047: LD_INT 26
22049: PUSH
22050: LD_INT 1
22052: PUSH
22053: EMPTY
22054: LIST
22055: LIST
22056: PUSH
22057: LD_INT 50
22059: PUSH
22060: EMPTY
22061: LIST
22062: PUSH
22063: EMPTY
22064: LIST
22065: LIST
22066: LIST
22067: PPUSH
22068: CALL_OW 69
22072: ST_TO_ADDR
// if tmp then
22073: LD_VAR 0 2
22077: IFFALSE 22097
// say ( tmp [ 1 ] , DQrUseBomb#1-Frm-1 ) else
22079: LD_VAR 0 2
22083: PUSH
22084: LD_INT 1
22086: ARRAY
22087: PPUSH
22088: LD_STRING DQrUseBomb#1-Frm-1
22090: PPUSH
22091: CALL_OW 88
22095: GO 22162
// begin tmp = filterallunits ( [ [ f_side , le ] , [ f_sex , sex_female ] , [ f_ok ] ] ) ;
22097: LD_ADDR_VAR 0 2
22101: PUSH
22102: LD_INT 22
22104: PUSH
22105: LD_EXP 4
22109: PUSH
22110: EMPTY
22111: LIST
22112: LIST
22113: PUSH
22114: LD_INT 26
22116: PUSH
22117: LD_INT 2
22119: PUSH
22120: EMPTY
22121: LIST
22122: LIST
22123: PUSH
22124: LD_INT 50
22126: PUSH
22127: EMPTY
22128: LIST
22129: PUSH
22130: EMPTY
22131: LIST
22132: LIST
22133: LIST
22134: PPUSH
22135: CALL_OW 69
22139: ST_TO_ADDR
// if tmp then
22140: LD_VAR 0 2
22144: IFFALSE 22162
// say ( tmp [ 1 ] , DQrUseBomb#1-Hke-1 ) end ;
22146: LD_VAR 0 2
22150: PUSH
22151: LD_INT 1
22153: ARRAY
22154: PPUSH
22155: LD_STRING DQrUseBomb#1-Hke-1
22157: PPUSH
22158: CALL_OW 88
// end ; dialogueoff ;
22162: CALL_OW 7
// end ; 2 :
22166: GO 22180
22168: LD_INT 2
22170: DOUBLE
22171: EQUAL
22172: IFTRUE 22176
22174: GO 22179
22176: POP
// begin end ; end ;
22177: GO 22180
22179: POP
// changemissionobjectives ( Mrocket ) ;
22180: LD_STRING Mrocket
22182: PPUSH
22183: CALL_OW 337
// end ;
22187: LD_VAR 0 1
22191: RET
// function sibdone2 ; var tmp ; begin
22192: LD_INT 0
22194: PPUSH
22195: PPUSH
// tmp = filterallunits ( [ [ f_side , am ] , [ f_sex , sex_male ] , [ f_ok ] ] ) ;
22196: LD_ADDR_VAR 0 2
22200: PUSH
22201: LD_INT 22
22203: PUSH
22204: LD_EXP 2
22208: PUSH
22209: EMPTY
22210: LIST
22211: LIST
22212: PUSH
22213: LD_INT 26
22215: PUSH
22216: LD_INT 1
22218: PUSH
22219: EMPTY
22220: LIST
22221: LIST
22222: PUSH
22223: LD_INT 50
22225: PUSH
22226: EMPTY
22227: LIST
22228: PUSH
22229: EMPTY
22230: LIST
22231: LIST
22232: LIST
22233: PPUSH
22234: CALL_OW 69
22238: ST_TO_ADDR
// dialogueon ;
22239: CALL_OW 6
// if isok ( powel ) then
22243: LD_EXP 236
22247: PPUSH
22248: CALL_OW 302
22252: IFFALSE 22268
// say ( powel , DAmBomb-Pow-1 ) else
22254: LD_EXP 236
22258: PPUSH
22259: LD_STRING DAmBomb-Pow-1
22261: PPUSH
22262: CALL_OW 88
22266: GO 22290
// if tmp then
22268: LD_VAR 0 2
22272: IFFALSE 22290
// say ( tmp [ 1 ] , DAmBomb-Pow-1 ) ;
22274: LD_VAR 0 2
22278: PUSH
22279: LD_INT 1
22281: ARRAY
22282: PPUSH
22283: LD_STRING DAmBomb-Pow-1
22285: PPUSH
22286: CALL_OW 88
// if tmp then
22290: LD_VAR 0 2
22294: IFFALSE 22308
// say ( burlak , DAmBomb-Bur-1 ) ;
22296: LD_EXP 233
22300: PPUSH
22301: LD_STRING DAmBomb-Bur-1
22303: PPUSH
22304: CALL_OW 88
// if isok ( powel ) then
22308: LD_EXP 236
22312: PPUSH
22313: CALL_OW 302
22317: IFFALSE 22333
// say ( powel , DAmBomb-Pow-2 ) else
22319: LD_EXP 236
22323: PPUSH
22324: LD_STRING DAmBomb-Pow-2
22326: PPUSH
22327: CALL_OW 88
22331: GO 22355
// if tmp then
22333: LD_VAR 0 2
22337: IFFALSE 22355
// say ( tmp [ 1 ] , DAmBomb-Pow-2 ) ;
22339: LD_VAR 0 2
22343: PUSH
22344: LD_INT 1
22346: ARRAY
22347: PPUSH
22348: LD_STRING DAmBomb-Pow-2
22350: PPUSH
22351: CALL_OW 88
// if tmp then
22355: LD_VAR 0 2
22359: IFFALSE 22373
// say ( burlak , DAmBomb-Bur-2 ) ;
22361: LD_EXP 233
22365: PPUSH
22366: LD_STRING DAmBomb-Bur-2
22368: PPUSH
22369: CALL_OW 88
// dialogueoff ;
22373: CALL_OW 7
// youlost ( Bomb ) ;
22377: LD_STRING Bomb
22379: PPUSH
22380: CALL_OW 104
// end ;
22384: LD_VAR 0 1
22388: RET
// export vezeartef , artef_gone ; on artifactloaded ( un , size ) do if getside ( un ) = ru then
22389: LD_VAR 0 1
22393: PPUSH
22394: CALL_OW 255
22398: PUSH
22399: LD_EXP 1
22403: EQUAL
22404: IFFALSE 22424
// begin artef_gone = true ;
22406: LD_ADDR_EXP 245
22410: PUSH
22411: LD_INT 1
22413: ST_TO_ADDR
// changemissionobjectives ( Martef ) ;
22414: LD_STRING Martef
22416: PPUSH
22417: CALL_OW 337
// disable ( 06 ) ;
22421: LD_INT 6
22423: DISABLE_MARKED
// end ;
22424: PPOPN 2
22426: END
// every 0 0$1 trigger rusacimajisib do
22427: LD_EXP 242
22431: IFFALSE 22457
22433: GO 22435
22435: DISABLE
// begin if not findartifact ( 5 ) then
22436: LD_INT 5
22438: PPUSH
22439: CALL_OW 469
22443: NOT
22444: IFFALSE 22456
// artef_gone = true else
22446: LD_ADDR_EXP 245
22450: PUSH
22451: LD_INT 1
22453: ST_TO_ADDR
22454: GO 22457
// enable ;
22456: ENABLE
// end ;
22457: END
// export hodiliju ; export legionmed ; on siberiterocketexploded ( un , x , y ) do var tmp ;
22458: LD_INT 0
22460: PPUSH
// begin SA_OnSiberiteRocketExploded ( un , x , y ) ;
22461: LD_VAR 0 1
22465: PPUSH
22466: LD_VAR 0 2
22470: PPUSH
22471: LD_VAR 0 3
22475: PPUSH
22476: CALL 26939 0 3
// if getside ( un ) = ru then
22480: LD_VAR 0 1
22484: PPUSH
22485: CALL_OW 255
22489: PUSH
22490: LD_EXP 1
22494: EQUAL
22495: IFFALSE 22829
// begin hodiliju = true ;
22497: LD_ADDR_EXP 246
22501: PUSH
22502: LD_INT 1
22504: ST_TO_ADDR
// disable ;
22505: DISABLE
// tmp = filterallunits ( [ [ f_side , al ] , [ f_sex , sex_male ] ] ) ;
22506: LD_ADDR_VAR 0 4
22510: PUSH
22511: LD_INT 22
22513: PUSH
22514: LD_EXP 3
22518: PUSH
22519: EMPTY
22520: LIST
22521: LIST
22522: PUSH
22523: LD_INT 26
22525: PUSH
22526: LD_INT 1
22528: PUSH
22529: EMPTY
22530: LIST
22531: LIST
22532: PUSH
22533: EMPTY
22534: LIST
22535: LIST
22536: PPUSH
22537: CALL_OW 69
22541: ST_TO_ADDR
// wait ( 0 0$7 ) ;
22542: LD_INT 245
22544: PPUSH
22545: CALL_OW 67
// if not artef_gone then
22549: LD_EXP 245
22553: NOT
22554: IFFALSE 22686
// begin dialogueon ;
22556: CALL_OW 6
// if isok ( jmm ) then
22560: LD_EXP 234
22564: PPUSH
22565: CALL_OW 302
22569: IFFALSE 22585
// say ( jmm , DAfterBlastAll-JMM-1 ) else
22571: LD_EXP 234
22575: PPUSH
22576: LD_STRING DAfterBlastAll-JMM-1
22578: PPUSH
22579: CALL_OW 88
22583: GO 22607
// if tmp then
22585: LD_VAR 0 4
22589: IFFALSE 22607
// forcesay ( tmp [ 1 ] , DAfterBlastAll-JMM-1 ) ;
22591: LD_VAR 0 4
22595: PUSH
22596: LD_INT 1
22598: ARRAY
22599: PPUSH
22600: LD_STRING DAfterBlastAll-JMM-1
22602: PPUSH
22603: CALL_OW 91
// if tmp then
22607: LD_VAR 0 4
22611: IFFALSE 22625
// say ( burlak , DAfterBlastAll-Bur-1 ) ;
22613: LD_EXP 233
22617: PPUSH
22618: LD_STRING DAfterBlastAll-Bur-1
22620: PPUSH
22621: CALL_OW 88
// if isok ( jmm ) then
22625: LD_EXP 234
22629: PPUSH
22630: CALL_OW 302
22634: IFFALSE 22650
// say ( jmm , DAfterBlastAll-JMM-2 ) else
22636: LD_EXP 234
22640: PPUSH
22641: LD_STRING DAfterBlastAll-JMM-2
22643: PPUSH
22644: CALL_OW 88
22648: GO 22672
// if tmp then
22650: LD_VAR 0 4
22654: IFFALSE 22672
// forcesay ( tmp [ 1 ] , DAfterBlastAll-JMM-2 ) ;
22656: LD_VAR 0 4
22660: PUSH
22661: LD_INT 1
22663: ARRAY
22664: PPUSH
22665: LD_STRING DAfterBlastAll-JMM-2
22667: PPUSH
22668: CALL_OW 91
// dialogueoff ;
22672: CALL_OW 7
// changemissionobjectives ( M1 ) ;
22676: LD_STRING M1
22678: PPUSH
22679: CALL_OW 337
// enable ( 08 ) ;
22683: LD_INT 8
22685: ENABLE_MARKED
// end ; if not lesurr then
22686: LD_EXP 248
22690: NOT
22691: IFFALSE 22829
// begin tmp = filterallunits ( [ [ f_side , le ] , [ f_sex , sex_male ] ] ) ;
22693: LD_ADDR_VAR 0 4
22697: PUSH
22698: LD_INT 22
22700: PUSH
22701: LD_EXP 4
22705: PUSH
22706: EMPTY
22707: LIST
22708: LIST
22709: PUSH
22710: LD_INT 26
22712: PUSH
22713: LD_INT 1
22715: PUSH
22716: EMPTY
22717: LIST
22718: LIST
22719: PUSH
22720: EMPTY
22721: LIST
22722: LIST
22723: PPUSH
22724: CALL_OW 69
22728: ST_TO_ADDR
// dialogueon ;
22729: CALL_OW 6
// if isok ( heike ) then
22733: LD_EXP 237
22737: PPUSH
22738: CALL_OW 302
22742: IFFALSE 22758
// say ( heike , DAfterBlastLeg-Hke-1 ) else
22744: LD_EXP 237
22748: PPUSH
22749: LD_STRING DAfterBlastLeg-Hke-1
22751: PPUSH
22752: CALL_OW 88
22756: GO 22805
// if isok ( farmer ) then
22758: LD_EXP 238
22762: PPUSH
22763: CALL_OW 302
22767: IFFALSE 22783
// say ( farmer , DAfterBlastLeg-Frm-1 ) else
22769: LD_EXP 238
22773: PPUSH
22774: LD_STRING DAfterBlastLeg-Frm-1
22776: PPUSH
22777: CALL_OW 88
22781: GO 22805
// if tmp then
22783: LD_VAR 0 4
22787: IFFALSE 22805
// forcesay ( tmp [ 1 ] , DAfterBlastLeg-Merc1-1 ) ;
22789: LD_VAR 0 4
22793: PUSH
22794: LD_INT 1
22796: ARRAY
22797: PPUSH
22798: LD_STRING DAfterBlastLeg-Merc1-1
22800: PPUSH
22801: CALL_OW 91
// dialogueoff ;
22805: CALL_OW 7
// lesurr = true ;
22809: LD_ADDR_EXP 248
22813: PUSH
22814: LD_INT 1
22816: ST_TO_ADDR
// legionmed = true ;
22817: LD_ADDR_EXP 247
22821: PUSH
22822: LD_INT 1
22824: ST_TO_ADDR
// legiontobali ;
22825: CALL 22832 0 0
// end ; end ; end ;
22829: PPOPN 4
22831: END
// var all_odch_le_lidi ; function legiontobali ; var tmp , tmp1 , tmp2 , tmp3 , tmp4 ; begin
22832: LD_INT 0
22834: PPUSH
22835: PPUSH
22836: PPUSH
22837: PPUSH
22838: PPUSH
22839: PPUSH
// disable ( 09 ) ;
22840: LD_INT 9
22842: DISABLE_MARKED
// hint ( Legion ) ;
22843: LD_STRING Legion
22845: PPUSH
22846: CALL_OW 339
// tmp = filterallunits ( [ [ f_side , le ] , [ f_type , unit_human ] ] ) ;
22850: LD_ADDR_VAR 0 2
22854: PUSH
22855: LD_INT 22
22857: PUSH
22858: LD_EXP 4
22862: PUSH
22863: EMPTY
22864: LIST
22865: LIST
22866: PUSH
22867: LD_INT 21
22869: PUSH
22870: LD_INT 1
22872: PUSH
22873: EMPTY
22874: LIST
22875: LIST
22876: PUSH
22877: EMPTY
22878: LIST
22879: LIST
22880: PPUSH
22881: CALL_OW 69
22885: ST_TO_ADDR
// tmp1 = filterallunits ( [ [ f_side , le ] , [ f_type , unit_vehicle ] ] ) ;
22886: LD_ADDR_VAR 0 3
22890: PUSH
22891: LD_INT 22
22893: PUSH
22894: LD_EXP 4
22898: PUSH
22899: EMPTY
22900: LIST
22901: LIST
22902: PUSH
22903: LD_INT 21
22905: PUSH
22906: LD_INT 2
22908: PUSH
22909: EMPTY
22910: LIST
22911: LIST
22912: PUSH
22913: EMPTY
22914: LIST
22915: LIST
22916: PPUSH
22917: CALL_OW 69
22921: ST_TO_ADDR
// if isok ( ledepo00 ) and ( getside ( ledepo00 ) = le ) then
22922: LD_INT 72
22924: PPUSH
22925: CALL_OW 302
22929: PUSH
22930: LD_INT 72
22932: PPUSH
22933: CALL_OW 255
22937: PUSH
22938: LD_EXP 4
22942: EQUAL
22943: AND
22944: IFFALSE 22965
// setsidebase ( getbase ( ledepo00 ) , sr ) else
22946: LD_INT 72
22948: PPUSH
22949: CALL_OW 274
22953: PPUSH
22954: LD_EXP 5
22958: PPUSH
22959: CALL_OW 236
22963: GO 22977
// setside ( ledepo00 , sr ) ;
22965: LD_INT 72
22967: PPUSH
22968: LD_EXP 5
22972: PPUSH
22973: CALL_OW 235
// if isok ( leware00 ) and ( getside ( leware00 ) = le ) then
22977: LD_INT 51
22979: PPUSH
22980: CALL_OW 302
22984: PUSH
22985: LD_INT 51
22987: PPUSH
22988: CALL_OW 255
22992: PUSH
22993: LD_EXP 4
22997: EQUAL
22998: AND
22999: IFFALSE 23020
// setsidebase ( getbase ( leware00 ) , sr ) else
23001: LD_INT 51
23003: PPUSH
23004: CALL_OW 274
23008: PPUSH
23009: LD_EXP 5
23013: PPUSH
23014: CALL_OW 236
23018: GO 23060
// setside ( filterallunits ( [ [ f_side , le ] , [ f_type , unit_building ] ] ) , sr ) ;
23020: LD_INT 22
23022: PUSH
23023: LD_EXP 4
23027: PUSH
23028: EMPTY
23029: LIST
23030: LIST
23031: PUSH
23032: LD_INT 21
23034: PUSH
23035: LD_INT 3
23037: PUSH
23038: EMPTY
23039: LIST
23040: LIST
23041: PUSH
23042: EMPTY
23043: LIST
23044: LIST
23045: PPUSH
23046: CALL_OW 69
23050: PPUSH
23051: LD_EXP 5
23055: PPUSH
23056: CALL_OW 235
// total_sr = total_sr + 0 + tmp ;
23060: LD_ADDR_EXP 215
23064: PUSH
23065: LD_EXP 215
23069: PUSH
23070: LD_INT 0
23072: PLUS
23073: PUSH
23074: LD_VAR 0 2
23078: PLUS
23079: ST_TO_ADDR
// setside ( tmp , sr ) ;
23080: LD_VAR 0 2
23084: PPUSH
23085: LD_EXP 5
23089: PPUSH
23090: CALL_OW 235
// setside ( tmp1 , sr ) ;
23094: LD_VAR 0 3
23098: PPUSH
23099: LD_EXP 5
23103: PPUSH
23104: CALL_OW 235
// tmp = unitfilter ( tmp , [ [ f_ok ] ] ) ;
23108: LD_ADDR_VAR 0 2
23112: PUSH
23113: LD_VAR 0 2
23117: PPUSH
23118: LD_INT 50
23120: PUSH
23121: EMPTY
23122: LIST
23123: PUSH
23124: EMPTY
23125: LIST
23126: PPUSH
23127: CALL_OW 72
23131: ST_TO_ADDR
// tmp1 = tmp diff [ heike , farmer ] ;
23132: LD_ADDR_VAR 0 3
23136: PUSH
23137: LD_VAR 0 2
23141: PUSH
23142: LD_EXP 237
23146: PUSH
23147: LD_EXP 238
23151: PUSH
23152: EMPTY
23153: LIST
23154: LIST
23155: DIFF
23156: ST_TO_ADDR
// for tmp2 = 1 to 0 + tmp1 do
23157: LD_ADDR_VAR 0 4
23161: PUSH
23162: DOUBLE
23163: LD_INT 1
23165: DEC
23166: ST_TO_ADDR
23167: LD_INT 0
23169: PUSH
23170: LD_VAR 0 3
23174: PLUS
23175: PUSH
23176: FOR_TO
23177: IFFALSE 23337
// if tmp2 <= ( ( 0 + tmp1 ) / 3 ) then
23179: LD_VAR 0 4
23183: PUSH
23184: LD_INT 0
23186: PUSH
23187: LD_VAR 0 3
23191: PLUS
23192: PUSH
23193: LD_INT 3
23195: DIVREAL
23196: LESSEQUAL
23197: IFFALSE 23335
// begin tmp = tmp diff tmp1 [ tmp2 ] ;
23199: LD_ADDR_VAR 0 2
23203: PUSH
23204: LD_VAR 0 2
23208: PUSH
23209: LD_VAR 0 3
23213: PUSH
23214: LD_VAR 0 4
23218: ARRAY
23219: DIFF
23220: ST_TO_ADDR
// setside ( tmp1 [ tmp2 ] , ru ) ;
23221: LD_VAR 0 3
23225: PUSH
23226: LD_VAR 0 4
23230: ARRAY
23231: PPUSH
23232: LD_EXP 1
23236: PPUSH
23237: CALL_OW 235
// if gettype ( isinunit ( tmp1 [ tmp2 ] ) ) = unit_vehicle then
23241: LD_VAR 0 3
23245: PUSH
23246: LD_VAR 0 4
23250: ARRAY
23251: PPUSH
23252: CALL_OW 310
23256: PPUSH
23257: CALL_OW 247
23261: PUSH
23262: LD_INT 2
23264: EQUAL
23265: IFFALSE 23294
// setside ( isinunit ( tmp1 [ tmp2 ] ) , ru ) else
23267: LD_VAR 0 3
23271: PUSH
23272: LD_VAR 0 4
23276: ARRAY
23277: PPUSH
23278: CALL_OW 310
23282: PPUSH
23283: LD_EXP 1
23287: PPUSH
23288: CALL_OW 235
23292: GO 23335
// if gettype ( isinunit ( tmp1 [ tmp2 ] ) ) = unit_building then
23294: LD_VAR 0 3
23298: PUSH
23299: LD_VAR 0 4
23303: ARRAY
23304: PPUSH
23305: CALL_OW 310
23309: PPUSH
23310: CALL_OW 247
23314: PUSH
23315: LD_INT 3
23317: EQUAL
23318: IFFALSE 23335
// comexitbuilding ( tmp1 [ tmp2 ] ) ;
23320: LD_VAR 0 3
23324: PUSH
23325: LD_VAR 0 4
23329: ARRAY
23330: PPUSH
23331: CALL_OW 122
// end ;
23335: GO 23176
23337: POP
23338: POP
// tmp3 = [ ] ;
23339: LD_ADDR_VAR 0 5
23343: PUSH
23344: EMPTY
23345: ST_TO_ADDR
// tmp4 = [ ] ;
23346: LD_ADDR_VAR 0 6
23350: PUSH
23351: EMPTY
23352: ST_TO_ADDR
// tmp1 = [ ] ;
23353: LD_ADDR_VAR 0 3
23357: PUSH
23358: EMPTY
23359: ST_TO_ADDR
// for tmp2 in tmp do
23360: LD_ADDR_VAR 0 4
23364: PUSH
23365: LD_VAR 0 2
23369: PUSH
23370: FOR_IN
23371: IFFALSE 23476
// if gettype ( isinunit ( tmp2 ) ) = unit_vehicle then
23373: LD_VAR 0 4
23377: PPUSH
23378: CALL_OW 310
23382: PPUSH
23383: CALL_OW 247
23387: PUSH
23388: LD_INT 2
23390: EQUAL
23391: IFFALSE 23455
// if not isinarea ( isinunit ( tmp2 ) , lebase ) then
23393: LD_VAR 0 4
23397: PPUSH
23398: CALL_OW 310
23402: PPUSH
23403: LD_INT 13
23405: PPUSH
23406: CALL_OW 308
23410: NOT
23411: IFFALSE 23434
// tmp3 = tmp3 ^ [ tmp2 ] else
23413: LD_ADDR_VAR 0 5
23417: PUSH
23418: LD_VAR 0 5
23422: PUSH
23423: LD_VAR 0 4
23427: PUSH
23428: EMPTY
23429: LIST
23430: ADD
23431: ST_TO_ADDR
23432: GO 23453
// tmp4 = tmp4 ^ [ tmp2 ] else
23434: LD_ADDR_VAR 0 6
23438: PUSH
23439: LD_VAR 0 6
23443: PUSH
23444: LD_VAR 0 4
23448: PUSH
23449: EMPTY
23450: LIST
23451: ADD
23452: ST_TO_ADDR
23453: GO 23474
// tmp1 = tmp1 ^ [ tmp2 ] ;
23455: LD_ADDR_VAR 0 3
23459: PUSH
23460: LD_VAR 0 3
23464: PUSH
23465: LD_VAR 0 4
23469: PUSH
23470: EMPTY
23471: LIST
23472: ADD
23473: ST_TO_ADDR
23474: GO 23370
23476: POP
23477: POP
// comwait ( tmp4 , 17 ) ;
23478: LD_VAR 0 6
23482: PPUSH
23483: LD_INT 17
23485: PPUSH
23486: CALL_OW 142
// addcomexitvehicle ( tmp4 ) ;
23490: LD_VAR 0 6
23494: PPUSH
23495: CALL_OW 181
// addcommovetoarea ( tmp4 , leexitar ) ;
23499: LD_VAR 0 6
23503: PPUSH
23504: LD_INT 18
23506: PPUSH
23507: CALL_OW 173
// commovetoarea ( tmp3 , lemeetar ) ;
23511: LD_VAR 0 5
23515: PPUSH
23516: LD_INT 19
23518: PPUSH
23519: CALL_OW 113
// addcomexitvehicle ( tmp3 ) ;
23523: LD_VAR 0 5
23527: PPUSH
23528: CALL_OW 181
// addcommovetoarea ( tmp3 , leexitar ) ;
23532: LD_VAR 0 5
23536: PPUSH
23537: LD_INT 18
23539: PPUSH
23540: CALL_OW 173
// commovetoarea ( tmp1 , leexitar ) ;
23544: LD_VAR 0 3
23548: PPUSH
23549: LD_INT 18
23551: PPUSH
23552: CALL_OW 113
// all_odch_le_lidi = tmp1 ^ tmp3 ^ tmp4 ;
23556: LD_ADDR_LOC 44
23560: PUSH
23561: LD_VAR 0 3
23565: PUSH
23566: LD_VAR 0 5
23570: ADD
23571: PUSH
23572: LD_VAR 0 6
23576: ADD
23577: ST_TO_ADDR
// enable ( 04 ) ;
23578: LD_INT 4
23580: ENABLE_MARKED
// end ;
23581: LD_VAR 0 1
23585: RET
// function odch_le_lidi ; begin
23586: LD_INT 0
23588: PPUSH
// odch_le_lidi_ = filterunitsinarea ( leexitar , [ [ f_type , unit_human ] , [ f_side , sr ] ] ) ;
23589: LD_ADDR_LOC 45
23593: PUSH
23594: LD_INT 18
23596: PPUSH
23597: LD_INT 21
23599: PUSH
23600: LD_INT 1
23602: PUSH
23603: EMPTY
23604: LIST
23605: LIST
23606: PUSH
23607: LD_INT 22
23609: PUSH
23610: LD_EXP 5
23614: PUSH
23615: EMPTY
23616: LIST
23617: LIST
23618: PUSH
23619: EMPTY
23620: LIST
23621: LIST
23622: PPUSH
23623: CALL_OW 70
23627: ST_TO_ADDR
// result = 0 + odch_le_lidi_ ;
23628: LD_ADDR_VAR 0 1
23632: PUSH
23633: LD_INT 0
23635: PUSH
23636: LD_LOC 45
23640: PLUS
23641: ST_TO_ADDR
// end ;
23642: LD_VAR 0 1
23646: RET
// var odch_le_lidi_ ; every 0 0$2 + 3 trigger odch_le_lidi marked 04 do var tmp ;
23647: CALL 23586 0 0
23651: IFFALSE 23708
23653: GO 23655
23655: DISABLE
23656: LD_INT 0
23658: PPUSH
// begin all_odch_le_lidi = all_odch_le_lidi diff odch_le_lidi_ ;
23659: LD_ADDR_LOC 44
23663: PUSH
23664: LD_LOC 44
23668: PUSH
23669: LD_LOC 45
23673: DIFF
23674: ST_TO_ADDR
// for tmp in odch_le_lidi_ do
23675: LD_ADDR_VAR 0 1
23679: PUSH
23680: LD_LOC 45
23684: PUSH
23685: FOR_IN
23686: IFFALSE 23699
// destroyunit ( tmp ) ;
23688: LD_VAR 0 1
23692: PPUSH
23693: CALL_OW 65
23697: GO 23685
23699: POP
23700: POP
// if all_odch_le_lidi then
23701: LD_LOC 44
23705: IFFALSE 23708
// enable ;
23707: ENABLE
// end ;
23708: PPOPN 1
23710: END
// function surrender ( budlist , side ) ; var tmp ; begin
23711: LD_INT 0
23713: PPUSH
23714: PPUSH
// tmp = unitfilter ( budlist , [ [ f_side , side ] , [ f_lives , hranice_umirani + 1 ] ] ) ;
23715: LD_ADDR_VAR 0 4
23719: PUSH
23720: LD_VAR 0 1
23724: PPUSH
23725: LD_INT 22
23727: PUSH
23728: LD_VAR 0 2
23732: PUSH
23733: EMPTY
23734: LIST
23735: LIST
23736: PUSH
23737: LD_INT 24
23739: PUSH
23740: LD_INT 250
23742: PUSH
23743: LD_INT 1
23745: PLUS
23746: PUSH
23747: EMPTY
23748: LIST
23749: LIST
23750: PUSH
23751: EMPTY
23752: LIST
23753: LIST
23754: PPUSH
23755: CALL_OW 72
23759: ST_TO_ADDR
// result = ( 0 + tmp ) < ( ( 0 + budlist ) / bdkoef ) ;
23760: LD_ADDR_VAR 0 3
23764: PUSH
23765: LD_INT 0
23767: PUSH
23768: LD_VAR 0 4
23772: PLUS
23773: PUSH
23774: LD_INT 0
23776: PUSH
23777: LD_VAR 0 1
23781: PLUS
23782: PUSH
23783: LD_EXP 210
23787: DIVREAL
23788: LESS
23789: ST_TO_ADDR
// end ;
23790: LD_VAR 0 3
23794: RET
// var all_odch_al_lidi ; every 0 0$3 + 5 trigger surrender ( aliancnici , al ) do var tmp , tmp1 , tmp2 , tmp3 , tmp4 ;
23795: LD_EXP 232
23799: PPUSH
23800: LD_EXP 3
23804: PPUSH
23805: CALL 23711 0 2
23809: IFFALSE 24434
23811: GO 23813
23813: DISABLE
23814: LD_INT 0
23816: PPUSH
23817: PPUSH
23818: PPUSH
23819: PPUSH
23820: PPUSH
// begin al_surr = true ;
23821: LD_ADDR_EXP 220
23825: PUSH
23826: LD_INT 1
23828: ST_TO_ADDR
// tmp = filterallunits ( [ [ f_side , al ] , [ f_sex , sex_male ] ] ) ;
23829: LD_ADDR_VAR 0 1
23833: PUSH
23834: LD_INT 22
23836: PUSH
23837: LD_EXP 3
23841: PUSH
23842: EMPTY
23843: LIST
23844: LIST
23845: PUSH
23846: LD_INT 26
23848: PUSH
23849: LD_INT 1
23851: PUSH
23852: EMPTY
23853: LIST
23854: LIST
23855: PUSH
23856: EMPTY
23857: LIST
23858: LIST
23859: PPUSH
23860: CALL_OW 69
23864: ST_TO_ADDR
// dialogueon ;
23865: CALL_OW 6
// if isok ( jmm ) then
23869: LD_EXP 234
23873: PPUSH
23874: CALL_OW 302
23878: IFFALSE 23894
// say ( jmm , DSurrenderAlliance-JMM-1 ) else
23880: LD_EXP 234
23884: PPUSH
23885: LD_STRING DSurrenderAlliance-JMM-1
23887: PPUSH
23888: CALL_OW 88
23892: GO 23941
// if isok ( roth ) then
23894: LD_EXP 235
23898: PPUSH
23899: CALL_OW 302
23903: IFFALSE 23919
// say ( roth , DSurrenderAlliance-Roth-1 ) else
23905: LD_EXP 235
23909: PPUSH
23910: LD_STRING DSurrenderAlliance-Roth-1
23912: PPUSH
23913: CALL_OW 88
23917: GO 23941
// if tmp then
23919: LD_VAR 0 1
23923: IFFALSE 23941
// forcesay ( tmp [ 1 ] , DSurrenderAlliance-Sci1-1 ) ;
23925: LD_VAR 0 1
23929: PUSH
23930: LD_INT 1
23932: ARRAY
23933: PPUSH
23934: LD_STRING DSurrenderAlliance-Sci1-1
23936: PPUSH
23937: CALL_OW 91
// dialogueoff ;
23941: CALL_OW 7
// if not artef_gone then
23945: LD_EXP 245
23949: NOT
23950: IFFALSE 23959
// changemissionobjectives ( Martef ) ;
23952: LD_STRING Martef
23954: PPUSH
23955: CALL_OW 337
// disable ( 06 ) ;
23959: LD_INT 6
23961: DISABLE_MARKED
// disable ( 08 ) ;
23962: LD_INT 8
23964: DISABLE_MARKED
// tmp = filterallunits ( [ [ f_side , al ] , [ f_type , unit_human ] ] ) ;
23965: LD_ADDR_VAR 0 1
23969: PUSH
23970: LD_INT 22
23972: PUSH
23973: LD_EXP 3
23977: PUSH
23978: EMPTY
23979: LIST
23980: LIST
23981: PUSH
23982: LD_INT 21
23984: PUSH
23985: LD_INT 1
23987: PUSH
23988: EMPTY
23989: LIST
23990: LIST
23991: PUSH
23992: EMPTY
23993: LIST
23994: LIST
23995: PPUSH
23996: CALL_OW 69
24000: ST_TO_ADDR
// tmp1 = filterallunits ( [ [ f_side , al ] , [ f_type , unit_vehicle ] ] ) ;
24001: LD_ADDR_VAR 0 2
24005: PUSH
24006: LD_INT 22
24008: PUSH
24009: LD_EXP 3
24013: PUSH
24014: EMPTY
24015: LIST
24016: LIST
24017: PUSH
24018: LD_INT 21
24020: PUSH
24021: LD_INT 2
24023: PUSH
24024: EMPTY
24025: LIST
24026: LIST
24027: PUSH
24028: EMPTY
24029: LIST
24030: LIST
24031: PPUSH
24032: CALL_OW 69
24036: ST_TO_ADDR
// total_sr = total_sr + 0 + tmp ;
24037: LD_ADDR_EXP 215
24041: PUSH
24042: LD_EXP 215
24046: PUSH
24047: LD_INT 0
24049: PLUS
24050: PUSH
24051: LD_VAR 0 1
24055: PLUS
24056: ST_TO_ADDR
// if isok ( alware00 ) and ( getside ( alware00 ) = al ) then
24057: LD_INT 25
24059: PPUSH
24060: CALL_OW 302
24064: PUSH
24065: LD_INT 25
24067: PPUSH
24068: CALL_OW 255
24072: PUSH
24073: LD_EXP 3
24077: EQUAL
24078: AND
24079: IFFALSE 24100
// setsidebase ( getbase ( alware00 ) , sr ) else
24081: LD_INT 25
24083: PPUSH
24084: CALL_OW 274
24088: PPUSH
24089: LD_EXP 5
24093: PPUSH
24094: CALL_OW 236
24098: GO 24140
// setside ( filterallunits ( [ [ f_side , al ] , [ f_type , unit_building ] ] ) , sr ) ;
24100: LD_INT 22
24102: PUSH
24103: LD_EXP 3
24107: PUSH
24108: EMPTY
24109: LIST
24110: LIST
24111: PUSH
24112: LD_INT 21
24114: PUSH
24115: LD_INT 3
24117: PUSH
24118: EMPTY
24119: LIST
24120: LIST
24121: PUSH
24122: EMPTY
24123: LIST
24124: LIST
24125: PPUSH
24126: CALL_OW 69
24130: PPUSH
24131: LD_EXP 5
24135: PPUSH
24136: CALL_OW 235
// setside ( tmp , sr ) ;
24140: LD_VAR 0 1
24144: PPUSH
24145: LD_EXP 5
24149: PPUSH
24150: CALL_OW 235
// setside ( tmp1 , sr ) ;
24154: LD_VAR 0 2
24158: PPUSH
24159: LD_EXP 5
24163: PPUSH
24164: CALL_OW 235
// tmp = unitfilter ( tmp , [ [ f_ok ] ] ) ;
24168: LD_ADDR_VAR 0 1
24172: PUSH
24173: LD_VAR 0 1
24177: PPUSH
24178: LD_INT 50
24180: PUSH
24181: EMPTY
24182: LIST
24183: PUSH
24184: EMPTY
24185: LIST
24186: PPUSH
24187: CALL_OW 72
24191: ST_TO_ADDR
// tmp3 = [ ] ;
24192: LD_ADDR_VAR 0 4
24196: PUSH
24197: EMPTY
24198: ST_TO_ADDR
// tmp4 = [ ] ;
24199: LD_ADDR_VAR 0 5
24203: PUSH
24204: EMPTY
24205: ST_TO_ADDR
// tmp1 = [ ] ;
24206: LD_ADDR_VAR 0 2
24210: PUSH
24211: EMPTY
24212: ST_TO_ADDR
// for tmp2 in tmp do
24213: LD_ADDR_VAR 0 3
24217: PUSH
24218: LD_VAR 0 1
24222: PUSH
24223: FOR_IN
24224: IFFALSE 24329
// if gettype ( isinunit ( tmp2 ) ) = unit_vehicle then
24226: LD_VAR 0 3
24230: PPUSH
24231: CALL_OW 310
24235: PPUSH
24236: CALL_OW 247
24240: PUSH
24241: LD_INT 2
24243: EQUAL
24244: IFFALSE 24308
// if not isinarea ( isinunit ( tmp2 ) , albase ) then
24246: LD_VAR 0 3
24250: PPUSH
24251: CALL_OW 310
24255: PPUSH
24256: LD_INT 12
24258: PPUSH
24259: CALL_OW 308
24263: NOT
24264: IFFALSE 24287
// tmp3 = tmp3 ^ [ tmp2 ] else
24266: LD_ADDR_VAR 0 4
24270: PUSH
24271: LD_VAR 0 4
24275: PUSH
24276: LD_VAR 0 3
24280: PUSH
24281: EMPTY
24282: LIST
24283: ADD
24284: ST_TO_ADDR
24285: GO 24306
// tmp4 = tmp4 ^ [ tmp2 ] else
24287: LD_ADDR_VAR 0 5
24291: PUSH
24292: LD_VAR 0 5
24296: PUSH
24297: LD_VAR 0 3
24301: PUSH
24302: EMPTY
24303: LIST
24304: ADD
24305: ST_TO_ADDR
24306: GO 24327
// tmp1 = tmp1 ^ [ tmp2 ] ;
24308: LD_ADDR_VAR 0 2
24312: PUSH
24313: LD_VAR 0 2
24317: PUSH
24318: LD_VAR 0 3
24322: PUSH
24323: EMPTY
24324: LIST
24325: ADD
24326: ST_TO_ADDR
24327: GO 24223
24329: POP
24330: POP
// comwait ( tmp4 , 17 ) ;
24331: LD_VAR 0 5
24335: PPUSH
24336: LD_INT 17
24338: PPUSH
24339: CALL_OW 142
// addcomexitvehicle ( tmp4 ) ;
24343: LD_VAR 0 5
24347: PPUSH
24348: CALL_OW 181
// addcommovetoarea ( tmp4 , alexitar ) ;
24352: LD_VAR 0 5
24356: PPUSH
24357: LD_INT 16
24359: PPUSH
24360: CALL_OW 173
// commovetoarea ( tmp3 , almeetar ) ;
24364: LD_VAR 0 4
24368: PPUSH
24369: LD_INT 17
24371: PPUSH
24372: CALL_OW 113
// addcomexitvehicle ( tmp3 ) ;
24376: LD_VAR 0 4
24380: PPUSH
24381: CALL_OW 181
// addcommovetoarea ( tmp3 , alexitar ) ;
24385: LD_VAR 0 4
24389: PPUSH
24390: LD_INT 16
24392: PPUSH
24393: CALL_OW 173
// commovetoarea ( tmp1 , alexitar ) ;
24397: LD_VAR 0 2
24401: PPUSH
24402: LD_INT 16
24404: PPUSH
24405: CALL_OW 113
// all_odch_al_lidi = tmp1 ^ tmp3 ^ tmp4 ;
24409: LD_ADDR_LOC 46
24413: PUSH
24414: LD_VAR 0 2
24418: PUSH
24419: LD_VAR 0 4
24423: ADD
24424: PUSH
24425: LD_VAR 0 5
24429: ADD
24430: ST_TO_ADDR
// enable ( 03 ) ;
24431: LD_INT 3
24433: ENABLE_MARKED
// end ;
24434: PPOPN 5
24436: END
// function odch_al_lidi ; begin
24437: LD_INT 0
24439: PPUSH
// odch_al_lidi_ = filterunitsinarea ( alexitar , [ [ f_type , unit_human ] , [ f_side , sr ] ] ) ;
24440: LD_ADDR_LOC 47
24444: PUSH
24445: LD_INT 16
24447: PPUSH
24448: LD_INT 21
24450: PUSH
24451: LD_INT 1
24453: PUSH
24454: EMPTY
24455: LIST
24456: LIST
24457: PUSH
24458: LD_INT 22
24460: PUSH
24461: LD_EXP 5
24465: PUSH
24466: EMPTY
24467: LIST
24468: LIST
24469: PUSH
24470: EMPTY
24471: LIST
24472: LIST
24473: PPUSH
24474: CALL_OW 70
24478: ST_TO_ADDR
// result = 0 + odch_al_lidi_ ;
24479: LD_ADDR_VAR 0 1
24483: PUSH
24484: LD_INT 0
24486: PUSH
24487: LD_LOC 47
24491: PLUS
24492: ST_TO_ADDR
// end ;
24493: LD_VAR 0 1
24497: RET
// var odch_al_lidi_ ; every 0 0$2 + 3 trigger odch_al_lidi marked 03 do var tmp ;
24498: CALL 24437 0 0
24502: IFFALSE 24559
24504: GO 24506
24506: DISABLE
24507: LD_INT 0
24509: PPUSH
// begin all_odch_al_lidi = all_odch_al_lidi diff odch_al_lidi_ ;
24510: LD_ADDR_LOC 46
24514: PUSH
24515: LD_LOC 46
24519: PUSH
24520: LD_LOC 47
24524: DIFF
24525: ST_TO_ADDR
// for tmp in odch_al_lidi_ do
24526: LD_ADDR_VAR 0 1
24530: PUSH
24531: LD_LOC 47
24535: PUSH
24536: FOR_IN
24537: IFFALSE 24550
// destroyunit ( tmp ) ;
24539: LD_VAR 0 1
24543: PPUSH
24544: CALL_OW 65
24548: GO 24536
24550: POP
24551: POP
// if all_odch_al_lidi then
24552: LD_LOC 46
24556: IFFALSE 24559
// enable ;
24558: ENABLE
// end ;
24559: PPOPN 1
24561: END
// var all_odch_am_lidi ; every 0 0$3 + 7 trigger surrender ( americani , am ) do var tmp , tmp2 , tmp3 , tmp1 , tmp4 ;
24562: LD_EXP 230
24566: PPUSH
24567: LD_EXP 2
24571: PPUSH
24572: CALL 23711 0 2
24576: IFFALSE 25195
24578: GO 24580
24580: DISABLE
24581: LD_INT 0
24583: PPUSH
24584: PPUSH
24585: PPUSH
24586: PPUSH
24587: PPUSH
// begin am_surr = true ;
24588: LD_ADDR_EXP 221
24592: PUSH
24593: LD_INT 1
24595: ST_TO_ADDR
// tmp = filterallunits ( [ [ f_side , am ] , [ f_sex , sex_male ] ] ) ;
24596: LD_ADDR_VAR 0 1
24600: PUSH
24601: LD_INT 22
24603: PUSH
24604: LD_EXP 2
24608: PUSH
24609: EMPTY
24610: LIST
24611: LIST
24612: PUSH
24613: LD_INT 26
24615: PUSH
24616: LD_INT 1
24618: PUSH
24619: EMPTY
24620: LIST
24621: LIST
24622: PUSH
24623: EMPTY
24624: LIST
24625: LIST
24626: PPUSH
24627: CALL_OW 69
24631: ST_TO_ADDR
// dialogueon ;
24632: CALL_OW 6
// if isok ( powel ) then
24636: LD_EXP 236
24640: PPUSH
24641: CALL_OW 302
24645: IFFALSE 24693
// begin if hodiliju then
24647: LD_EXP 246
24651: IFFALSE 24667
// say ( powel , DSurrenderAmericans-Pow-1 ) else
24653: LD_EXP 236
24657: PPUSH
24658: LD_STRING DSurrenderAmericans-Pow-1
24660: PPUSH
24661: CALL_OW 88
24665: GO 24679
// say ( powel , DSurrenderAmericans-Pow-1a ) ;
24667: LD_EXP 236
24671: PPUSH
24672: LD_STRING DSurrenderAmericans-Pow-1a
24674: PPUSH
24675: CALL_OW 88
// say ( powel , DSurrenderAmericans-Pow-1b ) ;
24679: LD_EXP 236
24683: PPUSH
24684: LD_STRING DSurrenderAmericans-Pow-1b
24686: PPUSH
24687: CALL_OW 88
// end else
24691: GO 24715
// if tmp then
24693: LD_VAR 0 1
24697: IFFALSE 24715
// forcesay ( tmp [ 1 ] , DSurrenderAmericans-Sol1-1 ) ;
24699: LD_VAR 0 1
24703: PUSH
24704: LD_INT 1
24706: ARRAY
24707: PPUSH
24708: LD_STRING DSurrenderAmericans-Sol1-1
24710: PPUSH
24711: CALL_OW 91
// dialogueoff ;
24715: CALL_OW 7
// changemissionobjectives ( MDev ) ;
24719: LD_STRING MDev
24721: PPUSH
24722: CALL_OW 337
// tmp = filterallunits ( [ [ f_side , am ] , [ f_type , unit_human ] ] ) ;
24726: LD_ADDR_VAR 0 1
24730: PUSH
24731: LD_INT 22
24733: PUSH
24734: LD_EXP 2
24738: PUSH
24739: EMPTY
24740: LIST
24741: LIST
24742: PUSH
24743: LD_INT 21
24745: PUSH
24746: LD_INT 1
24748: PUSH
24749: EMPTY
24750: LIST
24751: LIST
24752: PUSH
24753: EMPTY
24754: LIST
24755: LIST
24756: PPUSH
24757: CALL_OW 69
24761: ST_TO_ADDR
// tmp1 = filterallunits ( [ [ f_side , am ] , [ f_type , unit_vehicle ] ] ) ;
24762: LD_ADDR_VAR 0 4
24766: PUSH
24767: LD_INT 22
24769: PUSH
24770: LD_EXP 2
24774: PUSH
24775: EMPTY
24776: LIST
24777: LIST
24778: PUSH
24779: LD_INT 21
24781: PUSH
24782: LD_INT 2
24784: PUSH
24785: EMPTY
24786: LIST
24787: LIST
24788: PUSH
24789: EMPTY
24790: LIST
24791: LIST
24792: PPUSH
24793: CALL_OW 69
24797: ST_TO_ADDR
// total_sr = total_sr + 0 + tmp ;
24798: LD_ADDR_EXP 215
24802: PUSH
24803: LD_EXP 215
24807: PUSH
24808: LD_INT 0
24810: PLUS
24811: PUSH
24812: LD_VAR 0 1
24816: PLUS
24817: ST_TO_ADDR
// if isok ( amware00 ) and ( getside ( amware00 ) = am ) then
24818: LD_INT 5
24820: PPUSH
24821: CALL_OW 302
24825: PUSH
24826: LD_INT 5
24828: PPUSH
24829: CALL_OW 255
24833: PUSH
24834: LD_EXP 2
24838: EQUAL
24839: AND
24840: IFFALSE 24861
// setsidebase ( getbase ( amware00 ) , sr ) else
24842: LD_INT 5
24844: PPUSH
24845: CALL_OW 274
24849: PPUSH
24850: LD_EXP 5
24854: PPUSH
24855: CALL_OW 236
24859: GO 24901
// setside ( filterallunits ( [ [ f_side , am ] , [ f_type , unit_building ] ] ) , sr ) ;
24861: LD_INT 22
24863: PUSH
24864: LD_EXP 2
24868: PUSH
24869: EMPTY
24870: LIST
24871: LIST
24872: PUSH
24873: LD_INT 21
24875: PUSH
24876: LD_INT 3
24878: PUSH
24879: EMPTY
24880: LIST
24881: LIST
24882: PUSH
24883: EMPTY
24884: LIST
24885: LIST
24886: PPUSH
24887: CALL_OW 69
24891: PPUSH
24892: LD_EXP 5
24896: PPUSH
24897: CALL_OW 235
// setside ( tmp , sr ) ;
24901: LD_VAR 0 1
24905: PPUSH
24906: LD_EXP 5
24910: PPUSH
24911: CALL_OW 235
// setside ( tmp1 , sr ) ;
24915: LD_VAR 0 4
24919: PPUSH
24920: LD_EXP 5
24924: PPUSH
24925: CALL_OW 235
// tmp = unitfilter ( tmp , [ [ f_ok ] ] ) ;
24929: LD_ADDR_VAR 0 1
24933: PUSH
24934: LD_VAR 0 1
24938: PPUSH
24939: LD_INT 50
24941: PUSH
24942: EMPTY
24943: LIST
24944: PUSH
24945: EMPTY
24946: LIST
24947: PPUSH
24948: CALL_OW 72
24952: ST_TO_ADDR
// tmp3 = [ ] ;
24953: LD_ADDR_VAR 0 3
24957: PUSH
24958: EMPTY
24959: ST_TO_ADDR
// tmp4 = [ ] ;
24960: LD_ADDR_VAR 0 5
24964: PUSH
24965: EMPTY
24966: ST_TO_ADDR
// tmp1 = [ ] ;
24967: LD_ADDR_VAR 0 4
24971: PUSH
24972: EMPTY
24973: ST_TO_ADDR
// for tmp2 in tmp do
24974: LD_ADDR_VAR 0 2
24978: PUSH
24979: LD_VAR 0 1
24983: PUSH
24984: FOR_IN
24985: IFFALSE 25090
// if gettype ( isinunit ( tmp2 ) ) = unit_vehicle then
24987: LD_VAR 0 2
24991: PPUSH
24992: CALL_OW 310
24996: PPUSH
24997: CALL_OW 247
25001: PUSH
25002: LD_INT 2
25004: EQUAL
25005: IFFALSE 25069
// if not isinarea ( isinunit ( tmp2 ) , ambase ) then
25007: LD_VAR 0 2
25011: PPUSH
25012: CALL_OW 310
25016: PPUSH
25017: LD_INT 11
25019: PPUSH
25020: CALL_OW 308
25024: NOT
25025: IFFALSE 25048
// tmp3 = tmp3 ^ [ tmp2 ] else
25027: LD_ADDR_VAR 0 3
25031: PUSH
25032: LD_VAR 0 3
25036: PUSH
25037: LD_VAR 0 2
25041: PUSH
25042: EMPTY
25043: LIST
25044: ADD
25045: ST_TO_ADDR
25046: GO 25067
// tmp4 = tmp4 ^ [ tmp2 ] else
25048: LD_ADDR_VAR 0 5
25052: PUSH
25053: LD_VAR 0 5
25057: PUSH
25058: LD_VAR 0 2
25062: PUSH
25063: EMPTY
25064: LIST
25065: ADD
25066: ST_TO_ADDR
25067: GO 25088
// tmp1 = tmp1 ^ [ tmp2 ] ;
25069: LD_ADDR_VAR 0 4
25073: PUSH
25074: LD_VAR 0 4
25078: PUSH
25079: LD_VAR 0 2
25083: PUSH
25084: EMPTY
25085: LIST
25086: ADD
25087: ST_TO_ADDR
25088: GO 24984
25090: POP
25091: POP
// comwait ( tmp4 , 17 ) ;
25092: LD_VAR 0 5
25096: PPUSH
25097: LD_INT 17
25099: PPUSH
25100: CALL_OW 142
// addcomexitvehicle ( tmp4 ) ;
25104: LD_VAR 0 5
25108: PPUSH
25109: CALL_OW 181
// addcommovetoarea ( tmp4 , amexitar ) ;
25113: LD_VAR 0 5
25117: PPUSH
25118: LD_INT 14
25120: PPUSH
25121: CALL_OW 173
// commovetoarea ( tmp3 , ammeetar ) ;
25125: LD_VAR 0 3
25129: PPUSH
25130: LD_INT 15
25132: PPUSH
25133: CALL_OW 113
// addcomexitvehicle ( tmp3 ) ;
25137: LD_VAR 0 3
25141: PPUSH
25142: CALL_OW 181
// addcommovetoarea ( tmp3 , amexitar ) ;
25146: LD_VAR 0 3
25150: PPUSH
25151: LD_INT 14
25153: PPUSH
25154: CALL_OW 173
// commovetoarea ( tmp1 , amexitar ) ;
25158: LD_VAR 0 4
25162: PPUSH
25163: LD_INT 14
25165: PPUSH
25166: CALL_OW 113
// all_odch_am_lidi = tmp1 ^ tmp3 ^ tmp4 ;
25170: LD_ADDR_LOC 48
25174: PUSH
25175: LD_VAR 0 4
25179: PUSH
25180: LD_VAR 0 3
25184: ADD
25185: PUSH
25186: LD_VAR 0 5
25190: ADD
25191: ST_TO_ADDR
// enable ( 02 ) ;
25192: LD_INT 2
25194: ENABLE_MARKED
// end ;
25195: PPOPN 5
25197: END
// function odch_am_lidi ; begin
25198: LD_INT 0
25200: PPUSH
// odch_am_lidi_ = filterunitsinarea ( amexitar , [ [ f_type , unit_human ] , [ f_side , sr ] ] ) ;
25201: LD_ADDR_LOC 49
25205: PUSH
25206: LD_INT 14
25208: PPUSH
25209: LD_INT 21
25211: PUSH
25212: LD_INT 1
25214: PUSH
25215: EMPTY
25216: LIST
25217: LIST
25218: PUSH
25219: LD_INT 22
25221: PUSH
25222: LD_EXP 5
25226: PUSH
25227: EMPTY
25228: LIST
25229: LIST
25230: PUSH
25231: EMPTY
25232: LIST
25233: LIST
25234: PPUSH
25235: CALL_OW 70
25239: ST_TO_ADDR
// result = 0 + odch_am_lidi_ ;
25240: LD_ADDR_VAR 0 1
25244: PUSH
25245: LD_INT 0
25247: PUSH
25248: LD_LOC 49
25252: PLUS
25253: ST_TO_ADDR
// end ;
25254: LD_VAR 0 1
25258: RET
// var odch_am_lidi_ ; every 0 0$2 + 3 trigger odch_am_lidi marked 02 do var tmp ;
25259: CALL 25198 0 0
25263: IFFALSE 25320
25265: GO 25267
25267: DISABLE
25268: LD_INT 0
25270: PPUSH
// begin all_odch_am_lidi = all_odch_am_lidi diff odch_am_lidi_ ;
25271: LD_ADDR_LOC 48
25275: PUSH
25276: LD_LOC 48
25280: PUSH
25281: LD_LOC 49
25285: DIFF
25286: ST_TO_ADDR
// for tmp in odch_am_lidi_ do
25287: LD_ADDR_VAR 0 1
25291: PUSH
25292: LD_LOC 49
25296: PUSH
25297: FOR_IN
25298: IFFALSE 25311
// destroyunit ( tmp ) ;
25300: LD_VAR 0 1
25304: PPUSH
25305: CALL_OW 65
25309: GO 25297
25311: POP
25312: POP
// if all_odch_am_lidi then
25313: LD_LOC 48
25317: IFFALSE 25320
// enable ;
25319: ENABLE
// end ;
25320: PPOPN 1
25322: END
// export lesurr ; every 0 0$3 + 11 trigger surrender ( legionari , le ) do var tmp ;
25323: LD_EXP 226
25327: PPUSH
25328: LD_EXP 4
25332: PPUSH
25333: CALL 23711 0 2
25337: IFFALSE 25495
25339: GO 25341
25341: DISABLE
25342: LD_INT 0
25344: PPUSH
// begin if not lesurr then
25345: LD_EXP 248
25349: NOT
25350: IFFALSE 25495
// begin tmp = filterallunits ( [ [ f_side , le ] , [ f_sex , sex_male ] ] ) ;
25352: LD_ADDR_VAR 0 1
25356: PUSH
25357: LD_INT 22
25359: PUSH
25360: LD_EXP 4
25364: PUSH
25365: EMPTY
25366: LIST
25367: LIST
25368: PUSH
25369: LD_INT 26
25371: PUSH
25372: LD_INT 1
25374: PUSH
25375: EMPTY
25376: LIST
25377: LIST
25378: PUSH
25379: EMPTY
25380: LIST
25381: LIST
25382: PPUSH
25383: CALL_OW 69
25387: ST_TO_ADDR
// dialogueon ;
25388: CALL_OW 6
// if isok ( heike ) then
25392: LD_EXP 237
25396: PPUSH
25397: CALL_OW 302
25401: IFFALSE 25417
// say ( heike , DSurrenderLegion-Hke-1 ) else
25403: LD_EXP 237
25407: PPUSH
25408: LD_STRING DSurrenderLegion-Hke-1
25410: PPUSH
25411: CALL_OW 88
25415: GO 25464
// if isok ( farmer ) then
25417: LD_EXP 238
25421: PPUSH
25422: CALL_OW 302
25426: IFFALSE 25442
// say ( farmer , DSurrenderLegion-Frm-1 ) else
25428: LD_EXP 238
25432: PPUSH
25433: LD_STRING DSurrenderLegion-Frm-1
25435: PPUSH
25436: CALL_OW 88
25440: GO 25464
// if tmp then
25442: LD_VAR 0 1
25446: IFFALSE 25464
// forcesay ( tmp [ 1 ] , DSurrenderLegion-Merc1-1 ) ;
25448: LD_VAR 0 1
25452: PUSH
25453: LD_INT 1
25455: ARRAY
25456: PPUSH
25457: LD_STRING DSurrenderLegion-Merc1-1
25459: PPUSH
25460: CALL_OW 91
// dialogueoff ;
25464: CALL_OW 7
// lesurr = true ;
25468: LD_ADDR_EXP 248
25472: PUSH
25473: LD_INT 1
25475: ST_TO_ADDR
// if not rusacimajisib then
25476: LD_EXP 242
25480: NOT
25481: IFFALSE 25491
// legionmed = true ;
25483: LD_ADDR_EXP 247
25487: PUSH
25488: LD_INT 1
25490: ST_TO_ADDR
// legiontobali ;
25491: CALL 22832 0 0
// end ; end ;
25495: PPOPN 1
25497: END
// on unitdestroyed ( un ) do if un = burlak then
25498: LD_VAR 0 1
25502: PUSH
25503: LD_EXP 233
25507: EQUAL
25508: IFFALSE 25517
// youlost ( Burlak ) ;
25510: LD_STRING Burlak
25512: PPUSH
25513: CALL_OW 104
25517: PPOPN 1
25519: END
// every 0 0$3.2 trigger not filterallunits ( [ f_or , [ f_side , am ] , [ f_side , al ] , [ f_side , le ] ] ) do var tmp ;
25520: LD_INT 2
25522: PUSH
25523: LD_INT 22
25525: PUSH
25526: LD_EXP 2
25530: PUSH
25531: EMPTY
25532: LIST
25533: LIST
25534: PUSH
25535: LD_INT 22
25537: PUSH
25538: LD_EXP 3
25542: PUSH
25543: EMPTY
25544: LIST
25545: LIST
25546: PUSH
25547: LD_INT 22
25549: PUSH
25550: LD_EXP 4
25554: PUSH
25555: EMPTY
25556: LIST
25557: LIST
25558: PUSH
25559: EMPTY
25560: LIST
25561: LIST
25562: LIST
25563: LIST
25564: PPUSH
25565: CALL_OW 69
25569: NOT
25570: IFFALSE 26764
25572: GO 25574
25574: DISABLE
25575: LD_INT 0
25577: PPUSH
// begin dialogueon ;
25578: CALL_OW 6
// if isok ( burlak ) then
25582: LD_EXP 233
25586: PPUSH
25587: CALL_OW 302
25591: IFFALSE 25605
// say ( burlak , DEnd-Bur-1 ) ;
25593: LD_EXP 233
25597: PPUSH
25598: LD_STRING DEnd-Bur-1
25600: PPUSH
25601: CALL_OW 88
// if isok ( petrosyan ) then
25605: LD_LOC 30
25609: PPUSH
25610: CALL_OW 302
25614: IFFALSE 25628
// say ( petrosyan , DEnd-Pty-1 ) ;
25616: LD_LOC 30
25620: PPUSH
25621: LD_STRING DEnd-Pty-1
25623: PPUSH
25624: CALL_OW 88
// if isok ( belkov ) then
25628: LD_LOC 24
25632: PPUSH
25633: CALL_OW 302
25637: IFFALSE 25651
// say ( belkov , DEnd-Bel-1 ) ;
25639: LD_LOC 24
25643: PPUSH
25644: LD_STRING DEnd-Bel-1
25646: PPUSH
25647: CALL_OW 88
// if isok ( kiril ) then
25651: LD_LOC 28
25655: PPUSH
25656: CALL_OW 302
25660: IFFALSE 25674
// say ( kiril , DEnd-Kir-1 ) ;
25662: LD_LOC 28
25666: PPUSH
25667: LD_STRING DEnd-Kir-1
25669: PPUSH
25670: CALL_OW 88
// if isok ( gnyevko ) then
25674: LD_LOC 26
25678: PPUSH
25679: CALL_OW 302
25683: IFFALSE 25697
// say ( gnyevko , DEnd-Gny-1 ) ;
25685: LD_LOC 26
25689: PPUSH
25690: LD_STRING DEnd-Gny-1
25692: PPUSH
25693: CALL_OW 88
// if isok ( gladkov ) then
25697: LD_LOC 40
25701: PPUSH
25702: CALL_OW 302
25706: IFFALSE 25720
// say ( gladkov , DEnd-Gla-1 ) ;
25708: LD_LOC 40
25712: PPUSH
25713: LD_STRING DEnd-Gla-1
25715: PPUSH
25716: CALL_OW 88
// if isok ( dolgov ) then
25720: LD_LOC 32
25724: PPUSH
25725: CALL_OW 302
25729: IFFALSE 25743
// say ( dolgov , DEnd-Dol-1 ) ;
25731: LD_LOC 32
25735: PPUSH
25736: LD_STRING DEnd-Dol-1
25738: PPUSH
25739: CALL_OW 88
// if isok ( kapitsova ) then
25743: LD_LOC 29
25747: PPUSH
25748: CALL_OW 302
25752: IFFALSE 25766
// say ( kapitsova , DEnd-Kap-1 ) ;
25754: LD_LOC 29
25758: PPUSH
25759: LD_STRING DEnd-Kap-1
25761: PPUSH
25762: CALL_OW 88
// if isok ( gleb ) then
25766: LD_LOC 36
25770: PPUSH
25771: CALL_OW 302
25775: IFFALSE 25789
// say ( gleb , DEnd-Glb-1 ) ;
25777: LD_LOC 36
25781: PPUSH
25782: LD_STRING DEnd-Glb-1
25784: PPUSH
25785: CALL_OW 88
// if isok ( kuzmov ) then
25789: LD_LOC 25
25793: PPUSH
25794: CALL_OW 302
25798: IFFALSE 25812
// say ( kuzmov , DEnd-Kuz-1 ) ;
25800: LD_LOC 25
25804: PPUSH
25805: LD_STRING DEnd-Kuz-1
25807: PPUSH
25808: CALL_OW 88
// if isok ( kovalyuk ) then
25812: LD_LOC 33
25816: PPUSH
25817: CALL_OW 302
25821: IFFALSE 25835
// say ( kovalyuk , DEnd-Kov-1 ) ;
25823: LD_LOC 33
25827: PPUSH
25828: LD_STRING DEnd-Kov-1
25830: PPUSH
25831: CALL_OW 88
// if isok ( scholtze ) then
25835: LD_LOC 31
25839: PPUSH
25840: CALL_OW 302
25844: IFFALSE 25858
// say ( scholtze , DEnd-Sch-1 ) ;
25846: LD_LOC 31
25850: PPUSH
25851: LD_STRING DEnd-Sch-1
25853: PPUSH
25854: CALL_OW 88
// if isok ( karamazov ) then
25858: LD_LOC 34
25862: PPUSH
25863: CALL_OW 302
25867: IFFALSE 25881
// say ( karamazov , DEnd-Kar-1 ) ;
25869: LD_LOC 34
25873: PPUSH
25874: LD_STRING DEnd-Kar-1
25876: PPUSH
25877: CALL_OW 88
// if isok ( titov ) then
25881: LD_LOC 23
25885: PPUSH
25886: CALL_OW 302
25890: IFFALSE 25904
// say ( titov , DEnd-Tit-1 ) ;
25892: LD_LOC 23
25896: PPUSH
25897: LD_STRING DEnd-Tit-1
25899: PPUSH
25900: CALL_OW 88
// if isok ( oblukov ) then
25904: LD_LOC 42
25908: PPUSH
25909: CALL_OW 302
25913: IFFALSE 25927
// say ( oblukov , DEnd-Obl-1 ) ;
25915: LD_LOC 42
25919: PPUSH
25920: LD_STRING DEnd-Obl-1
25922: PPUSH
25923: CALL_OW 88
// if isok ( kozlov ) then
25927: LD_LOC 27
25931: PPUSH
25932: CALL_OW 302
25936: IFFALSE 25950
// say ( kozlov , DEnd-Koz-1 ) ;
25938: LD_LOC 27
25942: PPUSH
25943: LD_STRING DEnd-Koz-1
25945: PPUSH
25946: CALL_OW 88
// if isok ( petrovova ) then
25950: LD_LOC 35
25954: PPUSH
25955: CALL_OW 302
25959: IFFALSE 25973
// say ( petrovova , DEnd-Ptr-1 ) ;
25961: LD_LOC 35
25965: PPUSH
25966: LD_STRING DEnd-Ptr-1
25968: PPUSH
25969: CALL_OW 88
// if isok ( bystrov ) then
25973: LD_LOC 41
25977: PPUSH
25978: CALL_OW 302
25982: IFFALSE 25996
// say ( bystrov , DEnd-Bys-1 ) ;
25984: LD_LOC 41
25988: PPUSH
25989: LD_STRING DEnd-Bys-1
25991: PPUSH
25992: CALL_OW 88
// if isok ( lipshchin ) then
25996: LD_LOC 37
26000: PPUSH
26001: CALL_OW 302
26005: IFFALSE 26019
// say ( lipshchin , DEnd-Lip-1 ) ;
26007: LD_LOC 37
26011: PPUSH
26012: LD_STRING DEnd-Lip-1
26014: PPUSH
26015: CALL_OW 88
// if isok ( fadeev ) then
26019: LD_LOC 39
26023: PPUSH
26024: CALL_OW 302
26028: IFFALSE 26042
// say ( fadeev , DEnd-Fad-1 ) ;
26030: LD_LOC 39
26034: PPUSH
26035: LD_STRING DEnd-Fad-1
26037: PPUSH
26038: CALL_OW 88
// dialogueoff ;
26042: CALL_OW 7
// addmedal ( Hero , 1 ) ;
26046: LD_STRING Hero
26048: PPUSH
26049: LD_INT 1
26051: PPUSH
26052: CALL_OW 101
// tmp = unitfilter ( lidi ^ ostatni , [ [ f_side , ru ] , [ f_alive ] ] ) ;
26056: LD_ADDR_VAR 0 1
26060: PUSH
26061: LD_LOC 19
26065: PUSH
26066: LD_LOC 20
26070: ADD
26071: PPUSH
26072: LD_INT 22
26074: PUSH
26075: LD_EXP 1
26079: PUSH
26080: EMPTY
26081: LIST
26082: LIST
26083: PUSH
26084: LD_INT 51
26086: PUSH
26087: EMPTY
26088: LIST
26089: PUSH
26090: EMPTY
26091: LIST
26092: LIST
26093: PPUSH
26094: CALL_OW 72
26098: ST_TO_ADDR
// if ( 0 + tmp ) = 20 then
26099: LD_INT 0
26101: PUSH
26102: LD_VAR 0 1
26106: PLUS
26107: PUSH
26108: LD_INT 20
26110: EQUAL
26111: IFFALSE 26125
// addmedal ( NoLosses , 1 ) else
26113: LD_STRING NoLosses
26115: PPUSH
26116: LD_INT 1
26118: PPUSH
26119: CALL_OW 101
26123: GO 26136
// addmedal ( NoLosses , - 1 ) ;
26125: LD_STRING NoLosses
26127: PPUSH
26128: LD_INT 1
26130: NEG
26131: PPUSH
26132: CALL_OW 101
// if legionmed then
26136: LD_EXP 247
26140: IFFALSE 26154
// addmedal ( Legion , 1 ) else
26142: LD_STRING Legion
26144: PPUSH
26145: LD_INT 1
26147: PPUSH
26148: CALL_OW 101
26152: GO 26165
// addmedal ( Legion , - 1 ) ;
26154: LD_STRING Legion
26156: PPUSH
26157: LD_INT 1
26159: NEG
26160: PPUSH
26161: CALL_OW 101
// SA_EndMission ( 3 , 15 , true , ( 0 + tmp ) = 20 , legionmed > 0 ) ;
26165: LD_INT 3
26167: PPUSH
26168: LD_INT 15
26170: PPUSH
26171: LD_INT 1
26173: PPUSH
26174: LD_INT 0
26176: PUSH
26177: LD_VAR 0 1
26181: PLUS
26182: PUSH
26183: LD_INT 20
26185: EQUAL
26186: PPUSH
26187: LD_EXP 247
26191: PUSH
26192: LD_INT 0
26194: GREATER
26195: PPUSH
26196: CALL 26984 0 5
// SA_OnMissionComplete ;
26200: CALL 26969 0 0
// givemedals ( Main ) ;
26204: LD_STRING Main
26206: PPUSH
26207: CALL_OW 102
// savecharacters ( burlak , Burlak ) ;
26211: LD_EXP 233
26215: PPUSH
26216: LD_STRING Burlak
26218: PPUSH
26219: CALL_OW 38
// if titov then
26223: LD_LOC 23
26227: IFFALSE 26241
// savecharacters ( titov , Titov ) ;
26229: LD_LOC 23
26233: PPUSH
26234: LD_STRING Titov
26236: PPUSH
26237: CALL_OW 38
// if belkov then
26241: LD_LOC 24
26245: IFFALSE 26259
// savecharacters ( belkov , Belkov ) ;
26247: LD_LOC 24
26251: PPUSH
26252: LD_STRING Belkov
26254: PPUSH
26255: CALL_OW 38
// if kuzmov then
26259: LD_LOC 25
26263: IFFALSE 26277
// savecharacters ( kuzmov , Kuzmov ) ;
26265: LD_LOC 25
26269: PPUSH
26270: LD_STRING Kuzmov
26272: PPUSH
26273: CALL_OW 38
// if gnyevko then
26277: LD_LOC 26
26281: IFFALSE 26295
// savecharacters ( gnyevko , Gnyevko ) ;
26283: LD_LOC 26
26287: PPUSH
26288: LD_STRING Gnyevko
26290: PPUSH
26291: CALL_OW 38
// if kozlov then
26295: LD_LOC 27
26299: IFFALSE 26313
// savecharacters ( kozlov , Kozlov ) ;
26301: LD_LOC 27
26305: PPUSH
26306: LD_STRING Kozlov
26308: PPUSH
26309: CALL_OW 38
// if kiril then
26313: LD_LOC 28
26317: IFFALSE 26331
// savecharacters ( kiril , Kirilenkova ) ;
26319: LD_LOC 28
26323: PPUSH
26324: LD_STRING Kirilenkova
26326: PPUSH
26327: CALL_OW 38
// if kapitsova then
26331: LD_LOC 29
26335: IFFALSE 26349
// savecharacters ( kapitsova , Kapitsova ) ;
26337: LD_LOC 29
26341: PPUSH
26342: LD_STRING Kapitsova
26344: PPUSH
26345: CALL_OW 38
// if petrosyan then
26349: LD_LOC 30
26353: IFFALSE 26367
// savecharacters ( petrosyan , Petrosyan ) ;
26355: LD_LOC 30
26359: PPUSH
26360: LD_STRING Petrosyan
26362: PPUSH
26363: CALL_OW 38
// if scholtze then
26367: LD_LOC 31
26371: IFFALSE 26385
// savecharacters ( scholtze , Scholtze ) ;
26373: LD_LOC 31
26377: PPUSH
26378: LD_STRING Scholtze
26380: PPUSH
26381: CALL_OW 38
// if dolgov then
26385: LD_LOC 32
26389: IFFALSE 26403
// savecharacters ( dolgov , Dolgov ) ;
26391: LD_LOC 32
26395: PPUSH
26396: LD_STRING Dolgov
26398: PPUSH
26399: CALL_OW 38
// if kovalyuk then
26403: LD_LOC 33
26407: IFFALSE 26421
// savecharacters ( kovalyuk , Kovalyuk ) ;
26409: LD_LOC 33
26413: PPUSH
26414: LD_STRING Kovalyuk
26416: PPUSH
26417: CALL_OW 38
// if karamazov then
26421: LD_LOC 34
26425: IFFALSE 26439
// savecharacters ( karamazov , Karamazov ) ;
26427: LD_LOC 34
26431: PPUSH
26432: LD_STRING Karamazov
26434: PPUSH
26435: CALL_OW 38
// if petrovova then
26439: LD_LOC 35
26443: IFFALSE 26457
// savecharacters ( petrovova , Petrovova ) ;
26445: LD_LOC 35
26449: PPUSH
26450: LD_STRING Petrovova
26452: PPUSH
26453: CALL_OW 38
// if gleb then
26457: LD_LOC 36
26461: IFFALSE 26475
// savecharacters ( gleb , Gleb ) ;
26463: LD_LOC 36
26467: PPUSH
26468: LD_STRING Gleb
26470: PPUSH
26471: CALL_OW 38
// if lipshchin then
26475: LD_LOC 37
26479: IFFALSE 26493
// savecharacters ( lipshchin , Lipshchin ) ;
26481: LD_LOC 37
26485: PPUSH
26486: LD_STRING Lipshchin
26488: PPUSH
26489: CALL_OW 38
// if xavier then
26493: LD_LOC 38
26497: IFFALSE 26511
// savecharacters ( xavier , Xavier ) ;
26499: LD_LOC 38
26503: PPUSH
26504: LD_STRING Xavier
26506: PPUSH
26507: CALL_OW 38
// if fadeev then
26511: LD_LOC 39
26515: IFFALSE 26529
// savecharacters ( fadeev , Fadeev ) ;
26517: LD_LOC 39
26521: PPUSH
26522: LD_STRING Fadeev
26524: PPUSH
26525: CALL_OW 38
// if gladkov then
26529: LD_LOC 40
26533: IFFALSE 26547
// savecharacters ( gladkov , Gladkov ) ;
26535: LD_LOC 40
26539: PPUSH
26540: LD_STRING Gladkov
26542: PPUSH
26543: CALL_OW 38
// if bystrov then
26547: LD_LOC 41
26551: IFFALSE 26565
// savecharacters ( bystrov , Bystrov ) ;
26553: LD_LOC 41
26557: PPUSH
26558: LD_STRING Bystrov
26560: PPUSH
26561: CALL_OW 38
// if oblukov then
26565: LD_LOC 42
26569: IFFALSE 26583
// savecharacters ( oblukov , Oblukov ) ;
26571: LD_LOC 42
26575: PPUSH
26576: LD_STRING Oblukov
26578: PPUSH
26579: CALL_OW 38
// tmp = filterallunits ( [ [ f_side , ru ] , [ f_type , unit_human ] ] ) diff [ burlak , titov , belkov , kuzmov , gnyevko , kozlov , kiril , kapitsova , petrosyan , scholtze , dolgov , kovalyuk , karamazov , petrovova , gleb , lipshchin , xavier , fadeev , gladkov , bystrov , oblukov ] ;
26583: LD_ADDR_VAR 0 1
26587: PUSH
26588: LD_INT 22
26590: PUSH
26591: LD_EXP 1
26595: PUSH
26596: EMPTY
26597: LIST
26598: LIST
26599: PUSH
26600: LD_INT 21
26602: PUSH
26603: LD_INT 1
26605: PUSH
26606: EMPTY
26607: LIST
26608: LIST
26609: PUSH
26610: EMPTY
26611: LIST
26612: LIST
26613: PPUSH
26614: CALL_OW 69
26618: PUSH
26619: LD_EXP 233
26623: PUSH
26624: LD_LOC 23
26628: PUSH
26629: LD_LOC 24
26633: PUSH
26634: LD_LOC 25
26638: PUSH
26639: LD_LOC 26
26643: PUSH
26644: LD_LOC 27
26648: PUSH
26649: LD_LOC 28
26653: PUSH
26654: LD_LOC 29
26658: PUSH
26659: LD_LOC 30
26663: PUSH
26664: LD_LOC 31
26668: PUSH
26669: LD_LOC 32
26673: PUSH
26674: LD_LOC 33
26678: PUSH
26679: LD_LOC 34
26683: PUSH
26684: LD_LOC 35
26688: PUSH
26689: LD_LOC 36
26693: PUSH
26694: LD_LOC 37
26698: PUSH
26699: LD_LOC 38
26703: PUSH
26704: LD_LOC 39
26708: PUSH
26709: LD_LOC 40
26713: PUSH
26714: LD_LOC 41
26718: PUSH
26719: LD_LOC 42
26723: PUSH
26724: EMPTY
26725: LIST
26726: LIST
26727: LIST
26728: LIST
26729: LIST
26730: LIST
26731: LIST
26732: LIST
26733: LIST
26734: LIST
26735: LIST
26736: LIST
26737: LIST
26738: LIST
26739: LIST
26740: LIST
26741: LIST
26742: LIST
26743: LIST
26744: LIST
26745: LIST
26746: DIFF
26747: ST_TO_ADDR
// savecharacters ( tmp , Ru15Winners ) ;
26748: LD_VAR 0 1
26752: PPUSH
26753: LD_STRING Ru15Winners
26755: PPUSH
26756: CALL_OW 38
// youwin ;
26760: CALL_OW 103
// end ; end_of_file
26764: PPOPN 1
26766: END
// every 0 0$2 + 0 0$0.1 do
26767: GO 26769
26769: DISABLE
// begin if FilterAllUnits ( [ [ f_side , 3 ] , [ f_or , [ f_class , class_apeman ] , [ f_class , class_apeman_engineer ] , [ f_class , class_apeman_soldier ] , [ f_class , class_apeman_kamikaze ] ] ] ) > FilterAllUnits ( [ [ f_side , 3 ] , [ f_type , unit_human ] , [ f_not , [ f_or , [ f_class , class_apeman ] , [ f_class , class_apeman_engineer ] , [ f_class , class_apeman_soldier ] , [ f_class , class_apeman_kamikaze ] ] ] ] ) then
26770: LD_INT 22
26772: PUSH
26773: LD_INT 3
26775: PUSH
26776: EMPTY
26777: LIST
26778: LIST
26779: PUSH
26780: LD_INT 2
26782: PUSH
26783: LD_INT 25
26785: PUSH
26786: LD_INT 12
26788: PUSH
26789: EMPTY
26790: LIST
26791: LIST
26792: PUSH
26793: LD_INT 25
26795: PUSH
26796: LD_INT 16
26798: PUSH
26799: EMPTY
26800: LIST
26801: LIST
26802: PUSH
26803: LD_INT 25
26805: PUSH
26806: LD_INT 15
26808: PUSH
26809: EMPTY
26810: LIST
26811: LIST
26812: PUSH
26813: LD_INT 25
26815: PUSH
26816: LD_INT 17
26818: PUSH
26819: EMPTY
26820: LIST
26821: LIST
26822: PUSH
26823: EMPTY
26824: LIST
26825: LIST
26826: LIST
26827: LIST
26828: LIST
26829: PUSH
26830: EMPTY
26831: LIST
26832: LIST
26833: PPUSH
26834: CALL_OW 69
26838: PUSH
26839: LD_INT 22
26841: PUSH
26842: LD_INT 3
26844: PUSH
26845: EMPTY
26846: LIST
26847: LIST
26848: PUSH
26849: LD_INT 21
26851: PUSH
26852: LD_INT 1
26854: PUSH
26855: EMPTY
26856: LIST
26857: LIST
26858: PUSH
26859: LD_INT 3
26861: PUSH
26862: LD_INT 2
26864: PUSH
26865: LD_INT 25
26867: PUSH
26868: LD_INT 12
26870: PUSH
26871: EMPTY
26872: LIST
26873: LIST
26874: PUSH
26875: LD_INT 25
26877: PUSH
26878: LD_INT 16
26880: PUSH
26881: EMPTY
26882: LIST
26883: LIST
26884: PUSH
26885: LD_INT 25
26887: PUSH
26888: LD_INT 15
26890: PUSH
26891: EMPTY
26892: LIST
26893: LIST
26894: PUSH
26895: LD_INT 25
26897: PUSH
26898: LD_INT 17
26900: PUSH
26901: EMPTY
26902: LIST
26903: LIST
26904: PUSH
26905: EMPTY
26906: LIST
26907: LIST
26908: LIST
26909: LIST
26910: LIST
26911: PUSH
26912: EMPTY
26913: LIST
26914: LIST
26915: PUSH
26916: EMPTY
26917: LIST
26918: LIST
26919: LIST
26920: PPUSH
26921: CALL_OW 69
26925: GREATER
26926: IFFALSE 26937
// begin SetAchievement ( ACH_POTA ) ;
26928: LD_STRING ACH_POTA
26930: PPUSH
26931: CALL_OW 543
// exit ;
26935: GO 26938
// end ; enable ;
26937: ENABLE
// end ;
26938: END
// export function SA_OnSiberiteRocketExploded ( siberite_rocket_vehicle , target_x , target_y ) ; begin
26939: LD_INT 0
26941: PPUSH
// if GetSide ( siberite_rocket_vehicle ) = 3 then
26942: LD_VAR 0 1
26946: PPUSH
26947: CALL_OW 255
26951: PUSH
26952: LD_INT 3
26954: EQUAL
26955: IFFALSE 26964
// SetAchievement ( ACH_RAD ) ;
26957: LD_STRING ACH_RAD
26959: PPUSH
26960: CALL_OW 543
// end ;
26964: LD_VAR 0 4
26968: RET
// export function SA_OnMissionComplete ; begin
26969: LD_INT 0
26971: PPUSH
// SetAchievement ( ACH_FMR ) ;
26972: LD_STRING ACH_FMR
26974: PPUSH
26975: CALL_OW 543
// end ; end_of_file
26979: LD_VAR 0 1
26983: RET
// export function SA_EndMission ( campaignNumber , missionNumber , medal1 , medal2 , medal3 ) ; var achiv ; begin
26984: LD_INT 0
26986: PPUSH
26987: PPUSH
// if not missionNumber then
26988: LD_VAR 0 2
26992: NOT
26993: IFFALSE 26997
// exit ;
26995: GO 27127
// achiv := false ;
26997: LD_ADDR_VAR 0 7
27001: PUSH
27002: LD_INT 0
27004: ST_TO_ADDR
// case campaignNumber of 1 :
27005: LD_VAR 0 1
27009: PUSH
27010: LD_INT 1
27012: DOUBLE
27013: EQUAL
27014: IFTRUE 27018
27016: GO 27029
27018: POP
// achiv := ACH_GOTA ; 2 :
27019: LD_ADDR_VAR 0 7
27023: PUSH
27024: LD_STRING ACH_GOTA
27026: ST_TO_ADDR
27027: GO 27079
27029: LD_INT 2
27031: DOUBLE
27032: EQUAL
27033: IFTRUE 27037
27035: GO 27040
27037: POP
// ; 3 :
27038: GO 27079
27040: LD_INT 3
27042: DOUBLE
27043: EQUAL
27044: IFTRUE 27048
27046: GO 27059
27048: POP
// achiv := ACH_MOTSU ; 4 :
27049: LD_ADDR_VAR 0 7
27053: PUSH
27054: LD_STRING ACH_MOTSU
27056: ST_TO_ADDR
27057: GO 27079
27059: LD_INT 4
27061: DOUBLE
27062: EQUAL
27063: IFTRUE 27067
27065: GO 27078
27067: POP
// achiv := ACH_LOP ; end ;
27068: LD_ADDR_VAR 0 7
27072: PUSH
27073: LD_STRING ACH_LOP
27075: ST_TO_ADDR
27076: GO 27079
27078: POP
// if Difficulty = 3 and achiv and medal1 and medal2 and medal3 then
27079: LD_OWVAR 67
27083: PUSH
27084: LD_INT 3
27086: EQUAL
27087: PUSH
27088: LD_VAR 0 7
27092: AND
27093: PUSH
27094: LD_VAR 0 3
27098: AND
27099: PUSH
27100: LD_VAR 0 4
27104: AND
27105: PUSH
27106: LD_VAR 0 5
27110: AND
27111: IFFALSE 27127
// SetAchievementEX ( achiv , missionNumber ) ;
27113: LD_VAR 0 7
27117: PPUSH
27118: LD_VAR 0 2
27122: PPUSH
27123: CALL_OW 564
// end ;
27127: LD_VAR 0 6
27131: RET
// export function SA_BehemothConstructed ; begin
27132: LD_INT 0
27134: PPUSH
// SetAchievement ( ACH_SMC ) ;
27135: LD_STRING ACH_SMC
27137: PPUSH
27138: CALL_OW 543
// end ;
27142: LD_VAR 0 1
27146: RET
// on CustomCommand ( p1 , p2 , p3 , p4 , p5 , p6 ) do begin case p2 of 1 :
27147: LD_VAR 0 2
27151: PUSH
27152: LD_INT 1
27154: DOUBLE
27155: EQUAL
27156: IFTRUE 27160
27158: GO 27167
27160: POP
// HackUnlimitedResources ; 2 :
27161: CALL 27351 0 0
27165: GO 27348
27167: LD_INT 2
27169: DOUBLE
27170: EQUAL
27171: IFTRUE 27175
27173: GO 27182
27175: POP
// HackSetLevel10 ; 3 :
27176: CALL 27484 0 0
27180: GO 27348
27182: LD_INT 3
27184: DOUBLE
27185: EQUAL
27186: IFTRUE 27190
27188: GO 27197
27190: POP
// HackSetLevel10YourUnits ; 4 :
27191: CALL 27569 0 0
27195: GO 27348
27197: LD_INT 4
27199: DOUBLE
27200: EQUAL
27201: IFTRUE 27205
27203: GO 27227
27205: POP
// HackSpawnHuman ( p3 , p4 , p5 ) ; 5 :
27206: LD_VAR 0 3
27210: PPUSH
27211: LD_VAR 0 4
27215: PPUSH
27216: LD_VAR 0 5
27220: PPUSH
27221: CALL 27659 0 3
27225: GO 27348
27227: LD_INT 5
27229: DOUBLE
27230: EQUAL
27231: IFTRUE 27235
27233: GO 27242
27235: POP
// HackSpawnVehicle ; 6 :
27236: CALL 27720 0 0
27240: GO 27348
27242: LD_INT 6
27244: DOUBLE
27245: EQUAL
27246: IFTRUE 27250
27248: GO 27257
27250: POP
// HackInvincible ; 7 :
27251: CALL 28266 0 0
27255: GO 27348
27257: LD_INT 7
27259: DOUBLE
27260: EQUAL
27261: IFTRUE 27265
27263: GO 27272
27265: POP
// HackInvisible ; 8 :
27266: CALL 28377 0 0
27270: GO 27348
27272: LD_INT 8
27274: DOUBLE
27275: EQUAL
27276: IFTRUE 27280
27278: GO 27287
27280: POP
// HackChangeYourSide ; 9 :
27281: CALL 28434 0 0
27285: GO 27348
27287: LD_INT 9
27289: DOUBLE
27290: EQUAL
27291: IFTRUE 27295
27293: GO 27302
27295: POP
// HackChangeUnitSide ; 10 :
27296: CALL 28476 0 0
27300: GO 27348
27302: LD_INT 10
27304: DOUBLE
27305: EQUAL
27306: IFTRUE 27310
27308: GO 27317
27310: POP
// HackFog ; 11 :
27311: CALL 28577 0 0
27315: GO 27348
27317: LD_INT 11
27319: DOUBLE
27320: EQUAL
27321: IFTRUE 27325
27323: GO 27332
27325: POP
// HackApeman ; 12 :
27326: CALL 28592 0 0
27330: GO 27348
27332: LD_INT 12
27334: DOUBLE
27335: EQUAL
27336: IFTRUE 27340
27338: GO 27347
27340: POP
// HackBoom ; end ;
27341: CALL 28677 0 0
27345: GO 27348
27347: POP
// end ;
27348: PPOPN 6
27350: END
// export function HackUnlimitedResources ; var i , j , tmp ; begin
27351: LD_INT 0
27353: PPUSH
27354: PPUSH
27355: PPUSH
27356: PPUSH
// tmp := FilterAllUnits ( [ [ f_side , your_side ] , [ f_or , [ f_btype , b_depot ] , [ f_btype , b_warehouse ] ] ] ) ;
27357: LD_ADDR_VAR 0 4
27361: PUSH
27362: LD_INT 22
27364: PUSH
27365: LD_OWVAR 2
27369: PUSH
27370: EMPTY
27371: LIST
27372: LIST
27373: PUSH
27374: LD_INT 2
27376: PUSH
27377: LD_INT 30
27379: PUSH
27380: LD_INT 0
27382: PUSH
27383: EMPTY
27384: LIST
27385: LIST
27386: PUSH
27387: LD_INT 30
27389: PUSH
27390: LD_INT 1
27392: PUSH
27393: EMPTY
27394: LIST
27395: LIST
27396: PUSH
27397: EMPTY
27398: LIST
27399: LIST
27400: LIST
27401: PUSH
27402: EMPTY
27403: LIST
27404: LIST
27405: PPUSH
27406: CALL_OW 69
27410: ST_TO_ADDR
// if not tmp then
27411: LD_VAR 0 4
27415: NOT
27416: IFFALSE 27420
// exit ;
27418: GO 27479
// for i in tmp do
27420: LD_ADDR_VAR 0 2
27424: PUSH
27425: LD_VAR 0 4
27429: PUSH
27430: FOR_IN
27431: IFFALSE 27477
// for j = 1 to 3 do
27433: LD_ADDR_VAR 0 3
27437: PUSH
27438: DOUBLE
27439: LD_INT 1
27441: DEC
27442: ST_TO_ADDR
27443: LD_INT 3
27445: PUSH
27446: FOR_TO
27447: IFFALSE 27473
// SetResourceType ( GetBase ( i ) , j , 99999 ) ;
27449: LD_VAR 0 2
27453: PPUSH
27454: CALL_OW 274
27458: PPUSH
27459: LD_VAR 0 3
27463: PPUSH
27464: LD_INT 99999
27466: PPUSH
27467: CALL_OW 277
27471: GO 27446
27473: POP
27474: POP
27475: GO 27430
27477: POP
27478: POP
// end ;
27479: LD_VAR 0 1
27483: RET
// export function HackSetLevel10 ; var i , j ; begin
27484: LD_INT 0
27486: PPUSH
27487: PPUSH
27488: PPUSH
// for i in FilterAllUnits ( [ f_type , unit_human ] ) do
27489: LD_ADDR_VAR 0 2
27493: PUSH
27494: LD_INT 21
27496: PUSH
27497: LD_INT 1
27499: PUSH
27500: EMPTY
27501: LIST
27502: LIST
27503: PPUSH
27504: CALL_OW 69
27508: PUSH
27509: FOR_IN
27510: IFFALSE 27562
// if IsSelected ( i ) then
27512: LD_VAR 0 2
27516: PPUSH
27517: CALL_OW 306
27521: IFFALSE 27560
// begin for j := 1 to 4 do
27523: LD_ADDR_VAR 0 3
27527: PUSH
27528: DOUBLE
27529: LD_INT 1
27531: DEC
27532: ST_TO_ADDR
27533: LD_INT 4
27535: PUSH
27536: FOR_TO
27537: IFFALSE 27558
// SetSkill ( i , j , 10 ) ;
27539: LD_VAR 0 2
27543: PPUSH
27544: LD_VAR 0 3
27548: PPUSH
27549: LD_INT 10
27551: PPUSH
27552: CALL_OW 237
27556: GO 27536
27558: POP
27559: POP
// end ;
27560: GO 27509
27562: POP
27563: POP
// end ;
27564: LD_VAR 0 1
27568: RET
// export function HackSetLevel10YourUnits ; var i , j ; begin
27569: LD_INT 0
27571: PPUSH
27572: PPUSH
27573: PPUSH
// for i in FilterAllUnits ( [ [ f_side , your_side ] , [ f_type , unit_human ] ] ) do
27574: LD_ADDR_VAR 0 2
27578: PUSH
27579: LD_INT 22
27581: PUSH
27582: LD_OWVAR 2
27586: PUSH
27587: EMPTY
27588: LIST
27589: LIST
27590: PUSH
27591: LD_INT 21
27593: PUSH
27594: LD_INT 1
27596: PUSH
27597: EMPTY
27598: LIST
27599: LIST
27600: PUSH
27601: EMPTY
27602: LIST
27603: LIST
27604: PPUSH
27605: CALL_OW 69
27609: PUSH
27610: FOR_IN
27611: IFFALSE 27652
// begin for j := 1 to 4 do
27613: LD_ADDR_VAR 0 3
27617: PUSH
27618: DOUBLE
27619: LD_INT 1
27621: DEC
27622: ST_TO_ADDR
27623: LD_INT 4
27625: PUSH
27626: FOR_TO
27627: IFFALSE 27648
// SetSkill ( i , j , 10 ) ;
27629: LD_VAR 0 2
27633: PPUSH
27634: LD_VAR 0 3
27638: PPUSH
27639: LD_INT 10
27641: PPUSH
27642: CALL_OW 237
27646: GO 27626
27648: POP
27649: POP
// end ;
27650: GO 27610
27652: POP
27653: POP
// end ;
27654: LD_VAR 0 1
27658: RET
// export function HackSpawnHuman ( nation , class , skill ) ; begin
27659: LD_INT 0
27661: PPUSH
// uc_side := your_side ;
27662: LD_ADDR_OWVAR 20
27666: PUSH
27667: LD_OWVAR 2
27671: ST_TO_ADDR
// uc_nation := nation ;
27672: LD_ADDR_OWVAR 21
27676: PUSH
27677: LD_VAR 0 1
27681: ST_TO_ADDR
// InitHc ;
27682: CALL_OW 19
// PrepareHuman ( false , class , skill ) ;
27686: LD_INT 0
27688: PPUSH
27689: LD_VAR 0 2
27693: PPUSH
27694: LD_VAR 0 3
27698: PPUSH
27699: CALL_OW 380
// PlaceUnitAnywhere ( CreateHuman , true ) ;
27703: CALL_OW 44
27707: PPUSH
27708: LD_INT 1
27710: PPUSH
27711: CALL_OW 51
// end ;
27715: LD_VAR 0 4
27719: RET
// export function HackSpawnVehicle ; begin
27720: LD_INT 0
27722: PPUSH
// uc_side := your_side ;
27723: LD_ADDR_OWVAR 20
27727: PUSH
27728: LD_OWVAR 2
27732: ST_TO_ADDR
// uc_nation := rand ( 1 , 3 ) ;
27733: LD_ADDR_OWVAR 21
27737: PUSH
27738: LD_INT 1
27740: PPUSH
27741: LD_INT 3
27743: PPUSH
27744: CALL_OW 12
27748: ST_TO_ADDR
// InitVc ;
27749: CALL_OW 20
// case uc_nation of 1 :
27753: LD_OWVAR 21
27757: PUSH
27758: LD_INT 1
27760: DOUBLE
27761: EQUAL
27762: IFTRUE 27766
27764: GO 27910
27766: POP
// begin vc_chassis := [ us_light_wheeled , us_medium_wheeled , us_medium_tracked , us_heavy_tracked , us_morphling ] [ rand ( 1 , 5 ) ] ;
27767: LD_ADDR_OWVAR 37
27771: PUSH
27772: LD_INT 1
27774: PUSH
27775: LD_INT 2
27777: PUSH
27778: LD_INT 3
27780: PUSH
27781: LD_INT 4
27783: PUSH
27784: LD_INT 5
27786: PUSH
27787: EMPTY
27788: LIST
27789: LIST
27790: LIST
27791: LIST
27792: LIST
27793: PUSH
27794: LD_INT 1
27796: PPUSH
27797: LD_INT 5
27799: PPUSH
27800: CALL_OW 12
27804: ARRAY
27805: ST_TO_ADDR
// vc_engine := rand ( 1 , 3 ) ;
27806: LD_ADDR_OWVAR 39
27810: PUSH
27811: LD_INT 1
27813: PPUSH
27814: LD_INT 3
27816: PPUSH
27817: CALL_OW 12
27821: ST_TO_ADDR
// vc_control := [ control_manual , control_remote , control_computer ] [ rand ( 1 , 3 ) ] ;
27822: LD_ADDR_OWVAR 38
27826: PUSH
27827: LD_INT 1
27829: PUSH
27830: LD_INT 2
27832: PUSH
27833: LD_INT 3
27835: PUSH
27836: EMPTY
27837: LIST
27838: LIST
27839: LIST
27840: PUSH
27841: LD_INT 1
27843: PPUSH
27844: LD_INT 3
27846: PPUSH
27847: CALL_OW 12
27851: ARRAY
27852: ST_TO_ADDR
// vc_weapon := [ us_machine_gun , us_gatling_gun , us_double_gun , us_light_gun , us_rocket_launcher , us_siberium_rocket , us_laser , us_double_laser , us_heavy_gun ] [ rand ( 1 , 9 ) ] ;
27853: LD_ADDR_OWVAR 40
27857: PUSH
27858: LD_INT 2
27860: PUSH
27861: LD_INT 4
27863: PUSH
27864: LD_INT 5
27866: PUSH
27867: LD_INT 3
27869: PUSH
27870: LD_INT 7
27872: PUSH
27873: LD_INT 8
27875: PUSH
27876: LD_INT 9
27878: PUSH
27879: LD_INT 10
27881: PUSH
27882: LD_INT 6
27884: PUSH
27885: EMPTY
27886: LIST
27887: LIST
27888: LIST
27889: LIST
27890: LIST
27891: LIST
27892: LIST
27893: LIST
27894: LIST
27895: PUSH
27896: LD_INT 1
27898: PPUSH
27899: LD_INT 9
27901: PPUSH
27902: CALL_OW 12
27906: ARRAY
27907: ST_TO_ADDR
// end ; 2 :
27908: GO 28175
27910: LD_INT 2
27912: DOUBLE
27913: EQUAL
27914: IFTRUE 27918
27916: GO 28042
27918: POP
// begin vc_chassis := [ ar_hovercraft , ar_light_trike , ar_medium_trike , ar_half_tracked ] [ rand ( 1 , 4 ) ] ;
27919: LD_ADDR_OWVAR 37
27923: PUSH
27924: LD_INT 11
27926: PUSH
27927: LD_INT 12
27929: PUSH
27930: LD_INT 13
27932: PUSH
27933: LD_INT 14
27935: PUSH
27936: EMPTY
27937: LIST
27938: LIST
27939: LIST
27940: LIST
27941: PUSH
27942: LD_INT 1
27944: PPUSH
27945: LD_INT 4
27947: PPUSH
27948: CALL_OW 12
27952: ARRAY
27953: ST_TO_ADDR
// vc_engine := rand ( 1 , 3 ) ;
27954: LD_ADDR_OWVAR 39
27958: PUSH
27959: LD_INT 1
27961: PPUSH
27962: LD_INT 3
27964: PPUSH
27965: CALL_OW 12
27969: ST_TO_ADDR
// vc_control := [ control_manual , control_remote , control_apeman ] [ rand ( 1 , 3 ) ] ;
27970: LD_ADDR_OWVAR 38
27974: PUSH
27975: LD_INT 1
27977: PUSH
27978: LD_INT 2
27980: PUSH
27981: LD_INT 5
27983: PUSH
27984: EMPTY
27985: LIST
27986: LIST
27987: LIST
27988: PUSH
27989: LD_INT 1
27991: PPUSH
27992: LD_INT 3
27994: PPUSH
27995: CALL_OW 12
27999: ARRAY
28000: ST_TO_ADDR
// vc_weapon := [ ar_double_machine_gun , ar_flame_thrower , ar_gun , ar_rocket_launcher , ar_selfpropelled_bomb ] [ rand ( 1 , 5 ) ] ;
28001: LD_ADDR_OWVAR 40
28005: PUSH
28006: LD_INT 24
28008: PUSH
28009: LD_INT 26
28011: PUSH
28012: LD_INT 27
28014: PUSH
28015: LD_INT 28
28017: PUSH
28018: LD_INT 29
28020: PUSH
28021: EMPTY
28022: LIST
28023: LIST
28024: LIST
28025: LIST
28026: LIST
28027: PUSH
28028: LD_INT 1
28030: PPUSH
28031: LD_INT 5
28033: PPUSH
28034: CALL_OW 12
28038: ARRAY
28039: ST_TO_ADDR
// end ; 3 :
28040: GO 28175
28042: LD_INT 3
28044: DOUBLE
28045: EQUAL
28046: IFTRUE 28050
28048: GO 28174
28050: POP
// begin vc_chassis := [ ru_medium_wheeled , ru_heavy_wheeled , ru_medium_tracked , ru_heavy_tracked ] [ rand ( 1 , 4 ) ] ;
28051: LD_ADDR_OWVAR 37
28055: PUSH
28056: LD_INT 21
28058: PUSH
28059: LD_INT 23
28061: PUSH
28062: LD_INT 22
28064: PUSH
28065: LD_INT 24
28067: PUSH
28068: EMPTY
28069: LIST
28070: LIST
28071: LIST
28072: LIST
28073: PUSH
28074: LD_INT 1
28076: PPUSH
28077: LD_INT 4
28079: PPUSH
28080: CALL_OW 12
28084: ARRAY
28085: ST_TO_ADDR
// vc_engine := rand ( 1 , 3 ) ;
28086: LD_ADDR_OWVAR 39
28090: PUSH
28091: LD_INT 1
28093: PPUSH
28094: LD_INT 3
28096: PPUSH
28097: CALL_OW 12
28101: ST_TO_ADDR
// vc_control := [ control_manual , control_computer ] [ rand ( 1 , 2 ) ] ;
28102: LD_ADDR_OWVAR 38
28106: PUSH
28107: LD_INT 1
28109: PUSH
28110: LD_INT 3
28112: PUSH
28113: EMPTY
28114: LIST
28115: LIST
28116: PUSH
28117: LD_INT 1
28119: PPUSH
28120: LD_INT 2
28122: PPUSH
28123: CALL_OW 12
28127: ARRAY
28128: ST_TO_ADDR
// vc_weapon := [ ru_heavy_machine_gun , ru_gatling_gun , ru_gun , ru_heavy_gun , ru_siberium_rocket , ru_rocket ] [ rand ( 1 , 6 ) ] ;
28129: LD_ADDR_OWVAR 40
28133: PUSH
28134: LD_INT 42
28136: PUSH
28137: LD_INT 43
28139: PUSH
28140: LD_INT 44
28142: PUSH
28143: LD_INT 46
28145: PUSH
28146: LD_INT 48
28148: PUSH
28149: LD_INT 47
28151: PUSH
28152: EMPTY
28153: LIST
28154: LIST
28155: LIST
28156: LIST
28157: LIST
28158: LIST
28159: PUSH
28160: LD_INT 1
28162: PPUSH
28163: LD_INT 6
28165: PPUSH
28166: CALL_OW 12
28170: ARRAY
28171: ST_TO_ADDR
// end ; end ;
28172: GO 28175
28174: POP
// PlaceUnitAnywhere ( CreateVehicle , true ) ;
28175: CALL_OW 45
28179: PPUSH
28180: LD_INT 1
28182: PPUSH
28183: CALL_OW 51
// end ;
28187: LD_VAR 0 1
28191: RET
// export invincible ; every 1 do
28192: GO 28194
28194: DISABLE
// invincible := [ ] ;
28195: LD_ADDR_EXP 249
28199: PUSH
28200: EMPTY
28201: ST_TO_ADDR
28202: END
// every 10 do var i ;
28203: GO 28205
28205: DISABLE
28206: LD_INT 0
28208: PPUSH
// begin enable ;
28209: ENABLE
// if not invincible then
28210: LD_EXP 249
28214: NOT
28215: IFFALSE 28219
// exit ;
28217: GO 28263
// for i in invincible do
28219: LD_ADDR_VAR 0 1
28223: PUSH
28224: LD_EXP 249
28228: PUSH
28229: FOR_IN
28230: IFFALSE 28261
// if GetLives ( i ) < 1000 then
28232: LD_VAR 0 1
28236: PPUSH
28237: CALL_OW 256
28241: PUSH
28242: LD_INT 1000
28244: LESS
28245: IFFALSE 28259
// SetLives ( i , 1000 ) ;
28247: LD_VAR 0 1
28251: PPUSH
28252: LD_INT 1000
28254: PPUSH
28255: CALL_OW 234
28259: GO 28229
28261: POP
28262: POP
// end ;
28263: PPOPN 1
28265: END
// export function HackInvincible ; var i ; begin
28266: LD_INT 0
28268: PPUSH
28269: PPUSH
// for i in FilterAllUnits ( [ f_or , [ f_type , unit_human ] , [ f_type , unit_vehicle ] ] ) do
28270: LD_ADDR_VAR 0 2
28274: PUSH
28275: LD_INT 2
28277: PUSH
28278: LD_INT 21
28280: PUSH
28281: LD_INT 1
28283: PUSH
28284: EMPTY
28285: LIST
28286: LIST
28287: PUSH
28288: LD_INT 21
28290: PUSH
28291: LD_INT 2
28293: PUSH
28294: EMPTY
28295: LIST
28296: LIST
28297: PUSH
28298: EMPTY
28299: LIST
28300: LIST
28301: LIST
28302: PPUSH
28303: CALL_OW 69
28307: PUSH
28308: FOR_IN
28309: IFFALSE 28370
// if IsSelected ( i ) then
28311: LD_VAR 0 2
28315: PPUSH
28316: CALL_OW 306
28320: IFFALSE 28368
// begin if i in invincible then
28322: LD_VAR 0 2
28326: PUSH
28327: LD_EXP 249
28331: IN
28332: IFFALSE 28352
// invincible := invincible diff i else
28334: LD_ADDR_EXP 249
28338: PUSH
28339: LD_EXP 249
28343: PUSH
28344: LD_VAR 0 2
28348: DIFF
28349: ST_TO_ADDR
28350: GO 28368
// invincible := invincible union i ;
28352: LD_ADDR_EXP 249
28356: PUSH
28357: LD_EXP 249
28361: PUSH
28362: LD_VAR 0 2
28366: UNION
28367: ST_TO_ADDR
// end ;
28368: GO 28308
28370: POP
28371: POP
// end ;
28372: LD_VAR 0 1
28376: RET
// export function HackInvisible ; var i , j ; begin
28377: LD_INT 0
28379: PPUSH
28380: PPUSH
28381: PPUSH
// for i in FilterAllUnits ( [ f_type , unit_human ] ) do
28382: LD_ADDR_VAR 0 2
28386: PUSH
28387: LD_INT 21
28389: PUSH
28390: LD_INT 1
28392: PUSH
28393: EMPTY
28394: LIST
28395: LIST
28396: PPUSH
28397: CALL_OW 69
28401: PUSH
28402: FOR_IN
28403: IFFALSE 28427
// if IsSelected ( i ) then
28405: LD_VAR 0 2
28409: PPUSH
28410: CALL_OW 306
28414: IFFALSE 28425
// begin ComForceInvisible ( i ) ;
28416: LD_VAR 0 2
28420: PPUSH
28421: CALL_OW 496
// end ;
28425: GO 28402
28427: POP
28428: POP
// end ;
28429: LD_VAR 0 1
28433: RET
// export function HackChangeYourSide ; begin
28434: LD_INT 0
28436: PPUSH
// if your_side = 8 then
28437: LD_OWVAR 2
28441: PUSH
28442: LD_INT 8
28444: EQUAL
28445: IFFALSE 28457
// your_side := 0 else
28447: LD_ADDR_OWVAR 2
28451: PUSH
28452: LD_INT 0
28454: ST_TO_ADDR
28455: GO 28471
// your_side := your_side + 1 ;
28457: LD_ADDR_OWVAR 2
28461: PUSH
28462: LD_OWVAR 2
28466: PUSH
28467: LD_INT 1
28469: PLUS
28470: ST_TO_ADDR
// end ;
28471: LD_VAR 0 1
28475: RET
// export function HackChangeUnitSide ; var i , j ; begin
28476: LD_INT 0
28478: PPUSH
28479: PPUSH
28480: PPUSH
// for i in all_units do
28481: LD_ADDR_VAR 0 2
28485: PUSH
28486: LD_OWVAR 3
28490: PUSH
28491: FOR_IN
28492: IFFALSE 28570
// if IsSelected ( i ) then
28494: LD_VAR 0 2
28498: PPUSH
28499: CALL_OW 306
28503: IFFALSE 28568
// begin j := GetSide ( i ) ;
28505: LD_ADDR_VAR 0 3
28509: PUSH
28510: LD_VAR 0 2
28514: PPUSH
28515: CALL_OW 255
28519: ST_TO_ADDR
// if j = 8 then
28520: LD_VAR 0 3
28524: PUSH
28525: LD_INT 8
28527: EQUAL
28528: IFFALSE 28540
// j := 0 else
28530: LD_ADDR_VAR 0 3
28534: PUSH
28535: LD_INT 0
28537: ST_TO_ADDR
28538: GO 28554
// j := j + 1 ;
28540: LD_ADDR_VAR 0 3
28544: PUSH
28545: LD_VAR 0 3
28549: PUSH
28550: LD_INT 1
28552: PLUS
28553: ST_TO_ADDR
// SetSide ( i , j ) ;
28554: LD_VAR 0 2
28558: PPUSH
28559: LD_VAR 0 3
28563: PPUSH
28564: CALL_OW 235
// end ;
28568: GO 28491
28570: POP
28571: POP
// end ;
28572: LD_VAR 0 1
28576: RET
// export function HackFog ; begin
28577: LD_INT 0
28579: PPUSH
// FogOff ( true ) ;
28580: LD_INT 1
28582: PPUSH
28583: CALL_OW 344
// end ;
28587: LD_VAR 0 1
28591: RET
// export function HackApeman ; begin
28592: LD_INT 0
28594: PPUSH
// uc_side := your_side ;
28595: LD_ADDR_OWVAR 20
28599: PUSH
28600: LD_OWVAR 2
28604: ST_TO_ADDR
// uc_nation := 0 ;
28605: LD_ADDR_OWVAR 21
28609: PUSH
28610: LD_INT 0
28612: ST_TO_ADDR
// hc_name :=  ;
28613: LD_ADDR_OWVAR 26
28617: PUSH
28618: LD_STRING 
28620: ST_TO_ADDR
// hc_gallery :=  ;
28621: LD_ADDR_OWVAR 33
28625: PUSH
28626: LD_STRING 
28628: ST_TO_ADDR
// hc_skills := [ 0 , 0 , 0 , 0 ] ;
28629: LD_ADDR_OWVAR 31
28633: PUSH
28634: LD_INT 0
28636: PUSH
28637: LD_INT 0
28639: PUSH
28640: LD_INT 0
28642: PUSH
28643: LD_INT 0
28645: PUSH
28646: EMPTY
28647: LIST
28648: LIST
28649: LIST
28650: LIST
28651: ST_TO_ADDR
// hc_class := class_apeman ;
28652: LD_ADDR_OWVAR 28
28656: PUSH
28657: LD_INT 12
28659: ST_TO_ADDR
// PlaceUnitAnywhere ( CreateHuman , true ) ;
28660: CALL_OW 44
28664: PPUSH
28665: LD_INT 1
28667: PPUSH
28668: CALL_OW 51
// end ;
28672: LD_VAR 0 1
28676: RET
// export function HackBoom ; begin
28677: LD_INT 0
28679: PPUSH
// uc_side := your_side ;
28680: LD_ADDR_OWVAR 20
28684: PUSH
28685: LD_OWVAR 2
28689: ST_TO_ADDR
// uc_nation := 1 ;
28690: LD_ADDR_OWVAR 21
28694: PUSH
28695: LD_INT 1
28697: ST_TO_ADDR
// vc_chassis := us_morphling ;
28698: LD_ADDR_OWVAR 37
28702: PUSH
28703: LD_INT 5
28705: ST_TO_ADDR
// vc_engine := engine_siberite ;
28706: LD_ADDR_OWVAR 39
28710: PUSH
28711: LD_INT 3
28713: ST_TO_ADDR
// vc_control := control_computer ;
28714: LD_ADDR_OWVAR 38
28718: PUSH
28719: LD_INT 3
28721: ST_TO_ADDR
// vc_weapon := us_siberium_rocket ;
28722: LD_ADDR_OWVAR 40
28726: PUSH
28727: LD_INT 8
28729: ST_TO_ADDR
// PlaceUnitAnywhere ( CreateVehicle , true ) ;
28730: CALL_OW 45
28734: PPUSH
28735: LD_INT 1
28737: PPUSH
28738: CALL_OW 51
// end ;
28742: LD_VAR 0 1
28746: RET
