Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    62

    valore random tra due numeri

    salve... è da un pò che cerco di capire come spostare un movieclip "my_mc" in maniera random tra tra un punto iniziale ed un punto finale prestabiliti...
    questo dovrebbe esseere lo script adatto ma non so farlo funzionare
    http://www.flzone.com/go?3452
    qualche "aiutino"? grassie

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2009
    residenza
    Olbia
    Messaggi
    2,930
    Se sono prestabiliti non possono essere random, spiegati meglio vuoi ad esempio che un mc al click su un pulsante assuma delle coordinate x e y random o cosa vorresti fare?

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    62
    hai ragione scusami
    vorrei farlo partire da una coordinata xy e farlo arrivare ad un'altra coordinata xy diversa dalla prima, facendogli fare un movimento random (per alcuni secondi) tra i due punti... quindi non a linea retta ...
    il movieclip partendo da xy... dovrebbe fare dei movimenti casuali sullo stage e poi si posizionerebbe ad xy
    nn so se è + chiaro ora...

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2009
    residenza
    Olbia
    Messaggi
    2,930
    si ora è chiaro ma molto difficile bisogna essere molto bravi perchè bisogna scrivere funzioni matematiche molto difficili, almeno per farlo random se invece si vuole fare fare un percorso anche tortuoso ma sepre lo stesso con l'aiuto delle tweenlite è facile.

  5. #5
    http://www.greensock.com/tweenmax/

    Questo potrebbe esserti utile, vai sul pannellino delle demo dei plug in (scrolla un po' giù), attiva bezierTrough, e guarda il codice.

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    62
    ok randi allora non è cosa mia
    e invece si vuole fare fare un percorso anche tortuoso ma sepre lo stesso con l'aiuto delle tweenlite è facile
    infatti stavo già pensando di ovviare così! grassie

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2009
    residenza
    Olbia
    Messaggi
    2,930
    Mi correggo con le tweenlite è possibile assegnare coordinate random, dunque le tween hanno una struttura simile
    codice:
    import com.greensock.*; 
    import com.greensock.easing.*;
    
    TweenMax.to(mc, 3, {bezier:[{_x:82, _y:224}, {_x:199, _y:210}, {_x:200, _y:331}, {_x:299, _y:365}], orientToBezier:true});
    le prime coordinate sono il primo punto dove si porterà lo mc alla partenza, attenzione non dove si trova prima di partire ma il primo punto che toccherà, le ultime coordinate sono il punto di arrivo, come vedi sono numeriche fisse, ma si possono sostituire con variabili random cosi
    codice:
    import com.greensock.*; 
    import com.greensock.easing.*;
    mc._x=20
    mc._y=20
    
    TweenMax.to(mc, 3, {bezier:[{_x:a, _y:b}, {_x:c, _y:d}, {_x:e, _y:f}, {_x:g, _y:h}], orientToBezier:true});
    
    
    a=50+random(300)
    b=50+random(300)
    c=50+random(300)
    d=50+random(300)
    e=50+random(300)
    f=50+random(300)
    g=500
    h=300
    pratichemente a parte il punto di arrivo stiamo assegnando ai punti intermedi il valore random.
    Immagino che ti sei spaventato e non ci capisci niente allora per prima cosa vai al link di Stan e scarica le tweenlite cerca nella cartella demo.swf il file PluginExplorer-v11.swf e lancialo.
    sotto setta o as2 o as3 a seconda di come vuoi programmare premi su bezier/EXAMPLE trascina la linea per fare un percorso tortuoso e sotto avrai il codice da mettere nel tuo fla, poi sostituisci i valori fissi con le variabili random.

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    62
    grazie randi sempre disponibilissimo!!!

    codice:
    import com.greensock.*;  
    import com.greensock.easing.*;  
    TweenMax.to(mc, 3, {bezier:[{_x:82, _y:224}, {_x:199, _y:210}, {_x:200, _y:331}, {_x:299, _y:365}], orientToBezier:true});
    fin qui tutto bene riesco...

    codice:
    import com.greensock.*;  
    import com.greensock.easing.*; 
    mc._x=20 mc._y=20  TweenMax.to(mc, 3, {bezier:[{_x:a, _y:b}, {_x:c, _y:d}, {_x:e, _y:f}, {_x:g, _y:h}], orientToBezier:true});   
    a=50+random(300) 
    b=50+random(300) 
    c=50+random(300) 
    d=50+random(300) 
    e=50+random(300) f=50+random(300) 
    g=500 h=300
    con questo codice non riesco.. il movieclip rimane fermo al suo posto... dopo farò altre prove magari

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2009
    residenza
    Olbia
    Messaggi
    2,930
    Si scusa effettivamente ci vuole un evento per farlo funzionare così
    codice:
    import com.greensock.*; 
    import com.greensock.easing.*;
    
    btn.onPress = function()
    {
    a=50+random(300)
    b=50+random(300)
    c=50+random(300)
    d=50+random(300)
    e=50+random(300)
    f=50+random(300)
    g=500
    h=300
    via()
    }
     function via()
     {
    TweenMax.to(mc, 3, {bezier:[{_x:a, _y:b}, {_x:c, _y:d}, {_x:e, _y:f}, {_x:500, _y:500}], orientToBezier:true});
     }
    btn è lsianza di un pulsante.

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2009
    residenza
    Olbia
    Messaggi
    2,930
    Oppure se non vuoi nessuna iteazione da parte dell'utente un evento enterFrame
    codice:
    import com.greensock.*; 
    import com.greensock.easing.*;
    
    mc.onEnterFrame = function()
    {
    	if(mc._x<100)
    	{
    a=50+random(300)
    b=50+random(300)
    c=50+random(300)
    d=50+random(300)
    e=50+random(300)
    f=50+random(300)
    g=500
    h=300
    via()
    }
    }
     function via()
     {
    TweenMax.to(mc, 3, {bezier:[{_x:a, _y:b}, {_x:c, _y:d}, {_x:e, _y:f}, {_x:500, _y:350}], orientToBezier:true});
    
     }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.