login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Probleempje bij Flash Game

Offline shana - 18/03/2011 22:20
Avatar van shanaNieuw lid hoi
als schoolopdracht moeten wij een game maken.
Mijn game is een catchinggame geworden. Het probleem is dat ik mijn hoofdpersonage niet kan bewegen van links naar rechts.
Mijn code is wel juist, want als ik de animatie in een nieuwe fla uitprobeer werkt deze.

Dit is de code van het hoofdpersonage:


import flash.ui.Keyboard;

stop();
stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownHandler);
var speed:int = 5;
function keyDownHandler(event:KeyboardEvent):void {
if(event.keyCode == Keyboard.LEFT){
edward_mc.x -=speed;
}
if(event.keyCode == Keyboard.RIGHT){
edward_mc.x +=speed;
}
}

Deze code bevindt zich in een aparte frame label"background1".
In mijn hoofdklasse heb ik volgende code staan:

public function levelStart():void{
stop();
//timer van 3 seconden
var gametimer:Timer = new Timer(3000);

gametimer.addEventListener(TimerEvent.TIMER,ganaarLevel);
gametimer.start();

function ganaarLevel(evt:TimerEvent):void{
gametimer.stop();
gotoAndPlay('background1');

}
}

Het probleem is dus: als background1 wordt geladen, staat mijn hoofdpersonage er wel, maar beweegt hij niet als ik arrow keys gebruik

7 antwoorden

Gesponsorde links
Offline vinTage - 18/03/2011 22:39
Avatar van vinTage Nieuw lid mhz, vage code.. heb je het nu over een class of over code in flash?

wat zijn de foutmeldingen?
Offline shana - 18/03/2011 22:45
Avatar van shana Nieuw lid er zijn geen foutmeldingen.
Ik heb een aparte .as file gemaakt waarin ik beschrijf dat er een timer van 3 seconden moet komen.
Na deze 3 seconden komt hij terecht op de frame 'background1' in de .fla file

Als ik dus in de .as file schrijf gotoAndStop('background1'), komt hij inderdaad op die frame, maar mijn movieclip beweegt niet (waarschijnlijk omdat ik gotoAndStop() gebruik, dat alles stilstaat)
Offline vinTage - 18/03/2011 22:52
Avatar van vinTage Nieuw lid die stop() wordt 'ge negeert' door mouseevents, maar na je reactie snap ik je niet helemaal meer, je 'move' code is iig goed.

De andere code is mss wel goed, maar ka ik zelf niet testen, omdat ik niet weet hoe en wat in die scene.

Offline shana - 18/03/2011 23:07
Avatar van shana Nieuw lid in de background1 frame zit gewoon een background zo groot als de stage, verder niets.
De fout speelt zich alleen af als ik via de .as klasse verwijs naar de 'background1' frame met de mc van het personage.

Als ik de mc apart afspeel op de background, werkt deze wel.
Daarmee dat ik dacht dat het probleem bij de gotoAndStop() zat
Offline vinTage - 18/03/2011 23:17
Avatar van vinTage Nieuw lid kun je en gestripte versie van je fla/classes uploaden ? dat maakt het iets makkelijker.
Offline shana - 18/03/2011 23:26
Avatar van shana Nieuw lid (.as file)


package {
import flash.display.*;
import flash.text.TextField;
import flash.utils.Timer;
import flash.events.*;

public class Bloeddruppel extends MovieClip {


public function Bloeddruppel() {
stop();
}

//aantal seconden voor de background geladen wordt

public function levelStart():void{
stop();
//timer van 3 seconden
var gametimer:Timer = new Timer(3000);

gametimer.addEventListener(TimerEvent.TIMER, ganaarLevel);
gametimer.start();

function ganaarLevel(evt:TimerEvent):void{
gametimer.stop();
gotoAndPlay('background1');
stage.invalidate();
}
}

}

('background1'):

import flash.ui.Keyboard;

stop();
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
var speed:int = 5;
function keyDownHandler(event:KeyboardEvent):void {
if(event.keyCode == Keyboard.LEFT){
edward_mc.x -=speed;
}
if(event.keyCode == Keyboard.RIGHT){
edward_mc.x +=speed;
}
}


kwist niet wat je bedoelde met gestript, maar hopelijk is dit al iets duidelijker
Offline vinTage - 18/03/2011 23:34 (laatste wijziging 18/03/2011 23:38)
Avatar van vinTage Nieuw lid met gestript bedoel ik een file waarin NIKS meer staat dan wat nodig is om je fout te reproduceren!

Een beetje code is leuk voor talen die alleen uit code bestaat, maar flash bevat ook nog objecten die je aanroept, die je instance namen moet geven...eea is dus (voor een luie mens als ik) lastig zelf te maken.



gelieve dus een fla (weeral) te uploaden met daarin alles maar niks meer dan de code/objecten om je 'fout' te zien/begrijpen.

ps, ook de as files he 

D


laatste edit => het zal voor later zijn > slapen -)
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.159s