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


Tema destacado: Recopilación de Tutoriales y Manuales del blog ordenados por categorías


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Construir pirámide inversa, o parecido.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Construir pirámide inversa, o parecido.  (Leído 58 veces)
Tachikomaia


Desconectado Desconectado

Mensajes: 1.740


Hackentifiko!


Ver Perfil
Construir pirámide inversa, o parecido.
« en: Ayer a las 21:16 »

Insertando este objeto

al que llamo Mini (luego le pondré Vigas o algo mejor)
construí 2 pisos así

Vean que el piso 1 tiene 1 hueco y son 2 plataformas,
mientras que el piso 0 tiene 0 huecos y es 1 plataforma.

Pero a partir del piso 2 quiero que la fórmula sea P huecos y P-1 plataformas, entendiendo que P es el nro de piso.
El piso 2 sería H P H
O sea, a partir de eso, siempre debe haber huecos en los costados.
El piso 3 tendrá 1 hueco más y 1 plataforma más, y así sucesivamente.

Con el código que puse para el piso 2 y siguientes, me quedó así:

Quiero que me ayuden a mejorarlo, como dije es a partir del piso 2, los anteriores ya están bien, creados de una forma más simple.
Código
  1. // Pisos siguientes: P huecos, P-1 plataformas:
  2. Piso = 1;
  3. // Agregar piso:
  4. do {
  5. Piso++;
  6. NombreDePiso = "Piso"+Piso;
  7. attachMovie("sDKPlataformas", NombreDePiso, Piso);
  8. setProperty (NombreDePiso, _x, 16);
  9. setProperty (NombreDePiso, _y, 568-18*Piso);
  10. MinisNecesariosEnPlataforma = (23-Piso)/(Piso-1);
  11. // Agregar Plataformas:
  12. PlataformasEnPiso = 0;
  13. do {
  14. NombreDePlataformas = "Plataformas"+PlataformasEnPiso;
  15. eval(NombreDePiso).attachMovie("sDKPlataformas", NombreDePlataformas, PlataformasEnPiso);
  16. RutaDePlataformas = NombreDePiso+"."+NombreDePlataformas;
  17. setProperty (RutaDePlataformas, _x, 32*MinisNecesariosEnPlataforma*PlataformasEnPiso+(PlataformasEnPiso)*32);
  18. // Agregar Minis:
  19. MinisEnPlataformas = 0;
  20. // Para evitar reconcatenar; p se entiende como punto:
  21. RutaDePlataformasp = RutaDePlataformas+".";
  22. do {
  23. NombreDeMini = "Mini"+MinisEnPlataformas;
  24. eval(RutaDePlataformas).attachMovie("sDKPlataforma", NombreDeMini, MinisEnPlataformas);
  25. setProperty (RutaDePlataformasp+NombreDeMini, _x, 32*MinisEnPlataformas);
  26. MinisEnPlataformas++;
  27. } while (MinisEnPlataformas <= MinisNecesariosEnPlataforma);
  28. PlataformasEnPiso++;
  29. } while (PlataformasEnPiso <= Piso);
  30. } while (Piso < 29);

En cuanto a por qué hacerlo de este modo, es que intento que cuando Mario salte se pueda chequear cada plataforma del piso que corresponda, otro modo sería crear los pisos enteros así nomás y taparlos con objetos del mismo color de fondo, quedaría como si fuesen agujeros, sería más fácil, pero el tema de chequear colisiones no sé si se facilita, además es como mal eso, los minis están ahí tapados, mejor que no estén.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[DUDA][SUGERENCIAS]Programa Parecido a Gobby o servicio parecido a Sync.in
Programación General
RyogiShiki 0 4,069 Último mensaje 5 Abril 2011, 03:56 am
por RyogiShiki
Una pirámide de codicia
Noticias
wolfbcn 0 2,375 Último mensaje 6 Julio 2014, 22:21 pm
por wolfbcn
PIRAMIDE
Programación C/C++
mariano96 4 5,346 Último mensaje 13 Febrero 2015, 19:10 pm
por mariano96
ayuda con una pirámide
Programación C/C++
Exynoz 4 6,224 Último mensaje 3 Abril 2016, 21:53 pm
por Exynoz
piramide de numeros
Programación C/C++
mitzi 3 3,631 Último mensaje 23 Septiembre 2018, 18:09 pm
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines