TouchyTickets/TouchyTickets/Upgrades/ModifierUpgrade.cs

23 lines
714 B
C#
Raw Normal View History

2020-07-10 20:45:23 +02:00
using Microsoft.Xna.Framework;
using TouchyTickets.Attractions;
2023-02-11 10:16:42 +01:00
namespace TouchyTickets.Upgrades;
2020-07-10 20:45:23 +02:00
2023-02-11 10:16:42 +01:00
public class ModifierUpgrade : Upgrade {
2020-07-10 20:45:23 +02:00
2023-02-11 10:16:42 +01:00
private readonly AttractionFlags requiredFlag;
private readonly float modifier;
2020-07-10 20:45:23 +02:00
2023-02-11 10:16:42 +01:00
public ModifierUpgrade(string name, int price, Point texture, AttractionFlags requiredFlag, float modifier, params Upgrade[] dependencies) :
base(name, price, texture, dependencies) {
this.requiredFlag = requiredFlag;
this.modifier = modifier;
}
2020-07-10 20:45:23 +02:00
2023-02-11 10:16:42 +01:00
public float GetCurrentMultiplier(AttractionType attraction) {
if (this.IsActive() && attraction.Flags.HasFlag(this.requiredFlag))
return this.modifier;
return 1;
2020-07-10 20:45:23 +02:00
}
2023-02-11 10:16:42 +01:00
2020-07-10 20:45:23 +02:00
}