using UnityEngine; namespace Wizard.Battle.Player.ClassCharacter; public class Player3dClassCharacter : Class3dCharacterBase { private readonly float ScreenWidthFraction = 0.5f; private readonly float ScreenHeightFraction = 0.05f; private readonly Vector3 WIDGET_POSITION = new Vector3(0f, -460f, 30f); private readonly int WIDGET_OFFSET_BOTTOM = 71; private readonly int WIDGET_OFFSET_TOP = 171; protected override Vector3 MessagePosition => UIManager.GetInstance().getCamera().ScreenToWorldPoint(new Vector3((float)Screen.width * ScreenWidthFraction, (float)Screen.height * ScreenHeightFraction, 0f)); public Player3dClassCharacter(int classId) { _classCharacterId = classId; IsPlayer = true; } public void SetClassId(int id) { _classCharacterId = id; } protected override string GetTagName() { return "Player"; } protected override Quaternion ConvertBackPanelRotation(Quaternion originalRotation) { return originalRotation; } protected override Vector3 GetPosition() { return Global.CLASS_BATTLE_POSITION_PLAYER; } protected override void SetUpAnchor(GameObject o) { o.transform.localPosition = WIDGET_POSITION; UIWidget uIWidget = o.AddComponent(); uIWidget.bottomAnchor.relative = 0f; uIWidget.bottomAnchor.absolute = WIDGET_OFFSET_BOTTOM; Transform transform = BattleManagerBase.GetIns().Battle3DContainer.transform; uIWidget.bottomAnchor.target = transform; uIWidget.topAnchor.target = transform; uIWidget.topAnchor.relative = 0f; uIWidget.topAnchor.absolute = WIDGET_OFFSET_TOP; } protected override void AttachOtherUI(GameObject o) { BattleManagerBase.GetIns().BattlePlayer.BattleView.EpPanel.transform.parent = o.transform; } public override Vector3 GetMaskImagePosition() { return new Vector3(0f, 0.12f, 0f); } protected override Vector3 GetShieldPosition() { return new Vector3(2f, 1.7f, 0f); } protected override Vector3 GetLifeIconPosition() { return new Vector3(0f, 0f, 0.1f); } public override Quaternion GetMaskImageRotation() { return Quaternion.identity; } }