Clamp campaign objective target markers

This commit is contained in:
2026-07-05 14:22:22 +09:00
parent e4ff46e6e0
commit c702bfdfb0
2 changed files with 16 additions and 4 deletions

View File

@@ -277,6 +277,7 @@ const maxCampaignReserveTrainingEntries = 96;
const maxCampaignSortieAssignmentUnits = 96;
const maxCampaignDisplayTextLength = 180;
const maxCampaignNumericValue = 999999;
const maxCampaignObjectiveTargetRadius = 99;
export const campaignReserveTrainingFocusDefinitions: CampaignReserveTrainingFocusDefinition[] = [
{
@@ -1129,11 +1130,11 @@ function normalizeObjectiveTargetTile(value: unknown): BattleObjectiveSnapshot['
const x = Math.floor(Number(value.x));
const y = Math.floor(Number(value.y));
if (!Number.isFinite(x) || !Number.isFinite(y)) {
if (!Number.isFinite(x) || !Number.isFinite(y) || x < 0 || y < 0) {
return undefined;
}
const radius = normalizeNonNegativeInteger(value.radius);
const radius = Math.min(normalizeNonNegativeInteger(value.radius), maxCampaignObjectiveTargetRadius);
return radius > 0 ? { x, y, radius } : { x, y };
}