Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    138

    duplicate mc progressivo

    ciao a tutti
    avrei bigono di creare un "tappeto" di palline, mi spiego ,mi deve apparire una pallina, poi un'altra poi sempre + velocemente un'altra e una'ltra ancora e così via finoa che mi si riempe lo stage.
    sto cercando di rispolverare le mie poche nozioni sul duplicate mc ma dai tentativi che ho fatto non riesco a far si che il riempimento dello stage sia progressivo, mi appaiono tutte in una volta.
    sapreste aiutarmi?
    grazie 1000

  2. #2
    invece di usare un ciclo for devi farlo all'onEnterFrame, dove dentro fai crescere la variabile. Per farlo sempre più veloce boh...io farei tipo un controllo saltando prima ad esempi 5 frame, poi 4, poi 3 etc...Non è bellissimo, ma funziona anche se non sarà una crescita logaritmica.

    codice:
    this.onEnterFrame=function(){
    }

  3. #3
    Se puoi usare AS3 con la classe Timer fai al volo.

  4. #4
    Ok ti ho fatto un esempio, basta che copi sto codice nel primo fotogramma (deve però essere un progetto AS3).

    Codice PHP:
    var timer:Timer;
    var 
    decrement:int;
    var 
    interval:int 1000;
    var 
    radius:int 25;
    var 
    color:uint 0x000000;
    var 
    ballX:int radius;
    var 
    ballY:int radius;

    function 
    init():void
    {
        var 
    stageArea:int stage.stageWidth*stage.stageHeight;
        var 
    ballArea:int Math.pow(radius*22);
        var 
    maxBalls:int stageArea/ballArea;
        
        
    decrement Math.floor((interval-100)/maxBalls);
        
    timer = new Timer(intervalmaxBalls);
        
    timer.addEventListener(TimerEvent.TIMERcreateBall);
        
    timer.start();
    }

    function 
    createBall(e:TimerEvent):void
    {
        var 
    s:Sprite = new Sprite();
        
    s.graphics.beginFill(color1);
        
    s.graphics.drawCircle(ballXballYradius);
        
    s.graphics.endFill();
        
    addChild(s);
        
        if (
    ballX < (stage.stageWidth-radius))
        {
            
    ballX += radius*2;
        }
        else
        {
            
    ballX radius;
            
    ballY += radius*2;
        }
        
        
    timer.delay -= decrement;
    }

    init(); 
    E' abbastanza flessibile, quindi lo puoi usare impostando diverse dimensioni dello stage e diverse misure per la tua palla (oltre che a cambiare il colore e quant'altro).

    P.S. al calcolo iniziale del decremento levo 100 all'intervallo per evitare che finisca fuori scala il timer.


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.