Pong AS3
Pong gemaakt dmv. actionscript 3. De gemaakte code is onderaan de pagina te vinden.
AS3 code:
Paul Meelen Pong
-
package
-
{
-
import flash.display.*;
-
import flash.net.*;
-
import flash.events.*;
-
import flash.text.*;
-
import flash.ui.Keyboard;
-
/**
-
* …
-
* @author Paul Meelen
-
*/
-
public class Main extends MovieClip
-
{
-
private var up:Boolean = false;
-
private var down:Boolean = false;
-
private var speelveld:Sprite;
-
private var myMiddenlijn:MovieClip;
-
private var myBal:MovieClip;
-
private var xsnelheid = 10;
-
private var ysnelheid = 10;
-
private var myPlayer:MovieClip;
-
private var myComputer:MovieClip;
-
private var speler_score:TextField;
-
private var computer_score:TextField;
-
private var sscore:Number = 0; //score nummer van de speler
-
private var cscore:Number = 0; //score nummer van de computer
-
public function Main():void
-
{
-
if (stage) init();
-
else addEventListener(Event.ADDED_TO_STAGE, init);
-
pong();
-
trace(“Dit is de GTO32 toets van Paul Meelen”);
-
//Events voor het bewegen van de speler en objecten
-
stage.addEventListener(Event.ENTER_FRAME, updateGame);
-
stage.addEventListener(KeyboardEvent.KEY_DOWN, eventKeyDown);
-
stage.addEventListener(KeyboardEvent.KEY_UP, eventKeyUp);
-
}
-
private function pong()
-
{
-
//speelveld tekenen
-
speelveld = new Sprite();
-
speelveld.graphics.lineStyle(2,0x00FFFF,1);
-
speelveld.graphics.drawRect(0,0,stage.stageWidth,stage.stageHeight);
-
this.addChild(speelveld);
-
//Middenlijn
-
myMiddenlijn = new Middenlijn();
-
myMiddenlijn.x = stage.stageWidth / 2; //plaats de lijn in het midden van de stage
-
myMiddenlijn.y = stage.stageHeight / 2;
-
stage.addChild(myMiddenlijn); //Voeg middenlijn toe aan veld
-
//De bal
-
myBal = new Bal();
-
myBal.x = stage.stageWidth / 2;
-
myBal.y = stage.stageHeight / 2;
-
stage.addChild(myBal); //Voeg de bal toe
-
//Score van de speler
-
speler_score = new TextField();
-
speler_score.x = stage.stageWidth / 4;
-
speler_score.y = 10;
-
speler_score.textColor = 0x00FFFF;
-
speler_score.text = “0″;
-
this.addChild(speler_score);
-
//Score van de computer
-
computer_score = new TextField();
-
computer_score.x = stage.stageWidth / 4 * 3;
-
computer_score.y = 10;
-
computer_score.textColor = 0x00FFFF;
-
computer_score.text = “0″;
-
this.addChild(computer_score);
-
//blok van de speler
-
myPlayer = new Player();
-
myPlayer.x = 20;
-
myPlayer.y = stage.stageHeight / 2;
-
stage.addChild(myPlayer); //Voeg speler toe aan veld
-
//blok van de computer
-
myComputer = new Computer();
-
myComputer.x = 780;
-
//myComputer.y = stage.stageHeight / 2;
-
myComputer.y = 20;
-
stage.addChild(myComputer); //Voeg computer toe aan veld
-
}
-
//Update van de game
-
private function updateGame(e:Event)
-
{
-
myBal.x += xsnelheid;
-
myBal.y += ysnelheid / 1;
-
if(up)
-
{
-
myPlayer.y -= 10;
-
trace(“Omhoog”);
-
}
-
if(down)
-
{
-
myPlayer.y += 10;
-
trace(“Omlaag”);
-
}
-
//bal op badjes
-
if (myBal.hitTestObject(myPlayer)) {
-
xsnelheid *= -1; // Bal snelheid omdraaien en naar rechts gaan
-
}
-
if (myBal.hitTestObject(myComputer)) {
-
xsnelheid *= -1; // Bal snelheid omdraaien en naar links gaan
-
}
-
//bal uit veld
-
if(myBal.x < 0) {
-
cscore+=1;
-
computer_score.text=String(cscore);
-
reset_pong();
-
trace(‘Links eruit’);
-
}else if(myBal.x > this.stage.stageWidth) {
-
sscore+=1;
-
speler_score.text=String(sscore);
-
reset_pong();
-
trace(‘Rechts eruit’);
-
}
-
//bal tegen randen speelveld
-
if(myBal.y < 0) {
-
ysnelheid *= -1;
-
trace(‘rand boven hit’);
-
}else if(myBal.y > this.stage.stageHeight) {
-
ysnelheid *= -1;
-
trace(‘rand onder hit’);
-
}
-
//bewegen van de computer
-
myComputer.y = myBal.y /1.3;
-
}
-
private function eventKeyDown(e:KeyboardEvent)
-
{
-
// Als de toets is ingedrukt wordt de waarde true
-
switch(e.keyCode)
-
{
-
case Keyboard.UP:
-
up = true;
-
break;
-
case Keyboard.DOWN:
-
down = true;
-
break;
-
}
-
}
-
private function eventKeyUp(e:KeyboardEvent)
-
{
-
//Wanneer de toets wordt losgelaten is de waarde weer false
-
switch(e.keyCode)
-
{
-
case Keyboard.UP:
-
up = false;
-
break;
-
case Keyboard.DOWN:
-
down = false;
-
break;
-
}
-
}
-
// game reset nadat de bal uit het veld is
-
private function reset_pong(){
-
myComputer.x = 780;
-
myComputer.y = stage.stageHeight / 2;
-
myBal.x = stage.stageWidth / 2;
-
myBal.y = stage.stageHeight / 2;
-
myPlayer.x = 20;
-
myPlayer.y = stage.stageHeight / 2;
-
myBal.x += xsnelheid *= -1;
-
}
-
}
-
}
Paul Meelen Pong
Leave a comment
Recentste berichten
Archief
- januari 2011 (1)
- december 2010 (3)
- november 2010 (9)
- oktober 2010 (17)
- september 2010 (1)
- juli 2010 (1)
- februari 2010 (3)
- maart 2009 (1)
- november 2008 (1)
- oktober 2008 (1)
- september 2008 (1)
- augustus 2008 (1)
- juli 2008 (1)
- juni 2008 (1)
- april 2008 (1)
- februari 2008 (1)
- oktober 2007 (2)
- augustus 2007 (1)
- april 2007 (1)
- januari 2007 (1)
- juni 2006 (1)
- september 2005 (1)
- juli 2005 (1)
- februari 2005 (2)
- februari 2004 (2)
- september 2003 (2)
- juni 2003 (1)
- mei 2003 (1)
- februari 2000 (30)





