elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ¿Cómo programo una luz expandiéndose?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Cómo programo una luz expandiéndose?  (Leído 1,633 veces)
Tachikomaia


Desconectado Desconectado

Mensajes: 1.217


Superhacker (es broma xD )


Ver Perfil
¿Cómo programo una luz expandiéndose?
« en: 17 Octubre 2023, 09:40 am »

Llevo un tiempo sin lograr que quede bien, de momento lo tengo así:
https://drive.google.com/file/d/1jCTOuhgsoF67vv1P7_uVp-aIHqtXLHSW/view?usp=sharing

Funciona lento porque mi PC se enlentece por muchas transparencias, más aún si está grabando.
No sé por qué al agregar algo con transparencia, lo que está debajo se vuelve transparente, parece.

Lo que quiero es que la luz se vaya expandiendo, hasta que la pantalla quede totalmente roja, pero que la expansión sea con transparencia en los extremos.

Funciona así (marco en negrita donde empieza lo relevante porque lo demás dudosamente lo sea):
Cuando se señala donde estaría la luz roja del semáforo, se enciende un poco.

Cuando se cliquea, más, pero en este caso se inserta una imagen, porque de la forma fácil puede ocurrir un bug, así lo evito.

Cuando se suelta el botón, la imagen es sustituída por otra, de la misma manera. También aparece un objeto que tiene:
Código
  1. onClipEvent (load) {
  2. N = 0;
  3. }
  4. onClipEvent (enterFrame) {
  5. N = N+1;
  6. Opacidad = 100-N*2.5;
  7. if (Opacidad>0) {
  8. attachMovie("LuzRojaB", "Light"+N, N);
  9. setProperty ("Light"+N, _xscale, 100+N*N);
  10. setProperty ("Light"+N, _yscale, 100+N*N);
  11. setProperty ("Light"+N, _alpha, Opacidad);
  12. }
  13. }
Significa que al cargarse se define una variable.

Luego, la 1era vez que transcurre un frame (cierto tiempo), la imagen es removida (eso no está en el código ese) porque sino queda encima de todo (se podría insertar sin que ocurra eso pero según sé esta es la mejor forma de hacerlo, no hay problema), y empieza a ejecutarse el código que está debajo de "enterframe", cada vez que transcurra un frame.
La Opacidad va disminuyendo, pero sólo debería aplicarse a las imágenes que van a insertarse, no a las que ya se insertaron.
Si la Opacidad es >0, es decir, si la imagen no será totalmente transparente, entonces se inserta.
attachMovie("LuzRojaB", "Light"+N, N);
=
InsertarImagen(Cual, NuevoNombre, CuanEncima).
...
Lo demás es hacer que la imagen insertada sea cada vez más grande y menos opaca o más transparente.

La opacidad de las imágenes ya insertadas no cambia porque cambie la variable, eso ya lo comprobé. Lo que hace la última línea es especificar la opacidad de la imagen que se está insertando, y al igual que las demás queda así hasta que se especifique un nuevo valor para ella. El hecho de que, efectivamente cambien debe ser por un bug o algo que no entiendo, pero no sé si ese es el problema.


« Última modificación: 17 Octubre 2023, 09:47 am por Tachikomaia » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Como programo y/o leo un microcontrolador motorola de 44 pines, 68HC70SC9ACFN
Electrónica
wolf_then 1 2,612 Último mensaje 1 Febrero 2005, 07:41 am
por cracking
¿Cómo programo un datagrid sin datasource?
Programación Visual Basic
alvaroguillen 0 2,145 Último mensaje 24 Mayo 2009, 23:10 pm
por alvaroguillen
como programo PIC16F84A con PICKIT2?
Electrónica
Lalooh 8 21,164 Último mensaje 31 Diciembre 2011, 00:18 am
por skapunky
Como programo esto en arduino?
Electrónica
JCRb 6 5,508 Último mensaje 2 Diciembre 2014, 10:07 am
por JCRb
¿En qué CMS programo esta web?
Desarrollo Web
eduwebs 4 2,279 Último mensaje 28 Julio 2015, 03:28 am
por ElInquisidor
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines