Jag ska göra ett arkanoid liknande spel och har följande problem. Paddeln som krockar mot väggen ska studsa tillbaka... Funkar bra på vänster vägg men inte på höger, förstår inte problemet. Någon som kan? Kan i stort sett ingenting om flash/actionscript, men det borde vara:arkanoid & paddle problem...
kod:
function startUp() {
paddle.PADDLE_SPEED_X = 0;
paddle.MAX_SPEED = 1;
paddle.ACC = 0.3;
paddle.BREAK = 0.05;
paddle.WIDTH = 30;
PADDLE_STARTPOS_X = 180;
SCREENBOUND_LEFT = 0;
SCREENBOUND_RIGHT = 70;
_root.paddle._x = 50;
_root.paddle._y = 190;
}
function mainLoop() {
movePaddle();
}
function movePaddle() {
pressed = false;
if (Key.isDown(Key.LEFT)) {
//Flytta paddle vänster
paddle.PADDLE_SPEED_X -= paddle.ACC;
pressed = true;
} else if (Key.isDown(Key.RIGHT)) {
//Flytta paddle höger
paddle.PADDLE_SPEED_X += paddle.ACC;
pressed = true;
}
if (pressed == false) {
if (paddle.PADDLE_SPEED_X>0) {
paddle.PADDLE_SPEED_X -= paddle.BREAK;
}
if (paddle.PADDLE_SPEED_X<0) {
paddle.PADDLE_SPEED_X += paddle.BREAK;
}
}
if (paddle._x<(SCREENBOUND_LEFT+(paddle.WIDTH/2)))
{
trace("paddle speed;"+paddle.PADDLE_SPEED_X);
paddle.PADDLE_SPEED_X = Math.abs(paddle.PADDLE_SPEED_X);
}
if (paddle._x>SCREENBOUND_RIGHT)
{
paddle.PADDLE_SPEED_X=Math.abs(paddle.PADDLE_SPEED_X);
}
paddle._x += paddle.PADDLE_SPEED_X;
}Sv: arkanoid & paddle problem...
if (paddle._x>SCREENBOUND_RIGHT)
{
paddle.PADDLE_SPEED_X=-Math.abs(paddle.PADDLE_SPEED_X);
}
eller snyggare med båda sidorna:
if (paddle._x>SCREENBOUND_RIGHT || paddle._x<SCRE..._LEFT)
{
paddle.PADDLE_SPEED_X=-paddle.PADDLE_SPEED_X;
}