home *** CD-ROM | disk | FTP | other *** search
/ GameStar 2006 April / Gamestar_83_2006-04_dvd.iso / Dema / keepsake_demo_en.exe / res / puzzles / garden.puzzle.tcl < prev    next >
Text File  |  2005-10-29  |  5KB  |  142 lines

  1. event "useLeftOne"    {zq'slider 1}
  2. event "useLeftTwo"    {zq'slider 2}
  3. event "useLeftThree"  {zq'slider 3}
  4. event "useLeftFour"   {zq'slider 4}
  5. event "useRightOne"   {zq'slider 5}
  6. event "useRightTwo"   {zq'slider 6}
  7. event "useRightThree" {zq'slider 7}
  8. event "useRightFour"  {zq'slider 8}
  9.  
  10. proc zq'slider {n} {
  11.     if {[ozGet "pzlLightRune,slider$n"] == ""} {
  12.         puzzleSliders::newSt slider${n}OnSt
  13.         PlayMovieSound puzzleSliders slider${n}On puzzles/puzzleLightRune/sliderOn
  14.         zq'logic $n 1
  15.     } else {
  16.         wq'widget::delete& puzzleSliders::slider${n}OnSt
  17.         PlayMovieSound puzzleSliders slider${n}Off puzzles/puzzleLightRune/sliderOff
  18.         zq'logic $n 0
  19.     }
  20. }
  21.  
  22. proc zq'logic {n state} {
  23.     if $state {
  24.         ozSet pzlLightRune,slider$n "1"
  25.     } else {
  26.         ozSet pzlLightRune,slider$n ""
  27.     }
  28.  
  29.     oz'event {wizDisableMouse}
  30.  
  31.     oz'event {standardFadeout}
  32.     for {set i 1} {$i <= 8} {incr i} {
  33.         if {[set puzzleSliders::slider${i}OnSt]} {
  34.             wq'widget::fadeto [set puzzleSliders::slider${i}OnSt] 0 -time 0.01
  35.         }
  36.     }
  37.     for {set i 1} {$i <= 8} {incr i} {
  38.         if {($i == $n) || ([ozGet pzlLightRune,slider$i] != "")} {
  39.             if {!$state || ($i != $n)} {
  40.                 wq'widget::fadeto [set puzzleSliders::rune${i}] 1 -time 0.01
  41.             }
  42.         }
  43.     }
  44.     oz'event {oz'delay 0.01}
  45.     oz'event {setCamera "sliderRunes"}
  46.     oz'event {standardFadein}
  47.  
  48.     
  49.  
  50.     ozqSound::NewFX "sound/puzzles/puzzleLightRune/runeGlow.ogg"
  51.     wq'widget::fadeto [set puzzleSliders::rune${n}] $state -time 2 -wait
  52.  
  53.     oz'event {oz'delay 3}
  54.    
  55.     if {[ozGet pzlLightRune,slider1] == "" && \
  56.         [ozGet pzlLightRune,slider2] != "" && \
  57.         [ozGet pzlLightRune,slider3] == "" && \
  58.         [ozGet pzlLightRune,slider4] == "" && \
  59.         [ozGet pzlLightRune,slider5] != "" && \
  60.         [ozGet pzlLightRune,slider6] != "" && \
  61.         [ozGet pzlLightRune,slider7] == "" && \
  62.         [ozGet pzlLightRune,slider8] == ""} {
  63.  
  64.         chainEvent {standardFadeout}
  65.  
  66.         chainEvent {hideInterface}
  67.         chainEvent {hideMouse}
  68.         chainEvent {delay 250}
  69.         for {set i 1} {$i <= 8} {incr i} {
  70.           wq'widget::delete& puzzleSliders::rune${i}
  71.           wq'widget::delete& puzzleSliders::slider${i}OnSt
  72.         }
  73.         if {[ozGet "puzzleWaterLevel"] == "complete"} {
  74.             puzzleSliders::new sliderLightBeamWater -foreground -nopan
  75.         } else {
  76.             puzzleSliders::new sliderLightBeam -foreground -nopan
  77.         }
  78.         ozqSound::NewFX "sound/cutscenes/dragonBreath.ogg"
  79.         chainEvent {standardFadein}
  80.         oz'event {
  81.             hRemoveBack
  82.             setCamera "puzzleStageBack"
  83.             wizhCameraChange
  84.             wizEntityOrientation Lydia 360
  85.         }
  86.         if {[ozGet "puzzleWaterLevel"] == "complete"} {
  87.             wq'widget::waitfor $puzzleSliders::sliderLightBeamWater -animate
  88.             wq'widget::delete& puzzleSliders::sliderLightBeamWater
  89.         } else {
  90.             wq'widget::waitfor $puzzleSliders::sliderLightBeam -animate
  91.             wq'widget::delete& puzzleSliders::sliderLightBeam
  92.         }
  93.         chainEvent {cameraFadeout 0}
  94.         oz'event {
  95.             showMouse
  96.             showInterface
  97.         }
  98.         
  99.         callEvent "garden.puzzleLightRuneSolved"
  100.     } else {
  101.         oz'event {standardFadeout}
  102.         for {set i 1} {$i <= 8} {incr i} {
  103.             if [set puzzleSliders::rune${i}] {
  104.                 wq'widget::fadeto [set puzzleSliders::rune${i}] 0 -time 0.01
  105.             }
  106.         }
  107.         for {set i 1} {$i <= 8} {incr i} {
  108.             if {[set puzzleSliders::slider${i}OnSt]} {
  109.                 wq'widget::fadeto [set puzzleSliders::slider${i}OnSt] 1 -time 0.01
  110.             }
  111.         }
  112.         oz'event {oz'delay 0.01}
  113.         oz'event {setCamera "puzzleSliders"}
  114.         oz'event {standardFadein}
  115.     }
  116.     oz'event {wizEnableMouse}
  117. }
  118.  
  119.  
  120.  
  121.  
  122. proc pzlPlayMovieReset { } {
  123.   PlayMovieSound puzzleSliders reset puzzles/common/reset
  124. }
  125.  
  126. event "useReset" {
  127.   resetPuzzle
  128. }
  129.  
  130.  
  131. proc resetPuzzle { } {
  132.     pzlPlayMovieReset
  133.  
  134.     for {set i 1} {$i <= 8} {incr i} {
  135.         if {[ozGet "pzlLightRune,slider$i"] != ""} {
  136.             wq'widget::delete& puzzleSliders::slider${i}OnSt
  137.             PlayMovieSound puzzleSliders slider${i}Off puzzles/puzzleLightRune/sliderOff
  138.             ozSet pzlLightRune,slider$i ""
  139.         }
  140.     }
  141. }
  142.