Unityを使ったフリーゲーム投稿サイトunityroom。
そこで不定期に開催されるゲームジャムイベント、それがUnity1Weekです。
毎回出されるお題に沿って1週間でUnityにて各々ゲームを製作し、
UnityRoomに投稿。その後ある程度の期間を使って審査されるという流れです。
審査は参加者を含めたプレイヤーの総評で行われます。
3日目の作業はアイテムの取得と火加減の変更処理。
ゲームの内容的には、「5日間丁度いい火加減で過ごす」
というのがベストクリアのゲームです。
ゲームオーバー条件は少なく、「火が消える状態でその日を終了する」
ことのみとする予定でした。そしてリリース状態でもそれは変わりませんでした。
逆に翌日に行ける条件は多く、
・火加減が強い状態でその日を終了する
・火加減が弱い状態でその日を終了する
・火加減が丁度いい状態でその日を終了する
・うつろに触れる
・寝ない
の5つです。余談ですが、ベストから遠い順にテキストが雑になります。
火加減をUIなどで数値表示することも考えましたが、
なんとなく雰囲気が壊れる気がしたので、避けました。
アイテムを名前リストにしなかったのも同じ理由です。
しかし火加減がわからないとゲームになりません。
そこで、ちょっと強行手段に出ました。
10段階ある火、全てを固有で作成。
ParticleSystemで火を作成する際、StartLifetTimeの長尺を
2秒に設定し、炎を切り替えるときの処理を
現存particleの放出を全停止→同時に新particleをEnable→2秒後に元particleをDisable
みたいな実装をして滑らかに火加減が変わるようにしてみました。
動きの少ないこのゲームにおける、最も目立たなく最もこだわった部分です。
効果があったか否かで言えば、確実に無かったでしょう。(´-ω-`)
イイのです。余は満足じゃ。お祭りの時くらい好きに作りたいのです。
もう1つ作業、アイテムの取得について。
アイテムの初回取得フラグを見てUI側でcolor(0.0, 0.0, 0.0, 0.5)にする
簡単な処理です。しかし、昨日用意したアイテムデータだと、
各アイテムの判断に個別のデータを参照する必要があり、やや面倒でした。
アイテムデータを1つのリストにまとめるだけのスクリプタブルオブジェクトを
新たに作り、各アイテムデータを配列で参照できるようにしました。
……次からは最初からそう組んでおこう。
このデータの設計などに関しては、今回の製作を通して
自分の力不足を痛感しました。組み方が悪いととにかく参照がしにくい。
今回はセーブ機能なしで作りましたが、そのあたりが絡んできた場合
致命傷になりかねません。精進いたします。
アイテム取得のエフェクトを付け、ちゃんと取得物を
加算できるようにし、アイテム系は大体終わったかなぁと
この時は思ってたのですが……うん。アイテム説明欄、
何もやってないですね……詰めが甘い。(;´・ω・)
AraiHitoe.Work
ドット絵デザイナ兼ゲームエフェクトデザイナ 新井一惠(旧・聡一)の個人ページです。
0コメント