home *** CD-ROM | disk | FTP | other *** search
/ Invenzioni E Inventori 1: Lavoro E Vita Quotidiana / invenzioni-inventori-1.iso / mac / Invenzio / index.dir / 00062_Script_62 < prev    next >
Text File  |  1997-10-15  |  7KB  |  198 lines

  1. on mostrad frase
  2.   cursor 4
  3.   global ss,cst,che_stampa,fr_ric
  4.   if ss <= 0 then ss to 1
  5.   set the visible of sprite 18 to false
  6.   
  7.   if frase <= 794 then
  8.     set codice to item 1 of line frase of field 120
  9.   else
  10.     set codice to item 1 of line (frase-794) of field 121
  11.   end if
  12.   --  put "codice", codice  
  13.   
  14.   if char 1 of codice <> "#" then
  15.     put "Codice non presente"
  16.     cursor -1
  17.     exit
  18.   end if
  19.   
  20.   set fr_ric to line frase of field 58 
  21.   delete the last char of fr_ric
  22.   set tipo to c_tipo(codice)    
  23.   
  24.   case tipo of
  25.     "principio":
  26.       --DEF PRINCIPI SCIENTIFICI1
  27.       set ps1 to char 2 to 4 of codice
  28.       set the member of sprite 15 to member ps1 of castlib "defini"
  29.       --      set the castnum of sprite 15 to cast ps1
  30.       set the scrollTop of member (member ps1 of castlib "defini") to 0
  31.       if the lineCount of member(the member of sprite 15)>16 then
  32.         set the visible of sprite 5 to true
  33.         set the visible of sprite 6 to true
  34.       else
  35.         set the visible of sprite 5 to false
  36.         set the visible of sprite 6 to false
  37.       end if
  38.       set che_stampa to ps1    
  39.       -------------FINE DEFPS1
  40.       
  41.     "def":
  42.       set cst to char 2 to 6 of codice
  43.       set the member of sprite 15 to member cst of castLib "defini"
  44.       --      set the castnum of sprite 15 to cast cst
  45.       set the scrollTop of member (member cst of castLib "defini") to 0
  46.       if the lineCount of member(the member of sprite 15)>16 then
  47.         set the visible of sprite 5 to true
  48.         set the visible of sprite 6 to true
  49.       else
  50.         set the visible of sprite 5 to false
  51.         set the visible of sprite 6 to false
  52.       end if
  53.       set che_stampa to cst    
  54.     "inventore":
  55.       set ori to char 2 to 6 of codice
  56.       set cddrive to char 1 of the moviepath 
  57.       cursor 4
  58.       if the machinetype<256 then
  59.         go "menu" of movie "invenzioni:invenzio:tori:"&ori&".dir"
  60.       else
  61.         go "menu" of movie cddrive&":\invenzio\tori\"&ori&".dir"
  62.       end if
  63.       exit      
  64.       ---------------SOTTO_INVENZIONI1---------------------------------------------
  65.     "sottoinv":      
  66.       global correlati
  67.       set correlati to char 2 to 6 of codice
  68.       set the membernum of sprite 15  to member 4987
  69.       updatestage
  70.       CPS
  71.       
  72.     "invenzione":
  73.       ------------INVENZIONI2
  74.       set oni to char 2 to 6 of codice
  75.       set cc to integer(char 3 to 5 of oni)
  76.       set cddrive to char 1 of the moviepath 
  77.       set onipath to item 2 of line cc of field "invenzioni"
  78.       cursor 4
  79.       if the machinetype<256 then
  80.         go "menu" of movie "invenzioni:invenzio:"&onipath&":"&oni&".dir"
  81.       else
  82.         go "menu" of movie cddrive&":\invenzio\"&onipath&"\"&oni&".dir"
  83.       end if
  84.       exit    
  85.   end case
  86.   ---------------------------------------------------TIMELINE
  87.   set castart to 124
  88.   set inizio to 1
  89.   set fine to the lineCount of member 124
  90.   set pivot to integer ((fine-inizio+1)/2)
  91.   set stringa to line frase of field 58
  92.   delete the last char of stringa
  93.   set strpivot to item 2 to (the number of items in line pivot of field castart) of line pivot of field castart
  94.   set oldpivot to 1
  95.   
  96.   repeat while pivot <> oldpivot
  97.     if stringa = strpivot then
  98.       set riga to pivot
  99.       exit repeat
  100.     else
  101.       if stringa > strpivot then
  102.         set inizio to pivot + 1
  103.       else
  104.         set fine to pivot -1
  105.       end if
  106.       set oldpivot to pivot
  107.       set pivot to integer ((fine-inizio+1)/2) + inizio
  108.       set strpivot to item 2 to (the number of items in line pivot of field castart) of line pivot of field castart
  109.     end if      
  110.     set riga to pivot
  111.   end repeat
  112.   -------------------------------------------------------------------------------------------------------------------------------------
  113.   if item 2 to (the number of items in line riga of field castart) of line riga of field castart = fr_ric then
  114.     set tmp to line riga of field castart
  115.     set tmp to item 1 of tmp
  116.     time_line tmp
  117.     set the visible of sprite 18 to true
  118.   else
  119.     set the visible of sprite 18 to false
  120.     put "no timeline"
  121.   end if
  122.   
  123.   ------------------------------------ALBERI
  124.   set castart to 125
  125.   set inizio to 1
  126.   set fine to the lineCount of member 125
  127.   set pivot to integer ((fine-inizio+1)/2)
  128.   set stringa to line frase of field 58
  129.   delete the last char of stringa
  130.   set x to line pivot of field castart
  131.   set a to the number of items in x
  132.   if integer(item a-1 of x)  then
  133.     set strpivot to item a of x
  134.   else
  135.     set strpivot to ((item (a-1) of x) &","& (item a of x))
  136.   end if
  137.   set a_str to strpivot
  138.   set oldpivot to 1
  139.   repeat while pivot <> oldpivot
  140.     --    put "strpivot",strpivot
  141.     --    put "pivot",pivot
  142.     --    put "frase",frase
  143.     if stringa = strpivot then
  144.       set riga to pivot
  145.       exit repeat
  146.     else
  147.       if stringa > strpivot then
  148.         set inizio to pivot + 1
  149.       else
  150.         set fine to pivot -1
  151.       end if
  152.       set oldpivot to pivot
  153.       set pivot to integer ((fine-inizio+1)/2) + inizio
  154.       set x to line pivot of field castart
  155.       set a to the number of items in x
  156.       if integer(item a-1 of x)  then
  157.         set strpivot to item a of x
  158.       else
  159.         set strpivot to ((item (a-1) of x) &","&  (item a of x))
  160.       end if
  161.     end if      
  162.     set riga to pivot
  163.   end repeat
  164.   
  165.   if strpivot = fr_ric then
  166.     set lista_alb to ""
  167.     if integer(item a-1 of x)  then
  168.       repeat with gg = 1 to integer(item a-1 of x)
  169.         put item gg of x into item gg of lista_alb
  170.       end repeat
  171.     else
  172.       repeat with gg = 1 to integer(item a-2 of x)
  173.         put item gg of x into item gg of lista_alb
  174.       end repeat
  175.     end if
  176.     updatestage
  177.     alberi lista_alb
  178.     set the visible of sprite 4 to true
  179.     global vis
  180.     repeat with x = 20 to 22
  181.       set the visible of sprite x to false
  182.     end repeat
  183.     repeat with x = 20 to vis
  184.       set the visible of sprite x to true
  185.     end repeat
  186.     formatta
  187.     updatestage
  188.   else
  189.     set the visible of sprite 4 to false
  190.     repeat with x = 20 to 22
  191.       set the visible of sprite x to false
  192.       --     delete field x+56
  193.     end repeat
  194.     put "no alberi"
  195.   end if
  196.   cursor -1
  197.   -------------------------------------------------------------------------------------------------------------------------------------
  198. end