private static void OnClickedInventory(ItemButton obj) { if (Input.LeftMouseButtonReleased) { if (obj.position != -1) { MessageTemplate template = new MessageTemplate(obj.position.ToString(), MessageType.EquipItem); MessageManager.AddToQueue(template); obj.HoverWindow.Remove(); } if (obj.GetParent() is Window) { } } }
private void FreeMouseChange() { Vector2 pos = Entity.Scene.Camera.MouseToWorldPoint(); List <Entity> entities = Scene.FindEntitiesWithTag(7); if (Input.LeftMouseButtonPressed && Scene is MainScene) { if ((Scene as MainScene).UICanvas.Stage.Hit(Input.MousePosition) == null && targeting) { TargetWindow.RemoveTargetWindow(Scene); MessageTemplate template = new MessageTemplate("", MessageType.Target); MessageManager.AddToQueue(template); targeting = false; } } foreach (var entity in entities) { SpriteAnimator sp = entity.GetComponent <SpriteAnimator>(); Rectangle rect = sp.CurrentAnimation.Sprites.ElementAt(0).SourceRect; Rectangle rectangle = new Rectangle(entity.Position.ToPoint(), new Point((int)(rect.Width * entity.Scale.X), (int)(rect.Height * entity.Scale.Y))); if (rectangle.Contains(pos) && Input.LeftMouseButtonPressed) { MessageTemplate template = new MessageTemplate(entity.Name, MessageType.Target); MessageManager.AddToQueue(template); targeting = true; if (Scene is MainScene) { MainScene scene = Scene as MainScene; TargetWindow window = new TargetWindow(entity, new Vector2(Screen.Width / 2, Screen.Height * 0.03f), skin); Scene.FindEntitiesWithTag(2).ElementAt(0).GetComponent <PlayerComponent>().SetTarget(entity); scene.UICanvas.Stage.AddElement(window); } } } }
private void SendKeyboardRequest(KeyboardState keyboardState) { string messageS = Newtonsoft.Json.JsonConvert.SerializeObject(keyboardState.GetPressedKeys()); MessageManager.AddToQueue(new MessageTemplate(messageS, MessageType.Movement)); }
//TODO: Change to customizable keybindings later private Keys[] KeyboardChange() { KeyboardState newState = Input.CurrentKeyboardState; KeyboardState OldKeyboardState = Input.PreviousKeyboardState; List <Keys> keys = new List <Keys>(); if (AbiliyCoolDown > 1) { foreach (var KeyBind in KeyBindContainer.KeyBinds) { if (newState.IsKeyDown(KeyBind.BindedKey) && OldKeyboardState.IsKeyUp(KeyBind.BindedKey) && KeyBind.BindedAbilitityID != -1 && Scene.GetSceneComponent <ChannelBarComponent>() == null) { AbilityHead ability = KeyBind.GetAbility(); MessageTemplate template; ChannelTemplate ct = new ChannelTemplate(KeyBind.GetAbility().AbilityName, ChannelType.Ability); if ((Scene as MainScene).UICanvas.Stage.FindAllElementsOfType <TargetWindow>() != null) { if (ability.ChannelTime > 0 && targeting) { template = new MessageTemplate(ct.ToJson(), MessageType.StartChanneling); ChannelBarComponent channelBarComponent = new ChannelBarComponent(ability.ChannelTime, ability, Scene.FindEntitiesWithTag(2).ElementAt(0).GetComponent <PlayerComponent>().GetTarget(), Entity.Position); Scene.AddSceneComponent(channelBarComponent); } else { template = new MessageTemplate(ct.ToJson(), MessageType.DamageTarget); } MessageManager.AddToQueue(template); AbiliyCoolDown = 0; } } } } //Generated inventory if (newState.IsKeyDown(Keys.I) && OldKeyboardState.IsKeyUp(Keys.I)) { if (!InventoryWindow.RemoveInventory(Scene)) { UIManager.GenerateInventoryWindow(skin, Scene, new Vector2(-1, -1), -1, -1); } } if (newState.IsKeyDown(Keys.C) && OldKeyboardState.IsKeyUp(Keys.C)) { if (!CharacterWindow.RemoveCharacterWindow(Scene)) { UIManager.GenerateCharacterWindow(skin, Scene, new Vector2(-1, -1), -1, -1); } } if (newState.IsKeyDown(Keys.D1) && !OldKeyboardState.IsKeyDown(Keys.D1)) { } if (newState.IsKeyDown(Keys.S) && !OldKeyboardState.IsKeyDown(Keys.S)) { direction = Direction.Down; IsMoving = true; } if (newState.IsKeyDown(Keys.W) && !OldKeyboardState.IsKeyDown(Keys.W)) { direction = Direction.Up; IsMoving = true; } if (newState.IsKeyDown(Keys.A) && !OldKeyboardState.IsKeyDown(Keys.A)) { direction = Direction.Left; IsMoving = true; } if (newState.IsKeyDown(Keys.D) && !OldKeyboardState.IsKeyDown(Keys.D)) { direction = Direction.Right; IsMoving = true; } if (newState.IsKeyDown(Keys.T) && !OldKeyboardState.IsKeyDown(Keys.T)) { keys.Add(Keys.T); } if (IsMoving) { Scene.RemoveSceneComponent <ChannelBarComponent>(); } return(keys.ToArray()); }