Flashhilfe.de - Flash Community

Stroop Effekt - Button soll Score ausgeben [Flash 11]

 


AntwortenRegistrieren Seite1  

Wandkleister#1
Benutzerbild von Wandkleister
Beiträge: 3
Registriert: Nov 2011

04.11.2011, 14:26

Grüße, ich bin noch neu in AS3, deswegen ist mein Code wahrscheinlich nicht der beste, aber er funktioniert soweit.
Das Programm wirft zufällig aus einem Array ein Farbwort aus und gibt ihm eine zufällige Farbe. Drücke ich auf den Button, der der angezeigten Farbe entspricht, so soll die Score um 1 erhöht werden. Wenn ich auf einen anderen Button drücke (sprich: auf einen falschen) soll die Score einfach so bleiben und das nächste Wort angezeigt werden.

Bis auf die Score Anweisung funktioniert alles. Habt ihr Vorschläge wie ich das Problem löse?

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
import fl.controls.Label;
import flash.text.TextFormat;
import flash.events.MouseEvent;
import fl.controls.TextArea;
import fl.managers.StyleManager;


//Array für zufällige Farben

var farbe:Array = new Array();
farbe[0] = 0xFF0000; //Rot
farbe[1] = 0x0033FF; //Blau
farbe[2] = 0x00FF00; //Grün
farbe[3] = 0xFFFF00; //Gelb

//Farb-Array mischen

function arrayShuffle(farbe:Array):Array
{
     for (var i:int = 0; i < farbe.length; i++)
     {
        var randomNum_num = Math.floor(Math.random() * farbe.length);
        var arrayIndex = farbe[i];
        farbe[i] = farbe[randomNum_num];
        farbe[randomNum_num] = arrayIndex;
     }
     return farbe;
}
trace(arrayShuffle(farbe));

//Formatierung der Schrift

var myFormat:TextFormat = new TextFormat();
myFormat.size = 50;
myFormat.color = farbe[0];


//Array für Farbwörter
var farbwoerter:Array = new Array();

farbwoerter[0] = "Rot";
farbwoerter[1] = "Grün";
farbwoerter[2] = "Gelb";
farbwoerter[3] = "Blau";

//Wort-Array mischen

function arrayShuffle2(farbwoerter:Array):Array
{
     for (var i:int = 0; i < farbwoerter.length; i++)
     {
        var randomNum_num = Math.floor(Math.random() * farbwoerter.length);
        var arrayIndex = farbwoerter[i];
        farbwoerter[i] = farbwoerter[randomNum_num];
        farbwoerter[randomNum_num] = arrayIndex;
     }
     return farbwoerter;
}
trace(arrayShuffle2(farbwoerter));

//Start-Label erzeugen

var label1:Label = new Label();
label1.x = 240;
label1.y = 150;
label1.width = 150;
label1.height = 100;
label1.text = farbwoerter[0];
label1.setStyle("textFormat", myFormat);

addChild(label1);


//Label durch Button erneuern
var q:int = 0;
function neuladen(event:MouseEvent):void
{
     if (q<10)
     {
        arrayShuffle(farbe);
        arrayShuffle2(farbwoerter);
        trace(arrayShuffle(farbe));
        trace(arrayShuffle2(farbwoerter));
        label1.text = farbwoerter[0];
        myFormat.color = farbe[0];
        label1.setStyle("textFormat", myFormat);
        q++;
     }
     else
     {
        label1.text = "ENDE";
     }
}

//Ergebnis erstellen <--- Hier fehlt mir eine Idee

var score:Number = 0;   


green_btn.addEventListener(MouseEvent.CLICK, neuladen);
red_btn.addEventListener(MouseEvent.CLICK, neuladen);
blue_btn.addEventListener(MouseEvent.CLICK, neuladen);
yellow_btn.addEventListener(MouseEvent.CLICK, neuladen);

Schlagwörter: Buttonfunktion, Schleife, Score
Werbung
Beiträge: 0
Registriert: Feb 2016


ashitaka#2
Benutzerbild von ashitaka
Beiträge: 161
Registriert: Apr 2010

04.11.2011, 15:36

in etwa so:

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function neuladen(event:MouseEvent):void
{
      // hier checken ob die farbe stimmt

     if (event.currentTarget == green_btn &&  label1.text = farbwoerter[1]) score ++;
     else if (event.currentTarget == red_btn &&  label1.text = farbwoerter[0]) score ++;
  else if (event.currentTarget == .... und so weiter ;)
 
       if (q<10)
       {
          arrayShuffle(farbe);
          arrayShuffle2(farbwoerter);
          trace(arrayShuffle(farbe));
          trace(arrayShuffle2(farbwoerter));
          label1.text = farbwoerter[0];
          myFormat.color = farbe[0];
          label1.setStyle("textFormat", myFormat);
          q++;
       }
       else
       {
          label1.text = "ENDE";
       }
}
Zeitleisten-Programmierung ist böse! löst euch von der Zeitleiste -> benutzt Flashdevelop!
Antworten auf Flash AS3 Fragen.
Flash Programmierer
Geändert von ashitaka am 04.11.11 um 15:38 Uhr
Wandkleister#3
Benutzerbild von Wandkleister
Beiträge: 3
Registriert: Nov 2011

Themenautor/in

04.11.2011, 15:39

Edit: Ah okay, da kommt noch was dazu von dir^^
Geändert von Wandkleister am 04.11.11 um 15:40 Uhr
ashitaka#4
Benutzerbild von ashitaka
Beiträge: 161
Registriert: Apr 2010

04.11.2011, 15:52

ja sorry, hab aus versehen zu früh geschickt ;)
Zeitleisten-Programmierung ist böse! löst euch von der Zeitleiste -> benutzt Flashdevelop!
Antworten auf Flash AS3 Fragen.
Flash Programmierer
Werbung
Beiträge: 0
Registriert: Feb 2016


Wandkleister#5
Benutzerbild von Wandkleister
Beiträge: 3
Registriert: Nov 2011

Themenautor/in

04.11.2011, 16:57

Ah okay, du hast mich falsch verstanden. Ich will die Farbe abgleichen. Sprich: Wenn das Wort "Rot" in der Farbe grün da steht, muss man auf "Grün" drücken um einen Punkt zu kriegen.
ashitaka#6
Benutzerbild von ashitaka
Beiträge: 161
Registriert: Apr 2010

04.11.2011, 17:14

dann halt in der art:

ActionScript:
1
2
3
4
if (event.currentTarget == green_btn &&  myFormat.color == 0x00FF00) score ++;
     else if (event.currentTarget == red_btn &&  lmyFormat.color == 0xff0000) score ++;
  else if (event.currentTarget == .... und so weiter ;)




der punkt ist, dass du wenn was geklickt wurde checkst, ob es richtig war.
Zeitleisten-Programmierung ist böse! löst euch von der Zeitleiste -> benutzt Flashdevelop!
Antworten auf Flash AS3 Fragen.
Flash Programmierer

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   php-resource.de   phpforum.de   phpwelt.de   Pixelio.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Hier Werben   Impressum
© 1999-2019 Sebastian Wichmann - Flashhilfe.de