// export Mart ; export Frank ; export Sergiej ; export Geral ; export Nitek ; export Bellic ; export SpokoMajonez ; export Gorn ; export Lars ; export Kurt ; starting begin ResetFog ;
   0: CALL_OW 335
// Mart = CreateCharacter ( Mart ) ;
   4: LD_ADDR_EXP 1
   8: PUSH
   9: LD_STRING Mart
  11: PPUSH
  12: CALL_OW 34
  16: ST_TO_ADDR
// SetClass ( Mart , 1 ) ;
  17: LD_EXP 1
  21: PPUSH
  22: LD_INT 1
  24: PPUSH
  25: CALL_OW 336
// PlaceUnitArea ( mart , mar , false ) ;
  29: LD_EXP 1
  33: PPUSH
  34: LD_INT 6
  36: PPUSH
  37: LD_INT 0
  39: PPUSH
  40: CALL_OW 49
// Frank = CreateCharacter ( Frank ) ;
  44: LD_ADDR_EXP 2
  48: PUSH
  49: LD_STRING Frank
  51: PPUSH
  52: CALL_OW 34
  56: ST_TO_ADDR
// SetClass ( Frank , 4 ) ;
  57: LD_EXP 2
  61: PPUSH
  62: LD_INT 4
  64: PPUSH
  65: CALL_OW 336
// PlaceUnitArea ( frank , fran , false ) ;
  69: LD_EXP 2
  73: PPUSH
  74: LD_INT 1
  76: PPUSH
  77: LD_INT 0
  79: PPUSH
  80: CALL_OW 49
// Sergiej = CreateCharacter ( Sergiej ) ;
  84: LD_ADDR_EXP 3
  88: PUSH
  89: LD_STRING Sergiej
  91: PPUSH
  92: CALL_OW 34
  96: ST_TO_ADDR
// SetClass ( Sergiej , 1 ) ;
  97: LD_EXP 3
 101: PPUSH
 102: LD_INT 1
 104: PPUSH
 105: CALL_OW 336
// PlaceUnitArea ( sergiej , ser , false ) ;
 109: LD_EXP 3
 113: PPUSH
 114: LD_INT 2
 116: PPUSH
 117: LD_INT 0
 119: PPUSH
 120: CALL_OW 49
// Geral = CreateCharacter ( Geral ) ;
 124: LD_ADDR_EXP 4
 128: PUSH
 129: LD_STRING Geral
 131: PPUSH
 132: CALL_OW 34
 136: ST_TO_ADDR
// SetClass ( Geral , 1 ) ;
 137: LD_EXP 4
 141: PPUSH
 142: LD_INT 1
 144: PPUSH
 145: CALL_OW 336
// PlaceUnitArea ( geral , ger , false ) ;
 149: LD_EXP 4
 153: PPUSH
 154: LD_INT 5
 156: PPUSH
 157: LD_INT 0
 159: PPUSH
 160: CALL_OW 49
// Lars = CreateCharacter ( Lars ) ;
 164: LD_ADDR_EXP 9
 168: PUSH
 169: LD_STRING Lars
 171: PPUSH
 172: CALL_OW 34
 176: ST_TO_ADDR
// SetClass ( Lars , 1 ) ;
 177: LD_EXP 9
 181: PPUSH
 182: LD_INT 1
 184: PPUSH
 185: CALL_OW 336
// PlaceUnitArea ( lars , lar , false ) ;
 189: LD_EXP 9
 193: PPUSH
 194: LD_INT 3
 196: PPUSH
 197: LD_INT 0
 199: PPUSH
 200: CALL_OW 49
// Kurt = CreateCharacter ( Kurt ) ;
 204: LD_ADDR_EXP 10
 208: PUSH
 209: LD_STRING Kurt
 211: PPUSH
 212: CALL_OW 34
 216: ST_TO_ADDR
// SetClass ( Kurt , 1 ) ;
 217: LD_EXP 10
 221: PPUSH
 222: LD_INT 1
 224: PPUSH
 225: CALL_OW 336
