// export sklad ; starting begin disable ( 001 ) ;
   0: LD_INT 1
   2: DISABLE_MARKED
// disable ( 002 ) ;
   3: LD_INT 2
   5: DISABLE_MARKED
// disable ( 003 ) ;
   6: LD_INT 3
   8: DISABLE_MARKED
// disable ( 004 ) ;
   9: LD_INT 4
  11: DISABLE_MARKED
// ComTurnXY ( ivan , 71 , 32 ) ;
  12: LD_INT 24
  14: PPUSH
  15: LD_INT 71
  17: PPUSH
  18: LD_INT 32
  20: PPUSH
  21: CALL_OW 118
// ComTurnXY ( michail , 71 , 33 ) ;
  25: LD_INT 25
  27: PPUSH
  28: LD_INT 71
  30: PPUSH
  31: LD_INT 33
  33: PPUSH
  34: CALL_OW 118
// ComTurnUnit ( michail2 , belial ) ;
  38: LD_INT 8
  40: PPUSH
  41: LD_INT 7
  43: PPUSH
  44: CALL_OW 119
// ComTurnUnit ( belial , michail2 ) ;
  48: LD_INT 7
  50: PPUSH
  51: LD_INT 8
  53: PPUSH
  54: CALL_OW 119
// CenterOnUnits ( michail2 ) ;
  58: LD_INT 8
  60: PPUSH
  61: CALL_OW 85
// ComMoveXY ( lucek , 41 , 59 ) ;
  65: LD_INT 9
  67: PPUSH
  68: LD_INT 41
  70: PPUSH
  71: LD_INT 59
  73: PPUSH
  74: CALL_OW 111
// InGameOn ;
  78: CALL_OW 8
// Say ( belial , B1-2 ) ;
  82: LD_INT 7
  84: PPUSH
  85: LD_STRING B1-2
  87: PPUSH
  88: CALL_OW 88
// Wait ( 0 0$2 ) ;
  92: LD_INT 70
  94: PPUSH
  95: CALL_OW 67
// Say ( lucek , L1-2 ) ;
  99: LD_INT 9
 101: PPUSH
 102: LD_STRING L1-2
 104: PPUSH
 105: CALL_OW 88
// SetSide ( lucek , 3 ) ;
 109: LD_INT 9
 111: PPUSH
 112: LD_INT 3
 114: PPUSH
 115: CALL_OW 235
// AddComStand ( [ lucek ] ) ;
 119: LD_INT 9
 121: PUSH
 122: EMPTY
 123: LIST
 124: PPUSH
 125: CALL_OW 225
// Say ( belial , B1-3 ) ;
 129: LD_INT 7
 131: PPUSH
 132: LD_STRING B1-3
 134: PPUSH
 135: CALL_OW 88
// Say ( lucek , L2-1 ) ;
 139: LD_INT 9
 141: PPUSH
 142: LD_STRING L2-1
 144: PPUSH
 145: CALL_OW 88
// Say ( belial , B1-4 ) ;
 149: LD_INT 7
 151: PPUSH
 152: LD_STRING B1-4
 154: PPUSH
 155: CALL_OW 88
// Say ( lucek , L2-2 ) ;
 159: LD_INT 9
 161: PPUSH
 162: LD_STRING L2-2
 164: PPUSH
 165: CALL_OW 88
// ChangeMissionObjectives ( CEL1 ) ;
 169: LD_STRING CEL1
 171: PPUSH
 172: CALL_OW 337
// InGameOff ;
 176: CALL_OW 9
// end ;
 180: END
// every 0 0$1 trigger IsInArea ( lucek , sklad ) or IsInArea ( michail , sklad ) or IsInArea ( belial , sklad ) do
 181: LD_INT 9
 183: PPUSH
 184: LD_EXP 1
 188: PPUSH
 189: CALL_OW 308
 193: PUSH
 194: LD_INT 25
 196: PPUSH
 197: LD_EXP 1
 201: PPUSH
 202: CALL_OW 308
 206: OR
 207: PUSH
 208: LD_INT 7
 210: PPUSH
 211: LD_EXP 1
 215: PPUSH
 216: CALL_OW 308
 220: OR
 221: IFFALSE 320
 223: GO 225
 225: DISABLE
