Permalink
Browse files

Niveaux classés par ordre croissant de difficulté.

  • Loading branch information...
Neamar committed Apr 3, 2011
1 parent 92bb4c8 commit 01a0b50c3cf3b2425ad2d1e51e5b7e53bd006e56
Showing with 77 additions and 73 deletions.
  1. +77 −73 Game.as
View
150 Game.as
@@ -50,46 +50,70 @@ package
{
/**
* @state FONCTIONNEL
* @brief Niveau en grand cercle
* @difficulty 9
* @type didacticiel
* @brief Présentation du jeu et du comportement des noeuds
* @difficulty 1
* @solution
* - Couper la croix centrale.
* - Couper le lien horizontal-haut et attendre que les deux noeuds ainsi libérés se retrouvent à la verticale avec les les noeuds juste en dessous
* - Couper alors d'un coup les deux liens au dessus de la partie basse horizontale, on se retrouve avec trois composantes "à deux noeuds".
* - Couper une par une chacune de ces composantes, dans l'ordre le plus logique en fonction de leurs positions.
* - Tout... les coups perdants sont vraiment durs à trouver !
*/
var Parts:Array = Game.buildNodes('280,300|380,260|420,260|520,300|420,340|380,340:0,1|1,2|2,3|3,4|4,5|5,0|1,4|0,3');
//var Parts:Array = Game.buildNodes('420,320|300,320|300,220|420,220:3,0|0,1|1,2|2,3');
return new KillNoneLevel(Parts[0], Parts[1], 8, (new Niveau1()).bitmapData);
var Parts:Array = Game.buildNodes('106,106|214,106|214,214|106,214|567,116|673,116|620,208|221,405|221,495|312,403|420,395|528,403|619,405|619,495|528,497|420,505|312,497:3,0|0,1|1,2|2,3|6,4|4,5|5,6|8,7|7,9|9,10|10,11|11,12|12,13|13,14|14,15|15,16|16,8|16,9|10,15|14,11|14,12|11,13|8,9|7,16');
return new KillNoneLevel(Parts[0], Parts[1], 9, (new Niveau10()).bitmapData);
},
function():Level
{
/**
* @state FONCTIONNEL
* @brief Niveau à protubérances (cercle radioactif central)
* @type didacticiel
* @brief présentation des noeuds spéciaux
* @difficulty 1
* @solution
* - Facile à faire pleurer une truie trisomique handicapée moteur... (couper les horizontaux)
*/
var Parts:Array = Game.buildNodes('342,243|459,244|457,359|342,358|400,300|347,135|455,136:3,0|0,1|1,2|2,3|6,1|5,0|5,6');
return new KillOneLevel(Parts[0], Parts[1], 3, Parts[0][4], (new Niveau8()).bitmapData);
},
function():Level
{
/**
* @state FONCTIONNEL
* @type didacticiel
* @brief coupes multiples
* @difficulty 2
* @solution
* - couper les 4 ressorts d'un unique trait
*/
var Parts:Array = Game.buildNodes('351,251|400,230|449,251|330,300|351,349|449,349|400,370|470,300:3,7|0,5|6,1|2,4');
return new KillAllLevel(Parts[0], Parts[1], 4, (new Niveau9()).bitmapData);
},
function():Level
{
/**
* @state FONCTIONNEL
* @brief Premier niveau Mossad sur grand cercle union petit cercle
* @difficulty 4
* @solution
* - Couper les trois liens du haut
* - Couper ensuite les deux liens du bas
* - Couper enfin à gauche, puis à droite.
* - Dans la structure du bas, couper d'un coup les deux liens sud sud est (liant le noeud "jointure entre deux bras fixes" et le bras de droite).
* @note Plusieurs solutions
*/
var Parts:Array = Game.buildNodes('400,181|467,198|511,252|518,319|432,416|489,381|333,198|289,252|282,319|368,416|311,381|400,300:11,10|9,11|11,8|11,7|11,6|11,0|1,11|11,2|11,3|11,4|11,5|2,5|2,7|7,10|10,5');
return new KillNoneLevel(Parts[0], Parts[1], 11, (new Niveau4()).bitmapData);
var Parts:Array = Game.buildNodes('400,320|320,260|240,200|300,340|200,360|480,380|560,440|400,400|400,480|300,440|340,380|460,260|500,180:2,1|1,0|4,3|3,0|6,5|5,0|8,7|7,0|4,9|0,11|11,12|9,3|9,8|9,7');
Parts[0][0].Fixe = true;
return new KillOneLevel(Parts[0], Parts[1], 25, Parts[0][10], (new Niveau6()).bitmapData);
},
function():Level
{
/**
* @state FONCTIONNEL
* @brief Niveau "en croix à petit battant horizontal", deux rectangles arrondis placés perpendiculairement l'un à l'autre
* @difficulty 9
* @brief Reprise d'un niveau du didacticiel en plus difficile !
* @difficulty 4
* @solution
* - Attendre quelques secondes la résolution des contraintes : deux noeuds tombent direct
* - Couper en bas, deux noeuds sont expulsés (sans tomber pour l'instant)
* - En haut, deux noeuds attendent d'être catapultés (structure instable) : les virer
* - Ouvrir enfin la structure obtenue en X, puis couper. Adios !
* - Dans le groupe du bas, couper verticalement d'un coup les 9 ressorts pour séparer en deux bandes distinctes
* - Séparer encore ces deux bandes en coupant les ressorts intérieurs (4, de façon à avoir au milieu de chaque ancienne bande un noeud esseulé
* - Couper tous les liens du carré sans réfléchir, ça tient
* - Couper un des liens du bas du triangle. Au bon moment, couper l'autre lien du bas de façon à anvoyer le noeud du bas (du triangle) sur la passerelle
* - Couper le dernier lien de l'ancien triangle
*/
var Parts:Array = Game.buildNodes('400,222|400,260|400,307|400,350|400,386|400,422|319,300|481,300|400,183|286,191|514,191:0,6|6,1|2,6|6,3|6,4|6,5|5,7|7,4|3,7|2,7|1,7|0,7|6,8|8,7|10,7|9,6|9,8|8,10');
return new KillButOneLevel(Parts[0], Parts[1], 14, Parts[0][8], (new Niveau3()).bitmapData);
var Parts:Array = Game.buildNodes('106,106|214,106|214,214|106,214|567,116|673,116|620,208|221,405|221,495|312,403|420,395|528,403|619,405|619,495|528,497|420,505|312,497:3,0|0,1|1,2|2,3|6,4|4,5|5,6|8,7|7,9|9,10|10,11|11,12|12,13|13,14|14,15|15,16|16,8|16,9|10,15|14,11|14,12|11,13|8,9|7,16');
return new KillNoneLevel(Parts[0], Parts[1], 20, (new Niveau10()).bitmapData);
},
function():Level
{
@@ -109,15 +133,15 @@ package
{
/**
* @state FONCTIONNEL
* @brief Premier niveau Mossad sur grand cercle union petit cercle
* @difficulty 4
* @brief Niveau à protubérances (cercle radioactif central)
* @difficulty 5
* @solution
* - Dans la structure du bas, couper d'un coup les deux liens sud sud est (liant le noeud "jointure entre deux bras fixes" et le bras de droite).
* @note Plusieurs solutions
* - Couper les trois liens du haut
* - Couper ensuite les deux liens du bas
* - Couper enfin à gauche, puis à droite.
*/
var Parts:Array = Game.buildNodes('400,320|320,260|240,200|300,340|200,360|480,380|560,440|400,400|400,480|300,440|340,380|460,260|500,180:2,1|1,0|4,3|3,0|6,5|5,0|8,7|7,0|4,9|0,11|11,12|9,3|9,8|9,7');
Parts[0][0].Fixe = true;
return new KillOneLevel(Parts[0], Parts[1], 25, Parts[0][10], (new Niveau6()).bitmapData);
var Parts:Array = Game.buildNodes('400,181|467,198|511,252|518,319|432,416|489,381|333,198|289,252|282,319|368,416|311,381|400,300:11,10|9,11|11,8|11,7|11,6|11,0|1,11|11,2|11,3|11,4|11,5|2,5|2,7|7,10|10,5');
return new KillNoneLevel(Parts[0], Parts[1], 11, (new Niveau4()).bitmapData);
},
function():Level
{
@@ -138,61 +162,41 @@ package
{
/**
* @state FONCTIONNEL
* @type didacticiel
* @brief présentation des noeuds spéciaux
* @difficulty 1
* @solution
* - Facile à faire pleurer une truie trisomique handicapée moteur... (couper les horizontaux)
*/
var Parts:Array = Game.buildNodes('342,243|459,244|457,359|342,358|400,300|347,135|455,136:3,0|0,1|1,2|2,3|6,1|5,0|5,6');
return new KillOneLevel(Parts[0], Parts[1], 3, Parts[0][4], (new Niveau8()).bitmapData);
},
function():Level
{
/**
* @state FONCTIONNEL
* @type didacticiel
* @brief coupes multiples
* @difficulty 2
* @brief Niveau "en croix à petit battant horizontal", deux rectangles arrondis placés perpendiculairement l'un à l'autre
* @difficulty 9
* @solution
* - couper les 4 ressorts d'un unique trait
* - Attendre quelques secondes la résolution des contraintes : deux noeuds tombent direct
* - Couper en bas, deux noeuds sont expulsés (sans tomber pour l'instant)
* - En haut, deux noeuds attendent d'être catapultés (structure instable) : les virer
* - Ouvrir enfin la structure obtenue en X, puis couper. Adios !
*/
var Parts:Array = Game.buildNodes('351,251|400,230|449,251|330,300|351,349|449,349|400,370|470,300:3,7|0,5|6,1|2,4');
return new KillAllLevel(Parts[0], Parts[1], 4, (new Niveau9()).bitmapData);
var Parts:Array = Game.buildNodes('400,222|400,260|400,307|400,350|400,386|400,422|319,300|481,300|400,183|286,191|514,191:0,6|6,1|2,6|6,3|6,4|6,5|5,7|7,4|3,7|2,7|1,7|0,7|6,8|8,7|10,7|9,6|9,8|8,10');
return new KillButOneLevel(Parts[0], Parts[1], 14, Parts[0][8], (new Niveau3()).bitmapData);
},
function():Level
{
/**
* @state FONCTIONNEL
* @type didacticiel
* @brief Présentation du jeu et du comportement des noeuds
* @difficulty 1
* @brief Niveau en grand cercle
* @difficulty 8
* @solution
* - Tout... les coups perdants sont vraiment durs à trouver !
* - Couper la croix centrale.
* - Couper le lien horizontal-haut et attendre que les deux noeuds ainsi libérés se retrouvent à la verticale avec les les noeuds juste en dessous
* - Couper alors d'un coup les deux liens au dessus de la partie basse horizontale, on se retrouve avec trois composantes "à deux noeuds".
* - Couper une par une chacune de ces composantes, dans l'ordre le plus logique en fonction de leurs positions.
*/
var Parts:Array = Game.buildNodes('106,106|214,106|214,214|106,214|567,116|673,116|620,208|221,405|221,495|312,403|420,395|528,403|619,405|619,495|528,497|420,505|312,497:3,0|0,1|1,2|2,3|6,4|4,5|5,6|8,7|7,9|9,10|10,11|11,12|12,13|13,14|14,15|15,16|16,8|16,9|10,15|14,11|14,12|11,13|8,9|7,16');
return new KillNoneLevel(Parts[0], Parts[1], 9, (new Niveau10()).bitmapData);
var Parts:Array = Game.buildNodes('280,300|380,260|420,260|520,300|420,340|380,340:0,1|1,2|2,3|3,4|4,5|5,0|1,4|0,3');
//var Parts:Array = Game.buildNodes('420,320|300,320|300,220|420,220:3,0|0,1|1,2|2,3');
return new KillNoneLevel(Parts[0], Parts[1], 8, (new Niveau1()).bitmapData);
},
//Quadrillage, pour un premier niveau ? 336,125|485,128|466,238|342,236|342,364|466,362|232,246|232,354|336,475|485,472|577,354|577,246|400,300:5,2|2,1|0,3|3,4|3,2|4,5|7,4|7,6|6,3|9,5|4,8|11,2|5,10|10,11|4,12|3,12|5,12|12,2
function():Level
{
/**
* @state FONCTIONNEL
* @brief Reprise d'un niveau du didacticiel en plus difficile !
* @difficulty 3
* @solution
* - Dans le groupe du bas, couper verticalement d'un coup les 9 ressorts pour séparer en deux bandes distinctes
* - Séparer encore ces deux bandes en coupant les ressorts intérieurs (4, de façon à avoir au milieu de chaque ancienne bande un noeud esseulé
* - Couper tous les liens du carré sans réfléchir, ça tient
* - Couper un des liens du bas du triangle. Au bon moment, couper l'autre lien du bas de façon à anvoyer le noeud du bas (du triangle) sur la passerelle
* - Couper le dernier lien de l'ancien triangle
*/
var Parts:Array = Game.buildNodes('106,106|214,106|214,214|106,214|567,116|673,116|620,208|221,405|221,495|312,403|420,395|528,403|619,405|619,495|528,497|420,505|312,497:3,0|0,1|1,2|2,3|6,4|4,5|5,6|8,7|7,9|9,10|10,11|11,12|12,13|13,14|14,15|15,16|16,8|16,9|10,15|14,11|14,12|11,13|8,9|7,16');
return new KillNoneLevel(Parts[0], Parts[1], 20, (new Niveau10()).bitmapData);
var Parts:Array = Game.buildNodes('400,300:');
//var Parts:Array = Game.buildNodes('420,320|300,320|300,220|420,220:3,0|0,1|1,2|2,3');
return new Level(Parts[0], Parts[1], 0, (new Niveau1()).bitmapData);
}
//Quadrillage, pour un premier niveau ? 336,125|485,128|466,238|342,236|342,364|466,362|232,246|232,354|336,475|485,472|577,354|577,246|400,300:5,2|2,1|0,3|3,4|3,2|4,5|7,4|7,6|6,3|9,5|4,8|11,2|5,10|10,11|4,12|3,12|5,12|12,2
);
}
@@ -240,7 +244,7 @@ package
/**
* Le numéro du niveau actuel
*/
private var LevelNumber:int = 7;
private var LevelNumber:int = -1;
/**
* L'objet niveau chargé
*/

0 comments on commit 01a0b50

Please sign in to comment.