私はボードゲームを作成していて、AS3でオブジェクト指向プログラミングを使用しています。ゲームボード上を移動する円でムービークリップを作成しました。18個の正方形と18個のフレームがあります。乱数関数を備えたサイコロで値を表示するボタンがあります。
public function rollDie():void
{_dieValue = Math.ceil(Math.random()*6)
this.gotoAndStop(_dieValue);}
サイコロボタン、ダイス、ゲームボード、メインボードのクラスがあります。サイコロで得られる値に応じて、円をボード上で移動させようとしています(またはmcのフレームに移動します)。これまでの私のコードは次のとおりです。
メインボード:
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.events.Event;
public class DiceOut extends MovieClip
{
public function DiceOut()
{
trace("class diceout defined");
createListeners();
}
public function createListeners():void
{
//trace("createListeners");
rollButton.addEventListener(MouseEvent.CLICK, buttonClick);
}
public function buttonClick(e:MouseEvent):void
{
die1.rollDie();
trace(die1.dieValue);
}}}
サイコロクラス:
package {
import flash.display.MovieClip;
public class die extends MovieClip {
private var _dieValue:uint;
public function die() {
trace("dice created");
stop();
}
public function rollDie():void
{
_dieValue = Math.ceil(Math.random()*6)
this.gotoAndStop(_dieValue);
}
public function get dieValue():uint
{
return _dieValue;
}}}
ゲームボードクラス:
package {
import flash.display.MovieClip;
public class gameboard extends MovieClip {
public function gameboard() {
trace("Gameboard Created");
stop();}}}
DiceButtonクラス:
package {
import flash.display.MovieClip;
import flash.events.MouseEvent;
public class GameButton extends MovieClip {
public function GameButton() {
trace("Button created");
stop();
createListeners();
}
private function createListeners():void
{
this.addEventListener(MouseEvent.MOUSE_OVER, hoverOver);
this.addEventListener(MouseEvent.MOUSE_OUT, hoverOff);
}
public function hoverOver(e:MouseEvent):void
{
this.gotoAndStop(2);
}
public function hoverOff(e:MouseEvent):void
{
this.gotoAndStop(1);
}}}
誰かが非常に役立つだろういくつかの洞察を与えることができれば。ゲームボードのmcインスタンスはgameBoardです。
また、円がどの正方形に着地するかに応じて、ラベル付きフレームをトリガーする方法を誰かが知っている場合は、それがプラスになります。