如何以特定模式添加一组精灵

时间:2016-11-08 11:21:15

标签: swift xcode sprite-kit

如果您按住屏幕,我制作的游戏会有一个上下移动的游戏。这不是重要的部分。

我需要的是添加ENEMIES,这些都是针对你的。

我需要知道如何以几种不同的模式添加ENEMIES。

像这样:(看看硬币图案,我怎样才能实现这个?)

Coins with pattern Coins without

1 个答案:

答案 0 :(得分:1)

您可以定义一个二维数组来指示硬币的位置,例如

var coinRow = [[Int]]()

coinRow.append([0,1,1,1,1,1,1,0])  // '0' means 'No coin here'
coinRow.append([1,1,1,1,1,1,1,1])  // '1' means 'put coin here'
coinRow.append([0,1,1,1,1,1,1,0])

然后对待每个硬币'区域'作为3x8网格,因此左下角的起始位置为(0,0),请执行以下操作:

let coinStart = CGPoint(0,0)
coinPos = coinStart
for row in 0...2 {                       // Iterate over all rows
    for column in 0...7 {                // and all columns
        if coinRow[row][column] == 1 {   // Should there be a coin here?
            putCoin(at: coinPos)         // yes - draw one
        }
        coinPos.x += coin.width + coinHorizontalSeparation  // next coin location
        }
    coinPos.y += coin.height + coinVerticalSeparation  // Position to next row
    coinPos.x = coinStart.x                           // Reset position to start of row
}

你不会实际从(0,0)开始,所以根据需要设置coinStart。如果硬币组以常规模式出现,那么您可以计算coinStart并使生成硬币块的代码成为您调用的函数,并将coinStart作为参数传递。