예제 #1
0
 public static void CorpseRotTimesUp(Player player, StatusEffect se)
 {
     GameEngine.SayToLocation(player.Location, $"{player.Name} has completely dissolved into dust!");
 }
예제 #2
0
 public static void DysenteryCured(Player player, StatusEffect se)
 {
     GameEngine.SayToLocation(player.Location, $"{player.Name} has recovered from {player.Genderize("his", "her", "its")} case of dysentery!");
 }
예제 #3
0
 public static void PoisonCuredByTime(Player player, StatusEffect se)
 {
     GameEngine.SayToLocation(player.Location, $"{player.Name} has overcome {player.Genderize("his", "her", "its")} poison!");
 }
예제 #4
0
 public static void DoNothing(Player player, StatusEffect se)
 {
 }
예제 #5
0
 public static void SleepCuredByTime(Player player, StatusEffect se)
 {
     GameEngine.SayToLocation(player.Location, $"{player.Name} has naturally woken up!");
 }
예제 #6
0
 public static void RegenPlayer(Player player, StatusEffect se)
 {
     player.HealHP(1);
 }
예제 #7
0
 public static void ParalysisCured(Player player, StatusEffect se)
 {
     GameEngine.SayToLocation(player.Location, $"{player.Name} is no longer paralyzed!");
 }
예제 #8
0
 public static void PoisonPlayer(Player player, StatusEffect se)
 {
     GameEngine.SayToLocation(player.Location, $"{player.Name} takes damage from poison!");
     player.DamageHP(se.Value, "poison", null);
     se.Value -= 1;
 }
예제 #9
0
 public static void SleepPlayer(Player player, StatusEffect se)
 {
     GameEngine.SayToLocation(player.Location, $"{player.Name} is blissfully resting!");
     player.HealHP(2);
 }
예제 #10
0
 public static void PoisonHit(Player player, StatusEffect se)
 {
     GameEngine.SayToLocation(player.Location, $"{player.Name} was injected with poison!");
     player.AddEffect(new StatusEffect(EffectClass.Poison, turnTickEvent: PoisonPlayer, effectExpiresEvent: PoisonCuredByTime, effectValue: se.Value));
 }
예제 #11
0
 public static void CorpseRot(Player player, StatusEffect se)
 {
     GameEngine.SayToLocation(player.Location, $"{player.Name} is dissolving away...");
     se.Value -= 1;
     player.Notify($"  *  Your [Despawn Time]: -1 => {se.Value}");
 }
예제 #12
0
 public static void SleeperTakesDamage(Player player, StatusEffect se)
 {
     GameEngine.SayToLocation(player.Location, $"{player.Name} is awoken by pain!");
     se.Value = 0;
 }
예제 #13
0
 public void Combine(StatusEffect other)
 {
     this.Value += other.Value;
 }
예제 #14
0
 public void LoseEffect()
 {
     StatusEffect = null;
 }