el problema lo tengo a la hora de acoplar el codigo del capitulo dos
//Colisión contra las paredes
//Derecha etc,...
dentro del evento onClipEvent (enterframe) "parte final"
ej:
Código ActionScript :
//Colisión contra las paredes
//Derecha
if (_parent._x>880) {
_parent._x = 880;
if (_root.speeda>0) {
_root.speeda--;
} else {
_root.speeda++;
}
}
//Izquierda
if (_parent._x<20) {
_parent._x = 20;
if (_root.speeda>0) {
_root.speeda--;
} else {
_root.speeda++;
}
}
//Abajo
if (_parent._y>880) {
_parent._y = 880;
if (_root.speeda>0) {
_root.speeda--;
} else {
_root.speeda++;
}
}
//Arriba
if (_parent._y<20) {
_parent._y = 20;
if (_root.speeda>0) {
_root.speeda--;
} else {
_root.speeda++;
}
}dentro de
Código ActionScript :
onClipEvent (enterFrame) {
//determinar velocidades maximas
if (speed<-10) {
speed += Number(.3);
}
if (speed>15) {
speed -= .1;
}
//disminuir la velocidad si no se esta acelerando
if (!Key.isDown(Key.UP) && !Key.isDown(Key.DOWN)) {
speed *= .98;
}
//cuando la velocidad esta por debajo de 0.1 y mas de -0.1 se convierte en 0
if (speed<.1 && speed>-.1) {
speed = 0;
}
//acelerar
if (Key.isDown(Key.UP)) {
if (speed<-1) {//aceleracion extra si venis en reversa
speed -= (speed/3);
} else {//aceleracion normal
speed += Number(.1);
}
}
if (Key.isDown(Key.DOWN)) {//frenado y reversa
speed -= .3;
}
if (Key.isDown(Key.LEFT)) {//rotacion
if (speed != 0) {//si no hay velocidad, no se puede girar
_rotation -= 2;
}
}
if (Key.isDown(Key.RIGHT)) {
if (speed != 0) {
_rotation += 2;
}
}
this._x += Math.sin(_rotation*(Math.PI/180))*speed;//formulas de avance
this._y += Math.cos(_rotation*(Math.PI/180))*speed*-1;
}tema que me da a entender que logicamente tendria que quedar asi el codigo completo:
Código ActionScript :
onClipEvent (load) {
speed = 0;
}
onClipEvent (enterFrame) {
//determinar velocidades maximas
if (speed<-10) {
speed += Number(.3);
}
if (speed>15) {
speed -= .1;
}
//disminuir la velocidad si no se esta acelerando
if (!Key.isDown(Key.UP) && !Key.isDown(Key.DOWN)) {
speed *= .98;
}
//cuando la velocidad esta por debajo de 0.1 y mas de -0.1 se convierte en 0
if (speed<.1 && speed>-.1) {
speed = 0;
}
//acelerar
if (Key.isDown(Key.UP)) {
if (speed<-1) {//aceleracion extra si venis en reversa
speed -= (speed/3);
} else {//aceleracion normal
speed += Number(.1);
}
}
if (Key.isDown(Key.DOWN)) {//frenado y reversa
speed -= .3;
}
if (Key.isDown(Key.LEFT)) {//rotacion
if (speed != 0) {//si no hay velocidad, no se puede girar
_rotation -= 2;
}
}
if (Key.isDown(Key.RIGHT)) {
if (speed != 0) {
_rotation += 2;
}
}
this._x += Math.sin(_rotation*(Math.PI/180))*speed;//formulas de avance
this._y += Math.cos(_rotation*(Math.PI/180))*speed*-1;
}
//Colisión contra las paredes
//Derecha
if (_parent._x>880) {
_parent._x = 880;
if (_root.speeda>0) {
_root.speeda--;
} else {
_root.speeda++;
}
}
//Izquierda
if (_parent._x<20) {
_parent._x = 20;
if (_root.speeda>0) {
_root.speeda--;
} else {
_root.speeda++;
}
}
//Abajo
if (_parent._y>880) {
_parent._y = 880;
if (_root.speeda>0) {
_root.speeda--;
} else {
_root.speeda++;
}
}
//Arriba
if (_parent._y<20) {
_parent._y = 20;
if (_root.speeda>0) {
_root.speeda--;
} else {
_root.speeda++;
}
}pero no se como diablos "y disculpad mi ignorancia" las 4 declaraciones que me dan error aparezcan dentro del controlador onClipEvent.
Código :
**Error** Escena=Escena 1, capa=Capa 1, fotograma=1:Línea 46: La declaración debe aparecer dentro del controlador on/onClipEvent
if (_parent._x>880) {
**Error** Escena=Escena 1, capa=Capa 1, fotograma=1:Línea 55: La declaración debe aparecer dentro del controlador on/onClipEvent
if (_parent._x<20) {
**Error** Escena=Escena 1, capa=Capa 1, fotograma=1:Línea 64: La declaración debe aparecer dentro del controlador on/onClipEvent
if (_parent._y>880) {
**Error** Escena=Escena 1, capa=Capa 1, fotograma=1:Línea 73: La declaración debe aparecer dentro del controlador on/onClipEvent
if (_parent._y<20) {
gracias por la ayuda, la verdad que no encuentro manera de arreglarlo.
