private bool LineW(int x, int y, Player p) { Jeton c = GetElement(x, y); int count = 0, tmp = 0, tx = x, ty = y; // Horizontal line right => x + 1, y while (c != null && c.Player == p) { tx = (tx + 1) % 7; c = GetElement(tx, ty); tmp++; } // Horizontal line left => x - 1, y tx = (x - 1) % 7; c = GetElement(tx, ty); while (c != null && c.Player == p) { tx = (tx - 1) % 7; c = GetElement(tx, ty); tmp++; } count = tmp; // Reinitialize tx = x; ty = y; tmp = 0; c = GetElement(tx, ty); // Vertical line top => x, y - 1 while (c != null && c.Player == p) { ty = (ty - 1) % 6; c = GetElement(tx, ty); tmp++; } // Vertical line bottom => x, y + 1 ty = (y + 1) % 6; c = GetElement(tx, ty); while (c != null && c.Player == p) { ty = (ty + 1) % 6; c = GetElement(tx, ty); tmp++; } count = Math.Max(tmp, count); if (count >= 4) { return(true); } return(false); }
public bool AddToX(int x, Jeton j) { int y = GetY(x); if (y != -1) { GridElems[x, y] = j; return(true); } return(false); }
public FenetrePrincipale() { InitializeComponent(); ClientSize = new System.Drawing.Size(Constantes.WIDTH - 6, Constantes.HEIGHT + Constantes.SIZE_H + Constantes.MARGIN_TOP + Constantes.MARGIN_BOTTOM - 6); this.grille = new Grille(); this.jeton = new Jeton(Constantes.WIDTH / 2 - Constantes.SIZE_W / 2, 0); initBarreScores(); initManche(); Refresh(); }
private Grid() { GridElems = new Jeton[7, 6]; for (int x = 0; x < 7; x++) { for (int y = 0; y < 6; y++) { GridElems[x, y] = null; } } winner = null; }
public FenetrePrincipale() { #region Puissance4 InitializeComponent(); ClientSize = new System.Drawing.Size(Constantes.WIDTH - 6, Constantes.HEIGHT + Constantes.SIZE_H + Constantes.MARGIN_TOP + Constantes.MARGIN_BOTTOM - 6); this.grille = new Grille(); this.jeton = new Jeton(joueur, Constantes.WIDTH / 2 - Constantes.SIZE_W / 2, 0); #endregion initBarreScores(); initVariables(); Refresh(); }
public Player(string name, Texture2D t) { m_name = name; Turn = false; jeton = new Jeton(t, this); }
private void Puissance4_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == 'b' || e.KeyChar == 'B') { if (joueur == "darkVador" && bombesVadorRestantes > 0) { bombesVadorRestantes--; joueur = "bombeVador"; jeton = new Jeton(joueur, jeton.getPosition().X, jeton.getPosition().Y); } else if (joueur == "luke" && bombeslukeRestantes > 0) { bombeslukeRestantes--; joueur = "bombeLuke"; jeton = new Jeton(joueur, jeton.getPosition().X, jeton.getPosition().Y); } Refresh(); } }
private bool DiagonaleW(int x, int y, Player p) { Jeton c = GetElement(x, y); int count = 0, tmp = 0, tx = x, ty = y; // Descendant droite => x + 1, y - 1 while (c != null && c.Player == p) { tx = (tx + 1) % 7; ty = (y - 1) % 6; c = GetElement(tx, ty); tmp++; } // Ascendant gauche => x - 1, y + 1 tx = (x - 1) % 7; ty = (y + 1) % 6; c = GetElement(tx, ty); while (c != null && c.Player == p) { tx = (tx - 1) % 7; ty = (ty + 1) % 6; c = GetElement(tx, ty); tmp++; } count = tmp; // Reinitialize tmp = 0; c = GetElement(tx, ty); tx = x; ty = y; // Descendant gauche => x - 1, y - 1 while (c != null && c.Player == p) { tx = (tx - 1) % 7; ty = (ty - 1) % 6; c = GetElement(tx, ty); tmp++; } // Ascendant droite => x + 1, y + 1 tx = (x + 1) % 7; ty = (y + 1) % 6; c = GetElement(tx, ty); while (c != null && c.Player == p) { tx = (tx + 1) % 7; ty = (ty + 1) % 6; c = GetElement(tx, ty); tmp++; } count = Math.Max(tmp, count); if (count >= 4) { return(true); } return(false); }