このブログはPower Apps でローコーディングな勉強会 #14の資料その5になります。
このブログではボムを設置する方法についてご紹介致します。
ボムを設置するボタンを配置する
ボムを設置するためのボタンを配置します。
「挿入」>「ボタン」よりボタンを配置します。
こちらのボタンは、"BombButton"と名前を変更しておきましょう。
せっかくなので、ボタンの外観も変更してみましょう。
ボタンのX、Y、境界半径をそれぞれ以下のように設定します。
BombButton.Width
80
BombButton.Height
80
BombButton.RadiusBottomLeft
80
BombButton.RadiusBottomRight
80
BombButton.RadiusTopLeft
80
BombButton.RadiusTopRight
80
Radiusは今回は全て同じ値とするので、右の「境界半径」から変更したほうが1回の変更で済むので楽ですね。
以上の設定をすることで、丸いボタンが設定できたかと思います。
ボタンが押されたときにボムをプレイヤーがいた位置に配置する
ボタンが押されたときにプレイヤーがいた座標のマスにボムを設置するようにします。
なお今回は簡単のため制約としてボムは1つのみ置ける仕様にします。
ちなみに複数個設置できるようにするヒントですが、私が以前公開したボンバーマンでは複数個設置できるようにするためコレクションを使用しています。
まずはボムを表示するための画像をキャンバスに追加します。
こちらはわかりやすいように、"BombImage"と名前を変更しておきましょう。
続いて爆弾の画像を読み込み、"BombImage"に読み込んだ画像を表示させます。
爆弾の座標を設置するための変数を設定します。
Screen1のOnVisibleに以下のような変数を宣言します。
Screen1.OnVisible
UpdateContext({_bombX:0}); UpdateContext({_bombY:0});
この変数を爆弾のイメージの座標に設定します。
BombImage.X
_bombX + StageGallery.X - BombImage.Width / 8
BombImage.Y
_bombY + StageGallery.Y
あとはボタンが押されたとき時点のプレイヤーの座標を爆弾の座標に代入してあげればいいですね。
BombButton.OnSelect
UpdateContext({_bombX:Round(_playerX / 48, 0) * 48}); UpdateContext({_bombY:Round(_playerY / 48, 0) * 48});
これでボタンが押されたときのキャラクターの位置に爆弾を設置することができました!