2

cocos2dでフリーランニング/横スクロールタイプのゲームを作りたいです。タイルマップで試してみますが、

問題のためにスタックしました。問題は、ジャンプしたいのですが、ジャンプした後、プレーヤーのスプライトが

床の境界を下げ、境界を取得しない場合は常に床の境界の位置を取得します

dies。誰かが私が何をしているのか、チュートリアルなどを私に提案できますか?またはコード例で私を助けてくれますか?

ありがとう

4

2 に答える 2

2

Box2Dを使用し、「Citrus Engine」と呼ばれるフラッシュエンジンに似たクラスをいくつか追加して、グローバルゲームジャムの基本的なプラットフォーマーを作成しました。これを好きなように使用して、例として取り上げることができます。

http://globalgamejam.org/2012/o

于 2012-07-18T17:56:07.600 に答える
0

私はあなたが望むコードを私のゲームに書きます。

したがって、プレーヤークラスを作成し、プレーヤーの重力と速度を設定することをお勧めします。プレイヤークラスのupdateメソッドでプレイヤーの位置を設定します。そして、配列にフロアを追加し、更新メソッドで、CGRectIntersectsRectを使用してプレーヤーとフロア間の衝突をテストします。

floor *flr = [allfloors objectAtIndex:i];
CGRectIntersectsRect([self boundingbox],[flr boundingbox])
{
  self.position = ccp(self.position.x,flr.position.y + flr.contentSize.height/2);
  velocity = 0;
}

ジャンプしたいときはいつでもVelocityを適用してください。

于 2012-07-20T14:03:01.480 に答える