// PlaceUnitArea ( kurt , kur , false ) ;
 229: LD_EXP 10
 233: PPUSH
 234: LD_INT 4
 236: PPUSH
 237: LD_INT 0
 239: PPUSH
 240: CALL_OW 49
// InGameOn ;
 244: CALL_OW 8
// CenterNowOnXY ( 168 , 72 ) ;
 248: LD_INT 168
 250: PPUSH
 251: LD_INT 72
 253: PPUSH
 254: CALL_OW 86
// AddComTurnUnit ( lars , sergiej ) ;
 258: LD_EXP 9
 262: PPUSH
 263: LD_EXP 3
 267: PPUSH
 268: CALL_OW 179
// AddComTurnUnit ( frank , mart ) ;
 272: LD_EXP 2
 276: PPUSH
 277: LD_EXP 1
 281: PPUSH
 282: CALL_OW 179
// AddComTurnUnit ( mart , kurt ) ;
 286: LD_EXP 1
 290: PPUSH
 291: LD_EXP 10
 295: PPUSH
 296: CALL_OW 179
// AddComTurnUnit ( kurt , lars ) ;
 300: LD_EXP 10
 304: PPUSH
 305: LD_EXP 9
 309: PPUSH
 310: CALL_OW 179
// AddComTurnUnit ( sergiej , lars ) ;
 314: LD_EXP 3
 318: PPUSH
 319: LD_EXP 9
 323: PPUSH
 324: CALL_OW 179
// Say ( mart , a1 ) ;
 328: LD_EXP 1
 332: PPUSH
 333: LD_STRING a1
 335: PPUSH
 336: CALL_OW 88
// Say ( frank , a2 ) ;
 340: LD_EXP 2
 344: PPUSH
 345: LD_STRING a2
 347: PPUSH
 348: CALL_OW 88
// Say ( sergiej , a3 ) ;
 352: LD_EXP 3
 356: PPUSH
 357: LD_STRING a3
 359: PPUSH
 360: CALL_OW 88
// Say ( lars , a4 ) ;
 364: LD_EXP 9
 368: PPUSH
 369: LD_STRING a4
 371: PPUSH
 372: CALL_OW 88
// Say ( mart , a5 ) ;
 376: LD_EXP 1
 380: PPUSH
 381: LD_STRING a5
 383: PPUSH
 384: CALL_OW 88
// Say ( lars , a6 ) ;
 388: LD_EXP 9
 392: PPUSH
 393: LD_STRING a6
 395: PPUSH
 396: CALL_OW 88
// Nitek = CreateCharacter ( Nitek ) ;
 400: LD_ADDR_EXP 5
 404: PUSH
 405: LD_STRING Nitek
 407: PPUSH
 408: CALL_OW 34
 412: ST_TO_ADDR
// if not Nitek then
 413: LD_EXP 5
 417: NOT
 418: IFFALSE 539
// begin hc_name = Nitek ;
 420: LD_ADDR_OWVAR 26
 424: PUSH
 425: LD_STRING Nitek
 427: ST_TO_ADDR
// hc_sex = sex_male ;
 428: LD_ADDR_OWVAR 27
 432: PUSH
 433: LD_INT 1
 435: ST_TO_ADDR
// hc_class = class_soldier ;
 436: LD_ADDR_OWVAR 28
 440: PUSH
 441: LD_INT 1
 443: ST_TO_ADDR
// hc_attr = [ 12 , 11 ] ;
 444: LD_ADDR_OWVAR 29
 448: PUSH
 449: LD_INT 12
 451: PUSH
 452: LD_INT 11
 454: PUSH
 455: EMPTY
 456: LIST
 457: LIST
 458: ST_TO_ADDR
