Makey Makey: no toque el azulejo blanco (3 / 5 paso)

Paso 3: Escribir el código

AQUÍ VIENE EL CÓDIGO PARA EL JUEGO. Se hace en C#.

utilizando el sistema;
utilizando System.Collections.Generic;
utilizando System.ComponentModel;
utilizando System.Data; utilizando System.Drawing;
utilizando System.Linq;
utilizar System.Text;
utilizando System.Threading.Tasks;
utilizando System.Windows.Forms;
utilizando System.Media;

Namespace WindowsFormsApplication1 {clase parcial public Form1: forma {aleatorio rnd = new Random();

azulejos de int [] = new int [4] {2, 1,0,3};
Fila de [] del panel = Panel de nuevo [4];
[] [] Filas del panel = new [] Panel [4];
SoundPlayer un = nuevo SoundPlayer(WindowsFormsApplication1.Properties.Resources._1);
SoundPlayer b = nuevo SoundPlayer(WindowsFormsApplication1.Properties.Resources._2);
SoundPlayer c = new SoundPlayer(WindowsFormsApplication1.Properties.Resources._3);
SoundPlayer d = nuevo SoundPlayer(WindowsFormsApplication1.Properties.Resources._4);
SoundPlayer f = nuevo SoundPlayer(WindowsFormsApplication1.Properties.Resources._5);
Random r = new Random();

Lista de tilesP = nuevo () de la lista;

Form1() pública
{
InitializeComponent();
}

privado void Form1_Load (objeto sender, EventArgs e)
{

esto. Shuffle(tiles);
esto. Superior = true;
esto. FormBorderStyle = FormBorderStyle.None;
esto. WindowState = FormWindowState.Maximized;

int FormHeight = este. Size.Height;
int FormWidth = este. Size.Width;

para (int i = 0; i < 4; i ++) {}
P [] del panel = Panel de nuevo [4];
para (int j = 0; j < 4; j ++)
{

fila [j] = new Panel();

fila [j]. Tamaño = new Size (FormWidth/4, FormHeight/4);
fila [j]. Ubicación = nueva punto de ((i * FormWidth / 4), (j * FormHeight / 4));
fila [j]. BackColor = Color.White;
Si (j == tiles[i]) fila [j]. BackColor = Color.Black;
fila [j]. BorderStyle = BorderStyle.FixedSingle;
esto. Controls.Add(row[j]);
p [j] = fila [j];
}
filas [i] = p;
}

sacar las fichas
}
protegidas override bool ProcessCmdKey (msg mensaje de ref, llaves ID) {}

int FormHeight = este. Size.Height;
int FormWidth = este. Size.Width;

interruptor (ID)
{
caso Keys.A:
{
Si (azulejos [3] == 0)
{
a.Stop();
b.Stop();
c.Stop();
d.Stop();
f.Stop();

a.Play();

Random r = new Random();
int inr = r.Next (0, 4);

int [] s = new int [4];
Array.Copy (azulejos, s, 4);

para (int i = 3; i > 0; i--)
{
fichas [i] = s [i - 1];
}
azulejos [0] = inr;

para (int i = 0; i < 4; i ++)
{
para (int j = 0; j < 4; j ++) {}

Control p = este. GetChildAtPoint (nuevo punto de ((i * FormWidth / 4), (j * FormHeight / 4))); filas [i] [j] = p (Panel);

}}

para (int i = 0; i < 4; i ++)
{

para (int j = 0; j < 4; j ++)
{

filas [i] [j]. Ubicación = nueva ((i * FormWidth / 4) punto, ((j + 1) * FormHeight / 4));

}}

para (int i = 0; i < 4; i ++)
{
filas [i] [0] = new Panel();
filas [i] [0]. Tamaño = new Size (FormWidth/4, FormHeight/4);
filas [i] [0]. Ubicación = nueva ((i * FormWidth / 4) punto, (0 * FormHeight / 4));
filas [i] [0]. BackColor = Color.White;
Si (i == inr) filas [i] [0]. BackColor = Color.Black;
filas [i] [0]. BorderStyle = BorderStyle.FixedSingle;
esto. Controls.Add(rows[i][0]);
}}
otra cosa
{

a.Stop();
b.Stop();
c.Stop();
d.Stop();
f.Stop();
f.Play();

}
verdaderas;

}
caso Keys.S: {}
Si (azulejos [3] == 1)
{

a.Stop();
b.Stop();
c.Stop();
d.Stop();
f.Stop();

b.Play();

int inr = r.Next (0, 4);

int [] s = new int [4];
Array.Copy (azulejos, s, 4);

para (int i = 3; i > 0; i--)

{
fichas [i] = s [i - 1];
} azulejos [0] = inr;

para (int i = 0; i < 4; i ++)
{
para (int j = 0; j < 4; j ++)
{

Control p = este. GetChildAtPoint (nuevo punto de ((i * FormWidth / 4), (j * FormHeight / 4))); filas [i] [j] = p (Panel);

}
}

para (int i = 0; i < 4; i ++)
{
para (int j = 0; j < 4; j ++)
{

filas [i] [j]. Ubicación = nueva ((i * FormWidth / 4) punto, ((j + 1) * FormHeight / 4));

}
}

para (int i = 0; i < 4; i ++)
{
filas [i] [0] = new Panel();
filas [i] [0]. Tamaño = new Size (FormWidth/4, FormHeight/4);
filas [i] [0]. Ubicación = nueva ((i * FormWidth / 4) punto, (0 * FormHeight / 4));
filas [i] [0]. BackColor = Color.White;
Si (i == inr) filas [i] [0]. BackColor = Color.Black;
filas [i] [0]. BorderStyle = BorderStyle.FixedSingle;
esto. Controls.Add(rows[i][0]);
}}
Else {}
a.Stop();
b.Stop();
c.Stop();
d.Stop();
f.Stop();

f.Play();
}

