public void UpdateDraw(Simplus simplus, MouseManager mouse) { _logics.SetFocus(simplus); _logics.SetMouseState(mouse.State.Get()); if (_logics.ToDraw) { DragInfo drag = new DragInfo(); drag.SetSource(_logics.Source._wrapper); if (_logics.Focus != null) { drag.SetDestination(_logics.Focus._wrapper); } else { drag.SetDestination(new Point(Camera.main.ScreenToWorldPoint(Input.mousePosition))); } _drawer.UpdateInfo(drag, LinkActionDrawer.LinkState.Link); _drawer.Visible(true); } else { _drawer.Visible(false); } }
//rm public SimplusLink CreateLink(Simplus destination) { //_link = new SimplusLink(this, destination); GameObject linkObj = Instantiate(LinkPrefab); _link = linkObj.GetComponent <SimplusLink>(); _link.SetSimplusLinkData(this, destination); return(_link); }
private void Clear() { if (_source != null) { _source._wrapper.SetPressed(false); _source = null; } _destination = null; //SetAnimation(_focus, SimplusActionState.Focused); }
public void Start() { //CreateMapObjects(); //tmp GameObject[] objects = GameObject.FindGameObjectsWithTag("Simplus"); foreach (GameObject obj in objects) { Simplus simpl = obj.GetComponent <Simplus>(); _simplusContainer.Add(simpl); } }
//rm public void SetSimplusLinkData(Simplus source, Simplus destination) { Debug.Log("SimplusLink constr"); SimplusWrapper ss = source._wrapper; SimplusWrapper dd = destination._wrapper; Vector2 s = ss.GetPosSurface(dd.GetPos()); Vector2 d = dd.GetPosSurface(ss.GetPos()); //_wrap = new SimplusLinkWrapper(s, d); _wrap.SetAnimationState(SimplusLinkActionState.Flying); _wrap.SetSimplusLinkWrapperData(s, d); }
public void CreateSimplus(SimplusInfo info) { //depending on info we choose one of prefabs //assume we choosed red one GameObject go = Instantiate(SimplusRedPrefab); Simplus simp = go.GetComponent <Simplus>(); go.name = "Simplus_" + info.Party.ID.ToString(); simp.InitInfo(info); _simplusContainer.Add(simp); }
public void SetFocus(Simplus focus) { if (focus != _focus) { if (focus != null) { focus._wrapper.SetFocused(true); } if (_focus != null) { _focus._wrapper.SetFocused(false); } _focus = focus; } }
public void SetMouseState(MouseState state) { if (MouseState.Down == state) { Clear(); if (_focus != null) { _source = _focus; _source._wrapper.SetPressed(true); } } if (MouseState.Up == state) { if (_source != null && _focus != null && _focus != _source) { _destination = _focus; _message = new MessageLink(this); } Clear(); } }
public void CreateLink(SimplusLinkInfo info) { Simplus dest = _map.GetSimplus(info.ID); _links.Add(CreateLink(dest)); }
public void UpdateLink() { Simplus simplus = _map.GetFocusedSimplus(_mouse.Pos); _linkManager.UpdateDraw(simplus, _mouse); }
public MessageLink(LinkLogics link) { _source = link.Source; _destination = link.Destination; }