// hc_basic_skills = [ 1 , 0 , 3 , 0 ] ;
 459: LD_ADDR_OWVAR 30
 463: PUSH
 464: LD_INT 1
 466: PUSH
 467: LD_INT 0
 469: PUSH
 470: LD_INT 3
 472: PUSH
 473: LD_INT 0
 475: PUSH
 476: EMPTY
 477: LIST
 478: LIST
 479: LIST
 480: LIST
 481: ST_TO_ADDR
// hc_skills = [ 4 , 0 , 4 , 2 ] ;
 482: LD_ADDR_OWVAR 31
 486: PUSH
 487: LD_INT 4
 489: PUSH
 490: LD_INT 0
 492: PUSH
 493: LD_INT 4
 495: PUSH
 496: LD_INT 2
 498: PUSH
 499: EMPTY
 500: LIST
 501: LIST
 502: LIST
 503: LIST
 504: ST_TO_ADDR
// hc_importance = 11 ;
 505: LD_ADDR_OWVAR 32
 509: PUSH
 510: LD_INT 11
 512: ST_TO_ADDR
// hc_gallery = Multiavek ;
 513: LD_ADDR_OWVAR 33
 517: PUSH
 518: LD_STRING Multiavek
 520: ST_TO_ADDR
// hc_face_number = 1 ;
 521: LD_ADDR_OWVAR 34
 525: PUSH
 526: LD_STRING 1
 528: ST_TO_ADDR
// Nitek = CreateHuman ;
 529: LD_ADDR_EXP 5
 533: PUSH
 534: CALL_OW 44
 538: ST_TO_ADDR
// end ; PlaceUnitArea ( Nitek , Nita , false ) ;
 539: LD_EXP 5
 543: PPUSH
 544: LD_INT 9
 546: PPUSH
 547: LD_INT 0
 549: PPUSH
 550: CALL_OW 49
// Gorn = CreateCharacter ( Gorn ) ;
 554: LD_ADDR_EXP 8
 558: PUSH
 559: LD_STRING Gorn
 561: PPUSH
 562: CALL_OW 34
 566: ST_TO_ADDR
// if not Gorn then
 567: LD_EXP 8
 571: NOT
 572: IFFALSE 597
// begin PrepareHuman ( false , 1 , 3 ) ;
 574: LD_INT 0
 576: PPUSH
 577: LD_INT 1
 579: PPUSH
 580: LD_INT 3
 582: PPUSH
 583: CALL_OW 380
// Gorn := CreateHuman ;
 587: LD_ADDR_EXP 8
 591: PUSH
 592: CALL_OW 44
 596: ST_TO_ADDR
// end ; PlaceUnitArea ( Gorn , Nita , false ) ;
 597: LD_EXP 8
 601: PPUSH
 602: LD_INT 9
 604: PPUSH
 605: LD_INT 0
 607: PPUSH
 608: CALL_OW 49
// Addcommovetoarea ( Nitek , Nita2 ) ;
 612: LD_EXP 5
 616: PPUSH
 617: LD_INT 7
 619: PPUSH
 620: CALL_OW 173
// Addcommovetoarea ( Gorn , Gor ) ;
 624: LD_EXP 8
 628: PPUSH
 629: LD_INT 8
 631: PPUSH
 632: CALL_OW 173
// AddComHold ( [ Nitek , Gorn ] ) ;
 636: LD_EXP 5
 640: PUSH
 641: LD_EXP 8
 645: PUSH
 646: EMPTY
 647: LIST
 648: LIST
 649: PPUSH
 650: CALL_OW 200
// repeat wait ( 0 0$1 ) ;
 654: LD_INT 35
 656: PPUSH
 657: CALL_OW 67
// until GetDistUnits ( Nitek , Mart ) < 10 or GetDistUnits ( Gorn , Mart ) < 10 ;
 661: LD_EXP 5
 665: PPUSH
 666: LD_EXP 1
 670: PPUSH
 671: CALL_OW 296
 675: PUSH
 676: LD_INT 10
 678: LESS
 679: PUSH
 680: LD_EXP 8
 684: PPUSH
 685: LD_EXP 1
 689: PPUSH
 690: CALL_OW 296
 694: PUSH
 695: LD_INT 10
 697: LESS
 698: OR
 699: IFFALSE 654
