public void AddToParty(PartyFrames frame) { isInParty = true; partyFrame = frame; SetColor(); frame.AddUnit(unit, this); }
public void SetupPartyList(PlayerUnit unit, PartyFrames frame) { if (unit == null || frame == null) { return; } AddHeroToParty(unit, frame); }
public void AddHeroToParty(PlayerUnit unit, PartyFrames frame) { HeroPanel panel = FindHeroPanel(unit); if (panel == null) { return; } panel.AddToParty(frame); }
public void ReplaceFrame(PartyFrames frame) { if (!isInParty) { return; } partyFrame = frame; SetColor(); frame.Replace(unit, this); }
public void Drop(PointerEventData eventData) { Vector3 screenPoint = Input.mousePosition; transform.position = Camera.main.ScreenToWorldPoint(screenPoint); List <RaycastResult> hitObjects = new List <RaycastResult>(); EventSystem.current.RaycastAll(eventData, hitObjects); if (hitObjects.Count <= 0) { return; } if (hitObjects[0].gameObject.tag == "UIDropPoint") { PartyFrames frame = hitObjects[0].gameObject.GetComponent <PartyFrames>(); if (frame != null) { if (!isInParty) { AddToParty(frame); return; } if (frame.unit != null) { if (partyFrame == null) { throw new System.Exception(name + " doesn't have any party frame assigned, despite being in the party"); } else { PlayerController.instance.SwitchPlace(partyFrame.partyIndex, frame.partyIndex); frame.heroRef.ReplaceFrame(partyFrame); ReplaceFrame(frame); } } } } }
private void Start() { partyFrame = GetComponent <PartyFrames>(); partyRect = GetComponentInParent <PartyFrameController>().transform as RectTransform; layout = GetComponent <LayoutElement>(); }
public void RemoveFromParty() { isInParty = false; partyFrame = null; SetColor(); }