cocos2dでフリーランニング/横スクロールタイプのゲームを作りたいです。タイルマップで試してみますが、
問題のためにスタックしました。問題は、ジャンプしたいのですが、ジャンプした後、プレーヤーのスプライトが
床の境界を下げ、境界を取得しない場合は常に床の境界の位置を取得します
dies。誰かが私が何をしているのか、チュートリアルなどを私に提案できますか?またはコード例で私を助けてくれますか?
ありがとう
cocos2dでフリーランニング/横スクロールタイプのゲームを作りたいです。タイルマップで試してみますが、
問題のためにスタックしました。問題は、ジャンプしたいのですが、ジャンプした後、プレーヤーのスプライトが
床の境界を下げ、境界を取得しない場合は常に床の境界の位置を取得します
dies。誰かが私が何をしているのか、チュートリアルなどを私に提案できますか?またはコード例で私を助けてくれますか?
ありがとう
Box2Dを使用し、「Citrus Engine」と呼ばれるフラッシュエンジンに似たクラスをいくつか追加して、グローバルゲームジャムの基本的なプラットフォーマーを作成しました。これを好きなように使用して、例として取り上げることができます。
私はあなたが望むコードを私のゲームに書きます。
したがって、プレーヤークラスを作成し、プレーヤーの重力と速度を設定することをお勧めします。プレイヤークラスの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を適用してください。