携帯電話用の2Dゲームを作成している 文字のために小さくて大きなジャンプが必要です 私はその違いを伝えるために苦労しましたタップ(小さなジャンプのため)と押し続け(大きなジャンプのため)。タップと押されたままのジャンプが異なる(C#)
-1
A
答えて
0
キャラクターが空中で、速度が0でなく、上方向であるかどうかを確認できます。これが当てはまる場合、それはキャラクターが(ほとんどの場合、)ジャンプしたことを意味します。そして、これが当てはまる場合、短時間(ここではタイマーを使用してください)に、プレイヤーがまだ画面を押しているかどうかを確認します。まだスクリーンを押している場合は、大きなジャンプの高さに達するまでキャラクターに力を加える。
擬似コード:
if (player presses screen)
{
// Add small impulse to make the character jump to the "minimum jump height"
// Start timer
if (character's velocity is upwards and they are not grounded)
{
if (timer is greater than your chosen time)
{
// Add another impulse so character jumps to the "maximum jump height"
// Stop and reset timer
}
}
}
これは基本的な計画である、それは完璧ではないのですが、それはあなたが始める必要があります。これを行うには多くの方法があります。真に可変なジャンプ高さが必要な場合は、Impulse
ではなくForce
を使用することを検討してください。 UnityドキュメントのAddForceを参照してください。
注:FixedUpdate()
内部ではなくUpdate()
で物理学ベースのアクションを適用するためのより良い方法です。これは通常、Update()
でプレイヤーの入力を確認したいのでもっと複雑になりますが、物理ベースのアクションの問題を避けるために必要なステップです。
関連する問題
- 1. 画像が押された/タップされた回数を数えます
- 2. 戻るボタンが押されたときにジャンプが終了する
- 3. "Ctrl + C"ボタンが押されたC#コンソールアプリケーション
- 4. どのボタンがタップされましたか... iPhoneとObj-Cの質問
- 5. キャンセルボタンがタップされるたびに検索バーが1行下にジャンプします
- 6. CGEventタップで押された修飾キーを取得する
- 7. ユーザーが画面をタップするとスプライトがジャンプする?
- 8. Obj-Cのスペースが押されたバグ?
- 9. XboxのボタンがC++で押された
- 10. C#フォーカスがないときに押されたキーを認識
- 11. アレイのサイズが入力されたものと異なる - C
- 12. スティッキーナビゲーションが表示されたときにページがジャンプします
- 13. ボタンをクリックすると、ボタンが押されたままです。
- 14. ビデオフレームは、esc、スペースバーまたはエンターキーが押されたときにのみ表示されます。OpenCV C++
- 15. ボタンがタップされたときにテキストフィールドが表示される
- 16. テーブル行の「削除」ボタン(タップまたはスワイプの後に表示される)がタップまたは解除されたときにカスタムナビゲーションバーボタンのタイトルを設定する
- 17. 私のボタンが押されたときに私のボタンが押された
- 18. ジャンプ機能 - フレームレートが異なる
- 19. jQueryスライダが異なる値にジャンプします
- 20. C#キーが押されたときの通知
- 21. C \ C++プリプロセッサオーバーロードされたマクロのための異なる引数
- 22. HttpClient - ブラウザと異なるコンテンツが返されました
- 23. C#Array.ValueはC++で作成された配列と異なります
- 24. 長押しとボタンのタップを区別できますか?
- 25. C#| SharpDX.XInput |コントローラ上のボタンが一度押され、押されていないことを検出する方法
- 26. Springboardでホームボタンを押してアプリケーションアイコンをタップすると、同期処理が再開されますか?
- 27. UIPageViewControllerスワイプとタップの動作が異なる
- 28. タップしたときにnavbarが表示されない
- 29. タップしたときにチェックマークが表示されない
- 30. UITableViewCellが押されたときのUIViewController
タップ自体を通過する入力時間を計算するだけです。 –
countDownタイマーを使って試してみましたが、頻繁に両方のケースを適用して終了します –
コミュニティに役立つ可能性があるので、ポストにコードを追加できますか?それ以外の場合は、あなたが試したことや試していることはわかりません –