Voici les bases d'un jeu de carte en Drag and Drop
Source / Exemple :
var recept1x = recept1._x;
var recept1y = recept1._y;//coordonnées du premier receptacle//
var recept2x = recept2._x;
var recept2y = recept2._y;
var cartex = carte._x;
var cartey = carte._y; // coordonnées de la carte 1//
var carte2x = carte2._x;
var carte2y = carte2._y; // coordonées de la carte 2//
carte.onPress = function () {
this.swapDepths(_root.getNextHighestDepth()); // au clic, met la carte sur le premier plan//
this.startDrag () //debut du cliqué-déplacé//
}
carte.onRelease = function () {
stopDrag (); //fin du cliqué-déplacé//
if (carte.hitTest(recept1)){ // test de colision avec le premier receptacle//
if (carte.hitTest(carte2)){ //test de colision avec la carte, 1 carte par receptacle ^^//
carte._x = cartex;
carte._y = cartey; // si il y a déjà une carte elle retourne à sa place//
}else{
carte._x = recept1x;
carte._y = recept1y; // si il n'y a pas de carte, elle viens se placer au dessus du receptacle//
carte.onPress = function () {
stopDrag ();} // la carte une fois sur le receptacle ne peut plus être déplacée //
}
}else{
carte._x = cartex;
carte._y = cartey; // si la carte n'est pas posée sur un receptacle elle retourne a sa place initiale//
}
}
carte2.onPress = function () {
this.swapDepths(_root.getNextHighestDepth());
this.startDrag ()
}
carte2.onRelease = function () {
stopDrag ();
if (carte2.hitTest(recept1)){
if (carte2.hitTest(carte)){
carte2._x = carte2x;
carte2._y = carte2y;
}else{
carte2._x = recept1x;
carte2._y = recept1y;
carte2.onPress = function () {
stopDrag ();}
}
}else{
carte2._x = carte2x;
carte2._y = carte2y;
}
}
Conclusion :
Je sais c'est basique, c'est le début, mais je suis débutant en programmation alors soyez indulgeant ^^. Si vous avez des conseils a me prodiguer pour mon code (je pense surtout pour l'utilisation de boucles) n'hésitez pas a m'en faire part. Mon projet est de faire un petit jeu de carte. Je le metterai a jour au fur et à mesure de son évolution.