• User Attivo

    Problema sovrapposizione clip As 2.0

    Ciao a tutti... sto facendo un gioco e ho questo problema
    i clip sono duplicati in modo casuale e si sovrappongono
    che posso fare?

    Ecco lo script:

    Sono 2 funzioni

    1 nel fotogramma
    2 nel clip dell'auto

    Nel fotogramma della root

    numeroNemici = 10;
     j=0;
    function creaNemici(){
    
    for (j=2; j<=numeroNemici; j++){
        nome = "nemico" + j;
        _root.nemico1.duplicateMovieClip(nome, 500+j);
      }
    }
    creaNemici();
    

    2- sul clip auto

    onClipEvent(load) {
      function reset(){
        this._x = Math.random() * 550; 
        this._y = -50;
        velocitaNemico = (Math.random() * 5) + 1;
      }
      reset();
    } 
    onClipEvent (enterFrame){    
             this._y += velocitaNemico;  
      if (this._y > 400)  {
        reset();
      }
    }
    

    this._x = Math.random() * 550;
    Questo è il nocciolo della questione
    crea gli oggetti in modo casuale nell'asse orizzontale

    che si può fare?


  • Super User

    Ciao Max.


  • User Attivo

    Ciao Nhatan... come sta il mio vecchietto?
    A più tardi ciao!

    Au revoir...
    by Max_400


  • User Attivo

    E allora nessuno è riuscito a risolvere il mio problema?
    con 74.000 utenti qualkuno esperto di Flash non c'è?


  • Super User

    Max io ho provato a pasticiarci un pò, ma se non hai risolto tu figuriamoci se potevo riuscirci io.


  • User Attivo

    Un modo ci dev'essere ci sono un sacco di giochi in Flash però non vedo mai un auto sopra l'altra...
    Comunque ti ringrazio che hai provato a fare qualkosa io cambiato script
    quan non posso mettere link e neanche foto però ho usato script mio
    un ciclo for ed un movimento quando la macchina arriva a fine schermo
    cambia e spunta un camion un motorino ecc...

    I clip vengono distanziati ogni 50 pixel e qaundo arrivano alla fine si spostano di altri 50 pixel.

    
    stop();
    velocita=3;
    
    duplica();
    function duplica(){
        for(a=1;a<7;a++){
            duplicateMovieClip("nemico","nemico"+a, getNextHighestDepth());
            _root["nemico"+a]._x = _root["nemico"+a]._x+(a*50);
    
    //nemico2._x=0;
    nemico1._y=-150;
    
    //nemico2._x=0;
    nemico2._y=-50;
    
    //nemico3._x=50;
    nemico3._y=-100;
    nemico3.gotoAndStop(2);
    
    //nemico4._x=100;
    nemico4._y=50;
    nemico4.gotoAndStop(3);
    
    nemico5._x=450;
    nemico5._y=0;
    nemico5.gotoAndStop(4);
    
        }
    }
    movimento();
    
    function movimento(){
        onEnterFrame=function(){
            for(a=0;a<=7;a++){//per escludere l'orig a<=5
            _root["nemico"+a]._y+=velocita;
            
        
            if(_root["nemico"+a]._y >400){
                _root["nemico"+a]._y=1;
                _root["nemico"+a]._x=_root["nemico"+a]._x+50;
                if(_root["nemico"+a]._x >500){
                    _root["nemico"+a]._x=10;}
                _root["nemico"+a].play();
            }
            
            }
        }
    }
    
    

    in particolare questa riga

    _root["nemico"+a]._x = _root["nemico"+a]._x+(a*50);

    a*50 evita che i cli si sovrappongono

    Questo gioco l'ho chiamato... "il gioco dell'ambulanza" è piaciuto a molti basta scriverlo su google e lo trovi subito
    ambulanza max_4001976 quello new è corretto i clip non si sovrappongono l'altro ivece si perchè c'è la funzione random

    Forse si potrà risolvere creando un timer che duplica e muove le macchine uno alla volta... ma risolve il problema all'80% e ormai ho messo questo script.

    Ultimamente stavo facendo un altro gioco quello di Predator che spara alla polizia... ed avevo lo stesso problema far comparire i poliziotti in modo casuale senza sovrapposizione...

    Comunque grazie vecchio...
    a presto ciao!
    by max_400