Hra postupně stupňuje obtížnost, spawnuje další monstra. Pokud ani jeden hráč nic neudělá do začátku druhé fáze, Neko si náhodně vybere cíl a zrychlí se.

This commit is contained in:
Perry 2026-03-19 21:18:06 +01:00
parent c5adebb2db
commit c942d23a87
10 changed files with 92 additions and 7 deletions

View file

@ -26,4 +26,7 @@ public class EnemyManager {
return output.ToArray();
}
public static Enemy Get(int id) => enemies[id];
public static Enemy[] GetAll() => enemies.Values.ToArray();
}

View file

@ -49,7 +49,7 @@ public class LurkEnemy : Enemy {
public override void SetDifficulty(int difficulty) {
Difficulty = difficulty;
movementOpportunity.MovementChance = ((2 + Math.Pow(1.5f, Difficulty)) * Math.Sign(Difficulty)) / (2 + Math.Pow(1.5f, 10));
movementOpportunity.MovementChance = ((5 + Math.Pow(1.5f, Difficulty)) * Math.Sign(Difficulty)) / (5 + Math.Pow(1.5f, 10));
}
public override void Update() {

View file

@ -44,7 +44,7 @@ public class MareEnemy : Enemy {
public override void SetDifficulty(int difficulty) {
Difficulty = difficulty;
movementOpportunity.MovementChance =
((2 + Math.Pow(1.5f, Difficulty)) * Math.Sign(Difficulty)) / (2 + Math.Pow(1.5f, 10));
((5 + Math.Pow(1.5f, Difficulty)) * Math.Sign(Difficulty)) / (5 + Math.Pow(1.5f, 10));
}

View file

@ -44,7 +44,7 @@ public class NekoEnemy : Enemy {
public override void SetDifficulty(int difficulty) {
Difficulty = difficulty;
movementOpportunity.MovementChance =
((2 + Math.Pow(1.5f, Difficulty)) * Math.Sign(Difficulty)) / (2 + Math.Pow(1.5f, 10));
((5 + Math.Pow(1.5f, Difficulty)) * Math.Sign(Difficulty)) / (5 + Math.Pow(1.5f, 10));
}
public override void Update() {
@ -64,7 +64,13 @@ public class NekoEnemy : Enemy {
Target = Server.P1;
}
else{
return;
if (GameLogic.PhaseCounter > 1){
Target = Server.Players[new Random().Next(2)];
SetDifficulty(8);
}
else{
return;
}
}
}