UEFN:Verseの学習記録
今日からVerseの学習をはじめます!
学習①初めての Verse プログラムを変更して実行する
進捗:1/1 完了
理解:ログの出力方法
学習②Verse でのコードの書き方の基本を学ぶ
進捗:4/9 完了
理解:データの格納(定数、変数の書き方)
メモ
「完全なスクリプト」と書いてあるのにエラーになってたので、修正したソースを貼り付け。
「# add」の箇所を追加しているだけ。
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
hello_world_device := class(creative_device):
# 実行中のゲームで仕掛けが開始されたときに実行します
OnBegin<override>()<suspends> : void =
MaxHealth : float = 100.0
MinHealth : float = 1.0
# add
PotionHealAmount: float = 10.0
PotionDamageAmount: float = 20.0
var PlayerHealth: float = 0.0
# add
var PotionType: string = "heal"
set PlayerHealth = 80.0
# プレイヤーが回復ポーションを飲んだときに実行するコード
# 回復時にプレイヤーのヘルス値が MaxHealth の値を超えないのであれば、
# 全量を回復させます
if (PotionType = "heal"):
if ((PlayerHealth + PotionHealAmount) < MaxHealth):
set PlayerHealth = PlayerHealth + PotionHealAmount
Print ("Full heal")
else:
# else の場合は PlayerHealth を MaxHealth に設定します
set PlayerHealth = MaxHealth
Print("PlayerHealth too high for full heal")
# プレイヤーがダメージ ポーションを飲んだときに実行するコード
# プレイヤーのヘルス値が MinHealth より大きく、PotionDamageAmount よりも小さい場合はプレイヤーを倒しません
# ヘルス値がすでに MinHealth 以下の場合はプレイヤーを倒します
if (PotionType = "damage"):
if ((PlayerHealth > PotionDamageAmount)):
set PlayerHealth = PlayerHealth - PotionDamageAmount
Print("Full damage")
else if (PlayerHealth > MinHealth):
# プレイヤーのヘルス値が低い場合は、もう一度チャンスを与えます
set PlayerHealth = 1.0
Print("PlayerHealth set to 1.0")
else:
set PlayerHealth = 0.0
Print("Player eliminated!")
Print("PlayerHealth now {PlayerHealth}")