Advertisement
Guest User

Untitled

a guest
Jul 20th, 2017
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Haxe 5.24 KB | None | 0 0
  1. package;
  2.  
  3. import flixel.FlxG;
  4. import flixel.group.FlxSpriteGroup;
  5. import flixel.ui.FlxButton;
  6. import BtnNumber;
  7.  
  8.  
  9. enum AnswerType {
  10.     Correct;
  11.     Incorrect;
  12. }
  13.  
  14. class Numbers extends FlxSpriteGroup {
  15.  
  16.     public static var numbers:Array<Array<BtnNumber>>;
  17.     public static var answer:Int;
  18.     public static var selected_answer:Int;
  19.     var msgs_incorreto:Array<String>;
  20.     var msgs_correto:Array<String>;
  21.     public var status_msg:String;
  22.  
  23.     public function new(?x:Float, ?y:Float)
  24.     {
  25.         super(x,y);
  26.         this.maxSize = 10;
  27.         selected_answer = 0;
  28.         answer = 0;
  29.         status_msg = "";
  30.  
  31.  
  32.         msgs_correto = [
  33.             "Parabéns!",
  34.             "Acertou!",
  35.             "Muito Bom",
  36.             "Certo!"
  37.         ];
  38.  
  39.         msgs_incorreto = [
  40.             "Desculpe, mas está incorreto",
  41.             "Tente outra vez",
  42.             "Talvez na proxima tentativa",
  43.             "Continue Tentando",
  44.             "Não Desista!",
  45.             "<cara triste>"
  46.         ];
  47.  
  48.  
  49.     }
  50.  
  51.     private function getStatusMessage(a:AnswerType):String{
  52.         var listAnswer:Array<String> =  (a == AnswerType.Correct) ? msgs_correto.copy() : msgs_incorreto.copy();
  53.         var num:Int = FlxG.random.int(0,listAnswer.length - 1);
  54.         return  (listAnswer[num] == null) || (num > listAnswer.length) ? " " : listAnswer[num];
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.     }
  63.  
  64.     private function checkExists(allowed:Array<Int>, n:Int):Bool{
  65.         if(allowed != null){
  66.             for(i in 0...allowed.length){
  67.                 if( allowed[i] == n ) {
  68.                     return true;
  69.                 }
  70.             }
  71.         }
  72.         return false;
  73.     }
  74.  
  75.     public function initNumbers(?allowed:Array<Int>){
  76.  
  77.         var count:Int = 0;
  78.  
  79.         numbers = [
  80.             [new BtnNumber(1,0,0,"", clickNumber_1), new BtnNumber(2, 0,0,"", clickNumber_2), new BtnNumber(3, 0,0,"", clickNumber_3)],
  81.             [new BtnNumber(4,0,0,"", clickNumber_4), new BtnNumber(5, 0,0,"", clickNumber_5), new BtnNumber(6, 0,0,"", clickNumber_6)],
  82.             [new BtnNumber(7, 0,0,"", clickNumber_7), new BtnNumber(8,0,0,"", clickNumber_8), new BtnNumber(9,0,"", clickNumber_9)]
  83.         ];
  84.  
  85.         for(i in 0...numbers.length ){
  86.            for(j in 0...numbers[i].length){
  87.                 var exists:Bool = true;
  88.  
  89.                if(exists){
  90.                     numbers[i][j].x = (numbers[i][j].width - 40) * j;
  91.                     numbers[i][j].y += ((numbers[i][j].height * 2) ) * i;
  92.                     numbers[i][j].loadGraphic("assets/images/" + (count + 1) + ".png");
  93.                     count++;
  94.                     this.add(numbers[i][j]);
  95.                 }
  96.            }
  97.         }
  98.  
  99.     }
  100.  
  101.     public function clickNumber_1():Void {
  102.         selected_answer = 1;
  103.         if(checkAnswer()){
  104.             status_msg = getStatusMessage(AnswerType.Correct);
  105.         }else {
  106.             status_msg = getStatusMessage(AnswerType.Incorrect);
  107.         }
  108.     }
  109.  
  110.     public function clickNumber_2():Void {
  111.         selected_answer = 2;
  112.         if(checkAnswer()){
  113.             status_msg = getStatusMessage(AnswerType.Correct);
  114.         }else {
  115.             status_msg = getStatusMessage(AnswerType.Incorrect);
  116.         }
  117.     }
  118.  
  119.     public function clickNumber_3():Void {
  120.         selected_answer = 3;
  121.         if(checkAnswer()){
  122.             status_msg = getStatusMessage(AnswerType.Correct);
  123.         }else {
  124.             status_msg = getStatusMessage(AnswerType.Incorrect);
  125.         }
  126.     }
  127.  
  128.     public function clickNumber_4():Void {
  129.         selected_answer = 4;
  130.         if(checkAnswer()){
  131.             status_msg = getStatusMessage(AnswerType.Correct);
  132.         }else {
  133.             status_msg = getStatusMessage(AnswerType.Incorrect);
  134.         }
  135.     }
  136.  
  137.     public function clickNumber_5():Void {
  138.         selected_answer = 5;
  139.         if(checkAnswer()){
  140.             status_msg = getStatusMessage(AnswerType.Correct);
  141.         }else {
  142.             status_msg = getStatusMessage(AnswerType.Incorrect);
  143.         }
  144.     }
  145.  
  146.     public function clickNumber_6():Void {
  147.         selected_answer = 6;
  148.         if(checkAnswer()){
  149.             status_msg = getStatusMessage(AnswerType.Correct);
  150.         }else {
  151.             status_msg = getStatusMessage(AnswerType.Incorrect);
  152.         }
  153.     }
  154.  
  155.     public function clickNumber_7():Void {
  156.         selected_answer = 7;
  157.         if(checkAnswer()){
  158.             status_msg = getStatusMessage(AnswerType.Correct);
  159.         }else {
  160.             status_msg = getStatusMessage(AnswerType.Incorrect);
  161.         }
  162.     }
  163.  
  164.     public function clickNumber_8():Void {
  165.         selected_answer = 8;
  166.         if(checkAnswer()){
  167.             status_msg = getStatusMessage(AnswerType.Correct);
  168.         }else {
  169.             status_msg = getStatusMessage(AnswerType.Incorrect);
  170.         }
  171.     }
  172.  
  173.     public function clickNumber_9():Void {
  174.         selected_answer = 9;
  175.         if(checkAnswer()){
  176.             status_msg = getStatusMessage(AnswerType.Correct);
  177.         }else {
  178.             status_msg = getStatusMessage(AnswerType.Incorrect);
  179.         }
  180.     }
  181.  
  182.     public function checkAnswer():Bool {
  183.         return selected_answer == answer ? true : false ;
  184.     }
  185.  
  186.     public function setAnswer(num:Int){
  187.         answer = num;
  188.     }
  189.  
  190. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement