PUN_VN
03-03-2009, 20:42
Đoạn code dưới bị lỗi, mong anh chị nào pro giúp em với.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace QuickSpark
{
public partial class Form1 : Form
{
int[] com; //mảng 4 lá bài của comp
int[] player; // # # player
int[] among; //mảng 4 lá bài ở giữa
int[] updw; //mảng 4 mũi tên up down
int countp = 20; //số lá bài của player, mặc định 20 lá
int countc = 20; //số lá bài của comp, mặc định 20 lá
Random r = new Random();
public Form1()
{
InitializeComponent();
}
public void mang() //chú í public để xài sau này
{
player = new int[4];
among = new int[4];
updw = new int[4];
com = new int[4];
}
private void pictureBox7_Click(object sender, EventArgs e)
{
among[0] = r.Next(13) + 1;
doihinh(among[0], pictureBox8);
among[1] = r.Next(13) + 1;
doihinh(among[1], pictureBox9);
among[2] = r.Next(13) + 1;
doihinh(among[2], pictureBox10);
among[3] = r.Next(13) + 1;
doihinh(among[3], pictureBox11);
//playfile("click.wav");
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
label2.Text = "20"; //mặc định hiển thị 20 lá bài cho player
label4.Text = "20";
timer1.Enabled = true; //enable timer và cho nó run
timer1.Start();
timer2.Enabled = true;
timer2.Start();
timer3.Enabled = true;
timer3.Start();
pictureBox2.Visible = true; //hiển thị 4 nút up down ra
pictureBox17.Visible = true;
pictureBox18.Visible = true;
pictureBox19.Visible = true;
player[0] = r.Next(13) + 1; (NÓ BỊ LỖI NGAY ĐÂY NÈ)
doihinh(player[0], pictureBox13); //kiểm tra trường hợp lấy hình phía dưới
player[1] = r.Next(13) + 1;
doihinh(player[1], pictureBox14);
player[2] = r.Next(13) + 1;
doihinh(player[2], pictureBox15);
player[3] = r.Next(13) + 1;
doihinh(player[3], pictureBox16);
pictureBox13.Image = System.Drawing.Image.FromFile("baixap.PNG"); //mặc định cho lá bài của comp là sấp
pictureBox14.Image = System.Drawing.Image.FromFile("baixap.PNG");
pictureBox15.Image = System.Drawing.Image.FromFile("baixap.PNG");
pictureBox16.Image = System.Drawing.Image.FromFile("baixap.PNG");
among[0] = r.Next(13) + 1; //đổi hình 4 lá giữa
doihinh(among[0], pictureBox8);
among[1] = r.Next(13) + 1;
doihinh(among[1], pictureBox9);
among[2] = r.Next(13) + 1;
doihinh(among[2], pictureBox10);
among[3] = r.Next(13) + 1;
doihinh(among[3], pictureBox11);
countc = 20; //mặc định 20 bài khi bắt đầu chơi của comp và player
countp = 20;
pictureBox1.Image = Image.FromFile("baixap.PNG");
pictureBox12.Image = Image.FromFile("baixap.PNG");
}
void doihinh(int n, PictureBox p) //cho 13 trường hợp 13 tấm hình, random zo TH nào thì lấy tấm đó
{
switch (n)
{
case 1: p.Image = System.Drawing.Image.FromFile("gia-co.PNG"); break;
case 2: p.Image = System.Drawing.Image.FromFile("gia-chuon.PNG"); break;
case 3: p.Image = System.Drawing.Image.FromFile("gia-bich.PNG"); break;
case 4: p.Image = System.Drawing.Image.FromFile("gia-ro.PNG"); break;
case 5: p.Image = System.Drawing.Image.FromFile("dam-co.PNG"); break;
case 6: p.Image = System.Drawing.Image.FromFile("dam-ro.PNG"); break;
case 7: p.Image = System.Drawing.Image.FromFile("dam-chuon.PNG"); break;
case 8: p.Image = System.Drawing.Image.FromFile("dam-bich.PNG"); break;
case 9: p.Image = System.Drawing.Image.FromFile("boi-co.PNG"); break;
case 10: p.Image = System.Drawing.Image.FromFile("boi-ro.PNG"); break;
case 11: p.Image = System.Drawing.Image.FromFile("boi-chuon.PNG"); break;
case 12: p.Image = System.Drawing.Image.FromFile("boi-bich.PNG"); break;
case 13: p.Image = System.Drawing.Image.FromFile("2-co.PNG"); break;
}
}
private void label2_Click(object sender, EventArgs e)
{
}
private void timer1_Tick(object sender, EventArgs e)
{
updw[0] = r.Next(2) + 1;
doihinh1(updw[0], pictureBox2);
updw[1] = r.Next(2) + 1;
doihinh1(updw[1], pictureBox17);
updw[2] = r.Next(2) + 1;
doihinh1(updw[2], pictureBox18);
updw[3] = r.Next(2) + 1;
doihinh1(updw[3], pictureBox19);
}
void doihinh1(int upd, PictureBox p2)
{
switch (upd)
{
case 1: p2.Image = System.Drawing.Image.FromFile("up.PNG"); break;
case 2: p2.Image = System.Drawing.Image.FromFile("down.PNG"); break;
}
}
private void pictureBox3_Click(object sender, EventArgs e)
{
if (player[0] == among[0] + 1 && updw[0] == 1)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav"); //thêm sound vào
}
if (player[0] == among[0] - 1 && updw[0] == 2)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav");
}
}
private void pictureBox4_Click(object sender, EventArgs e)
{
if (player[0] == among[0] + 1 && updw[0] == 1)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav"); //thêm sound vào
}
if (player[0] == among[0] - 1 && updw[0] == 2)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav");
}
}
private void pictureBox5_Click(object sender, EventArgs e)
{
if (player[0] == among[0] + 1 && updw[0] == 1)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav"); //thêm sound vào
}
if (player[0] == among[0] - 1 && updw[0] == 2)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav");
}
}
private void pictureBox6_Click(object sender, EventArgs e)
{
if (player[0] == among[0] + 1 && updw[0] == 1)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav"); //thêm sound vào
}
if (player[0] == among[0] - 1 && updw[0] == 2)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav");
}
}
private void timer2_Tick(object sender, EventArgs e)
{
if (com[0] == among[0] - 1 && updw[0] == 1)
{
among[0] = com[0];
doihinh(among[0], pictureBox8);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false; //tắt nút FLIP nếu comp ăn bài
}
else if (com[0] == among[0] + 1 && updw[0] == 2)
{
among[0] = com[0];
doihinh(among[0], pictureBox8);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false;
}
else if (com[0] == among[0] - 1 && updw[0] == 1)
{
among[0] = com[0];
doihinh(among[0], pictureBox9);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false; //tắt nút FLIP nếu comp ăn bài
}
else if (com[0] == among[0] + 1 && updw[0] == 2)
{
among[0] = com[0];
doihinh(among[0], pictureBox9);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false;
}
else if (com[0] == among[0] - 1 && updw[0] == 1)
{
among[0] = com[0];
doihinh(among[0], pictureBox10);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false; //tắt nút FLIP nếu comp ăn bài
}
else if (com[0] == among[0] + 1 && updw[0] == 2)
{
among[0] = com[0];
doihinh(among[0], pictureBox10);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false;
}
else if (com[0] == among[0] - 1 && updw[0] == 1)
{
among[0] = com[0];
doihinh(among[0], pictureBox11);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false; //tắt nút FLIP nếu comp ăn bài
}
else if (com[0] == among[0] + 1 && updw[0] == 2)
{
among[0] = com[0];
doihinh(among[0], pictureBox11);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false;
}
else
{
label1.Visible = false; //tắt chử MOVE
pictureBox7.Visible = true; //bật nút FLIP nếu comp bí
}
label4.Text = countc.ToString();
}
private void timer3_Tick(object sender, EventArgs e)
{
if (countc == 0)
{
timer1.Stop();
timer2.Stop();
timer3.Stop();
pictureBox12.Image = Image.FromFile("1-ro.PNG"); //đổi lá bài đại diện cho comp
pictureBox1.Image = Image.FromFile("1-chuon.PNG");
//playfile("win.wav"); //phát nhạc khi có người win
MessageBox.Show("You Lose...T_T", "Bad");
}
else if (countp == 0)
{
timer1.Stop();
timer2.Stop();
timer3.Stop();
pictureBox12.Image = Image.FromFile("donedeck.gif");
pictureBox1.Image = Image.FromFile("donedeck.gif");
//playfile("win.wav");
MessageBox.Show("You Win ^_^", "Happy");
}
}
private void pictureBox1_Click(object sender, EventArgs e)
{
}
private void pictureBox8_Click(object sender, EventArgs e)
{
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace QuickSpark
{
public partial class Form1 : Form
{
int[] com; //mảng 4 lá bài của comp
int[] player; // # # player
int[] among; //mảng 4 lá bài ở giữa
int[] updw; //mảng 4 mũi tên up down
int countp = 20; //số lá bài của player, mặc định 20 lá
int countc = 20; //số lá bài của comp, mặc định 20 lá
Random r = new Random();
public Form1()
{
InitializeComponent();
}
public void mang() //chú í public để xài sau này
{
player = new int[4];
among = new int[4];
updw = new int[4];
com = new int[4];
}
private void pictureBox7_Click(object sender, EventArgs e)
{
among[0] = r.Next(13) + 1;
doihinh(among[0], pictureBox8);
among[1] = r.Next(13) + 1;
doihinh(among[1], pictureBox9);
among[2] = r.Next(13) + 1;
doihinh(among[2], pictureBox10);
among[3] = r.Next(13) + 1;
doihinh(among[3], pictureBox11);
//playfile("click.wav");
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
label2.Text = "20"; //mặc định hiển thị 20 lá bài cho player
label4.Text = "20";
timer1.Enabled = true; //enable timer và cho nó run
timer1.Start();
timer2.Enabled = true;
timer2.Start();
timer3.Enabled = true;
timer3.Start();
pictureBox2.Visible = true; //hiển thị 4 nút up down ra
pictureBox17.Visible = true;
pictureBox18.Visible = true;
pictureBox19.Visible = true;
player[0] = r.Next(13) + 1; (NÓ BỊ LỖI NGAY ĐÂY NÈ)
doihinh(player[0], pictureBox13); //kiểm tra trường hợp lấy hình phía dưới
player[1] = r.Next(13) + 1;
doihinh(player[1], pictureBox14);
player[2] = r.Next(13) + 1;
doihinh(player[2], pictureBox15);
player[3] = r.Next(13) + 1;
doihinh(player[3], pictureBox16);
pictureBox13.Image = System.Drawing.Image.FromFile("baixap.PNG"); //mặc định cho lá bài của comp là sấp
pictureBox14.Image = System.Drawing.Image.FromFile("baixap.PNG");
pictureBox15.Image = System.Drawing.Image.FromFile("baixap.PNG");
pictureBox16.Image = System.Drawing.Image.FromFile("baixap.PNG");
among[0] = r.Next(13) + 1; //đổi hình 4 lá giữa
doihinh(among[0], pictureBox8);
among[1] = r.Next(13) + 1;
doihinh(among[1], pictureBox9);
among[2] = r.Next(13) + 1;
doihinh(among[2], pictureBox10);
among[3] = r.Next(13) + 1;
doihinh(among[3], pictureBox11);
countc = 20; //mặc định 20 bài khi bắt đầu chơi của comp và player
countp = 20;
pictureBox1.Image = Image.FromFile("baixap.PNG");
pictureBox12.Image = Image.FromFile("baixap.PNG");
}
void doihinh(int n, PictureBox p) //cho 13 trường hợp 13 tấm hình, random zo TH nào thì lấy tấm đó
{
switch (n)
{
case 1: p.Image = System.Drawing.Image.FromFile("gia-co.PNG"); break;
case 2: p.Image = System.Drawing.Image.FromFile("gia-chuon.PNG"); break;
case 3: p.Image = System.Drawing.Image.FromFile("gia-bich.PNG"); break;
case 4: p.Image = System.Drawing.Image.FromFile("gia-ro.PNG"); break;
case 5: p.Image = System.Drawing.Image.FromFile("dam-co.PNG"); break;
case 6: p.Image = System.Drawing.Image.FromFile("dam-ro.PNG"); break;
case 7: p.Image = System.Drawing.Image.FromFile("dam-chuon.PNG"); break;
case 8: p.Image = System.Drawing.Image.FromFile("dam-bich.PNG"); break;
case 9: p.Image = System.Drawing.Image.FromFile("boi-co.PNG"); break;
case 10: p.Image = System.Drawing.Image.FromFile("boi-ro.PNG"); break;
case 11: p.Image = System.Drawing.Image.FromFile("boi-chuon.PNG"); break;
case 12: p.Image = System.Drawing.Image.FromFile("boi-bich.PNG"); break;
case 13: p.Image = System.Drawing.Image.FromFile("2-co.PNG"); break;
}
}
private void label2_Click(object sender, EventArgs e)
{
}
private void timer1_Tick(object sender, EventArgs e)
{
updw[0] = r.Next(2) + 1;
doihinh1(updw[0], pictureBox2);
updw[1] = r.Next(2) + 1;
doihinh1(updw[1], pictureBox17);
updw[2] = r.Next(2) + 1;
doihinh1(updw[2], pictureBox18);
updw[3] = r.Next(2) + 1;
doihinh1(updw[3], pictureBox19);
}
void doihinh1(int upd, PictureBox p2)
{
switch (upd)
{
case 1: p2.Image = System.Drawing.Image.FromFile("up.PNG"); break;
case 2: p2.Image = System.Drawing.Image.FromFile("down.PNG"); break;
}
}
private void pictureBox3_Click(object sender, EventArgs e)
{
if (player[0] == among[0] + 1 && updw[0] == 1)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav"); //thêm sound vào
}
if (player[0] == among[0] - 1 && updw[0] == 2)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav");
}
}
private void pictureBox4_Click(object sender, EventArgs e)
{
if (player[0] == among[0] + 1 && updw[0] == 1)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav"); //thêm sound vào
}
if (player[0] == among[0] - 1 && updw[0] == 2)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav");
}
}
private void pictureBox5_Click(object sender, EventArgs e)
{
if (player[0] == among[0] + 1 && updw[0] == 1)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav"); //thêm sound vào
}
if (player[0] == among[0] - 1 && updw[0] == 2)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav");
}
}
private void pictureBox6_Click(object sender, EventArgs e)
{
if (player[0] == among[0] + 1 && updw[0] == 1)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav"); //thêm sound vào
}
if (player[0] == among[0] - 1 && updw[0] == 2)
{
among[0] = player[0];
doihinh(among[0], pictureBox8);
player[0] = r.Next(13) + 1;
doihinh(player[0], pictureBox13);
countp--;
label2.Text = countp.ToString();
//playfile("click.wav");
}
}
private void timer2_Tick(object sender, EventArgs e)
{
if (com[0] == among[0] - 1 && updw[0] == 1)
{
among[0] = com[0];
doihinh(among[0], pictureBox8);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false; //tắt nút FLIP nếu comp ăn bài
}
else if (com[0] == among[0] + 1 && updw[0] == 2)
{
among[0] = com[0];
doihinh(among[0], pictureBox8);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false;
}
else if (com[0] == among[0] - 1 && updw[0] == 1)
{
among[0] = com[0];
doihinh(among[0], pictureBox9);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false; //tắt nút FLIP nếu comp ăn bài
}
else if (com[0] == among[0] + 1 && updw[0] == 2)
{
among[0] = com[0];
doihinh(among[0], pictureBox9);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false;
}
else if (com[0] == among[0] - 1 && updw[0] == 1)
{
among[0] = com[0];
doihinh(among[0], pictureBox10);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false; //tắt nút FLIP nếu comp ăn bài
}
else if (com[0] == among[0] + 1 && updw[0] == 2)
{
among[0] = com[0];
doihinh(among[0], pictureBox10);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false;
}
else if (com[0] == among[0] - 1 && updw[0] == 1)
{
among[0] = com[0];
doihinh(among[0], pictureBox11);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false; //tắt nút FLIP nếu comp ăn bài
}
else if (com[0] == among[0] + 1 && updw[0] == 2)
{
among[0] = com[0];
doihinh(among[0], pictureBox11);
com[0] = r.Next(13) + 1;
countc--;
label6.Text = "so lan duy chuyen";
label6.Visible = true;
pictureBox7.Visible = false;
}
else
{
label1.Visible = false; //tắt chử MOVE
pictureBox7.Visible = true; //bật nút FLIP nếu comp bí
}
label4.Text = countc.ToString();
}
private void timer3_Tick(object sender, EventArgs e)
{
if (countc == 0)
{
timer1.Stop();
timer2.Stop();
timer3.Stop();
pictureBox12.Image = Image.FromFile("1-ro.PNG"); //đổi lá bài đại diện cho comp
pictureBox1.Image = Image.FromFile("1-chuon.PNG");
//playfile("win.wav"); //phát nhạc khi có người win
MessageBox.Show("You Lose...T_T", "Bad");
}
else if (countp == 0)
{
timer1.Stop();
timer2.Stop();
timer3.Stop();
pictureBox12.Image = Image.FromFile("donedeck.gif");
pictureBox1.Image = Image.FromFile("donedeck.gif");
//playfile("win.wav");
MessageBox.Show("You Win ^_^", "Happy");
}
}
private void pictureBox1_Click(object sender, EventArgs e)
{
}
private void pictureBox8_Click(object sender, EventArgs e)
{
}
}
}