private GameManagers() { }
private static GameManagers intance = null;//私有静态对象
public static GameManagers GetIntance()//公共方法
{
if (intance==null)//判断是否有对象
{
intance = new GameManagers();//赋值
}
return intance;
}
public bool haskey = false;//是否触碰钥匙
public int playerlife = 10;//玩家生命
public int playerbulletnums = 50;//玩家总子弹数
public int playershotnums = 10;//玩家弹夹子弹书
public int scores = 0;//玩家积分
玩家基本信息UI界面
private Image img;//幕布图片
private float speed = 0.5f;// 幕布变色速度
private Image blood;//血条图片
private Text score;//积分文本
private Text hp;//血条文本
private Text playernum;//玩家子弹数
void Start()
{
img = transform.GetChild(1).transform.GetComponent<Image>();
blood = transform.GetChild(4).transform.GetComponent<Image>();
score = transform.GetChild(6).transform.GetComponent<Text>();
hp = transform.GetChild(7).transform.GetComponent<Text>();
playernum = transform.GetChild(8).transform.GetComponent<Text>();
//拿到需要的组件
}
void Update()
{
float per = GameManagers.GetIntance().playerlife;
blood.fillAmount = per / 10;//将玩家血量赋给血条图片,让图片随着血量减少而减少
hp.text = "HP:" + GameManagers.GetIntance().playerlife.ToString();//将血量在文本中显示出来
score.text = "积分:" + GameManagers.GetIntance().scores.ToString();//积分强转
playernum.text = GameManagers.GetIntance().playershotnums.ToString() + "/" + GameManagers.GetIntance().playerbulletnums.ToString();
img.color = Color.Lerp(img.color, Color.clear, Time.deltaTime * speed);//幕布从黑色变成透明
}