Я играю с Physics Engine для AS3 , и приведенный ниже код в основном является примером hello world. Однако я внес небольшое изменение, объявив свойство «ball» как WheelParticle в начале определения класса. (простите мою терминологию, если она неверна). Ранее он был объявлен внутри конструктора как
var ball:WheelParticle = new WheelParticle(...);
и это сработало нормально. Но теперь, пытаясь по-моему, я получаю ошибку
неявное приведение значения типа
org.cove.ape.WheelParticle для
несвязанный тип Class |
ball: WheelParticle = new ... и т. д. и т. д.
"незаконное присвоение классу
WheelParticle "
Так что я думаю, что мое заявление public var ball:WheelParticle
должно быть чем-то другим. Но что?
В любом случае, вот код. Это довольно коротко. Я бы сослался на документацию, но ее нет. В любом случае, я ничего не найду.
пакет {
import org.cove.ape.*;
import flash.events.*;
import flash.display.Sprite;
public class Bounce extends Sprite {
public var ball:WheelParticle;
public function Bounce() {
stage.focus = this;
stage.frameRate = 100;
addEventListener(Event.ENTER_FRAME, run);
stage.addEventListener(KeyboardEvent.KEY_DOWN, moveLeft);
APEngine.init(0.3);
APEngine.container = this;
APEngine.addMasslessForce(new Vector(0,2));
var defaultGroup:Group = new Group();
defaultGroup.collideInternal = true;
var ball:WheelParticle = new WheelParticle(250,10,40, false, 1, 0.7, 0.1);
defaultGroup.addParticle(ball);
var rp:RectangleParticle = new RectangleParticle(250,300,300,50,0,true);
defaultGroup.addParticle(rp);
APEngine.addGroup(defaultGroup);
}
private function moveLeft(e:Event):void{
ball.speed += 1;
}
private function run(evt:Event):void {
APEngine.step();
APEngine.paint();
}
}
* *} Тысяча двадцать-один