Stage 12: Data storage system

This commit is contained in:
loki5512344 2026-05-31 20:47:02 +02:00
parent 82ed455cd2
commit 4fd7955d56
62 changed files with 5613 additions and 0 deletions

View file

@ -0,0 +1,30 @@
package dev.loki.perk;
import dev.loki.player.BasePlayer;
public interface IPerk {
String getId();
String getName();
String getDescription();
PerkType getType();
void onEquip(BasePlayer player);
void onTrigger(BasePlayer player, PerkTrigger trigger, Object context);
void onRemove(BasePlayer player);
boolean isPassive();
int getCooldownSeconds();
boolean isOnCooldown();
void startCooldown();
void resetCooldown();
}

View file

@ -0,0 +1,23 @@
package dev.loki.perk;
public enum PerkTrigger {
ON_HIT,
ON_INJURED,
ON_DOWNED,
ON_HOOKED,
ON_UNHOOKED,
ON_HEAL_START,
ON_HEAL_COMPLETE,
ON_GENERATOR_START,
ON_GENERATOR_COMPLETE,
ON_SPRINT_START,
ON_CHASE_START,
ON_CHASE_END,
ON_TOTEM_BLESSED,
ON_TOTEM_CLEANSED,
ON_KILLER_HOOK,
ON_KILLER_HIT,
ON_KILLER_DASH,
ON_EXHAUSTION_START,
ON_EXHAUSTION_END
}

View file

@ -0,0 +1,16 @@
package dev.loki.perk;
public enum PerkType {
SURVIVOR("Выживший"),
KILLER("Убийца");
private final String displayName;
PerkType(String displayName) {
this.displayName = displayName;
}
public String getDisplayName() {
return displayName;
}
}