verdaderas;
}
caso Keys.D:
{
Si (azulejos [3] == 2)
{

a.Stop();
b.Stop();
c.Stop();
d.Stop();
f.Stop();

c.Play();

Random r = new Random();
int inr = r.Next (0, 4);

int [] s = new int [4];
Array.Copy (azulejos, s, 4);

para (int i = 3; i > 0; i--)
{
fichas [i] = s [i - 1];
}
azulejos [0] = inr;
para (int i = 0; i < 4; i ++)

{
para (int j = 0; j < 4; j ++)
{

Control p = este. GetChildAtPoint (nuevo punto de ((i * FormWidth / 4), (j * FormHeight / 4))); filas [i] [j] = p (Panel);

}}
para (int i = 0; i < 4; i ++)
{
para (int j = 0; j < 4; j ++)
{

filas [i] [j]. Ubicación = nueva ((i * FormWidth / 4) punto, ((j + 1) * FormHeight / 4));
}}

para (int i = 0; i < 4; i ++)
{
filas [i] [0] = new Panel();

filas [i] [0]. Tamaño = new Size (FormWidth/4, FormHeight/4);
filas [i] [0]. Ubicación = nueva ((i * FormWidth / 4) punto, (0 * FormHeight / 4));

filas [i] [0]. BackColor = Color.White;

Si (i == inr) filas [i] [0]. BackColor = Color.Black;
filas [i] [0]. BorderStyle = BorderStyle.FixedSingle;
esto. Controls.Add(rows[i][0]);
} }
otra cosa
{
a.Stop();
b.Stop();
c.Stop();
d.Stop();
f.Stop();

f.Play();
}

verdaderas;
} / / hasta tecla de flecha
caso Keys.F: {}
Si (azulejos [3] == 3)
{

a.Stop();
b.Stop();

c.Stop();
d.Stop();
f.Stop();

d.Play();

Random r = new Random();
int inr = r.Next (0, 4);

int [] s = new int [4];
Array.Copy (azulejos, s, 4);

para (int i = 3; i > 0; i--)
{
fichas [i] = s [i - 1];
}
azulejos [0] = inr;

para (int i = 0; i < 4; i ++)
{
para (int j = 0; j < 4; j ++)
{

Control p = este. GetChildAtPoint (nuevo punto de ((i * FormWidth / 4), (j * FormHeight / 4)));
filas [i] [j] = p (Panel);
}}

para (int i = 0; i < 4; i ++)
{
para (int j = 0; j < 4; j ++)
{

filas [i] [j]. Ubicación = nueva ((i * FormWidth / 4) punto, ((j + 1) * FormHeight / 4));

}}

para (int i = 0; i < 4; i ++)
{
filas [i] [0] = new Panel();
filas [i] [0]. Tamaño = new Size (FormWidth/4, FormHeight/4);
filas [i] [0]. Ubicación = nueva ((i * FormWidth / 4) punto, (0 * FormHeight / 4));
filas [i] [0]. BackColor = Color.White;
Si (i == inr) filas [i] [0]. BackColor = Color.Black;
filas [i] [0]. BorderStyle = BorderStyle.FixedSingle;
esto. Controls.Add(rows[i][0]);
} }
otra cosa
{
a.Stop();
b.Stop();
c.Stop();
d.Stop();
f.Stop();
f.Play();

}
verdaderas;

} }

vuelta de base. ProcessCmdKey (msg ref, ID);
}
void Shuffle (matriz de T [])
{
int n = array. Longitud; para (int i = 0; i < n; i ++)
{
NextDouble devuelve un número aleatorio entre 0 y 1.
// ... Es equivalente a Math.RANDOM en Java.
int r = i + (int) (rnd. NextDouble() * (n - me));
T t = matriz [r];
matriz [r] = matriz [i];
matriz [i] = t;
} } } }

Artículos Relacionados

Renovación de la cocina con un presupuesto

Renovación de la cocina con un presupuesto

