mastergoblin
05-03-2007, 12:57 PM
So I took a tutorial and whipped up this game code... Which in theory should work:
spd = 7;
// karakterens bevegelses fart
jump = true;
// gjør at karakteren faktisk fller ned til bakken når spillet starter
yspd = 0;
// Y aksens fart er 0 når spillet starter
xscale = char._xscale;
// lar karakteren stå mot venstre eller høyre
onEnterFrame = function () {
if (Key.isDown(Key.RIGHT)) {
//hvis høyre piltast er nede...
char._xscale = xscale;
//vender karakteren mot høyre
if(!ground.hitTest(char._x+spd+_x, char._y+_y-15, true) &&
!ground.hitTest(char._x+spd+_x, char._y+_y-dude._height, true)) {
// hvis det ikke er noen begrensinger foran karakteren
char._x += spd;
// beveger han seg fremover
if (char._x>_x-150) {
char._x=_x-150;
//hvis man er langt nok mot høyre stopper bevegelsen
ground._x -= spd;
//lar bakken bevege seg
gspd = -spd;
//gspd gjør at findene scroller og
}else{
gspd = 0;
}
}else{
gspd = 0;
}
if (!jump && yspd<=0) {
walk = true;
//hvis karakteren ikke hopper går han
}
} else if (Key.isDown(Key.LEFT)) {
//hvis vensstre piltast er nede ... det samme som skjedde med høyre men motsatt retning
char._xscale = -xscale;
// får karakteren til å vende mot venstre
if (!ground.hitTest(char._x+_x-spd, char._y+_y-15, true) &&
!ground.hitTest(char._x+_x-spd, char._y+_y-char._height, true)) {
char._x -= spd;
if (char._x<_x-Stage.width) {
char._x= _x-Stage.width;
ground._x += spd;
gspd = spd;
}else{
gspd = 0;
}
}else{
gspd = 0;
}
if (!jump && yspd<=0) {
walk = true
}
}else{
gspd = 0;
walk = false;
// hvis hverken venstre eller høyre piltast er nede scroller ikke findene og karakteren beveger seg ikke
}
if (walk) {
char.gotoAndStop(2);
} else if (yspd>0) {
char.gotoAndStop(3);
}else{
char.gotoAndStop(1);
}
// denne strengen velger movieclip for gåing hopping eller ingen av delene
if (Key.isDown(Key.SPACE) && !jump) {
walk = false;
jump = true;
yspd= 13;
// når space trykkes ned hopper du (true) og slutter og gå (false)
}
if (jump) {
yspd--;
if (yspd<=-20) {
yspd = -20;
}
char._y -= yspd;
// dette legger på gravitet når du hopper
}else{
yspd = 0;
// for at fritt fall ikke skal tolkes som et hopp
}
if (!jump) {
while (ground.hitTest(char._x+_x, char._y+_y-1, true)) {
char._y--;
}
}
if (ground.hitTest(char._x+_x, char._y+_y, true)) {
while (ground.hitTest(char._x+_x, char._y+_y-1, true)) {
//hvis bakken går oppover karakteren
dude._y -=1;
//flytt karakteren oppover
}
jump = false;
//gjør at karakteren ikke går under bakken
}else{
jump = true;
// hvis karakteren ikke berører bakken faller han
}
if (ground.hitTest(char._x+_x, char._y+_y-char._height, true) && jump && yspd>0) {
yspd = 0;
// hvis karakteren skaller sluuter han å gå oppover
}
};
for (i=0; i<3; i++) {
duplicateMovieClip(enemy, "e_"+i, i*100),
// dupliserer fiende movieclip
_root.scroll1["e_"+i]._x = random(Stage.width);
//gir den duplikate fienden en tilfeldig _x verdi
_root.scroll1["e_"+i]._y = 100;
// fiendens y verdi blir 100
_root.scroll1["e_"+i].spd = (spd/4)+random(4);
// gir fienden en tilfedig spd (fart) verdi
_root.scroll1["e_"+i].xscale = _root.scroll1["e_"+i]._xscale;
//lager en variable for å la fienden vende mot høyre og venstre
_root.scroll1["e_"+i].jump = true;
//gjør at fienden faller når du begynner
_root.scroll1["e_"+i].onEnterFrame = function() {
this._x+=gspd;
//når du scroller følger findene med
if (char._x<this._x-5) {
this._xscale = -this.xscale;
if (!ground.hitTest(this._x+_x+this.spd, this._y+_y-15, true)) {
this._x -= this.spd;
}
} else if (char._x>this._x+5){
this._xscale = this.xscale;
if(!ground.hitTest(this._x+_x+this.spd, this._y+_y-15, true)){
this._x += this.spd;
}
}
//beveger fienden mot karakteren og for dem til å vende riktig vei
if (this.jump){
this.yspd--;
if (this.yspd<=-20){
this.yspd = -20;
}
this._y -= this.yspd;
}
this._y -= this.yspd;
}else{
this.yspd = 0;
}
//samme som hoppe koden til karakteren
if(ground.hitTest(this._x+_x, this._y+_y, true)){
while(ground.hitTest(char._x+_x, char._y+_y-1, true)){
char._y -= 1;
}
this.jump = false;
}else{
this.jump = true;
}
if(this.hitTest(char._x+_x, char._y+_y+this._height, true) &&
char.hitTest(this._x+_x, this._y+_y-this._height, true) && yspd<0 &&
this._currentframe !=2){
this.gotoAndStop(2); y
yspd=8;
//hvis karakteren hopper og treffer toppen av movieclipet til fienden spiller den dødsanimasjonen sin
}
};
}
Never mind the // messages as they are in Norwegian, and are made to show that I know what I´m doing.
However I get this message when I try to run it:
**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 144: Syntax error.
}else{
**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 164: Unexpected '}' encountered
}
Total ActionScript Errors: 2 Reported Errors: 2
So any advice on what I can do to fix this?
spd = 7;
// karakterens bevegelses fart
jump = true;
// gjør at karakteren faktisk fller ned til bakken når spillet starter
yspd = 0;
// Y aksens fart er 0 når spillet starter
xscale = char._xscale;
// lar karakteren stå mot venstre eller høyre
onEnterFrame = function () {
if (Key.isDown(Key.RIGHT)) {
//hvis høyre piltast er nede...
char._xscale = xscale;
//vender karakteren mot høyre
if(!ground.hitTest(char._x+spd+_x, char._y+_y-15, true) &&
!ground.hitTest(char._x+spd+_x, char._y+_y-dude._height, true)) {
// hvis det ikke er noen begrensinger foran karakteren
char._x += spd;
// beveger han seg fremover
if (char._x>_x-150) {
char._x=_x-150;
//hvis man er langt nok mot høyre stopper bevegelsen
ground._x -= spd;
//lar bakken bevege seg
gspd = -spd;
//gspd gjør at findene scroller og
}else{
gspd = 0;
}
}else{
gspd = 0;
}
if (!jump && yspd<=0) {
walk = true;
//hvis karakteren ikke hopper går han
}
} else if (Key.isDown(Key.LEFT)) {
//hvis vensstre piltast er nede ... det samme som skjedde med høyre men motsatt retning
char._xscale = -xscale;
// får karakteren til å vende mot venstre
if (!ground.hitTest(char._x+_x-spd, char._y+_y-15, true) &&
!ground.hitTest(char._x+_x-spd, char._y+_y-char._height, true)) {
char._x -= spd;
if (char._x<_x-Stage.width) {
char._x= _x-Stage.width;
ground._x += spd;
gspd = spd;
}else{
gspd = 0;
}
}else{
gspd = 0;
}
if (!jump && yspd<=0) {
walk = true
}
}else{
gspd = 0;
walk = false;
// hvis hverken venstre eller høyre piltast er nede scroller ikke findene og karakteren beveger seg ikke
}
if (walk) {
char.gotoAndStop(2);
} else if (yspd>0) {
char.gotoAndStop(3);
}else{
char.gotoAndStop(1);
}
// denne strengen velger movieclip for gåing hopping eller ingen av delene
if (Key.isDown(Key.SPACE) && !jump) {
walk = false;
jump = true;
yspd= 13;
// når space trykkes ned hopper du (true) og slutter og gå (false)
}
if (jump) {
yspd--;
if (yspd<=-20) {
yspd = -20;
}
char._y -= yspd;
// dette legger på gravitet når du hopper
}else{
yspd = 0;
// for at fritt fall ikke skal tolkes som et hopp
}
if (!jump) {
while (ground.hitTest(char._x+_x, char._y+_y-1, true)) {
char._y--;
}
}
if (ground.hitTest(char._x+_x, char._y+_y, true)) {
while (ground.hitTest(char._x+_x, char._y+_y-1, true)) {
//hvis bakken går oppover karakteren
dude._y -=1;
//flytt karakteren oppover
}
jump = false;
//gjør at karakteren ikke går under bakken
}else{
jump = true;
// hvis karakteren ikke berører bakken faller han
}
if (ground.hitTest(char._x+_x, char._y+_y-char._height, true) && jump && yspd>0) {
yspd = 0;
// hvis karakteren skaller sluuter han å gå oppover
}
};
for (i=0; i<3; i++) {
duplicateMovieClip(enemy, "e_"+i, i*100),
// dupliserer fiende movieclip
_root.scroll1["e_"+i]._x = random(Stage.width);
//gir den duplikate fienden en tilfeldig _x verdi
_root.scroll1["e_"+i]._y = 100;
// fiendens y verdi blir 100
_root.scroll1["e_"+i].spd = (spd/4)+random(4);
// gir fienden en tilfedig spd (fart) verdi
_root.scroll1["e_"+i].xscale = _root.scroll1["e_"+i]._xscale;
//lager en variable for å la fienden vende mot høyre og venstre
_root.scroll1["e_"+i].jump = true;
//gjør at fienden faller når du begynner
_root.scroll1["e_"+i].onEnterFrame = function() {
this._x+=gspd;
//når du scroller følger findene med
if (char._x<this._x-5) {
this._xscale = -this.xscale;
if (!ground.hitTest(this._x+_x+this.spd, this._y+_y-15, true)) {
this._x -= this.spd;
}
} else if (char._x>this._x+5){
this._xscale = this.xscale;
if(!ground.hitTest(this._x+_x+this.spd, this._y+_y-15, true)){
this._x += this.spd;
}
}
//beveger fienden mot karakteren og for dem til å vende riktig vei
if (this.jump){
this.yspd--;
if (this.yspd<=-20){
this.yspd = -20;
}
this._y -= this.yspd;
}
this._y -= this.yspd;
}else{
this.yspd = 0;
}
//samme som hoppe koden til karakteren
if(ground.hitTest(this._x+_x, this._y+_y, true)){
while(ground.hitTest(char._x+_x, char._y+_y-1, true)){
char._y -= 1;
}
this.jump = false;
}else{
this.jump = true;
}
if(this.hitTest(char._x+_x, char._y+_y+this._height, true) &&
char.hitTest(this._x+_x, this._y+_y-this._height, true) && yspd<0 &&
this._currentframe !=2){
this.gotoAndStop(2); y
yspd=8;
//hvis karakteren hopper og treffer toppen av movieclipet til fienden spiller den dødsanimasjonen sin
}
};
}
Never mind the // messages as they are in Norwegian, and are made to show that I know what I´m doing.
However I get this message when I try to run it:
**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 144: Syntax error.
}else{
**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 164: Unexpected '}' encountered
}
Total ActionScript Errors: 2 Reported Errors: 2
So any advice on what I can do to fix this?