Hola a todos, llevaba un tiempo buscando un foro en donde registrarme, para poder resolver las mis dudas, y en la medida de lo posible, resolver las de otra gente que esté como yo. Mi duda es la siguiente, para clase y como proyecto de final de curso, estamos creando individualmente un remake de un juego elegido por nosotros del Amstrad CPC, yo elegí el Trivial, cosa de la que me arrepiento cada día, ya que lo que hemos hecho siempre son juego tipo Death Pit, con un personaje y varios enemigos que se mueven, pero nada como lo que yo he elegido, y ya me he encontrado con el primer problema.
Lo que quiero hacer es que si se pulsa la tecla espacio, una función cree un número aleatorio al azar entre 1 y 6 con el fin de simular un dado, y que me aparezca en la pantalla una imagen con la cara del dado correspondiente al número aleatorio que ha salido. Bien, eso ya lo tengo hecho dentro de una clase, pero ahora no sé cómo acceder a esos dos métodos desde otra clase que es la de la partida, con el fin de que se usen los métodos de mi clase dado.
Esta es mi clase dado:
Código csharp:
Ver originalpublic void Lanzar()
{
Random r
= new Random
(DateTime
.Now.Millisecond); aleatorio = (short) r.Next(1, 6);
}
public void Dibujar()
{
//Dibujamos el dado en la pantalla oculta
switch (aleatorio)
{
case 1: //Sale 1
dado1.DibujarOculta(0, 0);
break;
case 2: //Sale 2
dado2.DibujarOculta(0, 0);
break;
case 3: //Sale 3
dado3.DibujarOculta(0, 0);
break;
case 4: //Sale 4
dado4.DibujarOculta(0, 0);
break;
case 5: //Sale 5
dado5.DibujarOculta(0, 0);
break;
case 6: //Sale 6
dado6.DibujarOculta(0, 0);
break;
}
}
Y esto es lo que quiero hacer en la clase partida para que acceda a los dos métodos de arriba
Código csharp:
Ver originalvoid comprobarTeclas()
{
if (Hardware.TeclaPulsada(Hardware.TECLA_ESP))
{
Dado.Lanzar();
lanzar = true;
}
void dibujarElementos()
{
// Borro pantalla
Hardware.BorrarPantallaOculta(0,0,0);
//Dibujo el dado
if (lanzar == true)
Dado.Dibujar();
// Finalmente, muestro en pantalla
Hardware.VisualizarOculta();
}
Esto ha sido lo único que se me ha ocurrido, y el compilador me dice que se requiere una referencia de objeto para el campo, método o propiedad no estáticos para los dos métodos.
En fin si alguien puede ayudarme, se lo agradeceré enormemente.