Skip to content

Consumables (experimentell)#2186

Open
Wero999 wants to merge 29 commits into
Plushtoast:foundry14from
Wero999:patch-35
Open

Consumables (experimentell)#2186
Wero999 wants to merge 29 commits into
Plushtoast:foundry14from
Wero999:patch-35

Conversation

@Wero999

@Wero999 Wero999 commented Dec 8, 2025

Copy link
Copy Markdown
Contributor

Damit das System einen Gegenstand als potenziellen consumable Modifikator betrachtet, muss er zwingend als Item vom Typ "Verbrauchsgegenstand" (Consumable) angelegt sein.
Für dieses Item muss ein neuer Active Effect erstellt werden, der spezifisch konfiguriert ist: Entscheidend ist, dass im Reiter "Details" des Effekts die Checkbox "Wende Effekt auf Akteur an" (Transfer to Actor) deaktiviert (leer) bleibt.

Die Verknüpfung zur Probe erfolgt im Reiter "Effekte" unter den Änderungen (Changes). Das Skript sucht (flexibel) nach dem Namen der Probe. Damit dies erkannt wird, muss der Name der Probe entweder im Attributschlüssel oder im Wert stehen.

Sobald ein Wurf-Dialog in Foundry geöffnet wird, filtert die neue funktion das Inventar des Akteurs nach Items, die vom Typ "consumable" sind und eine Menge größer als Null aufweisen. Anschließend durchsucht er jeden dieser Gegenstände nach passenden Effekten.

Alle alle Effekte, die als "transferiert" markiert sind (da diese bereits permanent wirken) oder die deaktiviert sind werden ignoriert. Bei einem Treffer (Name im Key oder Value gefunden) wird der Effekt ausgelesen.

War die Suche erfolgreich, wird das Item Verbrauchsgegenstand: [Name] [qs] in die Liste der situationalModifiers injiziert. Dies führt dazu, dass es im Dialogfenster als auswählbarer Modifikator erscheint. Durch die Anpassungen in den .hbs-Templates wird die eindeutige Item-ID (consumableId) dabei unsichtbar im Hintergrund des HTML-Elements gespeichert. Beim Klick auf "Wurf" wir dann dieses Item identifiziert und verbraucht, selbst wenn mehrere gleichnamige Items im Inventar existieren.

Um ein versehentliches Konsumieren aus dem Inventar dieser Gegenstände zu vermeiden, würde ich dem Menü für Aktive Effekte eine Option hinzufügen, die optional den Verbrauch von Gegenständen ausblendet / blockiert

@Wero999 Wero999 changed the title Consumables Consumables (experimentell) Dec 8, 2025
@Plushtoast

Copy link
Copy Markdown
Owner

hi kannst du bei deinen pullrequests jetzt die branch foundry14 als ziel nehmen und ggf anpassungen vornehmen.
dieser pr hat aktuell auch merge conflicts

Comment thread modules/dialog/dialog-dsa5.js Outdated
Comment thread modules/dialog/dialog-skill-dsa5.js Outdated
Comment thread modules/system/rolls/dice-dsa5.js Outdated
@Plushtoast Plushtoast changed the base branch from foundry13 to foundry14 April 4, 2026 14:13
@Wero999 Wero999 marked this pull request as draft April 20, 2026 14:06
@Wero999 Wero999 marked this pull request as ready for review April 20, 2026 17:23
@Wero999

Wero999 commented Apr 20, 2026

Copy link
Copy Markdown
Contributor Author

Feedback umgesetzt;
Funktionen von Komplexen Verbrauchsitems lassen sich hiermit leider noch nicht umsetzen.
Bsp.:
Alraunensud
Finagebast

@Plushtoast

Copy link
Copy Markdown
Owner

ist das in einem zustand in dem ich s übernehmen kann?

@Wero999

Wero999 commented Jun 28, 2026

Copy link
Copy Markdown
Contributor Author

ich schau nochmal drauf - letzter stand war v13, da lief es.

@Wero999

Wero999 commented Jun 29, 2026

Copy link
Copy Markdown
Contributor Author

So, das läuft aktuell bei mir ganz gut:
Unsexy ist mMn noch das auslesen der changes auf den Items (diese dürfen nicht auf actors übertragen werden um Dopplung zu vermeiden). Besser als mit dem Regex krieg ichs auch nicht gelöst.

Optisch nicht so geil: Die QS ist ja seit patch xyz im Itemnamen drin - das taucht jetzt auch im Modifikator-namen auf und kann verwirren. Könnte man ggf. raushacken.

Abbilden kann man damit nur die simpelsten Änderungen, dynamische Effekte sind nicht drin.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

2 participants