// begin InGameOn ;
 226: CALL_OW 8
// Say ( lucek , L1-4 ) ;
 230: LD_INT 9
 232: PPUSH
 233: LD_STRING L1-4
 235: PPUSH
 236: CALL_OW 88
// Say ( michail2 , M1-1 ) ;
 240: LD_INT 8
 242: PPUSH
 243: LD_STRING M1-1
 245: PPUSH
 246: CALL_OW 88
// Say ( belial , B1-5 ) ;
 250: LD_INT 7
 252: PPUSH
 253: LD_STRING B1-5
 255: PPUSH
 256: CALL_OW 88
// Say ( michail2 , M1-2 ) ;
 260: LD_INT 8
 262: PPUSH
 263: LD_STRING M1-2
 265: PPUSH
 266: CALL_OW 88
// AddComEnterUnit ( belial , depot ) ;
 270: LD_INT 7
 272: PPUSH
 273: LD_INT 2
 275: PPUSH
 276: CALL_OW 180
// Wait ( 0 0$15 ) ;
 280: LD_INT 525
 282: PPUSH
 283: CALL_OW 67
// Say ( belial , B1-6 ) ;
 287: LD_INT 7
 289: PPUSH
 290: LD_STRING B1-6
 292: PPUSH
 293: CALL_OW 88
// case query ( Dane ) of 1 :
 297: LD_STRING Dane
 299: PPUSH
 300: CALL_OW 97
 304: PUSH
 305: LD_INT 1
 307: DOUBLE
 308: EQUAL
 309: IFTRUE 313
 311: GO 319
 313: POP
// begin enable ( 001 ) ;
 314: LD_INT 1
 316: ENABLE_MARKED
// end ; end ;
 317: GO 320
 319: POP
// end ;
 320: END
// every 0 0$10 marked 002 do
 321: GO 323
 323: DISABLE
// begin end ;
 324: END
// var i , c , tmp ; export function RandExplosionInArea ( areaj , time , num ) ; begin
 325: LD_INT 0
 327: PPUSH
// tmp := AreaToList ( area , 0 ) ;
 328: LD_ADDR_LOC 3
 332: PUSH
 333: LD_INT 1
 335: PPUSH
 336: LD_INT 0
 338: PPUSH
 339: CALL_OW 517
 343: ST_TO_ADDR
// time := 0 0$1 ;
 344: LD_ADDR_VAR 0 2
 348: PUSH
 349: LD_INT 35
 351: ST_TO_ADDR
// num := 5 ;
 352: LD_ADDR_VAR 0 3
 356: PUSH
 357: LD_INT 5
 359: ST_TO_ADDR
// Randomize ;
 360: CALL_OW 10
// for i = 1 to num do
 364: LD_ADDR_LOC 1
 368: PUSH
 369: DOUBLE
 370: LD_INT 1
 372: DEC
 373: ST_TO_ADDR
 374: LD_VAR 0 3
 378: PUSH
 379: FOR_TO
 380: IFFALSE 452
// begin c := Rand ( 1 , tmp [ 1 ] ) ;
 382: LD_ADDR_LOC 2
 386: PUSH
 387: LD_INT 1
 389: PPUSH
 390: LD_LOC 3
 394: PUSH
 395: LD_INT 1
 397: ARRAY
 398: PPUSH
 399: CALL_OW 12
 403: ST_TO_ADDR
// MineExplosion ( tmp [ 1 ] [ c ] , tmp [ 2 ] [ c ] , 1 ) ;
 404: LD_LOC 3
 408: PUSH
 409: LD_INT 1
 411: ARRAY
 412: PUSH
 413: LD_LOC 2
 417: ARRAY
 418: PPUSH
 419: LD_LOC 3
 423: PUSH
 424: LD_INT 2
 426: ARRAY
 427: PUSH
 428: LD_LOC 2
 432: ARRAY
 433: PPUSH
 434: LD_INT 1
 436: PPUSH
 437: CALL_OW 453
// Wait ( time ) ;
 441: LD_VAR 0 2
 445: PPUSH
 446: CALL_OW 67
