Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Parchís

Iniciado por vincent, 26 de Febrero de 2007, 12:19:07 PM

« anterior - próximo »

vincent

Muy buenas,

para iniciarme un poco con el XNA de Microsoft, estoy pensando en hacer un parchís con un colega.

Mi duda surge a la hora de implementar el tablero. Que seria mejor, un solo sprite y hacer cálculos para determinar en qué casilla estoy o hacer un sprite por casilla y currarme un "mapa" con todas las coordenadas de los sprites?

Gracias!
Desarrollo en .Net y metodologías http://devnettips.blogspot.com

Lex


er_willy

sepi, voto por el sprite unico para dominarlos a todos.

Harko

Si quieres, aparte de usar el sprite de fondo, puedes utilizar un mapa de texturas para ir señalandote cada casilla a la que tienes que mover cada ficha.

O guardarte las coordenadas de cada casilla e ir colocando ahi las fichas, solo necesitarias saber el numero de la ficha y el de la casilla a la que va.

Seguro que hay mas formas de hacerlo, por ahora se me han ocurrido esas.

Harko.
-=Harko´s Blog=-
Fui el primer civil en probar el "Lord of Creatures" y ademas usaban mis cascos. :D

-=Portfolio=-

Alguno de mis juegos:
-=Feed The Frog=-

Neroncity

vincent

Vale, pues provaré lo de un solo sprite e ir calculando la casilla a pelo.

Ya os iremos contando!

Por cierto, que por lo poquito que he provado, esto del XNA está muy bien.

Un saludo
Desarrollo en .Net y metodologías http://devnettips.blogspot.com

1cacalvo

Que casualidad, yo tb estaba pensando en hacerme un Parchis pero con Ogre y C++..

Ya que con mis amigo solemos jugar por las tardes un par de partiditas, pero jugandonos los eurillos...  :D

Yoshis

Si si definitivamente un solo sprite y almacenando las coordenadas de las casillas a pelo :P El parchís puede parecer fácil a primera vista pero no lo es tanto... no como un ajedrez... pero supongo q tiene mucha regla y eso obliga a poner unos cuantos ifs q hasta q no llega el momento no te planteas poner. Un colega mio estuvo con ello y la cosa se alargo mas de lo q pensabamos. Tienes pensado complicarte en plan.. meterle opción de 2 dados.. o hacerlo en red?

vincent

Bueno, en principio lo hago para aprender XNA, así que de momento será con un solo dado y sin opción de red. Si implemento algo de esto supongo que seria el tema de la red.
Desarrollo en .Net y metodologías http://devnettips.blogspot.com

1cacalvo

Un apuntillo, como tienes implementadas las casillas del parchis?, me explico:

Cuando sumas una tirada a una ficha en concreto como controlas que no se pase del rango, es decir si estas en la casilla 66 y saquas un 4 te vas a la casilla 2 (no a la 70:S)

Tienes un tipo de estructura o lo controlas directamente con un if tipo

if ((ficha.casilla + tirada) > 68){
  ficha.casilla = ficha.casilla - 68;
}

Helius

Cita de: "1cacalvo"
if ((ficha.casilla + tirada) > 68){
  ficha.casilla = ficha.casilla - 68;
}

ficha.casilla = (ficha.casilla + tirada) % 68;

Mejor ¿no? Aunque se puede hacer de mil maneras...

Yo también apostaría por un sólo sprite y mapearte de alguna manera lógica los movimientos en el tablero.

Saludos.
Geardome Devlog
Tutoriales sobre DirectX 9, Nintendo DS y PSP.

1cacalvo

Mas que a la forma de mapear las fichas en el tablero, me referia a una estructura para guardar almacenar las casillas (aparte del apartado grafico), por ejemplo para saber que casillas estan ocupadas, para programar una futura IA (comidas y todo esto), donde hay barreras...

Ahora mismo (esta en un estado mu mu inicial) cada ficha sabe en que casilla esta, pero la clase game tendria ke recorrer a todos los jugadores, y a todas las fichas de esto para saber si hay alguien ya en esa casilla...

No se si me he explicado bien :s

tamat

Tener una clase Escena siempre es muy util, una clase que lo sepa TODO sobre el estado de la partida, que le puedas preguntar cosas como - fichas rojas en el tablero - o - quien está en la posicion 10 -, etc.

Agiliza mucho luego programar la logica de la partida.
Por un stratos menos tenso

1cacalvo

Bueno yo tengo una clase Game que haria las funciones de Scene...

Y como estructura para representar todas las casillas del parchis he elegido algo como esto...


struct Casilla
   {
     Casilla (int numCas, int idFich1, int idCol1, int idFich2, int idCol2) :
       numCasilla(numCas), idFicha1(idFich1), idColor1(idCol1), idFicha2(idFich2), idColor2(idCol2) {}

     Casilla() : numCasilla(-1), idFicha1(-1), idColor1(-1), idFicha2(-1), idColor2(-1){}
     

     int numCasilla;
     bool seguro;
     int idFicha1;
     int idColor1;
     int idFicha2;
     int idColor2;
     
   };

std::vector<Casilla> casillas(68);


A la Struc le implementare alguna función para agilizar cosas como barreras, y comidas o lo que se me vaya ocurriendo...

Otra pregunta como se puede llegar a la conclusión de saber si es mas optima declarar Casilla como Struct o como Class???

Hay alguna estructura ke sea mas optima para este caso???






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.