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
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); |
|
} |
|
} |
|
|
|
|