Не знаю, что мне делать, переписывал код много раз. Как я себе все это представляю - оно должно работать. Но нет.
Есть два объекта MCball и MCplatform.
Платформа движется под управлением игрока, не выходит за границы экрана.
Шарик крепится сверху платформы и перемещаетя вместе с ней. (Это работает, пока я не добавляю следущее)
Ввожу переменную.
Если игрок нажимает Энтер, переменная становится равной 1.
Если переменная равна 1, шарик отделяется и летит вверх с заданной скоростью. Пока клавиша не нажата, шарик не летит а прикреплен к платформе.

Код AS1/AS2:
//Ball_speed - скорость шарика
var Ball_speed = 4;
//Ball_dx = скорость по x
//Ball_dy = скорость по y
var Ball_dx = 2*Math.cos((1-Math.random())*Math.PI)*Ball_speed;
var Ball_dy = Ball_speed;
var Counter: 0;
onEnterFrame = function()
{
//Если нажата кнопка
if (Key.isDown(Key.ENTER)){
Counter = 1;
}
else{
Counter = 0;
}
//Начальное положение шарика по отношению к платформе. Он прикреплен сверху к ней.
//Если кнопка нажата, шарик летит со скоростью.
if (Counter = 1){
MCball._x = (MCball._x + Ball_dx);
MCball._y = (MCball._y + Ball_dy);
}
else{
MCball._x = (MCplatform._x - 1);
MCBall._y = (MCplatform._y + 4.5);
}
}
В итоге при запуске программы я наблюдаю - шарик сразу вылетает с платформы вверх по y и немного под углом. Предыдущая стабильная версия была без переменной Counter и скорости шарика, в ней он постоянно был прикреплен к платформе.
В чем может быть проблема в моем коде? Может что-то не то в определении нажата ли кнопка или нет - тем самым лететь шарику или быть прикрепленным?