home *** CD-ROM | disk | FTP | other *** search
/ 1&1 Multimedia Trend 1996 10 B / MM_TREND.ISO / prog / t-online / shared.dir / 00305_Script_305 < prev    next >
Text File  |  1996-08-16  |  17KB  |  688 lines

  1. --interface
  2.  
  3. -- generelle routinen fⁿr alle sprites
  4. -- die individuelle funtionen liegen in 306
  5.  
  6.  
  7. --**********************************************************
  8. on  Check48Rollover
  9.   -- funktion die alle Sprites checkt. Dauert ca. 2-4 ticks
  10.   -- berⁿcksichtigt nur die im Frame gewⁿnschten
  11.   -- die in der Liste SpriteRoll stehen
  12.   
  13.   global glSpriteRoll, giOtherSpn, giSPN, gb1u1logo
  14.   
  15.   set giSPN =0
  16.   set giOtherSpn = 0  -- rollover other sprite
  17.   repeat with i = 26 to 47
  18.     if the castnum of sprite i > 0 then 
  19.       -- zur sicherheit 
  20.       if  rollover (i) then
  21.         --debug "roll over " & i
  22.         put GetAt (glSpriteRoll , i) into x
  23.         
  24.         if x > 0 then -- nur aktive
  25.           --debug "roll over " & i
  26.           set giSPN = i
  27.           exit repeat
  28.         else
  29.           
  30.         end if 
  31.       end if 
  32.     end if
  33.   end repeat
  34.   
  35.   if (gb1u1Logo = true) and (the mousedown = true) then
  36.     set the visible of sprite 45 = false
  37.     set gb1u1logo = false
  38.     updatestage  
  39.     set giSPN = 0
  40.   end if
  41.   
  42. end Check48Rollover
  43.  
  44.  
  45. --**********************************************************
  46. on CheckOtherRollover
  47.   global glOtherRoll, glOtherShow, giOtherSpn
  48.   put count( glOtherRoll) into Anz
  49.   repeat with i = 1 to Anz
  50.     if giOtherSpn = getAt (glOtherRoll,i) then
  51.       go to frame getAt (glOtherShow,i)  
  52.     end if
  53.   end repeat
  54.   
  55. end
  56.  
  57. --**********************************************************
  58. on CheckMyRollover
  59.   global giOtherSpn, giSPN, glActiveRoll, gbSldOpen
  60.   
  61.   Check48Rollover()  
  62.   
  63.   --debug "CheckMyRoll: " & giSPN
  64.   
  65.   if gbSldOpen = true then
  66.     -- wenn slider offen, nur die sichtbaren
  67.     put getOne (glActiveRoll ,giSpn) into x
  68.     if x = 0 then
  69.       set giSPN = 0
  70.     end if
  71.   end if
  72.   
  73.   if giSPN > 0 then
  74.     ExecRollover 
  75.   else
  76.     -- rollover ⁿber andere sprites??
  77.     ResetRollover 
  78.   end if
  79. end
  80.  
  81.  
  82. --**********************************************************
  83. on CheckNaviRollover
  84.   -- wΣhrend der Animationen nur auf Navi Buttons
  85.   --set spn = 0
  86.   global giSPN
  87.   
  88.   Check48Rollover()
  89.   
  90.   --debug "NaviRoll: " & giSPN
  91.   if (gispn >25) and (gispn <29) then 
  92.     ExecRollover  --gispn
  93.   else
  94.     ResetRollover 
  95.   end if
  96.   
  97. end
  98.  
  99.  
  100.  
  101. --**********************************************************
  102. on ExecRollover 
  103.   -- verΣndert die Bitmap bei rollover
  104.   
  105.   global  giLastSprite, glCastOfSprite, glSpriteRoll
  106.   global  giDownFlag, gbSldOpen, giSPN, giBlinkCast, gbISDN, giAuto
  107.   
  108.   --set the trace to true
  109.   
  110.   -- debug "execroll: " & giSpn & " LastS: " & giLastSprite¼
  111.           & "Down: " & giDownFlag
  112.   
  113.   set spn = giSPN
  114.   set x=0
  115.   set ok = true
  116.   
  117.   if (giLastSprite > 0) and (giLastSprite <> Spn) then
  118.     -- falls es zu schnell ging
  119.     ResetRollover   
  120.   end if
  121.   
  122.   put GetAt (glSpriteRoll, Spn) into y
  123.   if y > 0 then   
  124.     -- nur bei den Button-sprites
  125.     -- ─ndern , wenn noch = gesetzte castnummer, 
  126.     -- bei 40-43 wird 2x gewechselt 
  127.     put GetAt (glCastOfSprite, Spn)  into x
  128.     
  129.     if the castnum of sprite spn  = x then  -- nur Σndern, wenn n÷tig
  130.       
  131.       -- sonderfΣlle behandeln 
  132.       if Spn = 38 then
  133.         -- kein roll bei den radio buttons
  134.         set ok = false
  135.       end if
  136.       
  137.       if Spn = 45 then
  138.         -- kein roll bei 1&1 buttons
  139.         set ok = false
  140.       end if
  141.       
  142.       
  143.       if (Spn = 43) and  gbSldOpen = true then  
  144.         -- Sound ok/esc buttons  
  145.         ChangeSndBtn 1 
  146.         set ok = false
  147.       end if
  148.       
  149.       
  150.       
  151.       
  152.       -- button der blinkt
  153.       if Spn = 40 + gbISDN then
  154.         -- den blinkenden Button setzten
  155.         put GetAt (glCastOfSprite, 40 + gbISDN) into x
  156.         set the castnum of sprite 40 + gbISDN to  x
  157.       end if 
  158.       
  159.       -- wechsel bei interaktiv/gesteuert
  160.       if (Spn=36) then  -- interaktiv 
  161.         debug "change Auto: " & giAuto
  162.         if (giAuto = 0) then  
  163.           -- interaktiv = grⁿn
  164.           put getAt (glOrigOfSprite, spn) into x
  165.           set the castnum of sprite spn to x + 7
  166.           debug "  + 7"
  167.         else
  168.           -- interaktiv = rot
  169.           put getAt (glOrigOfSprite, spn) into x
  170.           set the castnum of sprite spn to x + 1
  171.           debug "   +1"
  172.         end if
  173.         set ok = false
  174.         updatestage
  175.       end if
  176.       
  177.       if (Spn=37) then  -- interaktiv 
  178.         debug "change Auto: " & giAuto
  179.         if (giAuto = 1) then  
  180.           -- interaktiv = grⁿn
  181.           put getAt (glOrigOfSprite, spn) into x
  182.           set the castnum of sprite spn to x + 7
  183.           debug "  + 7"
  184.         else
  185.           -- interaktiv = rot
  186.           put getAt (glOrigOfSprite, spn) into x
  187.           set the castnum of sprite spn to x + 1
  188.           debug "   +1"
  189.         end if
  190.         set ok = false
  191.         updatestage
  192.       end if
  193.       
  194.       -- ------------------------------------------
  195.       -- Σndern falls es ok ist
  196.       if ok = true then
  197.         set the castnum of sprite Spn to x +1  
  198.         updatestage
  199.       end if
  200.     else
  201.       -- esc/ok immer prⁿfen / Σndern
  202.       if (Spn = 43) AND (gbSldOpen = true) then  
  203.         -- Sound ok/esc buttons  
  204.         ChangeSndBtn 1 
  205.         set ok = false
  206.       end if
  207.     end if  -- castnum = orig
  208.     
  209.   else  -- y=0  SpriteRoll = 0 
  210.     
  211.     -- nur bei Ok/esc checken,  sonst ignorieren
  212.     if Spn = 43 then
  213.       ChangeSndBtn 1
  214.     end if
  215.     
  216.   end if  --y>0
  217.   
  218.   --  ++++++++++++++++ MOUSE DOWN / UP ++++++++++++++++++
  219.   
  220.   -- hat schon die rollover bitmap
  221.   -- jetzt check, ob mousedown
  222.   
  223.   if the mouseDown = true then
  224.     if giLastSprite = spn then
  225.       MyMouseDown       
  226.       set giDownFlag = spn
  227.       waitticks 5  
  228.       MyMouseUp
  229.       
  230.     end if
  231.   end if
  232.   -- -------------
  233.   set giLastSprite = Spn
  234.   
  235.   --  set the trace to false  
  236.   
  237. end ExecRollover
  238.  
  239. -- ------------------------------------------------------
  240. on ChangeSndBtn   Art
  241.   -- hilfsproc fⁿr OK/ESC buttons
  242.   
  243.   global gbSldOpen, gbISDN, giSPN
  244.   
  245.   set y = giSpn
  246.   if gbISDN then
  247.     set sp = 436
  248.   else
  249.     set sp = 380
  250.   end if
  251.   
  252.   if Art = 1 then
  253.     set x = 0
  254.   else
  255.     set x = 2
  256.   end if
  257.   --debug "change ESC/OK"
  258.   
  259.   
  260.   -- esc/ok buttons
  261.   if (gbSldOpen = true) and (giSPN=43) then  -- button bei zu
  262.     -- ok esc buttons 
  263.     if the mouseH > 605 then
  264.       if the mouseV > 340 then
  265.         set  the castnum of sprite 43  to  sp + x
  266.         --debug "--ESC: " & sp + x 
  267.       else
  268.         
  269.         set  the castnum of sprite 43 to sp + 1 + x
  270.         --debug "--OK: " & sp + 1  + x
  271.       end if
  272.     end if
  273.     updatestage
  274.   end if
  275.   
  276.   
  277. end
  278.  
  279.  
  280. --***********************************************************
  281. on ResetRollover 
  282.   -- prⁿft, ob ein beleibiger sprite geΣndert wurde
  283.   -- dann wird er zurⁿckgesetzt
  284.   
  285.   global  giLastSprite,  glCastOfSprite, glSpriteRoll, giDownFlag 
  286.   
  287.   if giLastSprite > 0 then
  288.     if giLastSprite <> 38 then
  289.       set x = GetAt (glCastOfSprite, giLastSprite )   -- orginal ??
  290.       set  the castnum of sprite giLastSprite  to  x 
  291.       
  292.       --if giLastSprite = 44 then
  293.       -- reset 1&1 logo
  294.       --set the visible of sprite 45 to false
  295.       --end if
  296.       
  297.       updatestage
  298.     end if
  299.     
  300.     set giDownFlag = 0  
  301.     set giLastSprite = 0
  302.   end if --gi
  303. end ResetRollover
  304.  
  305.  
  306.  
  307.  
  308. -- ***********************************************************
  309.  
  310. on MyMouseDown
  311.   -- hier werden die slider behandelt
  312.   -- wird per MousDownScript umgelenkt
  313.   global giLastSprite, gbSldOpen, gb1u1Logo 
  314.   
  315.   
  316.   debug "MyMouseDown: " & giLastSprite
  317.   set x = 0
  318.   if giLastSprite > 0 then
  319.     put GetAt (glSpriteRoll, giLastSprite) into x  -- relevanter sprite?
  320.     if x > 0 then
  321.       PlayNoise  "click"
  322.       -- setzte die graphik fⁿr "Down"
  323.       if giLastSprite <> 38 then  --radiobuttons
  324.         put GetAt (glCastOfSprite, giLastSprite) into x
  325.         set the castnum of sprite  giLastSprite  to x + 2 --"DownBitmap" 
  326.         updatestage
  327.       end if
  328.       
  329.       if giLastSprite = 44 then
  330.         -- einblenden der 1&1 info  
  331.         -- wieder weg bei Mouse Up
  332.         debug "show 1&1"
  333.         if the visible of sprite 45 = true then
  334.           set the visible of sprite 45 to false
  335.           set gb1u1Logo = false
  336.         else
  337.           set the visible of sprite 45 to true
  338.           set gb1u1Logo = true
  339.         end if
  340.         updatestage        
  341.       else  
  342.         
  343.         if the visible of sprite 45 = true then
  344.           debug "hide  1&1"
  345.           set the visible of sprite 45 to false
  346.           set gb1u1Logo = false
  347.           updatestage
  348.         end if
  349.       end if
  350.       
  351.       -- Soundlevel, Radiobuttons extra behandeln
  352.       if gbSldOpen = true then
  353.         if giLastSprite = 39 then --regler
  354.           ChangeSoundLevel  -- in 306
  355.           
  356.         else if giLastSprite = 38 then
  357.           ChangeSoundOnOff  -- in 306
  358.         else if giLastSprite = 43 then
  359.           -- esc/ok buttons 
  360.           ChangeSndBtn 2
  361.         else
  362.           --  dontpassEvent  -- das wars  
  363.         end if
  364.       end if  -- sldopen
  365.     else  -- x>0
  366.       
  367.     end if
  368.   end if  --lastsprite
  369.   debug "...down ready" 
  370. end
  371.  
  372.  
  373. -- **************************************************************
  374. on MyMouseUp
  375.   -- hier werden die Aktionen auf den Slidern behandelt
  376.   
  377.   global giLastSprite, glAction, gbISDN, giExtraAction
  378.   
  379.   set  s = "  "
  380.   set x = 0
  381.   if giLastSprite > 0 then
  382.     put GetAt (glSpriteRoll, giLastSprite) into x  -- relevanter sprite?
  383.     if x > 0 then
  384.       debug "MsUpProc.." & giLastSprite 
  385.       
  386.       updatestage
  387.       
  388.       if giLastSprite <> 38 then -- radiobuttons
  389.         put GetAt (glCastOfSprite, giLastSprite) into x
  390.         set the castnum of sprite  giLastSprite  to x   --"DownBitmap" 
  391.         updatestage
  392.       end if
  393.       
  394.       set z = giLastSprite
  395.       put GetAt ( glAction, giLastSprite ) into s
  396.       debug " call " & s
  397.       
  398.       -- -------------- call ActionProc --------------
  399.       
  400.       -- do s
  401.       if z= 26 then 
  402.         GoPrev
  403.         
  404.       else if z=27 then
  405.         GoNext
  406.       else if z=28 then
  407.         GoMenu
  408.         
  409.       else if z=34 then
  410.         Install        
  411.       else if z=35 then
  412.         Antrag
  413.       else if z=36 then
  414.         SetAutoNein
  415.       else if z=37 then
  416.         SetAutoJa
  417.       else if z=38 then
  418.         SetSound
  419.       else if z=39 then
  420.         SetSndLevel
  421.         
  422.         
  423.       else if z=40 then
  424.         if gbISDN = false then
  425.           escInst
  426.         end if
  427.       else if z=41 then
  428.         escAntrag
  429.       else if z=42 then
  430.         escAuto
  431.       else if z=43 then
  432.         escSound
  433.         
  434.       else if z=44 then
  435.         -- EinsInfo
  436.       else if z=46 then
  437.         Finished  
  438.         
  439.       else if z=99 then
  440.         --
  441.       else
  442.         
  443.         
  444.       end if
  445.       
  446.       -- dontpassEvent  -- das wars
  447.     else
  448.       -- weiter mit anderen mouse handlern  
  449.     end if
  450.   end if
  451.   
  452.   -- zusΣtzliche aktionen in einzelnenn filmen
  453.   if giExtraAction > 0 then
  454.     if giLastSprite > 0 then
  455.       -- im moviescript des films 
  456.       debug "---EXTRA!"
  457.       ExtraAction 
  458.     end if
  459.   end if
  460.   debug "...up ready" 
  461. end
  462.  
  463.  
  464.  
  465. -- **************************************************************
  466.  
  467.  
  468. on SliderVisible Id, JaNein
  469.   -- Zeigt / Vesteckt die elemente der slider
  470.   -- janain=1 = sichtbar machen
  471.   
  472.   global glCastOfSprite, glOrigOfSprite, giLastSprite
  473.   global gbDoBlink, gbSldOpen, giSliderID, glStatus
  474.   global giMusic, giNoise, giAuto
  475.   global glActiveRoll, giMovieNr
  476.   
  477.   debug "slider visible" 
  478.   
  479.   set x = 0
  480.   if JaNein = 1 then
  481.     --     SliderOut  -- dummy animieren
  482.     
  483.     if giMovieNr > 0 then
  484.       set x = giMovieNr
  485.       set giMovieNr = 0  -- stopt in movie wait 
  486.       
  487.       repeat while (the movierate of sprite x >0)
  488.         nothing  
  489.       end repeat
  490.       
  491.     end if
  492.     
  493.     
  494.     PlayNoise  "ExtendTab"
  495.     set gbDoBlink = false  -- nicht mehr blinken
  496.     set gbSldOpen = true  -- die anderen rollover sperren   
  497.     
  498.   end if
  499.   
  500.   
  501.   --  ================== anzeige ====================
  502.   
  503.   --  -------------- slider nummer 1 -----------------
  504.   if id = 1 then --tonline
  505.     -- jeweils die slider + buttons zeigen/verstecken
  506.     set the visible of sprite 30 to JaNein
  507.     set the visible of sprite 34 to JaNein
  508.     set glActiveRoll =[30, 34, 40]
  509.   end if
  510.   
  511.   
  512.   --  -------------- slider nummer 2 -----------------
  513.   if id = 2 then --antrag
  514.     set the visible of sprite 31 to JaNein
  515.     set the visible of sprite 35 to JaNein
  516.     set glActiveRoll =[31, 35, 41]  
  517.   end if
  518.   
  519.   --  -------------- slider nummer 3 -----------------
  520.   if id = 3 then -- auto
  521.     
  522.     set the visible of sprite 32 to JaNein
  523.     
  524.     -- je nach status den roten/grⁿnen button
  525.     if giAuto = 0 then   -- nicht auto
  526.       -- interaktiv = grⁿn
  527.       put getAt (glOrigOfSprite, 36) into x
  528.       set the castnum of sprite 36 to x + 2  -- vorher +6
  529.       
  530.       -- gesteu. = rot
  531.       put getAt (glOrigOfSprite, 37) into x
  532.       set the castnum of sprite 37 to x
  533.       
  534.     else
  535.       -- interaktiv = rot
  536.       put getAt (glOrigOfSprite, 36) into x
  537.       set the castnum of sprite 36 to x 
  538.       -- gesteu. = grⁿn
  539.       put getAt (glOrigOfSprite, 37) into x
  540.       set the castnum of sprite 37 to x + 2  -- vorher +6
  541.     end if
  542.     
  543.     set the visible of sprite 36 to JaNein
  544.     set the visible of sprite 37 to JaNein  
  545.     set glActiveRoll =[32, 36, 37, 42]  
  546.     
  547.     debug" CASTNUM: " & the castnum of sprite 36 & the castnum of sprite 37
  548.     
  549.     
  550.     
  551.   end if
  552.   
  553.   --  -------------- slider nummer 4 -----------------
  554.   if id = 4 then --  sound on/off / level
  555.     set the visible of sprite 29 to JaNein  --linie fⁿr regler
  556.     set the visible of sprite 33 to JaNein
  557.     set the visible of sprite 39 to JaNein
  558.     if JaNein = true then -- nur bei sichtbar 
  559.       set x = 0
  560.       set spn = 38
  561.       put getAt (glOrigOfSprite, spn) into x
  562.       debug "ORIG: " & x
  563.       if giNoise =1 then
  564.         if giMusic= 1 then 
  565.           set the castnum of sprite spn to x  
  566.         else
  567.           --set x= x +2  -- um setAt CatsNum richting zu definieren
  568.           set the castnum of sprite spn to x +2
  569.         end if
  570.         
  571.       else  -- noise = 0
  572.         if giMusic= 1 then 
  573.           --set x= x +1
  574.           set the castnum of sprite spn to x + 1  
  575.         else
  576.           --set x= x +3
  577.           set the castnum of sprite spn to x + 3
  578.         end if
  579.         
  580.       end if
  581.       
  582.     end if
  583.     
  584.     set the visible of sprite 38 to JaNein  -- radio
  585.     set glActiveRoll =[29, 33, 39, 38, 43]
  586.     
  587.     --updatestage
  588.     
  589.   end if
  590.   
  591.   -- --------------------------------------------------
  592.   -- umdefinieren der "orginal" castnummer
  593.   put getAt (glCastOfSprite, giLastSprite) into x
  594.   
  595.   if JaNein = 1 then --ja
  596.     set y = x + 3  
  597.   else
  598.     set y = x - 3
  599.   end if
  600.   setAt glCastOfSprite, giLastSprite, y
  601.   
  602.   --                              
  603.   set the castNum of sprite giLastSprite to y
  604.   set the visible of sprite giLastSprite to true
  605.   
  606.   
  607.   -- set / reset flags und status 
  608.   if JaNein = 1 then
  609.     --      SliderBack  -- dummy wieder weg
  610.     set giSliderID = Id 
  611.     setAt glStatus ,Id, 1
  612.     
  613.   else
  614.     set gbDoBlink = true  -- wieder blinken
  615.     set gbSldOpen = false  -- die anderen rollover erlauben  
  616.     
  617.     set giSliderID = 0 
  618.     setAt glStatus ,Id, 0 
  619.     
  620.     continue
  621.     
  622.   end if
  623.   debug "   ready slider" 
  624.   updatestage
  625.   
  626. end SliderVisible
  627.  
  628.  
  629.  
  630. -- **************************************************************
  631. on ShowThemAll
  632.   -- hilfsfunktion fⁿr die erstellung (bei stopmovie)
  633.   repeat with i= 20 to 48
  634.     set the visible of sprite i to true
  635.   end repeat
  636. end ShowThemAll
  637.  
  638.  
  639.  
  640.  
  641. --  ++++++++++++++++++++ alte versionen ++++++++++++++++++++
  642.  
  643. on SliderOut Id
  644.   global giLastSprite, giDummySliderId, giDummySliderHomeId
  645.   global gbAnimation
  646.   
  647.   
  648.   
  649.   exit
  650.   
  651.   PlayNoise  "ExtendTab"
  652.   -- zu langsam
  653.   set x = the locH of sprite giDummySliderHomeId
  654.   set y = the locV of sprite giLastSprite
  655.   
  656.   set the locH of sprite giDummySliderId to x
  657.   set the locV of sprite giDummySliderId to y -10     -- 17
  658.   
  659.   set the visible of sprite giDummySliderId to true
  660.   updatestage
  661.   
  662.   if gbAnimation = true then
  663.     -- bei animation einfach raus, so sonst zu lngsam
  664.     set the locH of sprite giDummySliderId to (x-70)
  665.   else
  666.     repeat with i = 1 to 5   
  667.       set the locH of sprite giDummySliderId to x
  668.       set x = x - 14
  669.       updatestage
  670.     end repeat  
  671.   end if
  672.   
  673. end SliderOut
  674.  
  675.  
  676. -- **************************************************************
  677.  
  678. on SliderBack
  679.   -- bewegt den dummy in die untere ecke
  680.   global giDummySliderId
  681.   
  682.   --set the visible of sprite giDummySliderId to false
  683.   --updatestage
  684.   --set the locH of sprite giDummySliderId to 600
  685.   --set the locV of sprite giDummySliderId to 420
  686. end SliderBack
  687.  
  688.