V1.11.1: HP and money are the DM's to change
- A player can no longer heal or hurt their own character: the Damage, Heal and Temp HP controls on the sheet are the DM's, and the server refuses the change from anyone else. Players still roll their own death saves. - A player can no longer add money to their own purse or write it off: recording a gain or a spend is the DM's, in any coin or in cash, on the sheet and on the server. - Players still exchange gold, silver and copper on the sheet, give money to another character, and buy from or change money with an NPC. - All packages at version 1.11.1. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "frontend",
|
||||
"private": true,
|
||||
"version": "1.11.0",
|
||||
"version": "1.11.1",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -485,7 +485,8 @@ export function CharacterSheetPage() {
|
||||
onError={(err) => setFormError(extractErrorMessage(err))}
|
||||
/>
|
||||
|
||||
{canEdit && (
|
||||
{/* HP is the DM's to change; a player reads it. */}
|
||||
{isDM && (
|
||||
<div className="flex-row mt-sm flex-wrap">
|
||||
<NumberInput
|
||||
min={1}
|
||||
@@ -515,20 +516,18 @@ export function CharacterSheetPage() {
|
||||
/>
|
||||
</label>
|
||||
{/* Armor is an equipped item now; this is the DM's own adjustment on top. */}
|
||||
{isDM && (
|
||||
<label className="flex-row gap-sm" title="Added to AC on top of what equipped gear gives. Can be negative.">
|
||||
Extra AC (DM) <InfoTip term="ARMOR_BONUS" />
|
||||
<NumberInput
|
||||
key={`armor:${character.armorBonus}`}
|
||||
min={-30}
|
||||
max={30}
|
||||
keepValue
|
||||
defaultValue={character.armorBonus}
|
||||
style={{ width: 70 }}
|
||||
onBlur={(e) => patchCharacter.mutate({ armorBonus: Number(e.target.value) })}
|
||||
/>
|
||||
</label>
|
||||
)}
|
||||
<label className="flex-row gap-sm" title="Added to AC on top of what equipped gear gives. Can be negative.">
|
||||
Extra AC (DM) <InfoTip term="ARMOR_BONUS" />
|
||||
<NumberInput
|
||||
key={`armor:${character.armorBonus}`}
|
||||
min={-30}
|
||||
max={30}
|
||||
keepValue
|
||||
defaultValue={character.armorBonus}
|
||||
style={{ width: 70 }}
|
||||
onBlur={(e) => patchCharacter.mutate({ armorBonus: Number(e.target.value) })}
|
||||
/>
|
||||
</label>
|
||||
</div>
|
||||
)}
|
||||
|
||||
@@ -867,7 +866,8 @@ export function CharacterSheetPage() {
|
||||
change for you: if you are short of a coin, a bigger one is broken. Cash ($) is kept apart: it is never
|
||||
exchanged for coins.
|
||||
</p>
|
||||
{canEdit && (
|
||||
{/* Recording a gain or a spend is the DM's; a player gives, buys and exchanges. */}
|
||||
{isDM && (
|
||||
<div className="flex-row flex-wrap">
|
||||
<NumberInput
|
||||
min={1}
|
||||
|
||||
Reference in New Issue
Block a user