0
我正在使用AS3在Flash CS4中製作自上而下的射擊遊戲。在Flash CS4 AS3中使用localToGlobal
當我射擊子彈。我已經將其開始的位置設爲player.x和player.y。但這正是玩家動畫片的「頭像」所在。我希望它是從槍的地方創建的。
我在播放器movieclip內製作了另一個名爲「NewShootingPoint」的動畫片段,並將其定位在槍的位置。
我無法找到任何適當的localToGlobal引用來指導我。我知道localToGlobal將movieclip的本地位置轉換爲全球位置。但我該怎麼做?
我嘗試這樣做:(新代碼)
package {
import flash.display.MovieClip;
import flash.geom.Point;
import flash.display.Stage;
import flash.events.MouseEvent;
import flash.events.Event;
public class Main extends MovieClip {
//var myPoint : Point = new Point(340.1, 232.2);
var player : Player = new Player;
var origin : Gun = new Gun();
var bullet : Bullet = new Bullet();
public function Main() {
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDownHandler);
player.x = stage.stageWidth/2;
player.y = stage.stageHeight/2;
stage.addChild(player);
}
function onMouseDownHandler(e:Event) {
// I want this to happen.
bullet.x = origin.x;
bullet.y = origin.y;
// But it's still stuck at (0,0)
stage.addChild(bullet);
bullet.addEventListener(Event.ENTER_FRAME, thingy);
}
function thingy(e:Event) {
bullet.x += 10;
bullet.y += 10;
}
}
}
是。我知道我應該使用類。我會稍後再做。 請指教!
localToGlobal用於獲取物體的座標根據階段,但因爲你添加的一切舞臺,開始與localToGlobal是沒有用的,你的。 – BotMaster