我正在创建一个棋盘游戏,并且正在使用 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();}}}
骰子按钮类:
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。
此外,如果有人知道如何根据圆圈落在哪个正方形上来触发标记框架,那将是一个加号。