home *** CD-ROM | disk | FTP | other *** search
/ The Space Bar - 1997 Spring / SPRING97.BIN / pc / spacebar / wld / zzademo.wld < prev   
Text File  |  1997-01-28  |  19KB  |  570 lines

  1. START_WLD = SOCHAT_WLD
  2. DISKID=1
  3. DISKAUDIO=$SBARDIR\GENERAL\CHADIS1.WAV
  4.  
  5. //    ID     X  Y  FileName
  6. CURSOR 0  = 15 15 $SBARDIR\ZZAZZL\CURSORS\NOT.BMP
  7. CURSOR 1  = 13  1 $SBARDIR\ZZAZZL\CURSORS\ZZAZZL.BMP
  8. CURSOR 2  =  9  9 $SBARDIR\ZZAZZL\CURSORS\ZOOM.BMP
  9. CURSOR 5  = 16  1 $SBARDIR\ZZAZZL\CURSORS\LINK.BMP
  10. CURSOR 6  = 15 15 $SBARDIR\ZZAZZL\CURSORS\WAIT.BMP
  11. CURSOR 10 =  0  0 $SBARDIR\ZZAZZL\CURSORS\EXIT.BMP
  12. CURSOR 14 =  0 14 $SBARDIR\ZZAZZL\CURSORS\LEFT.BMP
  13. CURSOR 15 = 15  0 $SBARDIR\ZZAZZL\CURSORS\UPARROW.BMP
  14. CURSOR 16 = 31 15 $SBARDIR\ZZAZZL\CURSORS\RIGHT.BMP
  15. CURSOR 17 = 15 31 $SBARDIR\ZZAZZL\CURSORS\DOWN.BMP
  16. CURSOR 18 = 16  1 $SBARDIR\ZZAZZL\CURSORS\HUMAN.BMP
  17. CURSOR 19 = 15 15 $SBARDIR\ZZAZZL\CURSORS\BARNOT.BMP
  18. CURSOR 20 = 15 15 $SBARDIR\ZZAZZL\CURSORS\BEXIT.BMP
  19. // Wield cursors
  20. CURSOR 24 = 27  1 $SBARDIR\BAR\CURSORS\LINK.BMP
  21.  
  22. // moved to GLOBAL.WLD for state save/restore
  23. // set ZzazzlVision ON as default
  24. // VAR ZZAZZLVISION = 1
  25.  
  26. // these may not be saved/restored properly
  27. VAR    HAIRINDRAIN = FALSE
  28. VAR ZDPFLOODED = FALSE
  29. VAR ZJPFLOODED = FALSE
  30.  
  31. VAR Z_CURLOC = ZAP
  32. VAR EGGLOC = ZAP            // Egg starts in Great Hall
  33. VAR EGGROLL = ZZZ            // Which room to roll the egg to
  34.  
  35. // For Egg
  36. VAR    EGGTIMER AS TIMER = 0
  37. VAR EGGINRIVER = FALSE
  38. VAR EGGONTRACKS = FALSE
  39.  
  40. // For Hairball
  41. VAR    HAIRINRIVER = FALSE
  42. VAR HAIRTIMER AS TIMER = 0
  43.  
  44. // For Cannon
  45. VAR    PLUNGERMOUNTED = FALSE
  46. VAR    SPEARMOUNTED = TRUE
  47. VAR    CANNONFIRED = FALSE
  48. VAR    FIRSTSPEAR = TRUE
  49. VAR    PLUNGEDEGG = FALSE
  50.  
  51. VAR FIRSTGRATEENTER = TRUE
  52. VAR    ZVENTGRATELOCKED = TRUE
  53. VAR    ZVENTGRATEOPEN = FALSE
  54. VAR    GATEONELOCKED = TRUE
  55. VAR    GATETWOLOCKED = TRUE
  56. VAR    GATETHREELOCKED = TRUE
  57. VAR    GATEFOURLOCKED = TRUE
  58. VAR    GATEONECOUNT AS TIMER = 0
  59. VAR    GATETWOCOUNT AS TIMER = 0
  60. VAR    GATETHREECOUNT AS TIMER = 0
  61. VAR    GATEFOURCOUNT AS TIMER = 0
  62.  
  63. VAR    ZHAVESNACK = FALSE
  64.  
  65. // For Pike
  66. VAR    PIKEINRACK = TRUE
  67.  
  68. // For Maze Doors
  69. VAR    BLACKDOORS = FALSE
  70. VAR    GREENDOORS = FALSE
  71. VAR    BROWNDOORS = FALSE
  72. VAR    YELLOWDOORS = FALSE
  73. VAR    SLIDEDOORS = FALSE
  74. VAR DOORTEMP = FALSE
  75. VAR    BUTTONSDOWN = 0
  76. VAR BUTTONONE = 0
  77. VAR BUTTONTWO = 0
  78. VAR BUTTONTHREE = 0
  79. VAR    NEWBUTTON = 0
  80. VAR    BUTTONHIT = FALSE
  81. VAR    BUTTONRELEASED = FALSE
  82. VAR    BUTTONTEMP = 0
  83.  
  84. // For flooding events
  85. VAR    ZDPFLOODTIMER AS TIMER = 0
  86. VAR    ZJPFLOODTIMER AS TIMER = 0
  87.  
  88. // For Zzazzl telepathic messages
  89. VAR ZZATEL = FALSE                // don't start until chat done
  90. VAR TELEPATH = 1                // if it's time to play a message
  91. VAR MESSAGE = 0                    // Which message to play
  92. VAR NUMMESSAGES = 0                // Number of messages to play 1-to-n
  93. VAR TELCOUNT = 602                // Messages start after a couple of turns
  94.  
  95. VAR ZTURNCOUNT AS TIMER = 600
  96.  
  97. // jwl 11.18.96 PDA save state information
  98. VAR PDAMODE = NOMODE
  99. VAR PDAPOSITION = DOWN
  100. VAR PDAINCREMENT = 11
  101.  
  102. SDEV BPDA_WLD AS PDA {
  103.     SET BKG=$SBARDIR\ZZAZZL\PDA\ZPDA.BMP;
  104.     SET ARE=DEACTIVE[90,70,500,185]{
  105.         RUN COMMAND = DEACTIVATEPDA;
  106.     };
  107.     SET BUT=$SBARDIR\ZZAZZL\PDA\ZMAP.BMP    [121,233]+1^100%1;
  108.     SET BUT=$SBARDIR\ZZAZZL\PDA\ZSTASH.BMP    [170,233]+1^101%1;
  109.     SET BUT=$SBARDIR\ZZAZZL\PDA\ZZOOM.BMP    [223,233]+1^102 %1 {
  110.         // DEMO: zoom brings up not included message -- bar 01-23-97
  111.         SET TXT = $SBARDIR\GENERAL\NOTINCL.TXT COLOR 2 AS CAPTION;
  112.     };
  113.     SET BUT=$SBARDIR\ZZAZZL\PDA\ZSYSTEM.BMP    [271,233]+1^103%1;
  114.     SET BUT=$SBARDIR\ZZAZZL\PDA\ZLOG.BMP    [323,234]+1^104%1;
  115.     SET CHR=$SBARDIR\ZZAZZL\PDA\ZWAND.SMK^WANDANIM LOOP 0[1,32];
  116.     SET TIME=$SBARDIR\ZZAZZL\PDA\ZTIME.BMP[413,188]^CLOCK+11 VALUE ZTURNCOUNT;
  117. }
  118.  
  119. SDEV BWIELD_WLD AS WIELD {
  120.     SET BKG=$SBARDIR\ZZAZZL\WIELD\ZZYOU.BMP;
  121.     SET ARE = [0,0,99,99] {
  122.         SET TXT =Soldier_714-Z-367 COLOR 2 SIZE 16 AS TITLE; //%%135
  123.         SET BMP=$SBARDIR\GENERAL\MENUS\WAIT.BMP {
  124.             RUN SND = $SBARDIR\GENERAL\WAIT.WAV; 
  125.             RUN COMMAND = UPDATE;
  126.         };
  127.         SET BMP=$SBARDIR\GENERAL\MENUS\SNAPOUT.BMP {
  128.             RUN LNK=$SBARDIR\WLD\BAR.WLD~~BDP_WLD~~SOLDIER_WLD AS CLOSEUP;
  129.         };
  130.     };
  131.     // DEMO: Removed interaction with soldier.
  132.     // DEMO: Removed interaction with the snacks.
  133.     // DEMO: Removed interaction with the plunger.
  134.     // DEMO: Removed itneraction with the pike.
  135.     // DEMO: Removed interaction with the spear.
  136.     // DEMO: Removed interaction with the fish.
  137.     // DEMO: Removed interaction with the hairball.
  138.     // DEMO: Removed interaction with the vent access card.
  139.     // DEMO: Removed interaction with the outdoor access card.
  140. }
  141.  
  142. SDEV EVT_WLD AS EVENT{
  143.  
  144.     IF (ZZATEL == TRUE)
  145.         // At the end of a turn
  146.         IF (TELCOUNT < ZTURNCOUNT)
  147.             IF (NUMMESSAGES == 0)
  148.                 RUN EXPR = NUMMESSAGES( RANDOM % 5 );        // n is 5 to start
  149.                 RUN EXPR = NUMMESSAGES( NUMMESSAGES + 1 );    // 1 to 5 is the range
  150.             ENDIF
  151.             IF ( TELEPATH == 1 )
  152.                 RUN EXPR = MESSAGE( RANDOM % 10 );
  153.                 // DEMO: Reduced number of zzazzl messages to 1 through 10.
  154.                 IF (MESSAGE == 0)
  155.                     RUN SND=$SBARDIR\ZZAZZL\EVENTS\ZZTEL1.WAV AS MIX;
  156.                     RUN EXPR = NUMMESSAGES( NUMMESSAGES - 1 );    // decrement msg 
  157.                 ENDIF
  158.                 IF (MESSAGE == 1)
  159.                     RUN SND=$SBARDIR\ZZAZZL\EVENTS\ZZTEL2.WAV AS MIX;
  160.                     RUN EXPR = NUMMESSAGES( NUMMESSAGES - 1 );    // decrement msg 
  161.                 ENDIF
  162.                 IF (MESSAGE == 2)
  163.                     RUN SND=$SBARDIR\ZZAZZL\EVENTS\ZZTEL3.WAV AS MIX;
  164.                     RUN EXPR = NUMMESSAGES( NUMMESSAGES - 1 );    // decrement msg 
  165.                 ENDIF
  166.                 IF (MESSAGE == 3)
  167.                     RUN SND=$SBARDIR\ZZAZZL\EVENTS\ZZTEL4.WAV AS MIX;
  168.                     RUN EXPR = NUMMESSAGES( NUMMESSAGES - 1 );    // decrement msg 
  169.                 ENDIF
  170.                 IF (MESSAGE == 4)
  171.                     RUN SND=$SBARDIR\ZZAZZL\EVENTS\ZZTEL5.WAV AS MIX;
  172.                     RUN EXPR = NUMMESSAGES( NUMMESSAGES - 1 );    // decrement msg 
  173.                 ENDIF
  174.                 IF (MESSAGE == 5)
  175.                     RUN SND=$SBARDIR\ZZAZZL\EVENTS\ZZTEL6.WAV AS MIX;
  176.                     RUN EXPR = NUMMESSAGES( NUMMESSAGES - 1 );    // decrement msg 
  177.                 ENDIF
  178.                 IF (MESSAGE == 6)
  179.                     RUN SND=$SBARDIR\ZZAZZL\EVENTS\ZZTEL7.WAV AS MIX;
  180.                     RUN EXPR = NUMMESSAGES( NUMMESSAGES - 1 );    // decrement msg 
  181.                 ENDIF
  182.                 IF (MESSAGE == 7)
  183.                     RUN SND=$SBARDIR\ZZAZZL\EVENTS\ZZTEL8.WAV AS MIX;
  184.                     RUN EXPR = NUMMESSAGES( NUMMESSAGES - 1 );    // decrement msg 
  185.                 ENDIF
  186.                 IF (MESSAGE == 8)
  187.                     RUN SND=$SBARDIR\ZZAZZL\EVENTS\ZZTEL9.WAV AS MIX;
  188.                     RUN EXPR = NUMMESSAGES( NUMMESSAGES - 1 );    // decrement msg 
  189.                 ENDIF
  190.                 IF (MESSAGE == 9)
  191.                     RUN SND=$SBARDIR\ZZAZZL\EVENTS\ZZTEL10.WAV AS MIX;
  192.                     RUN EXPR = NUMMESSAGES( NUMMESSAGES - 1 );    // decrement msg 
  193.                 ENDIF
  194.                 IF (NUMMESSAGES == 0)
  195.                     RUN EXPR = TELCOUNT( ZTURNCOUNT + 1 );
  196.                     // About 50% of the time
  197.                     RUN EXPR = TELEPATH( RANDOM % 2);
  198.                 ENDIF
  199.             ENDIF
  200.         ENDIF
  201.     ENDIF
  202.     // DEMO: Removed egg in river support.
  203.     // DEMO: Removed check to see if shuttle bay is flooded.
  204.     // DEMO: Removed check to see if the pool room is flooded.
  205.     // DEMO: Removed check to see if hairball has made it to the downstream pool room
  206.     // DEMO: Removed egg on tracks support.
  207. }
  208.  
  209. SDEV MAP_WLD AS BMP RECT[116,108,248,218]{
  210.     SET BKG = $SBARDIR\ZZAZZL\MAP\ZMAP.BMP;
  211.  
  212. // Soldier Icon locations
  213.     IF (Z_CURLOC == ZAP)                            
  214.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[214,97] FRAMERATE 4 +2 %0;
  215.     ENDIF
  216.     IF (Z_CURLOC == ZBP)                            
  217.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[121,77] FRAMERATE 4 +2 %0;
  218.     ENDIF
  219.     IF (Z_CURLOC == ZCP)                         
  220.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[106,51] FRAMERATE 4 +2 %0;
  221.     ENDIF
  222.     IF (Z_CURLOC == ZDP)                            
  223.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[145,94] FRAMERATE 4 +2 %0;
  224.     ENDIF
  225.     IF (Z_CURLOC == ZEB)                            
  226.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[87,78] FRAMERATE 4 +2 %0;
  227.     ENDIF
  228.     IF (Z_CURLOC == ZEP)                            
  229.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[51,74] FRAMERATE 4 +2 %0;
  230.     ENDIF
  231.     IF (Z_CURLOC == ZFP)                         
  232.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[20,40] FRAMERATE 4 +2 %0;
  233.     ENDIF
  234.     IF (Z_CURLOC == ZGP)                            
  235.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[14,9] FRAMERATE 4 +2 %0;
  236.     ENDIF
  237.     IF (Z_CURLOC == MM1)                            
  238.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[53,14] FRAMERATE 4 +2 %0;
  239.     ENDIF
  240.     IF (Z_CURLOC == MM2)                            
  241.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[102,30] FRAMERATE 4 +2 %0;
  242.     ENDIF
  243.     IF (Z_CURLOC == MM3)                            
  244.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[140,52] FRAMERATE 4 +2 %0;
  245.     ENDIF
  246.     IF (Z_CURLOC == TRACK1)
  247.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[41,6] FRAMERATE 4 +2 %0;
  248.     ENDIF
  249.     IF (Z_CURLOC == TRACK2)
  250.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[57,6] FRAMERATE 4 +2 %0;
  251.     ENDIF
  252.     IF (Z_CURLOC == TRACK3)
  253.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[73,7] FRAMERATE 4 +2 %0;
  254.     ENDIF
  255.     IF (Z_CURLOC == TRACK4)
  256.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[90,8] FRAMERATE 4 +2 %0;
  257.     ENDIF
  258.     IF (Z_CURLOC == TRACK5)
  259.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[109,11] FRAMERATE 4 +2 %0;
  260.     ENDIF
  261.     IF (Z_CURLOC == TRACK6)
  262.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[128,17] FRAMERATE 4 +2 %0;
  263.     ENDIF
  264.     IF (Z_CURLOC == TRACK7)
  265.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[145,22] FRAMERATE 4 +2 %0;
  266.     ENDIF
  267.     IF (Z_CURLOC == TRACK8)
  268.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[159,29] FRAMERATE 4 +2 %0;
  269.     ENDIF
  270.     IF (Z_CURLOC == TRACK9)
  271.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[169,37] FRAMERATE 4 +2 %0;
  272.     ENDIF
  273.     IF (Z_CURLOC == TRACK10)
  274.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[178,47] FRAMERATE 4 +2 %0;
  275.     ENDIF
  276.     IF (Z_CURLOC == ZJP)
  277.         SET SPR=$SBARDIR\ZZAZZL\MAP\YOU.BMP[173,68] FRAMERATE 4 +2 %0;
  278.     ENDIF
  279.  
  280. // Egg Icon locations
  281.     IF (EGGLOC == ZAP)                            
  282.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[203,97] FRAMERATE 4 +2 %0;
  283.     ENDIF
  284.     IF (EGGLOC == ZBP)                            
  285.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[131,77] FRAMERATE 4 +2 %0;
  286.     ENDIF
  287.     IF (EGGLOC == ZCP)                            
  288.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[116,51] FRAMERATE 4 +2 %0;
  289.     ENDIF
  290.     IF (EGGLOC == ZEB)                            
  291.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[92,78] FRAMERATE 4 +2 %0;
  292.     ENDIF
  293.     IF (EGGLOC == RIV9)
  294.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[105,100] FRAMERATE 4 +2 %0;
  295.     ENDIF
  296.     IF (EGGLOC == RIVD)
  297.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[135,100] FRAMERATE 4 +2 %0;
  298.     ENDIF
  299.     IF (EGGLOC == RIV8)
  300.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[49,99] FRAMERATE 4 +2 %0;
  301.     ENDIF
  302.     IF (EGGLOC == RIV7)
  303.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[13,94] FRAMERATE 4 +2 %0;
  304.     ENDIF
  305.     IF (EGGLOC == RIV6)
  306.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[5,64] FRAMERATE 4 +2 %0;
  307.     ENDIF
  308.     IF (EGGLOC == RIV5)
  309.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[7,48] FRAMERATE 4 +2 %0;
  310.     ENDIF
  311.     IF (EGGLOC == RIV4)
  312.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[14,43] FRAMERATE 4 +2 %0;
  313.     ENDIF
  314.     IF (EGGLOC == RIV3)
  315.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[33,38] FRAMERATE 4 +2 %0;
  316.     ENDIF
  317.     IF (EGGLOC == RIV2)
  318.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[59,34] FRAMERATE 4 +2 %0;
  319.     ENDIF
  320.     IF (EGGLOC == RIV1)
  321.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[87,33] FRAMERATE 4 +2 %0;
  322.     ENDIF
  323.     IF (EGGLOC == ZFP)
  324.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[15,36] FRAMERATE 4 +2 %0;
  325.     ENDIF
  326.     IF (EGGLOC == ZDP)                            
  327.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[135,91] FRAMERATE 4 +2 %0;
  328.     ENDIF
  329.     IF (EGGLOC == ZGP)                            
  330.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[24,9] FRAMERATE 4 +2 %0;
  331.     ENDIF
  332.     IF (EGGLOC == ZHP)                            
  333.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[58,18] FRAMERATE 4 +2 %0;
  334.     ENDIF
  335.     IF (EGGLOC == TRACK1)                         
  336.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[37,6] FRAMERATE 4 +2 %0;
  337.     ENDIF
  338.     IF (EGGLOC == TRACK2)                         
  339.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[53,6] FRAMERATE 4 +2 %0;
  340.     ENDIF
  341.     IF (EGGLOC == TRACK3)                         
  342.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[69,7] FRAMERATE 4 +2 %0;
  343.     ENDIF
  344.     IF (EGGLOC == TRACK4)                         
  345.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[86,8] FRAMERATE 4 +2 %0;
  346.     ENDIF
  347.     IF (EGGLOC == TRACK5)                         
  348.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[105,10] FRAMERATE 4 +2 %0;
  349.     ENDIF
  350.     IF (EGGLOC == TRACK6)                         
  351.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[124,17] FRAMERATE 4 +2 %0;
  352.     ENDIF
  353.     IF (EGGLOC == TRACK7)                         
  354.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[141,22] FRAMERATE 4 +2 %0;
  355.     ENDIF
  356.     IF (EGGLOC == TRACK8)                         
  357.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[155,29] FRAMERATE 4 +2 %0;
  358.     ENDIF
  359.     IF (EGGLOC == TRACK9)                         
  360.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[165,37] FRAMERATE 4 +2 %0;
  361.     ENDIF
  362.     IF (EGGLOC == TRACK10)                         
  363.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[174,47] FRAMERATE 4 +2 %0;
  364.     ENDIF
  365.     // egg floating in flooded shuttlebay
  366.     IF (EGGLOC == TRACK11)                         
  367.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[186,55] FRAMERATE 4 +2 %0;
  368.     ENDIF
  369.     IF (EGGLOC == TRACK12)                         
  370.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[190,56] FRAMERATE 4 +2 %0;
  371.     ENDIF
  372.     IF (EGGLOC == TRACK13)                         
  373.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[193,58] FRAMERATE 4 +2 %0;
  374.     ENDIF
  375.     IF (EGGLOC == TRACK14)                         
  376.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[196,60] FRAMERATE 4 +2 %0;
  377.     ENDIF
  378.     IF (EGGLOC == ZJP)
  379.         SET SPR=$SBARDIR\ZZAZZL\MAP\EGG.BMP[190,57] FRAMERATE 4 +2 %0;
  380.     ENDIF
  381.     // THE WIRE
  382.     SET SPR=$SBARDIR\ZZAZZL\PDA\ZSCREEN.BMP[227,0]+1 %0;
  383. }
  384.  
  385. SDEV INV_WLD AS INVWLD RECT [117,110,349,219] {
  386.     SET BKG=$SBARDIR\ZZAZZL\INV\INVBACK.BMP;
  387.     // DEMO: Removed interactions with the snacks.
  388.     // DEMO: Removed interactions with the plunger.
  389.     // DEMO: Removed interactions with the pike.
  390.     // DEMO: Removed interactions with the spear.
  391.     // DEMO: Removed interactions with the fish.
  392.     // DEMO: Removed interactions with the hairball.
  393.     // DEMO: Removed interactions with the vent access card.
  394.     // DEMO: Removed interactions with the outdoor access card.
  395. }
  396.  
  397. SDEV LOG_WLD AS LOG RECT[116,108,248,218]{
  398.     SET BKG = $SBARDIR\ZZAZZL\INV\INVBACK.BMP;
  399.     SET TXT = $SBARDIR\ZZAZZL\LOG\ZZALOG.TXT[0,0,200,100] SIZE 12 COLOR 7 AS TITLE ; //%%1300
  400. }
  401.  
  402. // Soldier Chat
  403. SDEV SOCHAT_WLD AS CHAT {
  404.     SET BKG = $SBARDIR\ZZAZZL\CHAR\SOLDIER\BLACK.BMP;
  405.     SET ARE = [0,0,640,480] %19;
  406.     // DEMO: Get Soldier's neutral loop from the bar asset area.
  407.     SET CHR = $SBARDIR\BAR\CHAR\SOLDIER\SONEUTR2.SMK^SOCHMOVIE [80,10] %19;
  408.  
  409.     // Exit on Left Edge
  410.     SET AREA=[0,0,80,370]%20{
  411.         // DEMO: Pull the finish lines from the Salivraster asset area.
  412.         RUN EXPR = FINISHCHOICE( RANDOM % 5 );
  413.         IF (FINISHCHOICE == 0)
  414.             RUN SND = $SBARDIR\BAR\CHAR\FINISH\FINISH1.WAV AS WAITMIX;
  415.         ENDIF
  416.         IF (FINISHCHOICE == 1)
  417.             RUN SND = $SBARDIR\BAR\CHAR\FINISH\FINISH2.WAV AS WAITMIX;
  418.         ENDIF
  419.         IF (FINISHCHOICE == 2)
  420.             RUN SND = $SBARDIR\BAR\CHAR\FINISH\FINISH3.WAV AS WAITMIX;
  421.         ENDIF
  422.         IF (FINISHCHOICE == 3)
  423.             RUN SND = $SBARDIR\BAR\CHAR\FINISH\FINISH4.WAV AS WAITMIX;
  424.         ENDIF
  425.         IF (FINISHCHOICE == 4)
  426.             RUN SND = $SBARDIR\BAR\CHAR\FINISH\FINISH5.WAV AS WAITMIX;
  427.         ENDIF
  428.         RUN EXPR = LEVEL( 0 );
  429.         RUN LNK = $SBARDIR\WLD\BAR.WLD~~BDP_WLD~~SOLDIER_WLD FADE 3;
  430.     }
  431.  
  432.     IF (OPENERDONE == FALSE)
  433.         //    Play opening sequence depending on flashback history
  434.         IF (ZFLASHBACK == 0)
  435.             RUN MOVIE = $SBARDIR\ZZAZZL\CHAR\SOLDIER\SOCHOP.SMK %19;
  436.             RUN EXPR = SOCHMOVIE~~MODAL( 0 );
  437.             RUN EXPR = SOCHMOVIE~~LOOP( -1 );
  438.             RUN COMMAND = INSERT OBJECT CH1L1A TO SOCHAT_WLD;
  439.             RUN COMMAND = INSERT OBJECT CH1L1B TO SOCHAT_WLD;
  440.             RUN COMMAND = INSERT OBJECT CH1L1C TO SOCHAT_WLD;
  441.             RUN EXPR = LEVEL( 1 );
  442.             RUN EXPR = OPENERDONE( TRUE );
  443.         ENDIF 
  444.         // DEMO: Can't complete the zzazzl flashback - removed block that prevents reentry.
  445.     ELSE
  446.         IF ( LEVEL == 1 )
  447.             SET TXT = Encourage_him [80,370,280,385] COLOR 7 AS TITLE %18 ^CH1L1A { //%%1359
  448.                 RUN COMMAND = REMOVE OBJECT CH1L1A FROM SOCHAT_WLD;
  449.                 RUN EXPR = SOCHMOVIE~~MODAL( 1 );
  450.                 RUN EXPR = SOCHMOVIE~~LOOP( 1 );
  451.                 RUN MOVIE = $SBARDIR\ZZAZZL\CHAR\SOLDIER\SOCH1L1A.SMK %19;
  452.                 RUN EXPR = SOCHMOVIE~~MODAL( 0 );
  453.                 RUN EXPR = SOCHMOVIE~~LOOP( -1 );
  454.  
  455.                 RUN EXPR = CHOICE( 3 );
  456. //                RUN COMMAND = INSERT OBJECT CH1L2A TO SOCHAT_WLD;
  457. //                RUN COMMAND = INSERT OBJECT CH1L2B TO SOCHAT_WLD;
  458. //                RUN COMMAND = INSERT OBJECT CH1L2C TO SOCHAT_WLD;
  459. //                RUN COMMAND = INSERT OBJECT CH1L2D TO SOCHAT_WLD;
  460.                 RUN EXPR = LEVEL( 2 );
  461.                 RUN COMMAND = REMOVE OBJECT CH1L1B FROM SOCHAT_WLD;
  462.                 RUN COMMAND = PAINT;
  463.                 RUN COMMAND = STOPPAINT;
  464.                 RUN MOVIE = $SBARDIR\ZZAZZL\EVENTS\EVFLASH.SMK[0,0];
  465.                 RUN LNK = ZAP_WLD@[1700,120];
  466.             };
  467.             SET TXT = Change_the_subject [80,390,400,405] COLOR 7 AS TITLE %18 ^CH1L1B { //%%1374
  468.                 RUN COMMAND = REMOVE OBJECT CH1L1B FROM SOCHAT_WLD;
  469.                 RUN EXPR = SOCHMOVIE~~MODAL( 1 );
  470.                 RUN EXPR = SOCHMOVIE~~LOOP( 1 );
  471.                 RUN MOVIE = $SBARDIR\ZZAZZL\CHAR\SOLDIER\SOCH1L1B.SMK %19;
  472.                 RUN EXPR = SOCHMOVIE~~MODAL( 0 );
  473.                 RUN EXPR = SOCHMOVIE~~LOOP( -1 );
  474.             };
  475.             // DEMO: Removed the finished interaction - use left edge of screen.
  476.         ENDIF
  477.         // DEMO: Removed the balance of the interactions with soldier for the demo.
  478.         //       as "encourage him" is now the link to the zzazzl flashback.
  479.     ENDIF
  480. }
  481. // End of Soldier Chat
  482. //
  483. //    Great Hall
  484. //
  485. SDEV ZAP_WLD FILTER 8 {
  486.     SET BKG=$SBARDIR\ZZAZZL\PAN\ZAP.BMP;
  487.     RUN EXPR = Z_CURLOC(ZAP);
  488.     RUN EXPR = ZZATEL( TRUE );                // don't start until chat done
  489.  
  490.     // DEMO: Convert the link to the link to the mess hall to be
  491.     //       a link to the txt3_wld and back to the soldier closeup.
  492.     SET ARE=[824,256,938,338]%5{
  493.         RUN COMMAND = REMOVEWIELD;
  494.         RUN LNK = TXT3_WLD;
  495.     };
  496.     // Link to Tapestry closeup
  497.     SET LNK = ZACA_WLD[1220,200,1365,290]^TAPESTRY %2;
  498.  
  499.     // DEMO: Removed the interaction with the liftcall.
  500.     SET ARE = [1855,265,2015,340]^THRONE %1 {
  501.         SET TXT= throne COLOR 2 SIZE 16 AS TITLE; //%%1547
  502.         SET BMP=$SBARDIR\GENERAL\MENUS\EXAMINE.BMP{
  503.             RUN SND=$SBARDIR\ZZAZZL\AUDIO\ZANDEXC1.WAV AS QUEUE *3;
  504.         };
  505.         SET BMP=$SBARDIR\GENERAL\MENUS\SITON.BMP{
  506.             RUN SND=$SBARDIR\ZZAZZL\AUDIO\ZANDSIC1.WAV AS QUEUE *3;
  507.         };
  508.         // DEMO: Removed lookbehind interaction
  509.         // DEMO: Removed plunge interaction
  510.     };
  511.     // DEMO: Removed interaction with the pike in the doors.
  512.     // DEMO: Removed interaction with the doors wooshing shut.
  513.     IF (EGGLOC == ZAP)
  514.         SET CHR = $SBARDIR\ZZAZZL\PANIMS\ZAEG2.SMK[806,326]^EGG %1 LOOP 0{ 
  515.             SET TXT= egg COLOR 2 SIZE 16 AS TITLE; //%%1653
  516.             SET BMP=$SBARDIR\GENERAL\MENUS\EXAMINE.BMP{
  517.                 RUN SND=$SBARDIR\ZZAZZL\AUDIO\ZANAEXC1.WAV AS QUEUE *3;
  518.             };
  519.             SET BMP=$SBARDIR\GENERAL\MENUS\BREAK.BMP{
  520.                 RUN SND=$SBARDIR\ZZAZZL\AUDIO\ZANABRC1.WAV AS QUEUE *3;
  521.             };
  522.             // DEMO: Removed the smell interaction
  523.             // DEMO: Removed the plunge interaction
  524.             SET BMP=$SBARDIR\GENERAL\MENUS\ROLL.BMP{
  525.                 SET TXT=Roll_the_egg_to... COLOR 4 SIZE 16 AS TITLE; //%%1669
  526.                 SET TXT=Mess_Hall COLOR 4 SIZE 16 %1 { //%%1670
  527.                     RUN SND=$SBARDIR\ZZAZZL\CHAR\EGG\ZBEA.WAV AS MIX;
  528.                     RUN EXPR = EGG~~MODAL( 1 );
  529.                     RUN EXPR = EGG~~LOOP( 1 );
  530.                     RUN EXPR = EGGROLL( ZZZ );
  531.                     // DEMO: Don't transfer the egg to mess hall world.
  532.                     // DEMO: Don't remove the hallway from the mess hall
  533.                     RUN EXPR = EGGLOC( ZEB );
  534.                 };
  535.                 IF (ZAP_WLD CONTAINS ZETA)
  536.                     SET TXT=the_lift_shaft COLOR 4 SIZE 16 %1 { //%%1680
  537.                         RUN SND=$SBARDIR\ZZAZZL\AUDIO\ZANAROC2.WAV AS QUEUE *3;
  538.                     };
  539.                 ENDIF
  540.             };
  541.             SET BMP=$SBARDIR\GENERAL\MENUS\PICKUP.BMP {
  542.                 RUN SND=$SBARDIR\ZZAZZL\AUDIO\ZANATAC1.WAV AS QUEUE *3;
  543.             };
  544.         };
  545.     ENDIF
  546. }
  547.  
  548. //
  549. // Tapestry closeup
  550. //              
  551. SDEV ZACA_WLD FILTER 8 AS CLOSEUP {
  552.     SET BKG = $SBARDIR\ZZAZZL\CLOSEUP\ZACA\ZACA.BMP;
  553.     SET ARE = [75,70,420,310]^TAPESTRY %1 {
  554.         SET TXT= tapestry COLOR 2 SIZE 16 AS TITLE; //%%1697
  555.         SET BMP=$SBARDIR\GENERAL\MENUS\EXAMINE.BMP{
  556.             RUN SND=$SBARDIR\ZZAZZL\AUDIO\ZANEEXC1.WAV AS QUEUE *3;
  557.         };
  558.         // DEMO: Removed the lookbehind interaction
  559.         // DEMO: Removed the plunge interaction
  560.         // DEMO: Removed the pickup interaction
  561.     };
  562. }
  563.  
  564. SDEV TXT3_WLD AS CHAT {
  565.     SET BKG=$SBARDIR\GENERAL\TEXT3.BMP;
  566.     SET ARE=[80,10,560,400] %24 {
  567.         RUN LNK=$SBARDIR\WLD\BAR.WLD~~BDP_WLD~~SOLDIER_WLD AS CLOSEUP;
  568.     };
  569. }
  570.