押せと表示されたらボタンを押すゲームを作ったので、紹介します。
なんとなくゲーム作りたいなーって思って以前あったゲームをモチーフにしました。
作成
Screen1
・ラベルを2つ追加し、「画面に「押せ!」って出たらボタンを押すだけ」「押せ」と記載しておきます。
・ボタンを追加し、Textに「Start」と記載し、OnSelectに以下を記載しておきます。
Navigate(Screen2)
Screen2
・Screen2のOnVisibleに以下を記載しておきます。
UpdateContext({starttime:Blank(), message:"", timestop:true, timing:RandBetween(2000,10000)});Clear(colpress)
・切り替えを追加し、OnChangeに以下を記載しておきます。※Button1は押ボタンです。
If(Button1.Pressed,Collect(colpress,{ time: Now()}))
・ボタンを2つ追加し、「押」「リトライ」と記載しておきます。
・リトライボタンには、OnSelectに以下を記載しておきます。
Navigate(Screen1)
・押ボタンには、以下をOnSelectに記載しておきます。
UpdateContext({pushtime:Now(), timestop:false})
・Timerを追加し、画面が表示されたら、開始させたいのでStartに以下を記載しておきます。
timestop
・ラベルを3つ追加し、以下を記載しておきます。
ラベル1
message
ラベル2
If(
timestop = false,
If(
And(
!IsEmpty(colpress),
DateDiff(
First(
Sort(
colpress,
time
)
).time,
starttime,
TimeUnit.Milliseconds
) > 1000
),
"ずるしてない?",
IsBlank(starttime),
"早すぎ!",
starttime >= pushtime,
"早すぎ!",
DateDiff(
starttime,
pushtime,
TimeUnit.Milliseconds
) < 290,
"神じゃん!",
DateDiff(
starttime,
pushtime,
TimeUnit.Milliseconds
) < 358,
"激やばっ!",
DateDiff(
starttime,
pushtime,
TimeUnit.Milliseconds
) < 393,
"ちょっぱやじゃん",
DateDiff(
starttime,
pushtime,
TimeUnit.Milliseconds
) > 500,
"おそすぎー",
"まぁまぁじゃない?"
)
)
ラベル3
"スコア:" & 1000 - DateDiff(starttime,pushtime,TimeUnit.Milliseconds)
・必要のない切替、TimerのVisibleに「false」と記載しておきます。
・ラベル3のVisibleに以下を記載しておきます。
!timestop
次回
Screen2で、なんでこれを使ったのかなどの解説を行います。