黑色必胜

This commit is contained in:
zhx 2026-06-12 20:12:52 +08:00
parent a8614398a4
commit ee4da04c61
2 changed files with 15 additions and 0 deletions

View File

@ -110,6 +110,7 @@ export interface SelfGameNewUserPolicyDto {
loseStreakProtectionEnabled: boolean;
loseStreakTrigger: number;
normalPhaseTargetWinRatePercent: number;
blackPoolRobotForceWinEnabled: boolean;
createdAtMs?: number;
updatedAtMs?: number;
}
@ -600,6 +601,7 @@ function normalizeSelfGameNewUserPolicy(policy: Partial<SelfGameNewUserPolicyDto
loseStreakProtectionEnabled: policy.loseStreakProtectionEnabled !== false,
loseStreakTrigger: numberValue(policy.loseStreakTrigger || 2),
normalPhaseTargetWinRatePercent: numberValue(policy.normalPhaseTargetWinRatePercent || 53),
blackPoolRobotForceWinEnabled: policy.blackPoolRobotForceWinEnabled === true,
createdAtMs: numberValue(policy.createdAtMs),
updatedAtMs: numberValue(policy.updatedAtMs),
};

View File

@ -77,6 +77,7 @@ const defaultPolicyForm = {
loseStreakProtectionEnabled: true,
loseStreakTrigger: 2,
normalPhaseTargetWinRatePercent: 53,
blackPoolRobotForceWinEnabled: false,
};
export function SelfGamePage() {
@ -763,6 +764,17 @@ function PolicyDialog({ form, loading, open, setForm, onClose, onSubmit }) {
</Tooltip>
</AdminFormFieldGrid>
</AdminFormSection>
<AdminFormSection title="黑色水位">
<AdminFormFieldGrid>
<Tooltip arrow placement="left" title="关闭时黑色档位只等待真人;开启时黑色档位允许机器人补位,并强制机器人获胜。">
<AdminFormSwitchField
checked={form.blackPoolRobotForceWinEnabled}
label="机器人强制获胜"
onChange={(event) => setForm({ ...form, blackPoolRobotForceWinEnabled: event.target.checked })}
/>
</Tooltip>
</AdminFormFieldGrid>
</AdminFormSection>
</AdminFormDialog>
);
}
@ -816,6 +828,7 @@ function policyPayload(form, gameId) {
loseStreakProtectionEnabled: Boolean(form.loseStreakProtectionEnabled),
loseStreakTrigger: Number(form.loseStreakTrigger || 2),
normalPhaseTargetWinRatePercent: Number(form.normalPhaseTargetWinRatePercent || 53),
blackPoolRobotForceWinEnabled: Boolean(form.blackPoolRobotForceWinEnabled),
};
}