Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What is going on with this article?
@tamoco

【四日目】Unity でモブプログラミング [E01_MosquitoBusters]

More than 1 year has passed since last update.

概要

モブプログラミングで1つのミニゲームを作る企画で今回で4回目の開催となります。7月29日(土)の勉強会で作成したミニゲームの1つを記録します。勉強会では2チームに分かれ、それぞれのチームでモブプログラミングしました。

企画

今回、ゲームの企画内容が被りました。詳しくいうとゲームの仕組みが同じようなモノになりました。企画の時点で内容を修正することもできましたが、敢えて同じ企画のまま進めることにしました。肝心のゲームの企画ですが以下のとおりです。

  • ランダムに飛んでいる蚊を敵とする
  • 蚊をタップすることで倒すことができる
  • 制限時間内に全ての蚊を倒すことでゲームクリアとする

ゲーム内容

【タイトル画面】

【ゲーム画面】

● ランダムに蚊が移動

● 蚊を倒したとき

【ゲーム結果画面】

● ゲームクリア

● ゲームオーバー

蚊を倒すということでタップすると叩いた感じがするエフェクトを出すようにしました。また蚊自体にも2枚組で飛んでいるようなアニメーションを設定し、見た目的にイイカンジに整えました。蚊がランダムに動くのは以下のコードで実装しました。こちらのチームではtransformでの位置をコントロールしています。

    void Update()
    {
        Vector2 min = Camera.main.ViewportToWorldPoint(Vector2.zero);
        Vector2 max = Camera.main.ViewportToWorldPoint(Vector2.one);
        float step = speed * Time.deltaTime;

        Transform myTtransform = this.transform;
        timeElapsed += Time.deltaTime;

        if (timeElapsed >= timeOut)
        {
            pos = myTtransform.position;
            pos.x = Random.Range(min.x, max.x);
            pos.y = Random.Range(min.y, max.y);
            Vector2 diff = myTtransform.position - pos;
            Vector2 scale = transform.localScale;
            if(diff.x >= 0){
                scale.x *= 1;
            }else{
                scale.x *= -1;
            }
            transform.localScale = scale;
            timeElapsed = 0.0f;
        }
        transform.position = Vector3.MoveTowards(transform.position, pos, step);
    }

振り返り

  • ゲームの企画が被ってしまった
  • ゲームの見た目や目的を異なるようにした
  • 同じ仕組みのゲームのはずだが実装方法が異なった
  • 何回かモブプロをやったことでイイカンジに出来上がった
0
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
tamoco

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
0
Help us understand the problem. What is going on with this article?