← 一覧に戻る
議論 フォーラム

GDevelop:一時停止時とレベルクリア時のスコア表示停止方法

GDevelopでゲームを開発している際に、一時停止メニューを開いた時やレベルをクリアした後に、スコアのカウントダウンが意図せず続いてしまうという問題について、フォーラムで活発な議論が行われています。

この投稿では、プレイヤーが「space」キーでゲームを一時停止した際には、スコア表示も同時に停止することを期待していますが、実際には一時停止中のみ、あるいはレベルクリア後のみスコアのカウントが止まるという状況が発生しており、両方の条件を満たせないという課題が提起されています。

投稿者は、自身のゲームが「ランベース」のプラットフォーマーであり、キャラクターが常に前進し続ける仕様であることを説明しています。スコアシステムは、シーン開始時にタイマー「TestingTimer」が設定され、1秒ごとにスコア変数が1ずつ減少するという仕組みになっています。

この問題に対して、フォーラムの参加者からは、イベントシートの修正方法に関するアドバイスが寄せられています。具体的には、ゲームの状態(一時停止中か、レベルクリア後か)を判定する条件を追加し、その条件が満たされた場合にのみスコアのカウントダウン処理を実行するようにイベントを編集することが提案されています。

例えば、以下のようなイベント構成が考えられます:

  • 条件1: ゲームが一時停止されていない (例: IsPaused() == false)
  • 条件2: レベルクリアフラグが有効になっていない
  • アクション: 1秒ごとにスコアを1減少させる

この方法により、一時停止中やレベルクリア後にはスコアのカウントダウンが停止し、プレイヤーが期待する通りのゲームプレイ体験を提供できるようになります。

画像1: スコア表示 画像2: イベントシートの一部

GDevelopコミュニティでは、このような実践的な問題解決のための情報交換が盛んに行われており、他の開発者にとっても有益な議論となっています。

元の情報源を見る →