// end ;
 450: GO 379
 452: POP
 453: POP
// end ;
 454: LD_VAR 0 4
 458: RET
// every 0 0$0.1 marked 001 do
 459: GO 461
 461: DISABLE
// begin Say ( belial , B1-7 ) ;
 462: LD_INT 7
 464: PPUSH
 465: LD_STRING B1-7
 467: PPUSH
 468: CALL_OW 88
// Say ( michail2 , M1-3 ) ;
 472: LD_INT 8
 474: PPUSH
 475: LD_STRING M1-3
 477: PPUSH
 478: CALL_OW 88
// Say ( lucek , L1-5 ) ;
 482: LD_INT 9
 484: PPUSH
 485: LD_STRING L1-5
 487: PPUSH
 488: CALL_OW 88
// Say ( belial , B1-8 ) ;
 492: LD_INT 7
 494: PPUSH
 495: LD_STRING B1-8
 497: PPUSH
 498: CALL_OW 88
// InGameOff ;
 502: CALL_OW 9
// end ;
 506: END
// every 0 0$1 trigger IsInArea ( lucek , uwaga ) or IsInArea ( michail , uwaga ) or IsInArea ( belial , uwaga ) do
 507: LD_INT 9
 509: PPUSH
 510: LD_INT 2
 512: PPUSH
 513: CALL_OW 308
 517: PUSH
 518: LD_INT 25
 520: PPUSH
 521: LD_INT 2
 523: PPUSH
 524: CALL_OW 308
 528: OR
 529: PUSH
 530: LD_INT 7
 532: PPUSH
 533: LD_INT 2
 535: PPUSH
 536: CALL_OW 308
 540: OR
 541: IFFALSE 577
 543: GO 545
 545: DISABLE
// begin AddComHold ( [ michail2 , belial , lucek ] ) ;
 546: LD_INT 8
 548: PUSH
 549: LD_INT 7
 551: PUSH
 552: LD_INT 9
 554: PUSH
 555: EMPTY
 556: LIST
 557: LIST
 558: LIST
 559: PPUSH
 560: CALL_OW 200
// Say ( belial , B1-11 ) ;
 564: LD_INT 7
 566: PPUSH
 567: LD_STRING B1-11
 569: PPUSH
 570: CALL_OW 88
// enable ( 003 ) ;
 574: LD_INT 3
 576: ENABLE_MARKED
// end ;
 577: END
// every 0 0$1 marked 003 do
 578: GO 580
 580: DISABLE
// begin ComTurnXY ( ivan , 71 , 32 ) ;
 581: LD_INT 24
 583: PPUSH
 584: LD_INT 71
 586: PPUSH
 587: LD_INT 32
 589: PPUSH
 590: CALL_OW 118
// ComTurnXY ( michail , 71 , 33 ) ;
 594: LD_INT 25
 596: PPUSH
 597: LD_INT 71
 599: PPUSH
 600: LD_INT 33
 602: PPUSH
 603: CALL_OW 118
// Wait ( 0 0$1 ) ;
 607: LD_INT 35
 609: PPUSH
 610: CALL_OW 67
// Say ( ivan , I1-1 ) ;
 614: LD_INT 24
 616: PPUSH
 617: LD_STRING I1-1
 619: PPUSH
 620: CALL_OW 88
// Say ( michail , M2-1 ) ;
 624: LD_INT 25
 626: PPUSH
 627: LD_STRING M2-1
 629: PPUSH
 630: CALL_OW 88
// Say ( ivan , I1-2 ) ;
 634: LD_INT 24
 636: PPUSH
 637: LD_STRING I1-2
 639: PPUSH
 640: CALL_OW 88
// ComEnterUnit ( ivan , eon ) ;
 644: LD_INT 24
 646: PPUSH
 647: LD_INT 1
 649: PPUSH
 650: CALL_OW 120
// Wait ( 0 0$6 ) ;
 654: LD_INT 210
 656: PPUSH
 657: CALL_OW 67
// Say ( michail , M2-2 ) ;
 661: LD_INT 25
 663: PPUSH
 664: LD_STRING M2-2
 666: PPUSH
 667: CALL_OW 88