Bueno, mi esposa y yo compramos una casa y la cocina necesita ser traído de los años 80 y en el siglo XXI, pero no tenemos $10-15 k para pasar a un profesional para hacerlo. Este es nuestro intento de conseguir lo mejor que posible con unos $2000-300
HORNO de leña

HORNO de leña

En primer lugar, mi idioma es el español y el traductor de google lo traduce al inglés, así que pido perdón por las faltas de ortografía y narrativa...MATERIALES UTILIZADOS:• Puerta de horno quemador puerta • termómetro • 1 metro tubo • campana de ac
3D ajedrez Vertical

3D ajedrez Vertical

Tengo que darle crédito a la idea de ajedrez vertical "brooklyntonia" y dave.vaness.79, ambos de los cuales me inspiraron para construir mi propio tablero, por lo que puede comprobar hacia fuera sus instructables así.En primer lugar, tuve alguna
Vivo tamaño juego de operación

Vivo tamaño juego de operación

mi esposo y yo desafió nuestro ser haciendo una operación de tamaño directo del juego que efectivamente trabajadas.  Nos encantó este juego cuando éramos niños, por lo que le dio un tiro y estaban muy orgullosos del resultado.Paso 1: Empezar con algo
Sliding Puzzle Secret Compartment Table

Sliding Puzzle Secret Compartment Table

El deslizamiento rompecabezas secreto compartimento mesa es una idea que he lanzando alrededor durante algún tiempo.  Siempre he disfrutado de rompecabezas, carpintería y compartimentos secretos y este proyecto combina los tres en una forma interesan
Domino Rally falla y cómo evitar que

Domino Rally falla y cómo evitar que

Cuando muchas personas piensan de dominó, piensa en el juego con puntos pequeños en los azulejos blancos. Es no lo que estoy hablando en este artículo. Estoy hablando de domino Rally, los que configurar en el borde y luego derribar, hacer un espectác
Retroiluminada LED Lightbox muestra

Retroiluminada LED Lightbox muestra

Hola otra vez,Ahora vamos a hacer un profesional LED lightbox retroiluminado para cualquier logotipo, nombre comercial o diseño que puedas imaginar. ¿Se ha hecho antes? Sí por supuesto, es un concepto antiguo que se puede crear de muchas maneras. ¿Po
Preservación de la naturaleza con pintura en aerosol... Realmente!

Preservación de la naturaleza con pintura en aerosol... Realmente!

Pintura en aerosol es uno de los mayor embellecimiento y ahorro de tiempo medios jamás inventados.En la mano derecha, pintura de aerosol puede convertir un aparador de Patito feo en una reliquia. Puede transformar una hoja de cartulina en una obra ma
Alicia en el país de las maravillas "Hablando de pomo" molde

Alicia en el país de las maravillas "Hablando de pomo" molde

«Lo sentimos, eres demasiado grande, simplemente infranqueable.» "Quieres decir imposible?" "No, infranqueable! Nada es imposible"Aquí te ande en mi proceso de elaboración de la perilla de la puerta hablando desde cero.Te hace falta:Ac
Beber posavasos - Tutorial DIY

Beber posavasos - Tutorial DIY

¿Pensó alguna vez en crear tus propios posavasos? Bueno, aquí es cómo!Precio: 1 a 5$ || Tiempo: 1-3 h || Dificultad: fácilPaso 1: Lo que usted necesitaPara este proyecto necesitarás:Servilletas o imágenes impresas (en papel normal de impresora)Pegame
Presupuesto reforma de lavandería

Presupuesto reforma de lavandería

nuestro lavadero ha sido una vergüenza para los últimos diez años con sus estantes desordenados, bostezo huecos detrás de la lavadora y secadora, fregadero desordenado y gabinetes oscuros, sórdidos. Bueno, finalmente decidieron hacer algo al respecto
Lilly Pulitzer posavasos

Lilly Pulitzer posavasos

DIY Lilly Pulitzer posavasosFuentes:-Lilly Pulitzer Agenda (otros otra fuente de Lilly Pulitzer impresiones sobre papel)-Azulejos blancos llanos-Mod Podge-Pincel-bolsas de papel de periódico/marrón (para cubrir el espacio de trabajo)TIP: si no eres u
Posavasos de cerveza

Posavasos de cerveza

Hice un montón de estos tipos poco para regalar a todos nuestros huéspedes en nuestra fiesta de Navidad. Fueron un gran éxito. Incluso tuve varios extra para esos regalos de última hora. Tan fácil y realmente puede usar cualquier tipo de cartón, pape
LEGO retráctil de carga ver. estación 2

LEGO retráctil de carga ver. estación 2

Producto final: LEGO retráctil carga estación versión 2Diseñé esta versión 2 se parecen más a un edificio de oficinas con teléfono, estacionamiento en el techo.Una 4-Port 40W 8A USB estación de carga de piezas de Lego. Esta estación de carga consiste