Il nuovo valore di square.width e square.height viene assegnato anche se non lo metti in una funzione ENTER_FRAME e lo vedi direttamente sullo stage con le ultime dimensioni assegnate in ordine cronologico.Originariamente inviato da gandall
Non capisco perchè l'enter_frame anche se viene letto 24 volte al secondo alla fine non assegni il nuovo valore, mi sfugge qualcosa
Se il tuo MC 'square' è sullo stage con le dimensioni di 100 x 100 e scrivi:
Quello che vedrai sullo stage sarà un MC di 50 x 50 ovvero le dimensioni che gli hai assegnato alla fine del codice perchè il tutto viene letto in una frazione di secondo.Codice PHP:square.width = 90;
square.height = 90;
square.width = 80;
square.height = 80;
square.width = 50;
square.height = 50;
Non vedi variazioni nei tuoi trace perchè tra il trace iniziale e quello finale non passa nemmeno il tempo di un ENTER_FRAME anche se ce ne sono 24 in 1 secondo.
Fai così e vedi che il trace ti restituisce il valore esatto:
Il tuo codice per fare il bordo lo puoi mettere subito dopo il ridimensionamento del clip senza necessariamente usare l' ENTER_FRAMECodice PHP:trace("prima del ridimensionamento="+square.width,square.height); // 100 100
square.width = 90;
square.height = 90;
square.width = 80;
square.height = 80;
square.width = 50;
square.height = 50;
trace("dopo il ridimensionamento="+square.width,square.height); // 50 50
dato che questo scatta comunque anche senza mettere un Listener che monitorizza l'evento:
Codice PHP:square.width = 50
square.height = 50
graphics.lineStyle(10,0x000000);
graphics.moveTo(square.x,square.y);
graphics.lineTo(square.x+square.width,square.y);
graphics.lineTo(square.x+square.width,square.y+square.height);
graphics.lineTo(square.x,square.y+square.height);
graphics.lineTo(square.x,square.y)
ciao

Rispondi quotando