Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: effetto neve

  1. #1
    Utente di HTML.it L'avatar di romass
    Registrato dal
    Sep 2001
    Messaggi
    144

    effetto neve

    ciao, ho trovato su internet un effetto neve che fa la caso mio, però vorrei che
    la neve fosse più fitta e che durasse sempre senza interruzioni.
    Potete dirmi cosa devo cambiare?
    Grazie
    lo script che è sul frame chiave è


    baslama_suresi = 50;
    kar_seyrekligi = 0;
    kar_hiz = 4;
    kar_boyut = 0;
    bitis_suresi = 2000;
    a = 0;
    i = -1;
    mc._y = -mc._height;
    function cogalt() {
    a++;
    if (a>bitis_suresi) {
    clearInterval(z);
    }
    i++;
    _root.mc.duplicateMovieClip("mc"+i, i);
    _root["mc"+i].hiz = kar_hiz+random(6);
    _root["mc"+i].boyut = kar_boyut+random(5);
    _root["mc"+i]._x = random(Stage.width);
    _root["mc"+i].rasgele = random(2);
    _root["mc"+i].cacheAsBitmap(true);
    if (_root["mc"+i].rasgele == 0) {
    _root["mc"+i].konum = -(random(3));
    } else {
    _root["mc"+i].konum = +(random(3));
    }
    _root["mc"+i].onEnterFrame = function() {
    this._y += this.hiz;
    this._x += this.konum;
    this._width = this._height=this.boyut;
    if (this._x>Stage.width or this._x<0 or this._y>Stage.height) {
    delete this.onEnterFrame;
    removeMovieClip(this);
    }
    if (_root.engel.hitTest(this._x, this._y, true)) {
    delete this.onEnterFrame;
    }
    };
    }
    s = 0;
    function sure() {
    s++;
    if (s>baslama_suresi) {
    z = setInterval(cogalt, kar_seyrekligi);
    clearInterval(zamanla);
    }
    }
    zamanla = setInterval(sure, 1);

  2. #2
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ecchè devi fare??!! una bufera??!!

    La quantità di fiocchi di neve la stabilisci impostando la variabile kar_seyrekligi dove zero è la quantità massima.
    Nello script è già a zero.

    Lo script è fatto in modo da non sovracaricare il processore.
    Se vengono mostrati sullo schermo troppi fiocchi contemporaneamente, il pc si pianterà dopo pochi secondi..
    Questo peggiorerà man mano che il tuo engel (l'istanza che hai nella root) si spicciuficherà* di neve.

    E sarà ancora peggio man mano che passa il tempo e lo stage si riempie di fiocchi di neve..

    Comunque la durata la puoi specificare tramite la variabile bitis_suresi.
    Per rendere l'effetto prolungato puoi mettere un valore abbastanza elevato, tipo 99999999
    Con questo valore ti durerà circa 2 settimane di fila.. sul serio

    Se vuoi proprio che duri all'infinito puoi cancellare la riga dove viene incrementata la variabile "a", cioè la riga: a++;

    Ma ripeto, se hai un'istanza engel sulla root, il tuo pc inizierà a perdere colpi dopo qualche minuto col rischio di piantarsi dopo qualche decina di minuti per via delle troppe istanze visualizzate sullo stage.... a meno che non possiedi un supercomputer fornito direttamente dalla NASA.

    Per un effetto più fitto ti consiglio di aumentare la dimensione dei fiocchi di neve..
    Lo puoi fare impostando la variabile kar_boyut ad un valore maggiore di zero..
    3 o 4 credo sia sufficiente..

    Se provi ad impostare 100 vedrai scendere una valanga.






    * spicciuficherà è un termine inventato.. però rende l'idea.
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  3. #3
    Utente di HTML.it L'avatar di romass
    Registrato dal
    Sep 2001
    Messaggi
    144
    scusa KillerWorm ma non mi intendo di action script, io ho preso un fla fatto e lo ho modificato per il mio uso, ma forse qualche riga di codice non mi serve, perchè io dovrei vedere solo la neve che cade e non che rimane sulle scritte che io non ho.
    Mi puoi dire se devo modificare lo script e come?

    grazie

  4. #4
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Bhe.. qualcosa ti ho detto..

    Hai iniziato ad eliminare la riga "a++" in modo che non si interrompa mai l'animazione?
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  5. #5
    Utente di HTML.it L'avatar di romass
    Registrato dal
    Sep 2001
    Messaggi
    144
    no, ho messo un valore alto a bitis_suresi

  6. #6
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ok va bene lo stesso..

    Hai provato a cambiare il valore di kar_boyut per ingrandire la dimensione dei fiocchi?
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  7. #7
    Utente di HTML.it L'avatar di romass
    Registrato dal
    Sep 2001
    Messaggi
    144
    si grazie, volevo più fiocchi però perchè ho uno stage di 1200 px,
    devo fare uno sfondo da proiettare in teatro,
    con una foto sulla quale far cadere la neve.

  8. #8
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ok

    Sostituisci la riga in fondo allo script:
    codice:
     z = setInterval(cogalt, kar_seyrekligi);
    con questo script modificato:
    codice:
    z = setInterval(function () {
    	for (var id = 0; id<10; id++) {
    		cogalt();
    	}
    }, kar_seyrekligi);
    Al posto del valore 10 puoi inserire un valore maggiore per ottenere più neve, ma ribadisco che il processore ne risentirà.. eventualmente fai delle prove andando per gradi.. con 20 il mio ha degli scatti molto visibili.
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  9. #9

  10. #10
    Utente di HTML.it L'avatar di romass
    Registrato dal
    Sep 2001
    Messaggi
    144
    grazie

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.