(MZ) 変数を画面に表示する方法

私のゲームでは、一種のセカンダリ通貨システムがあります。これが増えたことをプレイヤーに示すために、以下の2つの方法のいずれかを実装したいと考えています。どちらでも構いません。

1

この通貨を受け取った際、テキストボックスとは別に、画面の隅にポップアップが表示され、「Xポイント獲得!」のようなメッセージが表示されるようにしたいです。

2

この通貨を受け取った際、画面の隅にポップアップが表示され、「ポイント=+0」と表示され、そこからカウントアップして最終的に「ポイント=+X」まで表示されるようにしたいです。

これらをどのように実装すればよいか、ご存知の方がいらっしゃいますか?

この方法があなたの望むものかもしれません:

MZプロジェクトを作成すると、デフォルトでいくつかのプラグインが同梱されます。その一つに「TextPicture」があります:
TextPicture

このプラグインを使用すると、テキストボックスを使わずに、プラグインコマンドで画面の任意の位置にテキストを表示することができます。

つまり、イベントから2つ目の通貨を入手した際、プラグインを使ってテキスト画像を設定できます:


ここでは、獲得したポイントを追跡できるようにするために変数を使用しています。

その後、画像を表示します。イベントと対話すると、その画像座標に画像が表示されます(前述の通り、「画像の表示」コマンドでは画像ファイルを指定しないでください):


フェードインやフェードアウト、位置へのスムーズな移動など、画像コマンドを駆使してこの仕組みをカスタマイズすることができます。もし本気でやりたいのであれば、カウントアップ処理も可能かもしれませんが、その具体的な実装方法については詳しくありません。おそらくループ処理になるでしょう。

役に立てば幸いです!

これは素晴らしいです、ありがとうございます!もしカウントアップ効果を追加する方法をご存知の方がいらっしゃったら、ぜひ教えてください!

同じ TextPicture を使えばできます。アニメーションするだけです。

2つの変数が必要です。ここでは pointsValuepointsValueDisplay と呼びます。

ポイントを追加または削除する前に、現在の pointsValueDisplay の値を pointsValueDisplay に保存します。

その後、実際のポイント数を希望する分だけ変更します。

次に、pointsValueDisplaypointsValue と等しくなるまで、1ずつ増減させるループを実行します。これにより、元の値から新しい値までカウントアップ(またはカウントダウン)されます。

ループ内に画像の再描画処理(pointsValueDisplay 変数を使用)を追加し、各描画の間に待機時間を設けてください。4フレーム程度の待ち時間で十分でしょう。そうしないと、効果が速すぎてしまいます。

ありがとうございます。追加について検討します。