From 0cc6b1250a0036b42e27e76e1dd5bb9f3292d926 Mon Sep 17 00:00:00 2001 From: SergoDobro Date: Wed, 11 Sep 2024 23:04:03 +0300 Subject: [PATCH] granade animation + arrow conttrols + started loading screen --- .../Core/GUI/CreatingAnimationGUI.cs | 2 +- ZoFo/Content/Content.mgcb | 27 ++ .../OneAnimationPerItem/granade.png | Bin 0 -> 6283 bytes .../granade_spinning.animation | 1 + .../Player/player_running.animation | 2 +- .../Textures/Animations/zombie_walk.animation | 2 +- ZoFo/Content/Textures/GUI/mouse_pressed.png | Bin 0 -> 131602 bytes ZoFo/GameCore/Client.cs | 14 +- ZoFo/GameCore/GUI/AbstractGUI.cs | 14 +- ZoFo/GameCore/GUI/HUD.cs | 1 + ZoFo/GameCore/GUI/LoadingGameScreenGUI.cs | 39 ++ ZoFo/GameCore/GUI/SelectModeMenu.cs | 3 +- ZoFo/GameCore/GameManagers/InputManager.cs | 372 ++++++++++-------- .../NetworkManager/ServerNetworkManager.cs | 2 +- .../Entities/LivingEntities/Enemies/Zombie.cs | 2 +- .../Entities/LivingEntities/Player/Player.cs | 4 +- .../GameObjects/Entities/Particles/Granade.cs | 30 +- 17 files changed, 316 insertions(+), 199 deletions(-) create mode 100644 ZoFo/Content/Textures/AnimationTextures/OneAnimationPerItem/granade.png create mode 100644 ZoFo/Content/Textures/Animations/OneAnimationPerItem/granade_spinning.animation create mode 100644 ZoFo/Content/Textures/GUI/mouse_pressed.png create mode 100644 ZoFo/GameCore/GUI/LoadingGameScreenGUI.cs diff --git a/AnimatorFileCreatorAdvanced/Core/GUI/CreatingAnimationGUI.cs b/AnimatorFileCreatorAdvanced/Core/GUI/CreatingAnimationGUI.cs index 631efeb..83c1e05 100644 --- a/AnimatorFileCreatorAdvanced/Core/GUI/CreatingAnimationGUI.cs +++ b/AnimatorFileCreatorAdvanced/Core/GUI/CreatingAnimationGUI.cs @@ -459,7 +459,7 @@ namespace AnimatorFileCreatorAdvanced.Core.GUI { if (!buildDone) return; ticksPassed++; - if (ticksPassed > 3) + if (ticksPassed > 1) { ticksPassed = 0; SetNextFrame(); diff --git a/ZoFo/Content/Content.mgcb b/ZoFo/Content/Content.mgcb index e7e525d..dc4239b 100644 --- a/ZoFo/Content/Content.mgcb +++ b/ZoFo/Content/Content.mgcb @@ -146,6 +146,9 @@ #begin Textures/Animations/explosion_1.animation /copy:Textures/Animations/explosion_1.animation +#begin Textures/Animations/OneAnimationPerItem/granade_spinning.animation +/copy:Textures/Animations/OneAnimationPerItem/granade_spinning.animation + #begin Textures/Animations/player_idle_down_mining.animation /copy:Textures/Animations/player_idle_down_mining.animation @@ -383,6 +386,18 @@ /processorParam:TextureFormat=Color /build:Textures/AnimationTextures/Character/hr-level1_running.png +#begin Textures/AnimationTextures/OneAnimationPerItem/granade.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:Textures/AnimationTextures/OneAnimationPerItem/granade.png + #begin Textures/AnimationTextures/Player/Grenade.png /importer:TextureImporter /processor:TextureProcessor @@ -683,6 +698,18 @@ /processorParam:TextureFormat=Color /build:Textures/GUI/MenuBackground.jpg +#begin Textures/GUI/mouse_pressed.png +/importer:TextureImporter +/processor:TextureProcessor +/processorParam:ColorKeyColor=255,0,255,255 +/processorParam:ColorKeyEnabled=True +/processorParam:GenerateMipmaps=False +/processorParam:PremultiplyAlpha=True +/processorParam:ResizeToPowerOfTwo=False +/processorParam:MakeSquare=False +/processorParam:TextureFormat=Color +/build:Textures/GUI/mouse_pressed.png + #begin Textures/GUI/mouse.png /importer:TextureImporter /processor:TextureProcessor diff --git a/ZoFo/Content/Textures/AnimationTextures/OneAnimationPerItem/granade.png b/ZoFo/Content/Textures/AnimationTextures/OneAnimationPerItem/granade.png new file mode 100644 index 0000000000000000000000000000000000000000..8bc27de16dfc76ea697fbf13a5da22e1fdfbd8a2 GIT binary patch literal 6283 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 M{b5V>rkKC|9f8~_!vFvP literal 0 HcmV?d00001 diff --git a/ZoFo/Content/Textures/Animations/OneAnimationPerItem/granade_spinning.animation b/ZoFo/Content/Textures/Animations/OneAnimationPerItem/granade_spinning.animation new file mode 100644 index 0000000..c83a560 --- /dev/null +++ b/ZoFo/Content/Textures/Animations/OneAnimationPerItem/granade_spinning.animation @@ -0,0 +1 @@ +{"id":"granade_spinning","textureName":"Textures/AnimationTextures/OneAnimationPerItem/granade","startSpriteRectangle":{"X":0,"Y":0,"Width":256,"Height":256},"frameSecond":[{"Item1":0,"Item2":2}],"textureFrameInterval":0,"framesCount":6,"isCycle":true,"offset":"0, 0"} diff --git a/ZoFo/Content/Textures/Animations/Player/player_running.animation b/ZoFo/Content/Textures/Animations/Player/player_running.animation index 68ee9e9..89100da 100644 --- a/ZoFo/Content/Textures/Animations/Player/player_running.animation +++ b/ZoFo/Content/Textures/Animations/Player/player_running.animation @@ -1 +1 @@ -{"id":"player_running","textureName":"Textures/AnimationTextures/Player/Run","startSpriteRectangle":{"X":0,"Y":0,"Width":128,"Height":128},"frameSecond":[{"Item1":0,"Item2":1}],"textureFrameInterval":0,"framesCount":8,"isCycle":true,"offset":"0, 0"} +{"id":"player_running","textureName":"Textures/AnimationTextures/Player/Run","startSpriteRectangle":{"X":0,"Y":0,"Width":128,"Height":128},"frameSecond":[{"Item1":0,"Item2":5}],"textureFrameInterval":0,"framesCount":8,"isCycle":true,"offset":"0, 0"} diff --git a/ZoFo/Content/Textures/Animations/zombie_walk.animation b/ZoFo/Content/Textures/Animations/zombie_walk.animation index 872e797..c99061c 100644 --- a/ZoFo/Content/Textures/Animations/zombie_walk.animation +++ b/ZoFo/Content/Textures/Animations/zombie_walk.animation @@ -1 +1 @@ -{"id":"zombie_walk","textureName":"Textures/AnimationTextures/Zombie/zombie_spritesheet_v1","startSpriteRectangle":{"X":0,"Y":32,"Width":32,"Height":32},"frameSecond":[{"Item1":0,"Item2":30}],"textureFrameInterval":0,"framesCount":8,"isCycle":true,"offset":"0, 0"} +{"id":"zombie_walk","textureName":"Textures/AnimationTextures/Zombie/zombie_spritesheet_v1","startSpriteRectangle":{"X":0,"Y":32,"Width":32,"Height":32},"frameSecond":[{"Item1":0,"Item2":10}],"textureFrameInterval":0,"framesCount":8,"isCycle":true,"offset":"0, 0"} diff --git a/ZoFo/Content/Textures/GUI/mouse_pressed.png b/ZoFo/Content/Textures/GUI/mouse_pressed.png new file mode 100644 index 0000000000000000000000000000000000000000..98ffdd65bb4c1ec07a7752691a7a024640d95205 GIT binary patch literal 131602 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 literal 0 HcmV?d00001 diff --git a/ZoFo/GameCore/Client.cs b/ZoFo/GameCore/Client.cs index 9ea8a50..413e3d2 100644 --- a/ZoFo/GameCore/Client.cs +++ b/ZoFo/GameCore/Client.cs @@ -74,7 +74,7 @@ namespace ZoFo.GameCore }; } - public void OnDataSend(string data) + public void OnDataSend(string data)//А это нужно? 0 использований метода :/ { //List updateDatas = JsonSerializer.Deserialize>(data); JArray jToken = JsonConvert.DeserializeObject(data) as JArray; @@ -94,7 +94,11 @@ namespace ZoFo.GameCore } public void GameEndedUnexpectedly() { } - + /// + /// Подключиться к комнате + /// + /// + /// public void JoinRoom(string ip, int port) { networkManager.JoinRoom(ip, port); @@ -113,7 +117,11 @@ namespace ZoFo.GameCore float shakeEffect = 0; public void AddShaking(float power) { - shakeEffect += power*3; + shakeEffect += power; + if (shakeEffect>10) + { + shakeEffect = 10; + } } public void UpdateShaking() { diff --git a/ZoFo/GameCore/GUI/AbstractGUI.cs b/ZoFo/GameCore/GUI/AbstractGUI.cs index 6aafbb2..073f360 100644 --- a/ZoFo/GameCore/GUI/AbstractGUI.cs +++ b/ZoFo/GameCore/GUI/AbstractGUI.cs @@ -22,6 +22,7 @@ public abstract class AbstractGUI private bool isStartedPrint = false; private bool isPressed = false; private Texture2D mouse; + private Texture2D mouse_pressed; private MouseState mouseState; public AbstractGUI() @@ -40,6 +41,7 @@ public abstract class AbstractGUI { Manager.LoadContent(AppManager.Instance.Content, "Fonts/Font"); mouse = AppManager.Instance.Content.Load("Textures/GUI/mouse"); + mouse_pressed = AppManager.Instance.Content.Load("Textures/GUI/mouse_pressed"); } public virtual void Update(GameTime gameTime) @@ -52,7 +54,11 @@ public abstract class AbstractGUI { Manager.Draw(spriteBatch); spriteBatch.Begin(); - spriteBatch.Draw(mouse, new Rectangle(mouseState.Position.X, mouseState.Position.Y, 20, 40), Color.White); - spriteBatch.End(); - } -} \ No newline at end of file + if (Mouse.GetState().LeftButton == ButtonState.Pressed) + spriteBatch.Draw(mouse_pressed, new Rectangle(mouseState.Position.X, mouseState.Position.Y, 20, 40), Color.White); + else + spriteBatch.Draw(mouse, new Rectangle(mouseState.Position.X, mouseState.Position.Y, 20, 40), Color.White); + + spriteBatch.End(); + } + } \ No newline at end of file diff --git a/ZoFo/GameCore/GUI/HUD.cs b/ZoFo/GameCore/GUI/HUD.cs index ce556c0..c4d5411 100644 --- a/ZoFo/GameCore/GUI/HUD.cs +++ b/ZoFo/GameCore/GUI/HUD.cs @@ -20,6 +20,7 @@ public class HUD : AbstractGUI public AbstractGUI overlayGUI; protected override void CreateUI() { + int width = AppManager.Instance.CurentScreenResolution.X; int height = AppManager.Instance.CurentScreenResolution.Y; diff --git a/ZoFo/GameCore/GUI/LoadingGameScreenGUI.cs b/ZoFo/GameCore/GUI/LoadingGameScreenGUI.cs new file mode 100644 index 0000000..9d67e88 --- /dev/null +++ b/ZoFo/GameCore/GUI/LoadingGameScreenGUI.cs @@ -0,0 +1,39 @@ +using Microsoft.Xna.Framework; +using MonogameLibrary.UI.Base; +using MonogameLibrary.UI.Elements; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Xml.Linq; +using ZoFo.GameCore.GameManagers; + +namespace ZoFo.GameCore.GUI +{ + internal class LoadingGameScreenGUI : AbstractGUI + { + private DrawableUIElement menuBackground; + protected override void CreateUI() + { + int width = AppManager.Instance.CurentScreenResolution.X; + int height = AppManager.Instance.CurentScreenResolution.Y; + + + menuBackground = new DrawableUIElement(Manager) { rectangle = new Rectangle(0, 0, width, height), mainColor = Color.White, textureName = "Textures/GUI/background/waiting" }; + Elements.Add(menuBackground); + menuBackground.LoadTexture(AppManager.Instance.Content); + + var loading = new Label(Manager) { rectangle = new Rectangle(width / 2 - (int)(width / 8), height / 7, (int)(width / 4), (int)(height / 20)), + text = "Loading...", fontColor = Color.White, mainColor = Color.Transparent, scale = 0.9f, fontName = "Fonts\\Font3" }; + + Elements.Add(loading); + + } + + public override void Update(GameTime gameTime) + { + base.Update(gameTime); + } + } +} diff --git a/ZoFo/GameCore/GUI/SelectModeMenu.cs b/ZoFo/GameCore/GUI/SelectModeMenu.cs index b4ee1e0..c8c67f1 100644 --- a/ZoFo/GameCore/GUI/SelectModeMenu.cs +++ b/ZoFo/GameCore/GUI/SelectModeMenu.cs @@ -50,7 +50,8 @@ public class SelectModeMenu : AbstractGUI server.CreateRoom(false); client.JoinYourself(server.MyIp.Port); //AppManager.Instance.ChangeState(GameState.HostPlaying); - AppManager.Instance.SetGUI(new HUD()); + AppManager.Instance.SetGUI(new HUD() { }); + //server.CreateRoom(1); //client.JoinYourself(); diff --git a/ZoFo/GameCore/GameManagers/InputManager.cs b/ZoFo/GameCore/GameManagers/InputManager.cs index c4aa94d..35033de 100644 --- a/ZoFo/GameCore/GameManagers/InputManager.cs +++ b/ZoFo/GameCore/GameManagers/InputManager.cs @@ -8,12 +8,12 @@ using System.Diagnostics; using ZoFo.GameCore.GUI; namespace ZoFo.GameCore.GameManagers -{ +{ public enum ScopeState { Idle, Left, Right, Top, Down, TopLeft, TopRight, DownLeft, DownRight } public class InputManager { public event Action ShootEvent; // событие удара(когда нажат X, событие срабатывает) - + public event Action OnInteract; // событие взаимодействия с collectable(например, лутом) //с помощью кнопки E. @@ -57,205 +57,235 @@ namespace ZoFo.GameCore.GameManagers } #region Работа с GamePad - #region Обработка гейм-пада. Задает Vector2 vectorMovementDirection являющийся вектором отклонения левого стика. - GamePadState gamePadState = GamePad.GetState(0); - InputMovementDirection = gamePadState.ThumbSticks.Left; - InputAttackDirection = gamePadState.ThumbSticks.Right; - #endregion + #region Обработка гейм-пада. Задает Vector2 vectorMovementDirection являющийся вектором отклонения левого стика. + GamePadState gamePadState = GamePad.GetState(0); + InputMovementDirection = gamePadState.ThumbSticks.Left; + InputAttackDirection = gamePadState.ThumbSticks.Right; + #endregion - #region читы - if (gamePadState.Triggers.Left >= 0.9 && gamePadState.Triggers.Right >= 0.9) - _cheatsEnabled = true; - if (_cheatsEnabled) - { - if (gamePadState.Buttons.Y == ButtonState.Pressed && lastGamePadState.Buttons.Y == ButtonState.Released) - InvincibilityCheat = !InvincibilityCheat; - if (gamePadState.Buttons.B == ButtonState.Pressed && lastGamePadState.Buttons.B == ButtonState.Released) - CollisionsCheat = !CollisionsCheat; - //TODO: infinite ammo cheat by gamepad - } - #endregion // Cheats + #region читы + if (gamePadState.Triggers.Left >= 0.9 && gamePadState.Triggers.Right >= 0.9) + _cheatsEnabled = true; + if (_cheatsEnabled) + { + if (gamePadState.Buttons.Y == ButtonState.Pressed && lastGamePadState.Buttons.Y == ButtonState.Released) + InvincibilityCheat = !InvincibilityCheat; + if (gamePadState.Buttons.B == ButtonState.Pressed && lastGamePadState.Buttons.B == ButtonState.Released) + CollisionsCheat = !CollisionsCheat; + //TODO: infinite ammo cheat by gamepad + } + #endregion // Cheats - #region set ScopeState - ConvertVector2ToState(InputMovementDirection); - #endregion + #region set ScopeState + ConvertVector2ToState(InputMovementDirection); + #endregion - #region Обработка нажатия выстрела. Вызывает событие ShootEvent - if (gamePadState.Buttons.X == ButtonState.Pressed && !isShoot) - { - isShoot = true; - ShootEvent?.Invoke(); - Debug.WriteLine("Выстрел"); - } - else if (gamePadState.Buttons.X == ButtonState.Released) - { - isShoot = false; - } - #endregion + #region Обработка нажатия выстрела. Вызывает событие ShootEvent + if (gamePadState.Buttons.X == ButtonState.Pressed && !isShoot) + { + isShoot = true; + ShootEvent?.Invoke(); + Debug.WriteLine("Выстрел"); + } + else if (gamePadState.Buttons.X == ButtonState.Released) + { + isShoot = false; + } + #endregion - lastGamePadState = gamePadState; + lastGamePadState = gamePadState; #endregion #region Работа с KeyBoard - #region InputAttack with mouse - MouseState mouseState = Mouse.GetState(); - AppManager.Instance.debugHud.Set("mouse position", $"({mouseState.X}, {mouseState.Y}"); - // TODO: CurentScreenResolution - Vector2 a = (AppManager.Instance.CurentScreenResolution / new Point(2, 2)).ToVector2(); - InputAttackDirection = Vector2.Normalize(new Vector2(mouseState.X - a.X, mouseState.Y - a.Y)); - AppManager.Instance.debugHud.Set("AttackDir(normalize)", $"({a.X}, {a.Y})"); - #endregion - - #region Состояние клавиатуры - KeyboardState keyBoardState = Keyboard.GetState(); // Состояние клавиатуры - #endregion - - #region читы - if (keyBoardState.IsKeyDown(Keys.LeftShift) && keyBoardState.IsKeyDown(Keys.RightShift)) - _cheatsEnabled = true; - if (_cheatsEnabled) - { - if (keyBoardState.IsKeyDown(Keys.I) && lastKeyboardState.IsKeyUp(Keys.I)) - InvincibilityCheat = !InvincibilityCheat; - if (keyBoardState.IsKeyDown(Keys.C) && lastKeyboardState.IsKeyUp(Keys.C)) - CollisionsCheat = !CollisionsCheat; - if (keyBoardState.IsKeyDown(Keys.N) && lastKeyboardState.IsKeyUp(Keys.N)) - InfiniteAmmoCheat = !InfiniteAmmoCheat; - - List lvls = new List() { Keys.D0, Keys.D1, Keys.D2, Keys.D3, Keys.D4, Keys.D5, Keys.D6, Keys.D7, Keys.D8, Keys.D9 }; - - for (int i = 0; i < lvls.Count; i++) - { - //if (keyBoardState.IsKeyDown(lvls[i]) && lastKeyboardState.IsKeyUp(lvls[i])) //TODO - // AppManager.Instance.Restart($"lvl{i}"); - } - } - #endregion // Cheats - - #region Обработка состояния объекта. Задает значение полю scopeState. - if (keyBoardState.IsKeyDown(Keys.Up) || keyBoardState.IsKeyDown(Keys.W)) - { - InputMovementDirection += new Vector2(0, -1); - } - if (keyBoardState.IsKeyDown(Keys.Down) || keyBoardState.IsKeyDown(Keys.S)) - { - InputMovementDirection += new Vector2(0, 1); - } - if (keyBoardState.IsKeyDown(Keys.Right) || keyBoardState.IsKeyDown(Keys.D)) - { - InputMovementDirection += new Vector2(1, 0); - } - if (keyBoardState.IsKeyDown(Keys.Left) || keyBoardState.IsKeyDown(Keys.A)) - { - InputMovementDirection += new Vector2(-1, 0); - - } - ConvertVector2ToState(InputMovementDirection); - #endregion - - #region Обработка нажатия выстрела. Вызывает событие ShootEvent - if ((keyBoardState.IsKeyDown(Keys.P) || keyBoardState.IsKeyDown(Keys.F)) && !isShoot) - { - isShoot = true; - ShootEvent?.Invoke(); - Debug.WriteLine("Выстрел"); - } - else if (keyBoardState.IsKeyUp(Keys.F)) - { - isShoot = false; - } - #endregion - - #region Обработка взаимодействия с collectable(например лутом). Вызывает событие OnInteract - if ((keyBoardState.IsKeyDown(Keys.E) || mouseState.LeftButton == ButtonState.Pressed) && !isInteract) - { - OnInteract?.Invoke(); - Debug.WriteLine("взаимодействие с Collectable"); - } - else if (keyBoardState.IsKeyUp(Keys.E)) - { - isInteract = false; - } - #endregion - lastKeyboardState = keyBoardState; - - #endregion - #region ActionEvent - if(InputMovementDirection != prevInputMovementDirection || - InputAttackDirection != prevInputAttackDirection || - currentScopeState != prevCurrentScopeState) - { - ActionEvent?.Invoke(); - } - prevInputMovementDirection = InputMovementDirection; - prevInputAttackDirection = InputAttackDirection; - prevCurrentScopeState = currentScopeState; + #region Состояние клавиатуры + KeyboardState keyBoardState = Keyboard.GetState(); // Состояние клавиатуры #endregion - + + #region InputAttack with mouse + MouseState mouseState = Mouse.GetState(); + AppManager.Instance.debugHud.Set("mouse position", $"({mouseState.X}, {mouseState.Y}"); + + Vector2 a = (AppManager.Instance.CurentScreenResolution / new Point(2, 2)).ToVector2(); //player is always in the centre + + InputAttackDirection = Vector2.Normalize(new Vector2(mouseState.X - a.X, mouseState.Y - a.Y)); + AppManager.Instance.debugHud.Set("AttackDir(normalize)", $"({a.X}, {a.Y})"); + + if (keyBoardState.IsKeyDown(Keys.Down)) + { + InputAttackDirection.Y = 1; + } + else if (keyBoardState.IsKeyDown(Keys.Up)) + InputAttackDirection.Y = -1; + else + InputAttackDirection.Y = 0; + + if (keyBoardState.IsKeyDown(Keys.Right)) + { + InputAttackDirection.X = 1; + } + else if (keyBoardState.IsKeyDown(Keys.Left)) + InputAttackDirection.X = -1; + else + InputAttackDirection.X = 0; + + + #endregion + + + + #region читы + if (keyBoardState.IsKeyDown(Keys.LeftShift) && keyBoardState.IsKeyDown(Keys.RightShift)) + _cheatsEnabled = true; + if (_cheatsEnabled) + { + if (keyBoardState.IsKeyDown(Keys.I) && lastKeyboardState.IsKeyUp(Keys.I)) + InvincibilityCheat = !InvincibilityCheat; + if (keyBoardState.IsKeyDown(Keys.C) && lastKeyboardState.IsKeyUp(Keys.C)) + CollisionsCheat = !CollisionsCheat; + if (keyBoardState.IsKeyDown(Keys.N) && lastKeyboardState.IsKeyUp(Keys.N)) + InfiniteAmmoCheat = !InfiniteAmmoCheat; + + List lvls = new List() { Keys.D0, Keys.D1, Keys.D2, Keys.D3, Keys.D4, Keys.D5, Keys.D6, Keys.D7, Keys.D8, Keys.D9 }; + + for (int i = 0; i < lvls.Count; i++) + { + //if (keyBoardState.IsKeyDown(lvls[i]) && lastKeyboardState.IsKeyUp(lvls[i])) //TODO + // AppManager.Instance.Restart($"lvl{i}"); + } + } + #endregion // Cheats + + #region Обработка состояния объекта. Задает значение полю scopeState. + bool useReverseControls = false; + if ((keyBoardState.IsKeyDown(Keys.Up) && useReverseControls) + || (keyBoardState.IsKeyDown(Keys.W) && !useReverseControls)) + { + InputMovementDirection += new Vector2(0, -1); + } + if ((keyBoardState.IsKeyDown(Keys.Down) && useReverseControls) + || (keyBoardState.IsKeyDown(Keys.S) && !useReverseControls)) + { + InputMovementDirection += new Vector2(0, 1); + } + if ((keyBoardState.IsKeyDown(Keys.Right) && useReverseControls) + || (keyBoardState.IsKeyDown(Keys.D) && !useReverseControls)) + { + InputMovementDirection += new Vector2(1, 0); + } + if ((keyBoardState.IsKeyDown(Keys.Left) && useReverseControls) + || (keyBoardState.IsKeyDown(Keys.A) && !useReverseControls)) + { + InputMovementDirection += new Vector2(-1, 0); + + } + ConvertVector2ToState(InputMovementDirection); + #endregion + + #region Обработка нажатия выстрела. Вызывает событие ShootEvent + if ((keyBoardState.IsKeyDown(Keys.P) || keyBoardState.IsKeyDown(Keys.F)) && !isShoot) + { + isShoot = true; + ShootEvent?.Invoke(); + Debug.WriteLine("Выстрел"); + } + else if (keyBoardState.IsKeyUp(Keys.F)) + { + isShoot = false; + } + #endregion + + #region Обработка взаимодействия с collectable(например лутом). Вызывает событие OnInteract + if ((keyBoardState.IsKeyDown(Keys.E) || mouseState.LeftButton == ButtonState.Pressed) && !isInteract) + { + OnInteract?.Invoke(); + Debug.WriteLine("взаимодействие с Collectable"); + } + else if (keyBoardState.IsKeyUp(Keys.E)) + { + isInteract = false; + } + #endregion + lastKeyboardState = keyBoardState; + + #endregion + #region ActionEvent + if (InputMovementDirection != prevInputMovementDirection || + InputAttackDirection != prevInputAttackDirection || + currentScopeState != prevCurrentScopeState) + { + ActionEvent?.Invoke(); + } + prevInputMovementDirection = InputMovementDirection; + prevInputAttackDirection = InputAttackDirection; + prevCurrentScopeState = currentScopeState; + #endregion + DebugHUD.Instance.Set("controls", currentScopeState.ToString()); } #region работа с ScopeState и Vector2 - /// - /// возвращает число от -14 до 16, начиная с - /// - /// - /// - public int ConvertAttackVector2ToState(Vector2 vector){ - int currentSection = (int)Math.Ceiling(Math.Atan2(vector.Y, - vector.X) * (180 / Math.PI) / 360 * 32); - return currentSection; - } - public ScopeState ConvertVector2ToState(Vector2 vector) + /// + /// возвращает число от -14 до 16, начиная с + /// + /// + /// + public int ConvertAttackVector2ToState(Vector2 vector) + { + int currentSection = (int)Math.Ceiling(Math.Atan2(vector.Y, + vector.X) * (180 / Math.PI) / 360 * 32); + return currentSection; + } + public ScopeState ConvertVector2ToState(Vector2 vector) + { + int currentSection = 0; + if (vector.X == 0f && vector.Y == 0f) { - int currentSection = 0; - if(vector.X == 0f && vector.Y == 0f){ - currentScopeState = ScopeState.Idle; - } - else - { - currentSection = (int)Math.Ceiling(Math.Atan2(vector.Y, - vector.X) * (180 / Math.PI) / 360 * 16); - + currentScopeState = ScopeState.Idle; + } + else + { + currentSection = (int)Math.Ceiling(Math.Atan2(vector.Y, + vector.X) * (180 / Math.PI) / 360 * 16); - switch(currentSection) + + switch (currentSection) { case -1: currentScopeState = ScopeState.Idle; break; case 0 or 1: - currentScopeState = ScopeState.Right; - break; + currentScopeState = ScopeState.Right; + break; case 2 or 3: - currentScopeState = ScopeState.DownRight; - break; + currentScopeState = ScopeState.DownRight; + break; case 4 or 5: - currentScopeState = ScopeState.Down; - break; + currentScopeState = ScopeState.Down; + break; case 6 or 7: - currentScopeState = ScopeState.DownLeft; - break; + currentScopeState = ScopeState.DownLeft; + break; case 8 or -7: - currentScopeState = ScopeState.Left; - break; + currentScopeState = ScopeState.Left; + break; case -6 or -5: - currentScopeState = ScopeState.TopLeft; - break; + currentScopeState = ScopeState.TopLeft; + break; case -4 or -3: - currentScopeState = ScopeState.Top; - break; + currentScopeState = ScopeState.Top; + break; case -2 or -1: - currentScopeState = ScopeState.TopRight; - break; + currentScopeState = ScopeState.TopRight; + break; default: - break; + break; } - + DebugHUD.DebugSet("current section", currentSection.ToString()); DebugHUD.DebugSet("y", vector.Y.ToString()); DebugHUD.DebugSet("x", vector.X.ToString()); - } - return currentScopeState; + } + return currentScopeState; } public static Vector2 ConvertStateToVector2(ScopeState scopeState) { @@ -281,7 +311,7 @@ namespace ZoFo.GameCore.GameManagers return new Vector2(1, 1); default: return new Vector2(0, 0); - } + } } diff --git a/ZoFo/GameCore/GameManagers/NetworkManager/ServerNetworkManager.cs b/ZoFo/GameCore/GameManagers/NetworkManager/ServerNetworkManager.cs index b05b093..1756d71 100644 --- a/ZoFo/GameCore/GameManagers/NetworkManager/ServerNetworkManager.cs +++ b/ZoFo/GameCore/GameManagers/NetworkManager/ServerNetworkManager.cs @@ -205,7 +205,7 @@ namespace ZoFo.GameCore.GameManagers.NetworkManager } currentDatagrammId++; AppManager.Instance.ChangeState(GameState.HostPlaying); - AppManager.Instance.SetGUI(new HUD());//// + AppManager.Instance.SetGUI(new HUD());//// КАКОЙ В СЕРВЕРЕ ЭТО ПИСАТЬ??? } public void CloseConnection() { diff --git a/ZoFo/GameCore/GameObjects/Entities/LivingEntities/Enemies/Zombie.cs b/ZoFo/GameCore/GameObjects/Entities/LivingEntities/Enemies/Zombie.cs index a8eca18..bc29d61 100644 --- a/ZoFo/GameCore/GameObjects/Entities/LivingEntities/Enemies/Zombie.cs +++ b/ZoFo/GameCore/GameObjects/Entities/LivingEntities/Enemies/Zombie.cs @@ -22,7 +22,7 @@ namespace ZoFo.GameCore.GameObjects public Zombie(Vector2 position) : base(position) { health = 5; - speed = 7.5f; + speed = 6.5f; graphicsComponent.ObjectDrawRectangle = new Rectangle(0, 0, 30, 30); collisionComponent.stopRectangle = new Rectangle(10, 20, 10, 10); isAttacking = false; diff --git a/ZoFo/GameCore/GameObjects/Entities/LivingEntities/Player/Player.cs b/ZoFo/GameCore/GameObjects/Entities/LivingEntities/Player/Player.cs index a99cdd9..b498618 100644 --- a/ZoFo/GameCore/GameObjects/Entities/LivingEntities/Player/Player.cs +++ b/ZoFo/GameCore/GameObjects/Entities/LivingEntities/Player/Player.cs @@ -290,12 +290,12 @@ public class Player : LivingEntity { direction.Normalize(); var rect = collisionComponent.stopRectangle.SetOrigin(position); - int size = 10; + int size = 30; rect.X -= size; rect.Y -= size; rect.Width += 2 * size; rect.Height += 2 * size; - rect = rect.SetOrigin(direction * 40 * mult); + rect = rect.SetOrigin(direction * 60 * mult); return rect; } } \ No newline at end of file diff --git a/ZoFo/GameCore/GameObjects/Entities/Particles/Granade.cs b/ZoFo/GameCore/GameObjects/Entities/Particles/Granade.cs index 9add728..4d7eee4 100644 --- a/ZoFo/GameCore/GameObjects/Entities/Particles/Granade.cs +++ b/ZoFo/GameCore/GameObjects/Entities/Particles/Granade.cs @@ -14,7 +14,7 @@ namespace ZoFo.GameCore.GameObjects /// public class Granade : GameObject { - public override GraphicsComponent graphicsComponent { get; } = new AnimatedGraphicsComponent(new List { "explosion_1" }, "explosion_1"); + public override GraphicsComponent graphicsComponent { get; } = new AnimatedGraphicsComponent(new List { "granade_spinning" }, "granade_spinning"); /// /// TODO updates with directed effect @@ -26,7 +26,7 @@ namespace ZoFo.GameCore.GameObjects if (AppManager.Instance.client.myPlayer != null) this.positionFrom = AppManager.Instance.client.myPlayer.position; this.positionTo = positionTo; - graphicsComponent.ObjectDrawRectangle = new Rectangle(-30, -30, 60, 60).SetOrigin(position); + graphicsComponent.ObjectDrawRectangle = new Rectangle(-15, -15, 30, 30).SetOrigin(position); AppManager.Instance.SoundManager.StartSound("gun-gunshot-01", Vector2.Zero, Vector2.Zero, 0.5f, (float)(Random.Shared.NextDouble() * 2 - 1)); (graphicsComponent as AnimatedGraphicsComponent).actionOfAnimationEnd += _ => { @@ -34,6 +34,8 @@ namespace ZoFo.GameCore.GameObjects //Delete_OnClient(this); }; + graphicsComponent.ObjectDrawRectangle.X = (int)position.X; + graphicsComponent.ObjectDrawRectangle.Y = (int)position.Y; } Vector2 positionFrom; Vector2 positionTo; @@ -46,7 +48,7 @@ namespace ZoFo.GameCore.GameObjects position.Y = (2 * positionTo.Y + 2 * positionFrom.Y - 4 * m) * dt * dt + (4 * m - positionTo.Y - 3 * positionFrom.Y) * dt + positionFrom.Y; - if (dt >= 0.9) + if (dt >= 1) { FlightEndedOnServer(); return; @@ -72,18 +74,25 @@ namespace ZoFo.GameCore.GameObjects } public override void Update_OnClient() { + float m = Math.Min(positionFrom.Y, positionTo.Y)-40; + position.X = (1 - dt) * positionFrom.X + dt * positionTo.X; + position.Y = (2 * positionTo.Y + 2 * positionFrom.Y - 4 * m) * dt * dt + + (4 * m - positionTo.Y - 3 * positionFrom.Y) * dt + positionFrom.Y; + + dt += 0.05f; + + if (dt >= 1) { //Granade Finished the flight - Instantiate_OnClient(new Explosion(position + ExtentionClass.RandomVector()*10)); + Instantiate_OnClient(new Explosion(position + ExtentionClass.RandomVector() * 10)); Delete_OnClient(this); - base.Update_OnClient(); for (int i = 0; i < 10; i++) { if (Random.Shared.NextDouble() < 0.1) continue; float angl = i / 10f * (float)Math.PI * 2; - Instantiate_OnClient(new Explosion(position + + Instantiate_OnClient(new Explosion(position + new Vector2((float)Math.Cos(angl), (float)Math.Sin(angl) ) * 30)); @@ -91,15 +100,10 @@ namespace ZoFo.GameCore.GameObjects var rect = GetDamageRectangle(); - + return; } - float m = Math.Min(positionFrom.Y, positionTo.Y)-40; - position.X = (1 - dt) * positionFrom.X + dt * positionTo.X; - position.Y = (2 * positionTo.Y + 2 * positionFrom.Y - 4 * m) * dt * dt + - (4 * m - positionTo.Y - 3 * positionFrom.Y) * dt + positionFrom.Y; - dt += 0.05f; //position = //base.Update_OnClient(); @@ -121,7 +125,7 @@ namespace ZoFo.GameCore.GameObjects var rect = graphicsComponent.ObjectDrawRectangle; rect.X = (int)position.X; rect.Y = (int)position.Y; - int size = 10; + int size = 20; rect.X -= size; rect.Y -= size; rect.Width += 2 * size;