0

Android ゲームのゲームボード/ウィンドウのエッジでエナミーを生成するためのアルゴリズムを探しています。私は古い SpaceWars/Shooting asteriods を宇宙船でやっています。小惑星をゲームボードの外のランダムな場所に出現させる必要があります。その後、小惑星はさまざまな方向と速度でゲームボードに移動します。

小惑星をランダムな場所に配置するのは簡単ですが、凝灰岩の部分 (少なくとも私にとって) は、小惑星が与えているランダムな場所に基づいて正しい移動方向を与えることです。

例えば:

ゲームボード = 1280 x 720

小惑星のランダム位置 = 1100, 0 (x, y)

右移動方向:

asteroid.x < gameboard.x/2 - 可能な移動方向 = 南と南東

asteroid.x > gameboard.x/2 - 可能な移動方向 = 南と南西

次に、小惑星には 2 つの可能な移動方向があります (それが今のところゲームプランを定義する方法です): 真南または南西。

私は多くのifステートメントを実行できましたが、誰かが問題の何らかのアルゴリズムで私を助けてくれることを望んでいますか?

4

2 に答える 2

1

This link may help you http://forums.create.msdn.com/forums/p/100862/599129.aspx

I think you might always need some nested if statements but this way may be a bit more clever

于 2012-04-05T15:10:36.183 に答える
1

たぶん私はあなたの質問を間違えましたが、これは私が解決策を見る方法です:

小惑星x-positionがデバイスの幅 (720) を超える場合、その方向は SW である必要があり、それ以外の場合は S である必要があります。

if(asteroid.x>DEVICE_WIDTH){
    asteroid.direction="SW";
}else{
    asteroid.direction="S";
}
于 2012-04-04T18:05:02.933 に答える