Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Stats
- {
- [Header("Properties")]
- public int maxHp;
- public int hp;
- public int maxMana;
- public int mana;
- public int walkMovementSpeed;
- public int runMovementSpeed;
- public int jumpForce;
- public Stats Add(Stats stats)
- {
- Stats newStats = new Stats();
- newStats.maxHp = stats.maxHp + maxHp;
- newStats.hp = stats.hp;
- Mathf.Clamp(newStats.hp, 0, newStats.maxHp);
- newStats.maxMana = stats.maxMana + maxMana;
- newStats.mana = stats.mana;
- Mathf.Clamp(newStats.mana, 0, newStats.maxMana);
- newStats.walkMovementSpeed = stats.walkMovementSpeed + walkMovementSpeed;
- newStats.runMovementSpeed = stats.runMovementSpeed + runMovementSpeed;
- newStats.jumpForce = stats.jumpForce + jumpForce;
- return newStats;
- }
- public static void CompareAndCallEvents(Stats stats1, Stats stats2, PlayerEvents events)
- {
- if (stats1.maxHp != stats2.maxHp)
- events.CallOnPlayersMaxHpChanged(stats1.maxHp);
- if (stats1.hp != stats2.hp)
- events.CallOnPlayersHpChanged(stats1.hp);
- if (stats1.maxMana != stats2.maxMana)
- events.CallOnPlayersMaxManaChanged(stats1.maxMana);
- if (stats1.mana != stats2.mana)
- events.CallOnPlayersManaChanged(stats1.mana);
- if (stats1.walkMovementSpeed != stats2.walkMovementSpeed)
- events.CallOnPlayersMovementSpeedChanged(stats1.walkMovementSpeed);
- if (stats1.jumpForce != stats2.jumpForce)
- events.CallOnPlayersJumpForceChanged(stats1.jumpForce);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement