2013-12-15 8 views
5

Così lentamente ho imparato a manipolare il sistema di particelle e l'emettitore in-game attraverso il codice, ma c'è un compito semplice che non riesco a capire come ... Come posso generare particelle SOLO quando tengo il mouse pulsante? Ho provato un work-around impostando il maxCount di emmiter su 0 quando non è premuto, ma in questo caso non emette alcuna particella, o semplicemente fa scomparire immediatamente quelle esistenti, il che appare molto innaturale e non lo voglio. C'è un modo per emetterli "manualmente" nel metodo di rendering?Libgdx - Come generare particelle solo quando tengo premuto il pulsante del mouse?

+2

Mostraci un codice che dimostri ciò che hai funzionato ora. –

+0

Sry Ho dimenticato completamente questo, sto pubblicando una risposta con un esempio funzionante in questo momento! – Pablo1517

risposta

1

Probabilmente si desidera impostare il valore in scala Emissione sull'emettitore di particelle. Puoi lasciare il conteggio massimo al numero massimo di particelle che desideri.

Per disattivare la creazione di particelle:

emitter.getEmission().setLow(0); 
emitter.getEmission().setHigh(0); 

Per riaccenderlo:

emitter.getEmission().setLow(10); 
emitter.getEmission().setHigh(10); 
0

provare a utilizzare un Pool combinato con i vostri ascoltatori:

gitHub link

0

Ok questo è quello che ho avuto per farlo funzionare. "soffiare" è fondamentalmente un valore booleano che è vero quando si tiene premuto il pulsante del mouse e falso quando non lo è.

if (blowing) { 
     effectEmitter.start(); 
    } else { 
     effectEmitter.allowCompletion(); 
    } 
Problemi correlati