// ComEnterUnit ( michail , eon ) ;
 671: LD_INT 25
 673: PPUSH
 674: LD_INT 1
 676: PPUSH
 677: CALL_OW 120
// disable ( 003 ) ;
 681: LD_INT 3
 683: DISABLE_MARKED
// enable ( 004 ) ;
 684: LD_INT 4
 686: ENABLE_MARKED
// end ;
 687: END
// every 0 0$1 marked 004 do
 688: GO 690
 690: DISABLE
// begin InGameOn ;
 691: CALL_OW 8
// AddComMoveToArea ( belial , B ) ;
 695: LD_INT 7
 697: PPUSH
 698: LD_INT 3
 700: PPUSH
 701: CALL_OW 173
// AddComMoveToArea ( michail2 , M ) ;
 705: LD_INT 8
 707: PPUSH
 708: LD_INT 4
 710: PPUSH
 711: CALL_OW 173
// ComMoveXY ( lucek , 75 , 33 ) ;
 715: LD_INT 9
 717: PPUSH
 718: LD_INT 75
 720: PPUSH
 721: LD_INT 33
 723: PPUSH
 724: CALL_OW 111
// Say ( belial , B1-9 ) ;
 728: LD_INT 7
 730: PPUSH
 731: LD_STRING B1-9
 733: PPUSH
 734: CALL_OW 88
// ComMoveXY ( lucek , 76 , 32 ) ;
 738: LD_INT 9
 740: PPUSH
 741: LD_INT 76
 743: PPUSH
 744: LD_INT 32
 746: PPUSH
 747: CALL_OW 111
// Say ( michail2 , M1-4 ) ;
 751: LD_INT 8
 753: PPUSH
 754: LD_STRING M1-4
 756: PPUSH
 757: CALL_OW 88
// ComMoveXY ( lucek , 77 , 34 ) ;
 761: LD_INT 9
 763: PPUSH
 764: LD_INT 77
 766: PPUSH
 767: LD_INT 34
 769: PPUSH
 770: CALL_OW 111
// Say ( belial , B1-10 ) ;
 774: LD_INT 7
 776: PPUSH
 777: LD_STRING B1-10
 779: PPUSH
 780: CALL_OW 88
// ComMoveXY ( lucek , 76 , 39 ) ;
 784: LD_INT 9
 786: PPUSH
 787: LD_INT 76
 789: PPUSH
 790: LD_INT 39
 792: PPUSH
 793: CALL_OW 111
// Say ( michail2 , M1-5 ) ;
 797: LD_INT 8
 799: PPUSH
 800: LD_STRING M1-5
 802: PPUSH
 803: CALL_OW 88
// Say ( lucek , L1-6 ) ;
 807: LD_INT 9
 809: PPUSH
 810: LD_STRING L1-6
 812: PPUSH
 813: CALL_OW 88
// Say ( michail2 , M1-6 ) ;
 817: LD_INT 8
 819: PPUSH
 820: LD_STRING M1-6
 822: PPUSH
 823: CALL_OW 88
// Say ( lucek , L1-7 ) ;
 827: LD_INT 9
 829: PPUSH
 830: LD_STRING L1-7
 832: PPUSH
 833: CALL_OW 88
// enable ( 002 ) ;
 837: LD_INT 2
 839: ENABLE_MARKED
// AddComEnterUnit ( [ michail2 , belial , lucek ] , eon ) ;
 840: LD_INT 8
 842: PUSH
 843: LD_INT 7
 845: PUSH
 846: LD_INT 9
 848: PUSH
 849: EMPTY
 850: LIST
 851: LIST
 852: LIST
 853: PPUSH
 854: LD_INT 1
 856: PPUSH
 857: CALL_OW 180
// Wait ( 0 0$12 ) ;
 861: LD_INT 420
 863: PPUSH
 864: CALL_OW 67
// AddMedal ( medal1 , 1 ) ;
 868: LD_STRING medal1
 870: PPUSH
 871: LD_INT 1
 873: PPUSH
 874: CALL_OW 101
// AddMedal ( medal2 , 1 ) ;
 878: LD_STRING medal2
 880: PPUSH
 881: LD_INT 1
 883: PPUSH
 884: CALL_OW 101
