feat: add Duels mode (MultiMode, generator-per-player)

- duels/: DuelsMode (MultiMode), DuelsGenerator (owner: per-player
  SingleDuelsGenerator map, allowJoining, goal), SingleDuelsGenerator
  (getPlayers()=List.of(own player) -> independent course/score; score
  reaches goal -> win), DuelsCountdown (10s countdown + race start)
- win(): sorted scoreboard, victory/loss titles, return to default after 10s;
  leave() only removePlayer (no Coop recursion)
- config modes.duels.{enabled,max-players,goal,island-distance}, locales
  play.multi.duels.* (ru/en), registered in Modes/PluginBootstrap
- checkstyle 0/0, PMD 0, build green
This commit is contained in:
loki5512344 2026-08-05 21:16:00 +02:00
parent 8fde1b579b
commit acb884b70b
Signed by: boba
GPG key ID: 253067914055423B
11 changed files with 494 additions and 3 deletions

View file

@ -71,6 +71,24 @@ play:
name: "&#00D4FF&l%s"
lore: ""
multi:
name: "&#FFFFFFМульти"
duels:
item:
material: "nether_star"
name: "&#FF6464&lДуэли"
lore: "&#A0A0A0Гонка до цели!||&#A0A0A0У каждого игрока своя трасса"
start:
material: "white_banner"
name: "&#00D4FF&lДуэли"
lore: ""
go: "&#55FF55&lВПЕРЁД!"
overview: "&#FFD700&l%s &#A0A0A0победил в дуэли! Время: &#FFFFFF%s"
place: "&#0072B3#%s &#A0A0A0%s &#404040- &#A0A0A0%s"
victory: "&#55FF55&lПОБЕДА!"
loss: "&#FF4444&lПОРАЖЕНИЕ"
community:
name: "&#FFFFFFСообщество"