iBOLD
Premium
- Inscription
- 23 Novembre 2012
- Messages
- 3 456
- Réactions
- 1 489
- Points
- 15 665
Salut à vous ! Avant toutes choses je vais vous expliquer le jeu pour que vous comprenez mieux ce que je cherche à faire. Donc c'est un jeu un peu du style du puissance 4, sauf que c'est un peut plus complexe. Il y a deux joueurs : l'humaine et le robot (IA) et ils s'affrontent sur un plateau, le joueur 1 choisis la pièce pour le joueur 2, et l'autre choisis où il veut la mettre, démonstration :
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
et le but est d'avoir sur la même ligne / colonne / diagonale au moins un chiffre sur les 4 présents, exemple :
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
Donc voilà le jeu expliqué je vais maintenant vous parlez en quoi j'ai besoin de votre aide. J'essaie d'augmenter l’intelligence de la IA.
Voici mon niveau 0 pour le choix de la case ou il pose son pion :
Code:
public int IACase0()
{
int i;
for (i = 0; i <= 15; i++)
{
if (table[i] == VIDE)
return i;
}
return -1;
}
Et voici ce que j'essaie de faire pour mon niveau 1 :
En gros j'essaie de faire que quand sur une la même ligne / colonne ou diagonale il y a déjà 3 pions ba en gros que l'IA mette son pion sur la case vide la ligne / colonne ou diagonale.
Voici ce que j'ai essayé de faire pour l'instant seulement pour la ligne 1 ( mais ça ne marche pas ) :
Code:
public int IACase1()
{
int i;
for (i = 0; i <= 15; i++)
{
if (table[i] == VIDE)
{
if ((table[0] & table[1] & table[2]) != VIDE)
{
table[i] = 3;
return i;
}
if ((table[1] & table[2] & table[3]) != VIDE)
{
table[i] = 0;
return i;
}
if ((table[0] & table[2] & table[3]) != VIDE)
{
table[i] = 1;
return i;
}
if ((table[0] & table[1] & table[3]) != VIDE)
{
table[i] = 2;
return i;
}
}
}
return -1;
}
Merci de votre aide