在新场景中通过PlayerPrefers加载Prefab

时间:2016-05-09 13:56:10

标签: c# unity3d unityscript unity5 unity3d-2dtools

在我的游戏的主菜单中,有一个部分供玩家选择角色的皮肤并进入游戏。

我正努力拯救" Controller Animator" &安培; "变换"在PlayerPrefers中,由用户选择并在下一个场景中实例化它#34; Game"在x-0,Y-0,z-0。

所有皮肤都已经拥有了#34; Controller" &安培; "变换"附属于检查员(见附图)。

只有我无法在下一个" Game"中实例化它们。场景。

Menu skin CHOICE

Game SCENE

在我的下方选择皮肤并输入"游戏"。

using UnityEngine; 
using System.Collections;
using UnityEngine.SceneManagement;

public class Choice : MonoBehaviour {

    public RuntimeAnimatorController anim;
    public Transform Bee;
    string skinChoice = "skin";

    public void ChangeAnimator() {

        Animator animator = Bee.gameObject.GetComponent<Animator>();
        animator.runtimeAnimatorController = anim;
    }

    public void Play()
    {
        SceneManager.LoadScene ("Game");
    }
}

1 个答案:

答案 0 :(得分:-1)

您可以将预制件的名称设置为静态字符串,并在下一个游戏场景的开头引用它:

public static string skinchoice = "skin";

创作者类:

public class Creator : MonoBehaviour { 
    void Start(){
        if (Choice.skinchoice == "skin1") Instantiate(Bee1);
        else if (Choice.skinchoice == "skin2") Instantiate(Bee2);
        ...
    }
}