我正在做一個測試/遊戲,我遇到了一個問題,我無法弄清楚。 我試圖在舞臺上添加對象(在我的例子中爲磚塊),但是添加的方式是它們從來不會碰到另一個,並且當舞臺上沒有剩餘空間時,停止添加它們並顯示可以說「沒有更多的空間」。如何添加沒有他們的物體相互碰撞
階段是500x500px,「塊」是75px到30px,但我需要這個能夠對其他具有不同寬度和高度的對象進行相同操作。 我會非常感謝爲此提供的解決方案。:)
創建塊是在AS中完成的。 有出口爲AS的名稱座
package {
import flash.display.MovieClip;
import flash.events.Event;
public class MainClass extends MovieClip {
private var _blockTime:Number = 0;
private var _blockLimit:Number = 20;
private var Number_:int =0;
private var _blockHolder:MovieClip = new MovieClip();
public function MainClass() {
addEventListener(Event.ENTER_FRAME ,onEveryFrame);
this.addChild(_blockHolder)
}
private function onEveryFrame(ev:Event):void{
makeBlocks();
}
private function makeBlocks():void{
_blockTime++;
if(_blockTime >= _blockLimit){
var _block:Block = new Block();
_block.y = Blocks_YX_Positioning()
_block.x = Blocks_YX_Positioning()
_blockHolder.addChild(_block);
_blockTime = 0;
Number_++
}
}
//code so the block is staing on the stage
private function Blocks_YX_Positioning():int{
var _block_YX:int = Math.random()*500
if (_block_YX < 0) {
_block_YX = 50;
}
if (_block_YX > 450) {
_block_YX = 450;
}
return _block_YX;
}
}
}
你的問題不是很需要它的地方。聽起來好像你在問如何實現碰撞檢測(基本上是訓練);這些問題表明缺乏研究(請參閱:http://stackoverflow.com/help/how-to-ask)。如果您在分享的代碼中遇到問題,那麼您會發現願意提供幫助的響應速度更快的社區。保持;看起來你正朝着正確的方向前進。 :) – Atriace