【Unity】Playmaker 公式チュートリアル動画を日本語で読み解く13 - Player Preferences
Player Preferencesについての説明(0:00~7:58)
Fantasy Attack Gameを作る(7:59~19:51)
ボタンをクリック(もしくはタップ)した回数をカウントして、保存するゲーム。ハイスコアを更新したら、それも書きかわる。
PlayerPreferenceについての説明
プレイヤーの情報を保存したり、取り出したりする機能のこと。
例えばハイスコアを保存したり、それを更新したら書き換えるようにする。など。
ちなみにこの機能はゲームの途中で行うのではなくて、ゲームのプレイが終わったら作動するように仕掛けておくことがポイント。
Player Prefsの種類
全9種類のPlayer Preference。中身は比較的簡単。
6つの項目、PlayerPrefs GetとSetのFloat,Int,Stringはそれぞれの数値をゲットしてセットする役割のもの。
その他の3つの項目は、Player Preferenceで持っているキーをセットしたり消去したり、そしてすべての情報を消去する役割のもの。
Set Int
Keyとは変数の名前のようなもの。そこの情報が保存できる。VariablesのStringから選ぶこともできるし、ここにそのままStiringで上のように設定もできる。
ValueはVariablesのintも利用できるし、直接数値を指定することも可能。
Get Int
Key(String)を頼りにVariableのintを保存できる機能。
例では、StringをHigh_Scoreと直接指定してるが、これもVariablesからの指定で利用することも可能。(スペルミスなどを防ぐためにはそちらの方が良い)
VariableはVariablesのintでcurrent_high_scoreと作っておき、指定。
Countを2にすると項目が2つになる。
例えば、Current_Levelと入れてみる。
そしてCountを10にしてみると・・
こんな感じでずらずらと。
ゲーム開始前に必要な情報をこれで全て手に入れておく。そしてSetの方でセットするという流れ。
String、Float
上で説明したものとほぼ同じ。StringとFloat用ということ。
Has Key
KeyをここではHigh_Scoreにしているけれど、初回のプレイヤーにはTutorialと出してもいいかも。
Store Resultに入るのはBoolなので、Variablesのboolでhas_high_scoreと作っておいてみた。
あとはそれがTrueならTrueのイベントへ、FalseならFalseのイベントに行くように設定する。
Delete Key
指定したKeyを消すもの。本当に消すので、注意をしながら使用して。
Delete All
文字どおり、ユーザーの情報を全て消す機能。危険w
ただ開発中は、テストするときなどに何度も使うことになる機能でもある。
Fantasy Attack Gameを作る
どんなゲームなのかまず説明
スタート画面、二つのキャラクター(ただのボタンだけど)がある。
Thagを選んでみる
Attack!のボタンを押すたびに、4 monsters killed!の数字の部分が増えていく。
一定の時間が過ぎると押せなくなって、記録が保存される。
今度はGronkでプレイ。
同じようにAttack!ボタンを押していく。
初めてのプレイなので、とりあえずハイスコアとして表示されている。Thangと全く同じ。ただ、Thangとは別に保存されている。
もう一度Gronkでプレイする。
さっき、5だったので8まで上げてハイスコア更新を目指す。
無事にハイスコア更新された。
今度はさっきのハイスコア8を下回ってみる。
ハイスコアは更新されなかった。
Hierarchyを作る
GUI Textを4つ画面上の被らない位置に設定しておく。名付け方は下記画像参照。
Empty Objectを置き、go_PreferencesManagerと名付ける。
一つのEmpty Game Objectに3つのFSMがくっついている。
Add FSM to go_ProferencesManagerを3度選択して、それぞれのFMSの名前を下記のようにする。
FSM_timerを作る
何もなし。ただ他のFSMからここに飛ばすので、用意して。
Eventsでstart_gameを作っておく。
Set Time
Variablesのfloatでtime_to_waitを作っておく。
Timer
Eventsでend_gameを作っておく。
End_game
FSM_prefsを作る
Ready
Eventでupdate_scoreを作っておく。
Get Score
Global VariablesのStringでpp_player_nameを作る。
VariablesのIntでlast_high_scoreを作る。
Compare Scores
Global Variablesのintでpp_corrent_hitを作っておく。
Eventsでreturnとnew_high_scoreを作っておく。
New High Score
Variablesでcurrent_hits_stringと作っておく。
VariablesのStringでNew_high_score_messageと作っておく。
Wait for Result
Clear Screens
ここではDeleteしているのではなくて、Valueを0にしている。
FSM_gameを作る
先にイベント公開。FINISHEDは作らなくて良い。
end_gameのみチェックを入れてGlobalに。
上記に合わせて、reset_to_ready も用意。
Choose Char
Variablesのintでpp_current_hitsを作っておく。
Set Thang
Set Gronk
Start Game
Play
Add Kill
Result
Reset Prefs
ボタンは設置をすると自然とタッチにも反応するようになるので、このゲームをスマホで起動すれば、そのまま遊べる。
以上。
今回でPlaymakerのスマホ向け一連動画、全13回の解説は終わりです!
前の記事