网上演练贵港万达广场(人员密集)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

111 lines
3.6 KiB

using AX.InputSystem;
using AX.MessageSystem;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class TheHeadName : MonoBehaviour
{
public Transform NamesFather;
public static TheHeadName GetInstance;
private bool NowNameIsHide;
void Awake()
{
GetInstance = this;
}
void Start()
{
}
// Update is called once per frame
//void Update()
//{
// if (Input.GetKeyDown(KeyCode.T))
// {
// ShowHideUIName(false);
// NowNameIsHide = false;
// }
// if (Input.GetKeyDown(KeyCode.S))
// {
// ShowHideUIName(true);
// NowNameIsHide = true;
// }
//}
public void ShowHideSingleUIName(bool IsHide, long Id)
{
HideShowUINameCmdArgs arg = new HideShowUINameCmdArgs();
arg.IsHide = IsHide;
arg.gameObjID = Id;
MessageDispatcher.SendMessage("CONTROL_HIDE_SHOW_HEAD_NAME", arg);
}
public void ShowHideUIName(bool IsHide)
{
HideShowUINameCmdArgs arg = new HideShowUINameCmdArgs();
arg.IsHide = IsHide;
MessageDispatcher.SendMessage("CONTROL_HIDE_SHOW_HEAD_NAME", arg);
}
public void ChangeUIName(string NewName, long Id)
{
ChangeUINameCmdArgs arg = new ChangeUINameCmdArgs();
arg.gameObjID = Id;
arg.Value = NewName;
MessageDispatcher.SendMessage("CHANGE_HEAD_NAME", arg);
}
public void DestroyUIName(long Id)
{
DestroyUINameCmdArgs arg = new DestroyUINameCmdArgs();
arg.gameObjID = Id;
MessageDispatcher.SendMessage("ONDESROY_HEAD_NAME", arg);
}
public void CreateName(long gameObjID,string cloneName,string replaceName, int fontSize, Vector3 offset)
{
var objs = EntitiesManager.Instance.GetEntityByID(gameObjID);
GameObject NameGame = Instantiate(Resources.Load("UINameItemPrefab")) as GameObject;
NameGame.transform.SetParent(NamesFather);
NameGame.transform.localScale = new Vector3(1, 1, 1);
string temp = objs.GetComponent<CloneGameObjInfo>().GetObjectName();
string FullName = cloneName.Replace(replaceName, temp);
objs.GetComponent<CloneGameObjInfo>().FullName = FullName;
NameGame.GetComponent<Text>().text = FullName;
NameGame.GetComponent<RectTransform>().sizeDelta = new Vector2(200, 50);
NameGame.GetComponent<Text>().fontSize = fontSize;
NameGame.GetComponent<UINameItem>().Target = objs;
NameGame.GetComponent<UINameItem>().offest = offset;
NameGame.name = objs.name;
ShowHideSingleUIName(NowNameIsHide, gameObjID);
}
/// <summary>
/// 创建名字标签根据角色
/// </summary>
/// <param name="gameObjID">克隆物体ID</param>
/// <param name="fontSize">字体大小</param>
/// <param name="offset">标签坐标偏移</param>
public void CreateNameByRole(long gameObjID, int fontSize, Vector3 offset)
{
var objs = EntitiesManager.Instance.GetEntityByID(gameObjID);
GameObject NameGame = Instantiate(Resources.Load("UINameItemPrefab")) as GameObject;
NameGame.transform.SetParent(NamesFather);
NameGame.transform.localScale = new Vector3(1, 1, 1);
string Name = "";
Name = CurrentUserInfo.role.ToString();
NameGame.GetComponent<Text>().text = Name;
NameGame.GetComponent<Text>().fontSize = fontSize;
NameGame.GetComponent<UINameItem>().Target = objs;
NameGame.GetComponent<UINameItem>().offest = offset;
NameGame.name = objs.name;
ShowHideSingleUIName(NowNameIsHide, gameObjID);
}
}