private void Slied() { SliedDirection dir = Mathf.Abs(_offsetX) > Mathf.Abs(_offsetY) ? _offsetX > 0 ? SliedDirection.RIGHT : SliedDirection.LEFT : _offsetY > 0 ? SliedDirection.UP : SliedDirection.DOWN; _inputContext.ReplaceSlied(new CustomVector2((int)_clickPos.x, (int)_clickPos.y), dir); }
public void ReplaceSlied(CustomVector2 newClickPos, SliedDirection newDir) { var index = InputComponentsLookup.Slied; var component = (SliedComponent)CreateComponent(index, typeof(SliedComponent)); component.clickPos = newClickPos; component.dir = newDir; ReplaceComponent(index, component); }
public InputEntity SetSlied(CustomVector2 newClickPos, SliedDirection newDir) { if (hasSlied) { throw new Entitas.EntitasException("Could not set Slied!\n" + this + " already has an entity with SliedComponent!", "You should check if the context already has a sliedEntity before setting it or use context.ReplaceSlied()."); } var entity = CreateEntity(); entity.AddSlied(newClickPos, newDir); return(entity); }
public void ReplaceSlied(CustomVector2 newClickPos, SliedDirection newDir) { var entity = sliedEntity; if (entity == null) { entity = SetSlied(newClickPos, newDir); } else { entity.ReplaceSlied(newClickPos, newDir); } }