feat(base): implement progression system

This commit is contained in:
dmg
2026-08-09 15:01:44 -04:00
commit c87d923cad
76 changed files with 5092 additions and 0 deletions
@@ -0,0 +1,24 @@
package games.dmg.spigotbase;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import java.util.Map;
import java.util.UUID;
import org.junit.jupiter.api.Test;
final class BaseNavigationProgressionTest {
@Test
void fiveHundredthGrassOrDirtBlockUnlocksBaseII() {
BaseProgressionService service =
new BaseProgressionService(PluginSettings.from(Map.of()));
PlayerState player = PlayerState.newPlayer(UUID.randomUUID(), "Alex")
.withGrassAndDirtProgress(499, 1);
ProgressionUpdate update = service.recordGrassOrDirtBreak(player);
assertEquals(2, update.player().baseLevel());
assertTrue(update.player().navigationEnabled());
assertTrue(update.unlockedBaseLevel());
}
}