diff --git a/MrBigsock/Assets/Code/Character.cs b/MrBigsock/Assets/Code/Character.cs index 283f12944f95160e39be98dcfdacacf5e3fb23f1..33e58b0c85f077ceb7148d10a0a53c3d072970e8 100644 --- a/MrBigsock/Assets/Code/Character.cs +++ b/MrBigsock/Assets/Code/Character.cs @@ -118,6 +118,7 @@ namespace BigSock { CritChance = 1, CritDamageModifier = 1, ProjectileSpeed = 1, + Accuracy = 1, }; UpdateModifiers(); diff --git a/MrBigsock/Assets/Code/Core/CharacterStats.cs b/MrBigsock/Assets/Code/Core/CharacterStats.cs index 8ee6c2b7d7aea72fa015ae691643e5d19e3fef71..d60f46760873e5c4f78d9037949ffc998f66d342 100644 --- a/MrBigsock/Assets/Code/Core/CharacterStats.cs +++ b/MrBigsock/Assets/Code/Core/CharacterStats.cs @@ -16,20 +16,24 @@ namespace BigSock { */ public float MaxHP { get; set; } + + /* The max mana of the character. */ public float MaxMana { get; set; } /* - The max stamina of the character. + The regeneration rate of the character's mana. */ - public float MaxStamina { get; set; } + public float RegenMana { get; set; } + + /* - The regeneration rate of the character's mana. + The max stamina of the character. */ - public float RegenMana { get; set; } + public float MaxStamina { get; set; } /* The regeneration rate of the character's stamina. @@ -43,31 +47,25 @@ namespace BigSock { */ public float Damage { get; set; } - /* - The movement speed of the character. - */ - public float MoveSpeed { get; set; } - - /* - The projectile speed of the attack. - */ - public float ProjectileSpeed { get; set; } - /* The knockback of the character. */ public float Knockback { get; set; } + + /* - The range of the character. + The movement speed of the character. */ - public float Range { get; set; } + public float MoveSpeed { get; set; } /* The attack speed of the character. */ public float AttackSpeed { get; set; } + + /* The crit chance of the character. */ @@ -77,5 +75,22 @@ namespace BigSock { The how much to modify damage by when critting. */ public float CritDamageModifier { get; set; } + + + + /* + The projectile speed of the attack. + */ + public float ProjectileSpeed { get; set; } + + /* + The range of the character. + */ + public float Range { get; set; } + + /* + The range of the character. + */ + public float Accuracy { get; set; } } } \ No newline at end of file diff --git a/MrBigsock/Assets/Code/Core/ICharacterStats.cs b/MrBigsock/Assets/Code/Core/ICharacterStats.cs index 4fa71d78396e5efb122e2641db990de49faee15e..da7c4ae6fa3d5f308527cc553dd56b84ebf14bdb 100644 --- a/MrBigsock/Assets/Code/Core/ICharacterStats.cs +++ b/MrBigsock/Assets/Code/Core/ICharacterStats.cs @@ -76,6 +76,11 @@ namespace BigSock { The projectile speed of the attack. */ float ProjectileSpeed { get; } + + /* + How much the projectile will stray off course. + */ + float Accuracy { get; } } @@ -101,6 +106,7 @@ namespace BigSock { CritChance = 1, CritDamageModifier = 1, ProjectileSpeed = 1, + Accuracy = 1, }; /* @@ -122,6 +128,7 @@ namespace BigSock { CritChance = a.CritChance + b.CritChance, CritDamageModifier = a.CritDamageModifier + b.CritDamageModifier, ProjectileSpeed = a.ProjectileSpeed + b.ProjectileSpeed, + Accuracy = a.Accuracy + b.Accuracy, }; } @@ -145,6 +152,7 @@ namespace BigSock { CritChance = a.CritChance - b.CritChance, CritDamageModifier = a.CritDamageModifier - b.CritDamageModifier, ProjectileSpeed = a.ProjectileSpeed - b.ProjectileSpeed, + Accuracy = a.Accuracy - b.Accuracy, }; } @@ -167,6 +175,8 @@ namespace BigSock { CritChance = a.CritChance * b.CritChance, CritDamageModifier = a.CritDamageModifier * b.CritDamageModifier, ProjectileSpeed = a.ProjectileSpeed * b.ProjectileSpeed, + Accuracy = a.Accuracy * b.Accuracy, + }; } diff --git a/MrBigsock/Assets/Code/Core/Skills/Skills.cs b/MrBigsock/Assets/Code/Core/Skills/Skills.cs index 297ac20ce2c1113bd1fe3cb832a8e78de7c9cb30..5fe865e65e316fe00a24f590894f9d5078a1c26f 100644 --- a/MrBigsock/Assets/Code/Core/Skills/Skills.cs +++ b/MrBigsock/Assets/Code/Core/Skills/Skills.cs @@ -86,7 +86,7 @@ namespace BigSock { case Skill.Concentration: stats.Range += amount * increase.Range; stats.ProjectileSpeed += amount * increase.ProjectileSpeed; - //- Add accuracy skill + stats.Accuracy += amount * increase.Accuracy; break; default: throw new NotImplementedException(); diff --git a/MrBigsock/Assets/Code/PlayerController.cs b/MrBigsock/Assets/Code/PlayerController.cs index d85f1bc84ea211b52d2d9b534d586c04ac18b88f..f47089b0b0f93a26fd60f78fb3814b6d2c1f1329 100644 --- a/MrBigsock/Assets/Code/PlayerController.cs +++ b/MrBigsock/Assets/Code/PlayerController.cs @@ -248,13 +248,13 @@ namespace BigSock { The maximum amount of points the user can spend on each skill. */ public Skills MaxSkills { get; set; } = new Skills{ - HP = 10, - SP = 10, - MP = 10, - Damage = 10, - Speed = 10, - Luck = 10, - Inventory = 10, + HP = 10, + SP = 10, + MP = 10, + Damage = 10, + Speed = 10, + Luck = 10, + Concentration = 10, }; /* @@ -282,6 +282,8 @@ namespace BigSock { Range = 0.1f, ProjectileSpeed = 0.1f, //-- Accuracy + Accuracy = 0.1f, + };