mirror of
https://github.com/MartinKral/Slash-The-Hordes
synced 2025-10-09 08:36:14 +00:00
Game settings, tool to regenerate
This commit is contained in:
@@ -1,9 +1,12 @@
|
||||
export enum UpgradeType {
|
||||
MaxHP,
|
||||
WeaponLength,
|
||||
WeaponDamage,
|
||||
HorizontalProjectile,
|
||||
VerticalProjectile,
|
||||
OverallDamage,
|
||||
Regeneration
|
||||
}
|
||||
|
||||
export enum MetaUpgradeType {
|
||||
MaxHp,
|
||||
OverallDamage
|
||||
}
|
||||
|
@@ -5,16 +5,13 @@ export class Upgrader {
|
||||
private player: Player;
|
||||
private typeToAction: Map<UpgradeType, () => void> = new Map<UpgradeType, () => void>();
|
||||
private typeToLevel: Map<UpgradeType, number> = new Map<UpgradeType, number>();
|
||||
private typeToMaxLevel: Map<UpgradeType, number> = new Map<UpgradeType, number>();
|
||||
|
||||
public constructor(player: Player) {
|
||||
this.player = player;
|
||||
|
||||
this.typeToAction.set(UpgradeType.MaxHP, this.upgradeMaxHp);
|
||||
this.typeToAction.set(UpgradeType.WeaponLength, this.upgradeWeaponLength);
|
||||
this.typeToAction.set(UpgradeType.WeaponDamage, this.upgradeWeaponDamage);
|
||||
|
||||
this.typeToLevel.set(UpgradeType.MaxHP, 0);
|
||||
this.typeToLevel.set(UpgradeType.WeaponLength, 0);
|
||||
this.setTypeMaps(UpgradeType.WeaponLength, this.upgradeWeaponLength, 5);
|
||||
this.setTypeMaps(UpgradeType.WeaponDamage, this.upgradeWeaponDamage, 5);
|
||||
}
|
||||
|
||||
public upgradeSkill(type: UpgradeType): void {
|
||||
@@ -22,11 +19,10 @@ export class Upgrader {
|
||||
this.typeToAction.get(type)();
|
||||
}
|
||||
|
||||
private upgradeMaxHp(): void {
|
||||
const healthIncrease = 5;
|
||||
const currentMax: number = this.player.Health.MaxHealthPoints;
|
||||
this.player.Health.setMaxHealth(currentMax + healthIncrease);
|
||||
this.player.Health.heal(healthIncrease);
|
||||
private setTypeMaps(upgradeType: UpgradeType, action: () => void, maxLevel: number): void {
|
||||
this.typeToAction.set(upgradeType, action);
|
||||
this.typeToLevel.set(upgradeType, 0);
|
||||
this.typeToMaxLevel.set(upgradeType, maxLevel);
|
||||
}
|
||||
|
||||
private upgradeWeaponLength(): void {
|
||||
|
Reference in New Issue
Block a user