【Unity2D 入門】横スクロールアクションゲームを作ってみたい -ゲームクリア作成
さぁこのクソゲーもそろそろ一区切りつきそうです。 今回はゴールを作りゲームクリアさせようと思います。
ゴールSpiriteを作る
いつものようにこんな物をつくってもらいました。
これにColliderを追加しておきましょう。
ついでに位置も調整しておきます。
ゴールにぶつかったらオブジェトの動きを止めてゲームクリア!!とテキストを出したいのです。
なのでGUIテキストを作成しておきます
Hierarchy > GUI Text で作ります
位置を調整したらPixel Offsetのxを400と指定しておき画面から外します。 ゲームクリアした際にこの文字が左がからスライドしてゲームクリアしてくるようにする為です。
ゲームクリア演出スクリプトを作る
goal.cs
using UnityEngine;
using System.Collections;
public class goal : MonoBehaviour {
public GameObject guitext;
public bool is_goal = false;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if(is_goal){
if(guitext.guiText.pixelOffset.x > 1){
guitext.guiText.pixelOffset -= new Vector2(10.0f, 0);
}
Time.timeScale = 0;
}
}
void OnTriggerEnter2D(Collider2D col)
{
if(col.gameObject.tag == "Player"){
is_goal = true;
}
}
}
さて実際エミュレートしてみましょう
これでゲームクリアできました。
Time.timeScale = 0;
これで他のオブジェクトの動きをポーズさせる事ができます。
感想
一旦この処理でゲームとしては一区切りです。
モーションデータを個別に分けてアタッチしたり、敵の動きに範囲を儲けたり、
その他バグの修正なども残っていますが、横スクロールアクションゲームを作ってみる為の
ノウハウは詰めたかと思います。次回は通信関連の方をもう少し掘り下げていきたいと思います。