// AddMedal ( medal3 , 1 ) ;
 888: LD_STRING medal3
 890: PPUSH
 891: LD_INT 1
 893: PPUSH
 894: CALL_OW 101
// GiveMedals ( MAIN ) ;
 898: LD_STRING MAIN
 900: PPUSH
 901: CALL_OW 102
// YouWin ;
 905: CALL_OW 103
// end ;
 909: END
// every 0 0$1 trigger IsInArea ( lucek , lol ) or IsInArea ( michail2 , lol ) or IsInArea ( belial , lol ) do
 910: LD_INT 9
 912: PPUSH
 913: LD_INT 6
 915: PPUSH
 916: CALL_OW 308
 920: PUSH
 921: LD_INT 8
 923: PPUSH
 924: LD_INT 6
 926: PPUSH
 927: CALL_OW 308
 931: OR
 932: PUSH
 933: LD_INT 7
 935: PPUSH
 936: LD_INT 6
 938: PPUSH
 939: CALL_OW 308
 943: OR
 944: IFFALSE 987
 946: GO 948
 948: DISABLE
// begin DialogueOn ;
 949: CALL_OW 6
// Say ( belial , B1-Turret ) ;
 953: LD_INT 7
 955: PPUSH
 956: LD_STRING B1-Turret
 958: PPUSH
 959: CALL_OW 88
// Say ( michail2 , M1-Turret ) ;
 963: LD_INT 8
 965: PPUSH
 966: LD_STRING M1-Turret
 968: PPUSH
 969: CALL_OW 88
// Say ( lucek , L1-Turret ) ;
 973: LD_INT 9
 975: PPUSH
 976: LD_STRING L1-Turret
 978: PPUSH
 979: CALL_OW 88
// DialogueOff ;
 983: CALL_OW 7
// end ; end_of_file
 987: END
// every 0 0$1 trigger IsInArea ( michail2 , lost ) or IsInArea ( belial , lost ) or IsInArea ( lucek , lost ) do
 988: LD_INT 8
 990: PPUSH
 991: LD_INT 5
 993: PPUSH
 994: CALL_OW 308
 998: PUSH
 999: LD_INT 7
1001: PPUSH
1002: LD_INT 5
1004: PPUSH
1005: CALL_OW 308
1009: OR
1010: PUSH
1011: LD_INT 9
1013: PPUSH
1014: LD_INT 5
1016: PPUSH
1017: CALL_OW 308
1021: OR
1022: IFFALSE 1052
1024: GO 1026
1026: DISABLE
// begin DialogueOn ;
1027: CALL_OW 6
// Say ( michail , M2-3 ) ;
1031: LD_INT 25
1033: PPUSH
1034: LD_STRING M2-3
1036: PPUSH
1037: CALL_OW 88
// DialogueOff ;
1041: CALL_OW 7
// YouLost ( lose ) ;
1045: LD_STRING lose
1047: PPUSH
1048: CALL_OW 104
// end ;
1052: END
// on Contact ( side1 , side2 ) do begin if side1 = 3 and side2 = 4 then
1053: LD_VAR 0 1
1057: PUSH
1058: LD_INT 3
1060: EQUAL
1061: PUSH
1062: LD_VAR 0 2
1066: PUSH
1067: LD_INT 4
1069: EQUAL
1070: AND
1071: IFFALSE 1080
// begin YouLost ( attack ) ;
1073: LD_STRING attack
1075: PPUSH
1076: CALL_OW 104
// end ; end ;
1080: PPOPN 2
1082: END
// every 0 0$1 trigger IsDead ( michail2 ) or IsDead ( belial ) or IsDead ( lucek ) do
1083: LD_INT 8
1085: PPUSH
1086: CALL_OW 301
1090: PUSH
1091: LD_INT 7
1093: PPUSH
1094: CALL_OW 301
1098: OR
1099: PUSH
1100: LD_INT 9
1102: PPUSH
1103: CALL_OW 301
1107: OR
1108: IFFALSE 1120
1110: GO 1112
1112: DISABLE
// begin YouLost ( dead ) ;
1113: LD_STRING dead
1115: PPUSH
1116: CALL_OW 104
// end ;
1120: END
