code ソーシャル

Unityアプリcodetips(52)

スポンサーリンク

//tips

//soundの音切れ

SEを再生中にシーン遷移が発生すると、BGMのゲームオブジェクトが消えてしまうため、音切れが発生してしまう。

シーン遷移前に単純に音を止める処理を追加したが効果はなかった。

public void NextScene(int stageNo)
{
//音楽停止
audioSource.Stop();

// ロード画面UIをアクティブにする
loadUI.SetActive(true);

// コルーチンを開始
StartCoroutine("PushStageSelectButton" + stageNo);
}

ちなみに、Destroy(audioSource);にしても効果なし。

逆に音を止めないで遷移中も鳴らすようにスクリプトを追加する。

下記スクリプトをaudiosourceに付加することで音切れを解消できる。

using UnityEngine;
using System.Collections;

public class MainSoundScript : MonoBehaviour
{
public bool DontDestroyEnabled = true;

// Use this for initialization
void Start()
{
if (DontDestroyEnabled)
{
// Sceneを遷移してもオブジェクトが消えないようにする
DontDestroyOnLoad(this);
}
}

// Update is called once per frame
void Update()
{

}
}

//新規ステージゴール時点でのCPointの追加

新しく攻略したステージのゴールでCPointを1point追加する。

point_num = PlayerPrefs.GetInt("CPoint", 2);の追加とアニメーションの追加を行い、setactiveで新しいステージのゴール時のみにあらわれるように設定した。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

using UnityEngine.SceneManagement;
using UnityEngine.UI;

public class TitleManage : MonoBehaviour
{
[SerializeField] UnityEngine.UI.Text textbox;
[SerializeField] GameObject item;

void Start()
{
//PlayerPrefs.DeleteAll();

int clearStageNo = PlayerPrefs.GetInt("CLEAR", 0); //どのステージまでクリアしているのかをロード(セーブされていなければ「0」)
int playstage = PlayerPrefs.GetInt("playstage", 1);
int laststage = PlayerPrefs.GetInt("Last", 0);
int point_num = PlayerPrefs.GetInt("CPoint", 2);

//Debug.Log("c"+clearStageNo);
//Debug.Log("p" + playstage);
//Debug.Log("l" + laststage);

item.SetActive(false);

 

if (clearStageNo > laststage)
{

//if (clearStageNo == 0) DeleteALLの場合

item.SetActive(true);

if (clearStageNo == 1)
{
textbox.text = "お散歩の達人";

laststage = clearStageNo;
PlayerPrefs.SetInt("Last", laststage);

point_num += 1;
PlayerPrefs.SetInt("CPoint", point_num);
PlayerPrefs.Save();

}

if (clearStageNo == 2)
{
textbox.text = "スキップの達人";

laststage = clearStageNo;
PlayerPrefs.SetInt("Last", laststage);

point_num += 1;
PlayerPrefs.SetInt("CPoint", point_num);
PlayerPrefs.Save();

}

if (clearStageNo == 3)
{
textbox.text = "回転の達人";
laststage = clearStageNo;
PlayerPrefs.SetInt("Last", laststage);

point_num += 1;
PlayerPrefs.SetInt("CPoint", point_num);
PlayerPrefs.Save();

}

if (clearStageNo == 4)
{
textbox.text = "襲歩の達人";
laststage = clearStageNo;
PlayerPrefs.SetInt("Last", laststage);

point_num += 1;
PlayerPrefs.SetInt("CPoint", point_num);
PlayerPrefs.Save();
}

if (clearStageNo == 5)
{
textbox.text = "転身の達人";
laststage = clearStageNo;
PlayerPrefs.SetInt("Last", laststage);

point_num += 1;
PlayerPrefs.SetInt("CPoint", point_num);
PlayerPrefs.Save();
}

if (clearStageNo == 6)
{
textbox.text = "変身の達人";
laststage = clearStageNo;
PlayerPrefs.SetInt("Last", laststage);

point_num += 1;
PlayerPrefs.SetInt("CPoint", point_num);
PlayerPrefs.Save();
}

}
else
{
textbox.enabled = false;
}
}
}

//loadingへのanimationの追加

Loading画面にアニメーションを追加した。

一瞬しか映らないのとそこまで動きは良くないのでもし追加するとしたら非同期も考えて摂家した方が良いかもしれない。

現状の重さではそこまで必要ない。

人気の記事

1

皆さん、ついに、エアラインでも、サブスクリプションが始まったのはご存じですか? まだ実験段階ですが、ANAが、定額全国住み放題サービスを提供する「ADDress」と組んで、国内線を4回まで定額利用可能 ...

2

無料でネットショップを開けるアプリとして多くの人に驚きを与えたBASE株式会社が、2019年10月25日東証マザーズに上場しました。2020年2月時点で90万店を超えるショップを抱えるまでに成長してい ...

3

2011年にサービスを開始してから圧倒的な成長率を誇るインテリア通販サイト 【FLYMEe/フライミー】を皆さんご存じでしょうか。 「自分のイメージするインテリア、本当に欲しいインテリアがどこにあるの ...

4

ついに、noteの月間アクティブユーザー数が4400万人(2020年3月時点)に到達しました。 そもそも、「note」とは、クリエイターが、文章やマンガ、写真、音声を投稿することができ、ユーザーはその ...

5

ボードゲームカフェが1日2回転で儲かるという記事をみつけたので興味を持ち、調べてみました。 まずは、需要がどれくらいあるのか、市場のようすからみていきましょう。 世界最大のボードゲーム市場はドイツで、 ...

-code, ソーシャル
-,

Copyright© BUSINESS HUNTER , 2023 All Rights Reserved Powered by AFFINGER5.