PDA

Volledige versie bekijken : Rekensommetjes maken met AS3


designgirl
%Europe/Berlin %577 %2009, 14:51
Hallo allemaal,

De opdracht luidt dat ik (simpele) rekensommetjes moet maken met AS3. Dit met een hele opdracht eromheen. Ik heb vrijwel nooit met AS gewerkt. Met Flash kan ik animeren m.b.v. de tijdslijn en keyframes. Daar blijft het bij. De bedoeling is dat er een lijst met 5 rekensommetjes verschijnt. Wanneer deze juist zijn ingevuld verschijnen er de volgende 5 rekensommetjes. Deze rekensommetjes zijn random.

Heeft iemand tips hoe ik dit kan aanpakken? Waar/hoe moet ik beginnen? Of kan iemand me eventjes op weg helpen met 1 sommetje, waarnaar ik de rest van de lijst kan maken?

Bedankt alvast.

Groeten

Jan
%Europe/Berlin %678 %2009, 17:16
Heeft iemand tips hoe ik dit kan aanpakken? Waar/hoe moet ik beginnen?Ik heb vrijwel nooit met AS gewerkt.
Lees de help:F1:TextField, Math.random(), operators (+, - , /) etc.
Volg tutorials zodat je de basis van actionscript(3) begrijpt:
http://www.flashfocus.nl/forum/showthread.php?t=6338

Voorbeeld (CS3) in bijlage.
(Al vraag ik me een beetje af hoeveel je er aan hebt zonder de minste basiskennis van AS3...)
package
{
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.Dictionary;

public class Main extends Sprite
{
private var _int1:int;
private var _int2:int;
private var _dict:Dictionary;
private var _signs:Array=["+", "-", "x"];
private var _points:int=0;
private var _total:int=0;

public function Main()
{
_dict = new Dictionary();
_dict["+"] = sum;
_dict["-"] = minus;
_dict["x"] = multiply;
knop.addEventListener(MouseEvent.CLICK, checkSolution);
knop.buttonMode=true;
newQuestion();
}
private function sum(nr1:int, nr2:int):int
{
return nr1+nr2;
}
private function minus(nr1:int, nr2:int):int
{
return nr1-nr2;
}
private function multiply(nr1:int, nr2:int):int
{
return nr1*nr2;
}
private function newQuestion():void
{
_int1 = int(Math.random()*10);
_int2 = int(Math.random()*10);
int1_txt.text = String(_int1);
int2_txt.text = String(_int2);
sign_txt.text = _signs[int(Math.random()*_signs.length)]
solution_txt.text=""
}

private function checkSolution(event:MouseEvent):void
{

if(parseInt(solution_txt.text) == _dict[sign_txt.text](_int1,_int2))
{
handlePoints(++_points);
newQuestion();
}
else
{
handlePoints(--_points);
solution_txt.text = "";
}
}
private function handlePoints(p:int):void
{

total_txt.text = String(++_total)
points_txt.text = String(p);
}
}
}

Groeten;
Jan

designgirl
%Europe/Berlin %717 %2009, 18:12
@ Jan,

Bedankt voor de reactie.

Helaas is AS3 niet mijn sterkste vak. Dit is een schoolopdracht. Vandaar dat ik hier ook om hulp kwam vragen. Ik zal kijken of ik er iets mee kan. Alvast bedankt!

Andere reacties nog steeds welkom! ;)

Jan
%Europe/Berlin %720 %2009, 18:17
'k had net na je post nog een voorbeeld toegevoegd. :)

Groeten;
Jan

designgirl
%Europe/Berlin %721 %2009, 18:19
Jan.. Heel erg bedankt voor je reactie en de bijgesloten file(s). Ik ben er erg blij mee en kan dit zeker toepassen binnen mijn opdracht.

Om nog even een reactie te geven.. dit is een opdracht vanuit school. Wij zijn verplicht dit te maken in AS3. Vandaar dat ik hier ook om hulp kwam vragen.

Nogmaals heel erg bedankt! Andere reacties zijn natuurlijk nog steeds welkom! ;)

NoidZ
%Europe/Berlin %613 %2009, 15:42
Niet toevallig Eindhovense school? Zelfde probleem hier, zelfde opdracht :P

designgirl
%Europe/Berlin %596 %2009, 15:18
Ja, inderdaad Eindhovense school hahaha! Dacht laat ik het hier eens proberen. Wat hierboven staat is echt handig toe te passen! Rotopdracht..! ;)