在我的 2D 游戏中,我有一个黄金和铜币的概念如下:
当普通敌人死亡时..他们会随机投下一枚金币或铜币。现在,当玩家选择它时,硬币值将被添加到PlayerPrefs
文件中,并显示在UI
中,如下所示:
现在我已经做了一个游戏 obj 老板产,它有一个脚本附加到它如下:
public cl BossSer : MonoBehaviour {
private int GoldLimitChk,CopperLimitChk;
public GameObject[] BossPrefab;
public bool bossSed;
private BossHealthManager boss1;
private Boss2HealthManager boss2;
// Use this for initialization
void Start () {
bossSed = false;
boss1 = FindObjectOfType<BossHealthManager> ();
boss2 = FindObjectOfType<Boss2HealthManager> ();
}
// Update is called once per frame
void Update () {
GoldLimitChk=PlayerPrefs.GetInt ("CurrentMoney");
CopperLimitChk=PlayerPrefs.GetInt ("CurrentMoneyCopper");
Debug.Log ("Gold:" + GoldLimitChk);
Debug.Log ("Copper:" + CopperLimitChk);
if (GoldLimitChk % 2 == 0) {
if (bossSed==false) {
Instantiate (BossPrefab [1], transform.position, transform.rotation);
bossSed = true;
}
}
if (CopperLimitChk % 2 == 0) {
if (bossSed==false) {
Instantiate (BossPrefab [0], transform.position, transform.rotation);
bossSed = true;
}
}
}
}
所以根据条件..如果它的脚本是真的,那么 2 个老板中的一个应该产生..而且它也工作得很好。
但是我想要的是,当我杀死老板时,coins
进程应该继续,当条件再次(% 2 变为真)时,老板(任何一个硬币)应该产生
但这只是一次产,然后在那之后,当我杀死老板和硬币 aac 的条件再次成为现实,老板是不产在游戏中!
现在如何删除这个问题?
2
发生这种情况是因为您从未将bossSed
重置为false
,以便可以生成新的 boss。您可以添加一个方法
public void Reset() {
bossSed = false;
}
每当老板去世时就叫这个。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(2条)