1

私はプラットフォーム ゲームを作成していますが、すべてが素晴らしかったです。画面の左側をタッチするとスプライトが移動し、右側をタッチするとスプライトがジャンプしました。しかし、それから私はそれを自分で動かすことにしました。なのでccmoveto機能を追加したのですが、ジャンプしなくなりました!私はcocos2dを初めて使用しますが、これを除いてすべて正常に機能しています。すでに検索しましたが、答えが見つかりませんでした。誰か助けてください。私はすべてを試しましたが、ccmoveto アクションを削除した場合にのみジャンプします。cocos2d 2.0 を使用しています ありがとうございます!!

4

2 に答える 2

1

CcMoveToは、CCJumpなどの他のアクションからの変更を含め、手動の位置変更をオーバーライドします。あなたのキャラクターは、何があっても、目的地に一直線に移動するように設定されています。

ゲームプレイロジックにアクションを使用しないことを常にお勧めするのは、このような問題です。特に位置、あなたはそれを完全に制御し続ける必要があります。方向ベクトルを使用し、更新のたびに位置を統合します。必要なことはすべて自由に実行できます。

于 2013-03-02T11:43:02.160 に答える
0

私のアドバイスは、cocos2d で提供される物理エンジンの 1 つを使用することです: Box2D および Chipmunk 物理演算。このエンジンのおかげで、ワールドの特性 (つまり、重力ベクトル)、スプライトの形状と質量 (つまり、重みのある四角形) を定義できます。次に、ジャンプする必要がある場合は、必要な特性 (角度など) を持つ力ベクトルを作成し、スプライトを物理的なボディで更新し続けます。これにより、スプライトが非常にリアルにジャンプして着地します。

于 2013-03-02T08:38:38.037 に答える