mirror of
https://github.com/MartinKral/Slash-The-Hordes
synced 2025-09-24 04:39:05 +00:00
Projectile piercing, meta upgrades
This commit is contained in:
23
assets/Scripts/Game/Unit/MetaUpgrades/MetaUpgrades.ts
Normal file
23
assets/Scripts/Game/Unit/MetaUpgrades/MetaUpgrades.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { MetaUpgradeSettings } from "../../Data/GameSettings";
|
||||
import { MetaUpgradesData } from "../../Data/UserData";
|
||||
import { MetaUpgradeType } from "../../Upgrades/UpgradeType";
|
||||
|
||||
export class MetaUpgrades {
|
||||
private upgradeTypeToValue = new Map<MetaUpgradeType, number>();
|
||||
public constructor(data: MetaUpgradesData, settings: MetaUpgradeSettings) {
|
||||
this.upgradeTypeToValue.set(MetaUpgradeType.MaxHp, data.maxHpLevel * settings.healthPointsPerLevel);
|
||||
this.upgradeTypeToValue.set(MetaUpgradeType.OverallDamage, data.bonusDamageLevel * settings.bonusDamagePerLevel);
|
||||
this.upgradeTypeToValue.set(MetaUpgradeType.ProjectilePiercing, data.projectilePiercingLevel * settings.projectilePiercingPerLevel);
|
||||
this.upgradeTypeToValue.set(MetaUpgradeType.MovementSpeed, data.movementSpeedLevel * settings.movementSpeedPerLevel);
|
||||
this.upgradeTypeToValue.set(MetaUpgradeType.XPGatherer, data.xpGathererLevel * settings.xpBonusPerLevel);
|
||||
this.upgradeTypeToValue.set(MetaUpgradeType.GoldGatherer, data.goldGathererLevel * settings.goldBonusPerLevel);
|
||||
}
|
||||
|
||||
public getUpgradeValue(type: MetaUpgradeType): number {
|
||||
if (!this.upgradeTypeToValue.has(type)) {
|
||||
throw new Error("Does not have meta upgrade set up " + type);
|
||||
}
|
||||
|
||||
return this.upgradeTypeToValue.get(type);
|
||||
}
|
||||
}
|
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"ver": "4.0.23",
|
||||
"importer": "typescript",
|
||||
"imported": true,
|
||||
"uuid": "50863e3a-1339-4a3a-aa58-74f316b3344a",
|
||||
"files": [],
|
||||
"subMetas": {},
|
||||
"userData": {}
|
||||
}
|
Reference in New Issue
Block a user