我目前正在制作一款flash游戏,并且对于AS 3或flash来说相当新颖。需要一些关于如何实现我的游戏核心元素的建议。碰撞检测 - 如何?
这个想法是2人竞争的蛇风格的游戏,只有玩家不会试图互相杀戮,但是试图达到他们的对手的产卵点。
游戏的关键部分之一将是一个网格,创建在舞台上,任何玩家都可以通过穿过网格上的点来“创建墙壁”。我不知道如何实现这一点。目前我的基本情况是有两名球员出发,如果任何一名球员到达另一名球员的起跑区,他们将得分。
我需要如何去实现这个功能的一些建议:
网格中的每个点都会在一定的状态开始,当玩家通过这一点,这将是“激活”。然后玩家可以通过任何相邻的点移动到“激活”点,这将在两个活动点之间产生一堵墙,并且这就是他们将如何创建迷宫来保护他们的起始区域。
我应该单独生成每个点或创建一个简单的函数网格:
//function to create grids on the map
public function createGrid()
{
var rows:int = 6;
var cols:int = 11;
for (var py:int = 0; py < rows; py++) {
for (var px:int = 0; px < cols; px++) {
this.grid = new griDot(player1,player2, this);
grid.x = 50 + grid.width + 100 * px +10;
grid.y = 50 + grid.height +100 * py + 10;
this.addChild(grid);
}
}
}
,他们正在使用此功能检测(不要笑我很小白):
public function checkDotCollision(player)
{
if(player1.hitTestObject(grid) == true)
{
trace("player dot collision detected");
}
if(player2.hitTestObject(grid) == true)
{
trace("player dot collision detected");
}
}
目前只有网格最左下方的广场正在检测玩家。任何关于如何实现这个功能的帮助/建议将不胜感激。