23 lines
821 B
GDScript
23 lines
821 B
GDScript
extends RefCounted
|
|
|
|
const XP_BASE := 100
|
|
const XP_PER_LEVEL := 50
|
|
const LEARNING_POINTS_PER_LEVEL := 1
|
|
const MAX_SKILL_RANK := 100
|
|
const BASE_CRITICAL_MULTIPLIER := 2.0
|
|
const KILL_XP := [20, 50, 150]
|
|
const KILL_CREDITS := [15, 40, 120]
|
|
const SKILL_NAMES := {
|
|
"piloting": "Pilotaż", "gunner": "Strzelec",
|
|
"mechanic": "Mechanik", "sharp_eye": "Celne oko",
|
|
}
|
|
const SKILL_HELP := {
|
|
"piloting": "Każdy poziom: +1 punkt procentowy szansy na unik. Unik anuluje całe trafienie.",
|
|
"gunner": "Każdy poziom: +1% obrażeń wszystkich broni.",
|
|
"mechanic": "Każdy poziom: otrzymywane obrażenia mniejsze o 1% (przed tarczami i kadłubem).",
|
|
"sharp_eye": "Każdy poziom: +1 punkt procentowy szansy na trafienie krytyczne.",
|
|
}
|
|
|
|
static func xp_required(level: int) -> int:
|
|
return XP_BASE + XP_PER_LEVEL * (maxi(1, level) - 1)
|