// AddComTurnUnit ( Nitek , Mart ) ;
 701: LD_EXP 5
 705: PPUSH
 706: LD_EXP 1
 710: PPUSH
 711: CALL_OW 179
// AddComTurnUnit ( Gorn , mart ) ;
 715: LD_EXP 8
 719: PPUSH
 720: LD_EXP 1
 724: PPUSH
 725: CALL_OW 179
// Say ( nitek , a7 ) ;
 729: LD_EXP 5
 733: PPUSH
 734: LD_STRING a7
 736: PPUSH
 737: CALL_OW 88
// Say ( mart , a8 ) ;
 741: LD_EXP 1
 745: PPUSH
 746: LD_STRING a8
 748: PPUSH
 749: CALL_OW 88
// Say ( nitek , a9 ) ;
 753: LD_EXP 5
 757: PPUSH
 758: LD_STRING a9
 760: PPUSH
 761: CALL_OW 88
// Say ( mart , a10 ) ;
 765: LD_EXP 1
 769: PPUSH
 770: LD_STRING a10
 772: PPUSH
 773: CALL_OW 88
// Say ( nitek , a11 ) ;
 777: LD_EXP 5
 781: PPUSH
 782: LD_STRING a11
 784: PPUSH
 785: CALL_OW 88
// Say ( nitek , a12 ) ;
 789: LD_EXP 5
 793: PPUSH
 794: LD_STRING a12
 796: PPUSH
 797: CALL_OW 88
// Say ( nitek , a13 ) ;
 801: LD_EXP 5
 805: PPUSH
 806: LD_STRING a13
 808: PPUSH
 809: CALL_OW 88
// Say ( mart , a14 ) ;
 813: LD_EXP 1
 817: PPUSH
 818: LD_STRING a14
 820: PPUSH
 821: CALL_OW 88
// SaveCharacters ( mart , mart ) ;
 825: LD_EXP 1
 829: PPUSH
 830: LD_STRING mart
 832: PPUSH
 833: CALL_OW 38
// SaveCharacters ( frank , frank ) ;
 837: LD_EXP 2
 841: PPUSH
 842: LD_STRING frank
 844: PPUSH
 845: CALL_OW 38
// SaveCharacters ( sergiej , sergiej ) ;
 849: LD_EXP 3
 853: PPUSH
 854: LD_STRING sergiej
 856: PPUSH
 857: CALL_OW 38
// SaveCharacters ( geral , geral ) ;
 861: LD_EXP 4
 865: PPUSH
 866: LD_STRING geral
 868: PPUSH
 869: CALL_OW 38
// SaveCharacters ( lars , Lars ) ;
 873: LD_EXP 9
 877: PPUSH
 878: LD_STRING Lars
 880: PPUSH
 881: CALL_OW 38
// SaveCharacters ( Kurt , Kurt ) ;
 885: LD_EXP 10
 889: PPUSH
 890: LD_STRING Kurt
 892: PPUSH
 893: CALL_OW 38
// SaveCharacters ( Lee , Lee ) ;
 897: LD_INT 746
 899: PPUSH
 900: LD_STRING Lee
 902: PPUSH
 903: CALL_OW 38
// SaveCharacters ( Nitek , Nitek ) ;
 907: LD_EXP 5
 911: PPUSH
 912: LD_STRING Nitek
 914: PPUSH
 915: CALL_OW 38
// SaveCharacters ( Gorn , Gorn ) ;
 919: LD_EXP 8
 923: PPUSH
 924: LD_STRING Gorn
 926: PPUSH
 927: CALL_OW 38
// ChangeMap ( 4 , %_cont ) ;
 931: LD_STRING 4
 933: PPUSH
 934: LD_STRING %_cont
 936: PPUSH
 937: CALL_OW 340
// end ;
 941: END
