public class PlayerManage : MonoBehaviour
{
//属性
public int lifeValue1 = 3;
public int lifeValue2 = 3;
public int playerScore = 0;
public bool isDead1;
public bool isDead2;
public bool isDeaf;
public bool isDie1;
public bool isDie2;
public bool ironBase;
public float ironBaseTime = 0;
//引用
public GameObject born;
public Text playerScoreText;
public Text PlayerLifeValue1Text;
public Text PlayerLifeValue2Text;
public GameObject IsDeafUi;
public GameObject Player2LifeValue;
// Start is called before the first frame update
private static PlayerManage instance;
public static PlayerManage Instance { get => instance; set => instance = value; }
private void Awake()
{
if(instance == null)
{
instance = this;
}
}
}
首先,单例是惟一的,私有的,不允许外部类访问的实例化;
在做游戏时,经常判断一些动作或者物体是否创建的时机时,可以创建单例,判断单例中的属性是否满足执行动作的条件。再进行下一步的操作。因为单例是公共的,其他脚本也可以修改其中的值,所以当我们想让某些工作在另一个工作完成之后执行的话,就可以在一个工作中修改单例中的值,另一个工作中去判断该值是否是应当执行的条件,所以单例是游戏开发中非常好的一个方法