Merged
Byroks merged 8 commits from Situationsbedingte-Boni/Mali-#41 into develop 2024-03-29 14:28:50 +01:00
9 changed files with 620 additions and 394 deletions

View File

@ -12,424 +12,442 @@
"TYPES.Item.effect": "Aktiver Effekt", "TYPES.Item.effect": "Aktiver Effekt",
"TYPES.Item.kampfkunst": "Kampfkunst", "TYPES.Item.kampfkunst": "Kampfkunst",
"TYPES.Item.container": "Aufbewahrung", "TYPES.Item.container": "Aufbewahrung",
"TYPES.Item.class": "Klasse",
"midgard5.phase-action": "Handlungsphase", "midgard5": {
"midgard5.phase-movement": "Bewegungsphase", "phase-action": "Handlungsphase",
"midgard5.no-encounter": "Kein Kampf", "phase-movement": "Bewegungsphase",
"midgard5.encounter-not-started": "Kein aktiver Kampf", "no-encounter": "Kein Kampf",
"midgard5.initiative": "Initiative", "encounter-not-started": "Kein aktiver Kampf",
"midgard5.actionrank": "Handlungsrang", "initiative": "Initiative",
"actionrank": "Handlungsrang",
"midgard5.combat-join": "Kampf Beitreten/Handlungsrang zurücksetzen", "combat-join": "Kampf Beitreten/Handlungsrang zurücksetzen",
"midgard5.combat-ranged": "Fernangriff", "combat-ranged": "Fernangriff",
"midgard5.combat-spell": "Zaubern (10 Sec)", "combat-spell": "Zaubern (10 Sec)",
"midgard5.time-duration": "Dauer", "time-duration": "Dauer",
"midgard5.time-round": "Runde(n)", "time-round": "Runde(n)",
"midgard5.time-minute": "Minute(n)", "time-minute": "Minute(n)",
"midgard5.time-hour": "Stunde(n)", "time-hour": "Stunde(n)",
"midgard5.time-limitless": "Unbegrenzt", "time-limitless": "Unbegrenzt",
"midgard5.doRoll": "Würfeln", "doRoll": "Würfeln",
"midgard5.learn": "Lernen", "learn": "Lernen",
"midgard5.label": "Bezeichnung", "label": "Bezeichnung",
"midgard5.description": "Beschreibung", "description": "Beschreibung",
"midgard5.Characteristic": "Merkmal", "Characteristic": "Merkmal",
"midgard5.characteristics": "Merkmale", "characteristics": "Merkmale",
"midgard5.background": "Hintergrund", "background": "Hintergrund",
"midgard5.attribute": "Eigenschaft", "attribute": "Eigenschaft",
"midgard5.attributes": "Eigenschaften", "attributes": "Eigenschaften",
"midgard5.points": "Erfahrung", "points": "Punkte",
"midgard5.calculated-value": "Berechneter Wert", "calculated-value": "Berechneter Wert",
"midgard5.calculated-values": "Werte und Boni", "calculated-values": "Werte und Boni",
"midgard5.skill": "Fertigkeit", "skill": "Fertigkeit",
"midgard5.skill-value": "Fertigkeitswert", "skill-value": "Fertigkeitswert",
"midgard5.fw": "FW", "fw": "FW",
"midgard5.bonus": "Bonus", "bonus": "Bonus",
"midgard5.bonuses": "Boni", "bonuses": "Boni",
"midgard5.ew": "EW", "ew": "EW",
"midgard5.pp-short": "PP", "pp-short": "PP",
"midgard5.pp": "Praxispunkte", "pp": "Praxispunkte",
"midgard5.item-value": "Wert", "item-value": "Wert",
"midgard5.item-quantity": "Menge", "item-quantity": "Menge",
"midgard5.item-onbody": "Am Körper", "item-onbody": "Am Körper",
"midgard5.item-ismagic": "Ist Magisch", "item-ismagic": "Ist Magisch",
"midgard5.item-wealth": "Vermögenswert", "item-wealth": "Vermögenswert",
"midgard5.item-weight": "Gewicht", "item-weight": "Gewicht",
"midgard5.actor-lp": "Lebenspunkte", "actor-lp": "Lebenspunkte",
"midgard5.actor-lp-short": "LP", "actor-lp-short": "LP",
"midgard5.actor-ap": "Ausdauerpunkte", "actor-ap": "Ausdauerpunkte",
"midgard5.actor-ap-short": "AP", "actor-ap-short": "AP",
"midgard5.actor-st": "St", "actor-st": "St",
"midgard5.actor-st-long": "Stärke", "actor-st-long": "Stärke",
"midgard5.actor-ko": "Ko", "actor-ko": "Ko",
"midgard5.actor-ko-long": "Konstitution", "actor-ko-long": "Konstitution",
"midgard5.actor-au": "Au", "actor-au": "Au",
"midgard5.actor-au-long": "Aussehen", "actor-au-long": "Aussehen",
"midgard5.actor-gs": "Gs", "actor-gs": "Gs",
"midgard5.actor-gs-long": "Geschicklichkeit", "actor-gs-long": "Geschicklichkeit",
"midgard5.actor-in": "In", "actor-in": "In",
"midgard5.actor-in-long": "Intelligenz", "actor-in-long": "Intelligenz",
"midgard5.actor-pa": "pA", "actor-pa": "pA",
"midgard5.actor-pa-long": "persönliche Ausstrahlung", "actor-pa-long": "persönliche Ausstrahlung",
"midgard5.actor-gw": "Gw", "actor-gw": "Gw",
"midgard5.actor-gw-long": "Gewandtheit", "actor-gw-long": "Gewandtheit",
"midgard5.actor-zt": "Zt", "actor-zt": "Zt",
"midgard5.actor-zt-long": "Zaubertalent", "actor-zt-long": "Zaubertalent",
"midgard5.actor-wk": "Wk", "actor-wk": "Wk",
"midgard5.actor-wk-long": "Willenskraft", "actor-wk-long": "Willenskraft",
"midgard5.actor-git": "GiT", "actor-git": "GiT",
"midgard5.actor-git-long": "Gifttolleranz", "actor-git-long": "Gifttolleranz",
"midgard5.aktuell": "Akt.", "aktuell": "Akt.",
"midgard5.maximum": "Max.", "maximum": "Max.",
"midgard5.attrvalue": "Wert", "attrvalue": "Wert",
"midgard5.movementRange": "Bewegungsweite", "movementRange": "Bewegungsweite",
"midgard5.base_values": "Grundwerte", "base_values": "Grundwerte",
"midgard5.skills": "Fertigkeiten", "skills": "Fertigkeiten",
"midgard5.gear": "Ausrüstung", "gear": "Ausrüstung",
"midgard5.spells": "Zauber", "spells": "Zauber",
"midgard5.effects": "Aktive Effekte", "effects": "Aktive Effekte",
"midgard5.kampfkuenste": "Kampfkünste", "kampfkuenste": "Kampfkünste",
"midgard5.combat": "Kampf", "combat": "Kampf",
"midgard5.actor-name": "Figur", "actor-name": "Figur",
"midgard5.level": "Grad", "level": "Grad",
"midgard5.class": "Typ", "class": "Typ",
"midgard5.race": "Rasse", "race": "Rasse",
"midgard5.magicUsing": "Zauberkundig", "magicUsing": "Zauberkundig",
"midgard5.gender": "Geschlecht", "gender": "Geschlecht",
"midgard5.weight": "Gewicht", "weight": "Gewicht",
"midgard5.height": "Größe", "height": "Größe",
"midgard5.shape": "Gestalt", "shape": "Gestalt",
"midgard5.age": "Alter", "age": "Alter",
"midgard5.caste": "Stand", "caste": "Stand",
"midgard5.occupation": "Beruf", "occupation": "Beruf",
"midgard5.origin": "Heimat", "origin": "Heimat",
"midgard5.faith": "Glaube", "faith": "Glaube",
"midgard5.currency": "Geld", "currency": "Geld",
"midgard5.currency-gold": "Gold", "currency-gold": "Gold",
"midgard5.currency-silver": "Silber", "currency-silver": "Silber",
"midgard5.currency-copper": "Kupfer", "currency-copper": "Kupfer",
"midgard5.currency-wealth": "Vermögen in GS", "currency-wealth": "Vermögen in GS",
"midgard5.currency-available": "verfügbares Vermögen", "currency-available": "verfügbares Vermögen",
"midgard5.hoard": "aktueller Hort", "hoard": "aktueller Hort",
"midgard5.hoardMin": "benötigter Mindesthort", "hoardMin": "benötigter Mindesthort",
"midgard5.hoard-next": "Hort für nächsten Grad", "hoard-next": "Hort für nächsten Grad",
"midgard5.hoarded": "Hort", "hoarded": "Hort",
"midgard5.no-container": "Ohne", "no-container": "Ohne",
"midgard5.encumbrance": "Getragene Last", "encumbrance": "Getragene Last",
"midgard5.load": "Normallast", "load": "Normallast",
"midgard5.heavy-load": "Schwere Last", "heavy-load": "Schwere Last",
"midgard5.thrust-load": "Schublast", "thrust-load": "Schublast",
"midgard5.load-max": "Höchstlast", "load-max": "Höchstlast",
"midgard5.capacity": "Tragkraft", "load-capacity": "Tragkraft",
"midgard5.exp-overall": "Erfahrungsschatz", "exp-overall": "Erfahrungsschatz",
"midgard5.exp-available": "Erfahrungspunkte", "exp-available": "Erfahrungspunkte",
"midgard5.grace": "Göttliche Gnade", "grace": "Göttliche Gnade",
"midgard5.destiny": "Schicksalsgunst", "destiny": "Schicksalsgunst",
"midgard5.luckPoints": "Glückspunkte", "luckPoints": "Glückspunkte",
"midgard5.abrichten": "Abrichten", "abrichten": "Abrichten",
"midgard5.akrobatik": "Akrobatik", "akrobatik": "Akrobatik",
"midgard5.alchimie": "Alchimie", "alchimie": "Alchimie",
"midgard5.anfuehren": "Anführen", "anfuehren": "Anführen",
"midgard5.askese": "Askese", "askese": "Askese",
"midgard5.astrologie": "Astrologie", "astrologie": "Astrologie",
"midgard5.athletik": "Athletik", "athletik": "Athletik",
"midgard5.balancieren": "Balancieren", "balancieren": "Balancieren",
"midgard5.beidhaendigerKampf": "Beidhändiger Kampf", "beidhaendigerKampf": "Beidhändiger Kampf",
"midgard5.bergreiten": "Bergreiten", "bergreiten": "Bergreiten",
"midgard5.beredsamkeit": "Beredsamkeit", "beredsamkeit": "Beredsamkeit",
"midgard5.betaeuben": "Betäuben", "betaeuben": "Betäuben",
"midgard5.betaeubungsgriff": "Betäubungsgriff", "betaeubungsgriff": "Betäubungsgriff",
"midgard5.bootfahren": "Bootfahren", "bootfahren": "Bootfahren",
"midgard5.dickhaeuterLenken": "Dickhäuter lenken", "dickhaeuterLenken": "Dickhäuter lenken",
"midgard5.ersteHilfe": "Erste Hilfe", "ersteHilfe": "Erste Hilfe",
"midgard5.etikette": "Etikette", "etikette": "Etikette",
"midgard5.fallenEntdecken": "Fallen entdecken", "fallenEntdecken": "Fallen entdecken",
"midgard5.fallenmechanik": "Fallenmechanik", "fallenmechanik": "Fallenmechanik",
"midgard5.faelschen": "Fälschen", "faelschen": "Fälschen",
"midgard5.fangen": "Fangen", "fangen": "Fangen",
"midgard5.fechten": "Fechten", "fechten": "Fechten",
"midgard5.fechtkunst": "Fechtkunst", "fechtkunst": "Fechtkunst",
"midgard5.feueralchimie": "Feueralchimie", "feueralchimie": "Feueralchimie",
"midgard5.gassenwissen": "Gassenwissen", "gassenwissen": "Gassenwissen",
"midgard5.gaukeln": "Gaukeln", "gaukeln": "Gaukeln",
"midgard5.gelaendelauf": "Geländelauf", "gelaendelauf": "Geländelauf",
"midgard5.geraetekunde": "Gerätekunde", "geraetekunde": "Gerätekunde",
"midgard5.geschaeftssinn": "Geschäftssinn", "geschaeftssinn": "Geschäftssinn",
"midgard5.gluecksspiel": "Glücksspiel", "gluecksspiel": "Glücksspiel",
"midgard5.heilkunde": "Heilkunde", "heilkunde": "Heilkunde",
"midgard5.kampfInVollruestung": "Kampf in Vollrüstung", "kampfInVollruestung": "Kampf in Vollrüstung",
"midgard5.kampfInSchlachtreihe": "Kampf in Schlachtreihe", "kampfInSchlachtreihe": "Kampf in Schlachtreihe",
"midgard5.kampfkunst": "Kampfkunst", "kampfkunst": "Kampfkunst",
"midgard5.kido": "Kido", "kido": "Kido",
"midgard5.klettern": "Klettern", "klettern": "Klettern",
"midgard5.landeskunde": "Landeskunde", "landeskunde": "Landeskunde",
"midgard5.laufen": "Laufen", "laufen": "Laufen",
"midgard5.lesenVonZauberschrift": "Lesen von Zauberschrift", "lesenVonZauberschrift": "Lesen von Zauberschrift",
"midgard5.lesenVonZauberrunen": "Lesen von Zauberrunen", "lesenVonZauberrunen": "Lesen von Zauberrunen",
"midgard5.meditieren": "Meditieren", "meditieren": "Meditieren",
"midgard5.menschenkenntnis": "Menschenkenntnis", "menschenkenntnis": "Menschenkenntnis",
"midgard5.meucheln": "Meucheln", "meucheln": "Meucheln",
"midgard5.musizierenFloete": "Musizieren (Flöten)", "musizierenFloete": "Musizieren (Flöten)",
"midgard5.musizierenBlas": "Musizieren (Blasinstrumente)", "musizierenBlas": "Musizieren (Blasinstrumente)",
"midgard5.musizierenRythmus": "Musizieren (Rythmusinstrumente)", "musizierenRythmus": "Musizieren (Rythmusinstrumente)",
"midgard5.musizierenStreich": "Musizieren (Streichinstrumente)", "musizierenStreich": "Musizieren (Streichinstrumente)",
"midgard5.musizierenZupf": "Musizieren (Zupfinstrumente)", "musizierenZupf": "Musizieren (Zupfinstrumente)",
"midgard5.naturkunde": "Naturkunde", "naturkunde": "Naturkunde",
"midgard5.ninjutsu": "NinJutsu", "ninjutsu": "NinJutsu",
"midgard5.orakelkunst": "Orakelkunst", "orakelkunst": "Orakelkunst",
"midgard5.pflanzenkunde": "Pflanzenkunde", "pflanzenkunde": "Pflanzenkunde",
"midgard5.raunen": "Raunen", "raunen": "Raunen",
"midgard5.reiten": "Reiten", "reiten": "Reiten",
"midgard5.reiterkampf": "Reiterkampf", "reiterkampf": "Reiterkampf",
"midgard5.rutengehen": "Rutengehen", "rutengehen": "Rutengehen",
"midgard5.scharfschiessen": "Scharfschießen", "scharfschiessen": "Scharfschießen",
"midgard5.schiesskunst": "Schießkunst", "schiesskunst": "Schießkunst",
"midgard5.schleichen": "Schleichen", "schleichen": "Schleichen",
"midgard5.schloesserOeffnen": "Schlösser öffnen", "schloesserOeffnen": "Schlösser öffnen",
"midgard5.schmerzErtragen": "Schmerzen ertragen", "schmerzErtragen": "Schmerzen ertragen",
"midgard5.schwimmen": "Schwimmen", "schwimmen": "Schwimmen",
"midgard5.seilkunst": "Seilkunst", "seilkunst": "Seilkunst",
"midgard5.selbstkontrolle": "Selbstkontrolle", "selbstkontrolle": "Selbstkontrolle",
"midgard5.singen": "Singen", "singen": "Singen",
"midgard5.skifahren": "Skifahren", "skifahren": "Skifahren",
"midgard5.spinnengang": "Spinnengang", "spinnengang": "Spinnengang",
"midgard5.speerfechten": "Speerfechten", "speerfechten": "Speerfechten",
"midgard5.spurensuche": "Spurensuche", "spurensuche": "Spurensuche",
"midgard5.stehlen": "Stehlen", "stehlen": "Stehlen",
"midgard5.taitschi": "TaiTschi", "taitschi": "TaiTschi",
"midgard5.tarnen": "Tarnen", "tarnen": "Tarnen",
"midgard5.tanzen": "Tanzen", "tanzen": "Tanzen",
"midgard5.tauchen": "Tauchen", "tauchen": "Tauchen",
"midgard5.thaumagraphie": "Thaumagraphie", "thaumagraphie": "Thaumagraphie",
"midgard5.thaumalogie": "Thaumalogie", "thaumalogie": "Thaumalogie",
"midgard5.tierkunde": "Tierkunde", "tierkunde": "Tierkunde",
"midgard5.ueberlebenWald": "Überleben (Wald)", "ueberlebenWald": "Überleben (Wald)",
"midgard5.ueberlebenSteppe": "Überleben (Steppe)", "ueberlebenSteppe": "Überleben (Steppe)",
"midgard5.ueberlebenGebirge": "Überleben (Gebirge)", "ueberlebenGebirge": "Überleben (Gebirge)",
"midgard5.verfuehren": "Verführen", "verfuehren": "Verführen",
"midgard5.verhoeren": "Verhören", "verhoeren": "Verhören",
"midgard5.verstellen": "Verstellen", "verstellen": "Verstellen",
"midgard5.volkstanz": "Volkstanz", "volkstanz": "Volkstanz",
"midgard5.wagenlenken": "Wagenlenken", "wagenlenken": "Wagenlenken",
"midgard5.wahrsagen": "Wahrsagen", "wahrsagen": "Wahrsagen",
"midgard5.wasserkampf": "Wasserkampf", "wasserkampf": "Wasserkampf",
"midgard5.zauberkunde": "Zauberkunde", "zauberkunde": "Zauberkunde",
"midgard5.armor": "Rüstung", "armor": "Rüstung",
"midgard5.defense": "Abwehr", "defense": "Abwehr",
"midgard5.damageBonus": "Schadensbonus", "damageBonus": "Schadensbonus",
"midgard5.damageBonus-short": "SchB", "damageBonus-short": "SchB",
"midgard5.attackBonus": "Angriffsbonus", "attackBonus": "Angriffsbonus",
"midgard5.attackBonus-short": "AnB", "attackBonus-short": "AnB",
"midgard5.defenseBonus": "Abwehrbonus", "defenseBonus": "Abwehrbonus",
"midgard5.defenseBonus-short": "AbB", "defenseBonus-short": "AbB",
"midgard5.movementBonus": "Bewegunsbonus", "movementBonus": "Bewegunsbonus",
"midgard5.resistanceMind": "Resistenz Geist", "resistanceMind": "Resistenz Geist",
"midgard5.resistanceBody": "Resistenz Körper", "resistanceBody": "Resistenz Körper",
"midgard5.spellCasting": "Zaubern", "spellCasting": "Zaubern",
"midgard5.spellBonus": "Zauberbonus", "spellBonus": "Zauberbonus",
"midgard5.brawl": "Raufen", "brawl": "Raufen",
"midgard5.poisonResistance": "Gifttolleranz", "poisonResistance": "Gifttolleranz",
"midgard5.enduranceBonus": "Ausdauerbonus", "enduranceBonus": "Ausdauerbonus",
"midgard5.lpProtection": "Rüstungsschutz (LP)", "lpProtection": "Rüstungsschutz (LP)",
"midgard5.apProtection": "Rüstungsschutz (AP)", "apProtection": "Rüstungsschutz (AP)",
"midgard5.deprivation": "Zähigkeit", "deprivation": "Zähigkeit",
"midgard5.deprivations": "Entbehrungen", "deprivations": "Entbehrungen",
"midgard5.deprivationCold": "Zähigkeit Kälte", "deprivationCold": "Zähigkeit Kälte",
"midgard5.deprivationHeat": "Zähigkeit Hitze", "deprivationHeat": "Zähigkeit Hitze",
"midgard5.deprivationFood": "Zähigkeit Durst/Hunger", "deprivationFood": "Zähigkeit Durst/Hunger",
"midgard5.new-skill": "Neue Fertigkeit", "new-skill": "Neue Fertigkeit",
"midgard5.special": "Spezial", "special": "Spezial",
"midgard5.learned-skill": "Gelernte Fertigkeit", "learned-skill": "Gelernte Fertigkeit",
"midgard5.learned-skills": "Gelernte Fertigkeiten", "learned-skills": "Gelernte Fertigkeiten",
"midgard5.language": "Sprache", "language": "Sprache",
"midgard5.languages": "Sprachen", "languages": "Sprachen",
"midgard5.writings": "Schriften", "writings": "Schriften",
"midgard5.weapon-skill": "Waffenfertigkeit", "weapon-skill": "Waffenfertigkeit",
"midgard5.weapon-skills": "Waffenfertigkeiten", "weapon-skills": "Waffenfertigkeiten",
"midgard5.unlearned-skill": "Ungelernte Fertigkeit", "unlearned-skill": "Ungelernte Fertigkeit",
"midgard5.unlearned-skills": "Ungelernte Fertigkeiten", "unlearned-skills": "Ungelernte Fertigkeiten",
"midgard5.innate-ability": "Angeborene/Besondere Fähigkeit", "innate-ability": "Angeborene/Besondere Fähigkeit",
"midgard5.innate-abilities": "Angeborene und besondere Fähigkeiten", "innate-abilities": "Angeborene und besondere Fähigkeiten",
"midgard5.base-damage": "Grundschaden", "base-damage": "Grundschaden",
"midgard5.weapon": "Waffe", "weapon": "Waffe",
"midgard5.weapons": "Waffen", "weapons": "Waffen",
"midgard5.defensive-weapon": "Verteidigungswaffe", "defensive-weapon": "Verteidigungswaffe",
"midgard5.defensive-weapons": "Verteidigungswaffen", "defensive-weapons": "Verteidigungswaffen",
"midgard5.no-skill": "Keine Fertigkeit", "no-skill": "Keine Fertigkeit",
"midgard5.magic": "magisch", "magic": "magisch",
"midgard5.valuable": "Vermögen", "valuable": "Vermögen",
"midgard5.equipped": "Ausgerüstet", "equipped": "Ausgerüstet",
"midgard5.active": "Aktiv", "active": "Aktiv",
"midgard5.rangedWeapon": "Schusswaffe", "rangedWeapon": "Schusswaffe",
"midgard5.assignItemToCharacter": "Füge Gegenstand einem Charakter hinzu, um hier etwas auswählen zu können", "assignItemToCharacter": "Füge Gegenstand einem Charakter hinzu, um hier etwas auswählen zu können",
"midgard5.showAll": "Alle anzeigen", "showAll": "Alle anzeigen",
"midgard5.wealthAndWeight": "Vermögen und Lasten", "wealthAndWeight": "Vermögen und Lasten",
"midgard5.itemsInContainers": "Gegenstände in Aufbewahrung", "itemsInContainers": "Gegenstände in Aufbewahrung",
"midgard5.allItems": "Alle Gegenstände", "allItems": "Alle Gegenstände",
"midgard5.pw": "Prüfwurf", "pw": "Prüfwurf",
"midgard5.attack": "Angriff", "attack": "Angriff",
"midgard5.damage": "Schaden", "damage": "Schaden",
"midgard5.skill-goup-alltag": "Alltag", "skill-goup-alltag": "Alltag",
"midgard5.skill-goup-freiland": "Freiland", "skill-goup-freiland": "Freiland",
"midgard5.skill-goup-halbwelt": "Halbwelt", "skill-goup-halbwelt": "Halbwelt",
"midgard5.skill-goup-kampf": "Kampf", "skill-goup-kampf": "Kampf",
"midgard5.skill-goup-koerper": "Körper", "skill-goup-koerper": "Körper",
"midgard5.skill-goup-sozial": "Sozial", "skill-goup-sozial": "Sozial",
"midgard5.skill-goup-unterwelt": "Unterwelt", "skill-goup-unterwelt": "Unterwelt",
"midgard5.skill-goup-waffen": "Waffen", "skill-goup-waffen": "Waffen",
"midgard5.skill-goup-wissen": "Wissen", "skill-goup-wissen": "Wissen",
"midgard5.spell-process-none": "Ohne", "spell-process-none": "Ohne",
"midgard5.spell-process-artefakte": "Artefakte", "spell-process-artefakte": "Artefakte",
"midgard5.spell-process-beherrschen": "Beherrschen", "spell-process-beherrschen": "Beherrschen",
"midgard5.spell-process-bewegen": "Bewegen", "spell-process-bewegen": "Bewegen",
"midgard5.spell-process-beschwoeren": "Beschwören", "spell-process-beschwoeren": "Beschwören",
"midgard5.spell-process-blutmagie": "Blutmagie", "spell-process-blutmagie": "Blutmagie",
"midgard5.spell-process-chaoswunder": "Chaoswunder", "spell-process-chaoswunder": "Chaoswunder",
"midgard5.spell-process-dweomer": "Dweomer", "spell-process-dweomer": "Dweomer",
"midgard5.spell-process-erkennen": "Erkennen", "spell-process-erkennen": "Erkennen",
"midgard5.spell-process-erschaffen": "Erschaffen", "spell-process-erschaffen": "Erschaffen",
"midgard5.spell-process-erhaltung": "Erhaltung", "spell-process-erhaltung": "Erhaltung",
"midgard5.spell-process-formen": "Formen", "spell-process-formen": "Formen",
"midgard5.spell-process-finstere_magie": "Finstere Magie", "spell-process-finstere_magie": "Finstere Magie",
"midgard5.spell-process-kampfverse": "Kampfverse", "spell-process-kampfverse": "Kampfverse",
"midgard5.spell-process-namensmagie": "Namensmagie", "spell-process-namensmagie": "Namensmagie",
"midgard5.spell-process-nekromantie": "Nekromantie", "spell-process-nekromantie": "Nekromantie",
"midgard5.spell-process-runenstaebe": "Runenstäbe", "spell-process-runenstaebe": "Runenstäbe",
"midgard5.spell-process-thaumatherapie": "Thaumatherapie", "spell-process-thaumatherapie": "Thaumatherapie",
"midgard5.spell-process-thaumagraphie": "Thaumagraphie", "spell-process-thaumagraphie": "Thaumagraphie",
"midgard5.spell-process-veraendern": "Verändern", "spell-process-veraendern": "Verändern",
"midgard5.spell-process-vigilsignien": "Vigilsignien", "spell-process-vigilsignien": "Vigilsignien",
"midgard5.spell-process-wundertat": "Wundertat", "spell-process-wundertat": "Wundertat",
"midgard5.spell-process-wilder_dweomer": "Wilder Dweomer", "spell-process-wilder_dweomer": "Wilder Dweomer",
"midgard5.spell-process-zerstoeren": "Zerstören", "spell-process-zerstoeren": "Zerstören",
"midgard5.spell-process-zauberlied": "Zauberlieder", "spell-process-zauberlied": "Zauberlieder",
"midgard5.spell-process-zaubersalz": "Zaubersalze", "spell-process-zaubersalz": "Zaubersalze",
"midgard5.spell-process-zaubermittel": "Zaubermittel", "spell-process-zaubermittel": "Zaubermittel",
"midgard5.spell-process-zauberschutz": "Zauberschutz", "spell-process-zauberschutz": "Zauberschutz",
"midgard5.spell-process-zauberrunen": "Zauberrunen", "spell-process-zauberrunen": "Zauberrunen",
"midgard5.spell-process-zaubersiegel": "Zaubersiegel", "spell-process-zaubersiegel": "Zaubersiegel",
"midgard5.spell-process-zaubertaenze": "Zaubertänze", "spell-process-zaubertaenze": "Zaubertänze",
"midgard5.spell-process-zauberblaetter": "Zauberblätter", "spell-process-zauberblaetter": "Zauberblätter",
"midgard5.spell-type-gedanke": "Gedanke", "spell-type-gedanke": "Gedanke",
"midgard5.spell-type-geste": "Geste", "spell-type-geste": "Geste",
"midgard5.spell-type-wort": "Wort", "spell-type-wort": "Wort",
"midgard5.spell-target-umgebung": "Umgebung", "spell-target-umgebung": "Umgebung",
"midgard5.spell-target-geist": "Geist", "spell-target-geist": "Geist",
"midgard5.spell-target-koerper": "Körper", "spell-target-koerper": "Körper",
"midgard5.spell-type": "Art", "spell-type": "Art",
"midgard5.spell-process": "Prozess", "spell-process": "Prozess",
"midgard5.spell-castDuration": "Zauberdauer", "spell-castDuration": "Zauberdauer",
"midgard5.spell-castDuration-short": "Zd", "spell-castDuration-short": "Zd",
"midgard5.spell-range": "Reichweite", "spell-range": "Reichweite",
"midgard5.spell-range-short": "Rw", "spell-range-short": "Rw",
"midgard5.spell-effectTarget": "Wirkunsziel", "spell-effectTarget": "Wirkunsziel",
"midgard5.spell-effectTarget-short": "Wz", "spell-effectTarget-short": "Wz",
"midgard5.spell-effectArea": "Wirkungsbereich", "spell-effectArea": "Wirkungsbereich",
"midgard5.spell-effectArea-short": "Wb", "spell-effectArea-short": "Wb",
"midgard5.spell-effectDuration": "Wirkungsdauer", "spell-effectDuration": "Wirkungsdauer",
"midgard5.spell-effectDuration-short": "Wd", "spell-effectDuration-short": "Wd",
"midgard5.spell-origin": "Ursprung", "spell-origin": "Ursprung",
"midgard5.spell-agens": "Agens", "spell-agens": "Agens",
"midgard5.spell-reagens": "Reagens", "spell-reagens": "Reagens",
"midgard5.spell-material": "Zaubermaterial", "spell-material": "Zaubermaterial",
"midgard5.kampfkunst-type": "Form", "kampfkunst-type": "Form",
"midgard5.kampfkunst-variante": "Variante", "kampfkunst-variante": "Variante",
"midgard5.kampfkunst-variante-short": "Var", "kampfkunst-variante-short": "Var",
"midgard5.kampfkunst-ep": "Erfahrungspunkte", "kampfkunst-ep": "Erfahrungspunkte",
"midgard5.kampfkunst-rank": "Stufe", "kampfkunst-rank": "Stufe",
"midgard5.kampfkunst-weapon": "Waffengruppe", "kampfkunst-weapon": "Waffengruppe",
"midgard5.kampfkunst-enemy": "Einschränkungen durch Art der Gegner", "kampfkunst-enemy": "Einschränkungen durch Art der Gegner",
"midgard5.kampfkunst-type-angriff": "Angriff", "kampfkunst-type-angriff": "Angriff",
"midgard5.kampfkunst-type-verteidigung": "Verteidigung", "kampfkunst-type-verteidigung": "Verteidigung",
"midgard5.kampfkunst-type-finte": "Finte", "kampfkunst-type-finte": "Finte",
"midgard5.kampfkunst-type-geist": "Geistestechnik", "kampfkunst-type-geist": "Geistestechnik",
"midgard5.kampfkunst-type-schießkunst": "Schießkunst", "kampfkunst-type-schießkunst": "Schießkunst",
"midgard5.kampfkunst-type-fechtkunst": "Fechtkunst", "kampfkunst-type-fechtkunst": "Fechtkunst",
"midgard5.kampfkunst-variante-anstuermen": "Anstürmen", "kampfkunst-variante-anstuermen": "Anstürmen",
"midgard5.kampfkunst-variante-attackieren": "Attackieren", "kampfkunst-variante-attackieren": "Attackieren",
"midgard5.kampfkunst-variante-entwaffnen": "Entwaffnen", "kampfkunst-variante-entwaffnen": "Entwaffnen",
"midgard5.kampfkunst-variante-fechten": "Fechten", "kampfkunst-variante-fechten": "Fechten",
"midgard5.kampfkunst-variante-schusstechnik": "Schusstechnik", "kampfkunst-variante-schusstechnik": "Schusstechnik",
"midgard5.kampfkunst-variante-finten": "Finten", "kampfkunst-variante-finten": "Finten",
"midgard5.kampfkunst-variante-geistestechnik": "Geistestechnik", "kampfkunst-variante-geistestechnik": "Geistestechnik",
"midgard5.kampfkunst-variante-verteidigung": "Verteidigung", "kampfkunst-variante-verteidigung": "Verteidigung",
"midgard5.kido-type": "KiDo Form", "kido-type": "KiDo Form",
"midgard5.kido-variante": "KiDo Variante", "kido-variante": "KiDo Variante",
"midgard5.kido-color": "Kampfstilfarbe", "kido-color": "Kampfstilfarbe",
"midgard5.kido-style": "Art der Technik", "kido-style": "Art der Technik",
"midgard5.kido-type-angriff": "Kido Angriff", "kido-type-angriff": "Kido Angriff",
"midgard5.kido-type-verteidigung": "Kido Verteidigung", "kido-type-verteidigung": "Kido Verteidigung",
"midgard5.kido-type-finte": "Kido Finte", "kido-type-finte": "Kido Finte",
"midgard5.kido-type-leib": "Kido Leibestechnik", "kido-type-leib": "Kido Leibestechnik",
"midgard5.kido-variante-anspringen": "Anspringen", "kido-variante-anspringen": "Anspringen",
"midgard5.kido-variante-attackieren": "Attackieren", "kido-variante-attackieren": "Attackieren",
"midgard5.kido-variante-entwaffnen": "Entwaffnen", "kido-variante-entwaffnen": "Entwaffnen",
"midgard5.kido-variante-werfen": "Werfen", "kido-variante-werfen": "Werfen",
"midgard5.kido-variante-ausweichen": "Ausweichen", "kido-variante-ausweichen": "Ausweichen",
"midgard5.kido-variante-blockieren": "Blockieren", "kido-variante-blockieren": "Blockieren",
"midgard5.kido-variante-bewegen": "Bewegen", "kido-variante-bewegen": "Bewegen",
"midgard5.kido-variante-kontrollieren": "Kontrollieren", "kido-variante-kontrollieren": "Kontrollieren",
"midgard5.mod-operation-add100": "Addieren (max 100)", "mod-operation-add100": "Addieren (max 100)",
"midgard5.mod-operation-roll": "Wurf Modifikation", "mod-operation-roll": "Wurf Modifikation",
"midgard5.mod-operation-add": "Addieren", "mod-operation-add": "Addieren",
"midgard5.mod-operation-set": "Basiswert", "mod-operation-set": "Basiswert",
"midgard5.mod-operation-fixed": "Fester Wert", "mod-operation-fixed": "Fester Wert",
"midgard5.mod-operation-subtract": "Subtrahieren", "mod-operation-subtract": "Subtrahieren",
"midgard5.mod-operation-multiply": "Multiplizieren", "mod-operation-multiply": "Multiplizieren",
"midgard5.mod-operation-division": "Dividieren", "mod-operation-division": "Dividieren",
"midgard5.mod-stat-defenseBonus": "Abwehrbonus", "mod-stat-defenseBonus": "Abwehrbonus",
"midgard5.mod-stat-attackBonus": "Angriffsbonus", "mod-stat-attackBonus": "Angriffsbonus",
"midgard5.mod-stat-damageBonus": "Schadensbonus", "mod-stat-damageBonus": "Schadensbonus",
"midgard5.mod-stat-movement": "Bewegung", "mod-stat-movement": "Bewegung",
"midgard5.mod-stat-resistanceMind": "Resistenz Geist", "mod-stat-resistanceMind": "Resistenz Geist",
"midgard5.mod-stat-resistanceBody": "Resistenz Körper", "mod-stat-resistanceBody": "Resistenz Körper",
"midgard5.mod-stat-spellCasting": "Zaubern", "mod-stat-spellCasting": "Zaubern",
"midgard5.mod-stat-brawl": "Raufen", "mod-stat-brawl": "Raufen",
"midgard5.mod-stat-poisonResistance": "Gifttolleranz", "mod-stat-poisonResistance": "Gifttolleranz",
"midgard5.mod-stat-lp": "Lebenspunkte", "mod-stat-lp": "Lebenspunkte",
"midgard5.mod-stat-ap": "Ausdauerpunkte", "mod-stat-ap": "Ausdauerpunkte",
"midgard5.mod-stat-lpProtection": "Rüstungsschutz (LP)", "mod-stat-lpProtection": "Rüstungsschutz (LP)",
"midgard5.mod-stat-apProtection": "Rüstungsschutz (AP)", "mod-stat-apProtection": "Rüstungsschutz (AP)",
"midgard5.mod-stat-deprivationCold": "Entbehrungen Kälte", "mod-stat-deprivationCold": "Entbehrungen Kälte",
"midgard5.mod-stat-deprivationHeat": "Entbehrungen Hitze", "mod-stat-deprivationHeat": "Entbehrungen Hitze",
"midgard5.mod-stat-deprivationFood": "Entbehrungen Durst/Hunger", "mod-stat-deprivationFood": "Entbehrungen Durst/Hunger",
"midgard5.mod-type": "Typ der Modifikation", "mod-type": "Typ der Modifikation",
"midgard5.mod-id": "Was soll modifiziert werden", "mod-id": "Was soll modifiziert werden",
"midgard5.mod-operation": "Wie soll modifiziert werden", "mod-operation": "Wie soll modifiziert werden",
"midgard5.mod-value": "Wert", "mod-value": "Wert",
"midgard5.type": "Typ", "type": "Typ",
"midgard5.formula": "Formel", "formula": "Formel",
"midgard5.roll": "Wurf" "roll": "Wurf",
"chat": {
"luckPoint": "Glückspunkt",
"destiny": "Schicksalsgunst",
"modify": "Nachträglich",
"cancel": "Abbrechen",
"roll": "Würfeln",
"reroll": "Neuwürfeln",
"options": {
"modifier": "Modifikator",
"difficulty": "Schwellenwert",
"rollMode": "Würfel Modus"
}
}
}
} }

View File

@ -5,6 +5,7 @@ import { M5Character } from "./module/actors/M5Character";
import { M5ModOperation, M5TimeUnit } from "./module/M5Base"; import { M5ModOperation, M5TimeUnit } from "./module/M5Base";
import { M5ItemSheet } from "./module/sheets/M5ItemSheet"; import { M5ItemSheet } from "./module/sheets/M5ItemSheet";
import { M5Item } from "./module/items/M5Item"; import { M5Item } from "./module/items/M5Item";
import { reroll } from "./module/rolls/reroll";
import { loadHelpers } from "./helpers"; import { loadHelpers } from "./helpers";
import { loadSettings } from "./settings"; import { loadSettings } from "./settings";
@ -79,6 +80,17 @@ Hooks.on("getChatLogEntryContext", function (html, options) {
return (game["user"].character || game["canvas"].tokens.controlled) && damageRolls > 0; return (game["user"].character || game["canvas"].tokens.controlled) && damageRolls > 0;
}, },
callback: (li) => applyDamage(li, -2), callback: (li) => applyDamage(li, -2),
},
{
name: "Redo",
icon: '<i class="far fa-arrow-rotate-left"></i>',
condition: (li) => {
const message = (game as Game).messages.get(li.attr("data-message-id"));
// All must be true to show the reroll dialogue
return (game["user"].isGM || game["user"].character?.id === (game as Game).actors.get(message["speaker"].actor)?.id) && !message["flags"].rerolled;
},
callback: (li) => reroll(li),
} }
); );
}); });

View File

@ -28,6 +28,7 @@ export interface M5Attribute {
export interface M5RollData { export interface M5RollData {
c: any; c: any;
i: any; i: any;
b: any;
iType: string; iType: string;
rolls: any; rolls: any;
res: { res: {
@ -172,6 +173,7 @@ export interface M5CharacterCalculatedData {
pa: M5AttributeCalculated; pa: M5AttributeCalculated;
wk: M5AttributeCalculated; wk: M5AttributeCalculated;
}; };
stats: { stats: {
lp: M5ModResult; lp: M5ModResult;
ap: M5ModResult; ap: M5ModResult;

View File

@ -26,10 +26,10 @@ export class M5Roll {
.map((rollName, index) => { .map((rollName, index) => {
indexMap.set(index, rollName); indexMap.set(index, rollName);
const formula = this.data.rolls[rollName]; const formula = this.data.rolls[rollName];
formula.formula = index === 0 && this.id !== "-1" ? formula.formula.replace(/(\d*d\d*)/, `{$1 + ${this.data.b.modifier}}`) : formula.formula;
const roll = new Roll(formula.formula, this.data); const roll = new Roll(formula.formula, this.data);
return roll; return roll;
}); });
this.pool = PoolTerm.fromRolls(rolls); this.pool = PoolTerm.fromRolls(rolls);
console.log("evaluate", this._evaluated, this.pool); console.log("evaluate", this._evaluated, this.pool);
return this.pool.evaluate({ async: true }).then((results) => { return this.pool.evaluate({ async: true }).then((results) => {
@ -66,7 +66,7 @@ export class M5Roll {
const parseResult = M5Roll.parseDiceSides(rollResult.formula); const parseResult = M5Roll.parseDiceSides(rollResult.formula);
//console.log("evaluate roll", parseResult) //console.log("evaluate roll", parseResult)
if (parseResult?.sides === 20) { if (parseResult?.sides === 20) {
if (roll.total < 20) { if (roll.total < this.data.b.difficulty) {
if (rowRes === M5EwResult.TBD || rowRes === M5EwResult.HIGH) rowRes = M5EwResult.FAIL; if (rowRes === M5EwResult.TBD || rowRes === M5EwResult.HIGH) rowRes = M5EwResult.FAIL;
} else { } else {
if (rowRes === M5EwResult.TBD) rowRes = M5EwResult.PASS; if (rowRes === M5EwResult.TBD) rowRes = M5EwResult.PASS;
@ -88,7 +88,6 @@ export class M5Roll {
}); });
this.data.res.label = this.label; this.data.res.label = this.label;
console.log(this.data);
if ((game as Game).settings.get("midgard5", "automatedPP") && this.data.iType !== null) { if ((game as Game).settings.get("midgard5", "automatedPP") && this.data.iType !== null) {
if ((this.data.i.type === "language" || this.data.i.type === "general") && this.data.rolls[0].dice[0] >= 16) { if ((this.data.i.type === "language" || this.data.i.type === "general") && this.data.rolls[0].dice[0] >= 16) {
this.actor.items.get(this.id).update({ this.actor.items.get(this.id).update({
@ -144,20 +143,28 @@ export class M5Roll {
} }
async toMessage() { async toMessage() {
let checkOptions = await this.popUp({ isPW: this.data.rolls[0].label === (game as Game).i18n.localize("midgard5.pw") });
if (checkOptions["cancelled"]) {
return;
} else {
this.data.b = checkOptions;
}
if (!this._evaluated) await this.evaluate(); if (!this._evaluated) await this.evaluate();
const faces = this.pool.dice.map((x) => x.faces);
const rMode = (game as Game).settings.get("core", "rollMode"); const rMode = checkOptions["rollMode"] || (game as Game).settings.get("core", "rollMode");
const chatData = { const chatData = {
type: CONST.CHAT_MESSAGE_TYPES.ROLL, type: CONST.CHAT_MESSAGE_TYPES.ROLL,
content: await this.render(), content: await this.render(),
speaker: ChatMessage.getSpeaker({ actor: this.actor }), speaker: ChatMessage.getSpeaker({ actor: this.actor }),
sound: CONFIG.sounds.dice, sound: CONFIG.sounds.dice,
roll: Roll.fromTerms([this.pool]), roll: Roll.fromTerms([this.pool]),
flags: { data: this.data, rerolled: false, faces: faces },
}; };
ChatMessage.applyRollMode(chatData, rMode); let foo = ChatMessage.applyRollMode(chatData, rMode);
return ChatMessage.create(chatData); return ChatMessage.implementation["create"](foo, { rollMode: rMode });
} }
static fromAttributeValue(actor: any, attributeKey: string, attributeValue: number) { static fromAttributeValue(actor: any, attributeKey: string, attributeValue: number) {
@ -392,6 +399,46 @@ export class M5Roll {
return null; return null;
} }
async popUp({
useFortune = false,
difficulty = 20,
modifier = 0,
rollModes = CONFIG.Dice.rollModes,
rollMode = "",
template = "systems/midgard5/templates/chat/task-check-dialog.hbs",
isPW = false,
} = {}) {
const html = await renderTemplate(template, { useFortune, difficulty, modifier, rollModes, rollMode, isPW });
return new Promise((resolve) => {
const data = {
title: (game as Game).i18n.localize("midgard5.chat.roll"),
content: html,
buttons: {
roll: {
label: (game as Game).i18n.localize("midgard5.chat.roll"),
callback: (html) => resolve(this._processTaskCheckOptions(html[0].querySelector("form"))),
},
cancel: {
label: (game as Game).i18n.localize("midgard5.chat.cancel"),
callback: (html) => resolve({ cancelled: true }),
},
},
default: "roll",
close: () => resolve({ cancelled: true }),
};
new Dialog(data, null).render(true);
});
}
_processTaskCheckOptions(form) {
return {
difficulty: parseInt(form.difficulty?.value),
modifier: parseInt(form.modifier?.value),
rollMode: form.rollMode?.value,
};
}
} }
interface FormulaParseResult { interface FormulaParseResult {

View File

@ -0,0 +1,108 @@
import { M5RollData, M5RollResult } from "../M5Base";
import { M5Roll } from "./M5Roll";
export const reroll = async (roll) => {
const message = (game as Game).messages.get(roll.attr("data-message-id"));
const actor = (game as Game).actors.get(message["speaker"].actor);
const template = "systems/midgard5/templates/chat/reroll-dialog.hbs";
const html = await renderTemplate(template, { sg: actor.system.sg, gp: actor.system.gp });
// Button defining
let buttons = {};
buttons = {
destiny: {
icon: '<i class="fas fa-rotate-left"></i>',
label: (game as Game).i18n.localize("midgard5.chat.destiny"),
callback: () => rerollDie("destiny", "sg"),
},
luckPoints: {
icon: '<i class="fas fa-rotate-left"></i>',
label: (game as Game).i18n.localize("midgard5.chat.luckPoint"),
callback: () => rerollDie("luckPoint", "gp"),
},
modify: {
icon: '<i class="fas fa-plus"></i>',
label: (game as Game).i18n.localize("midgard5.chat.modify") + " +" + (message["flags"].faces[0] === 100 ? 10 : 2),
callback: () => rerollDie("modify", "gp"),
},
cancel: {
icon: '<i class="fas fa-times"></i>',
label: (game as Game).i18n.localize("midgard5.chat.cancel"),
},
};
// Dialog object
new Dialog(
{
title: (game as Game).i18n.localize("midgard5.chat.reroll"),
content: html,
buttons,
render: function () {},
default: "luckPoints",
},
{
classes: ["midgard5"],
}
).render(true);
async function rerollDie(type, target) {
// Update the "content" field
let rollData = actor.getRollData() as M5RollData;
const flagData = message["flags"].data;
rollData.c = flagData.c;
rollData.i = flagData.i;
rollData.b = flagData.b;
rollData.iType = flagData.iType;
rollData.res.label = flagData.res.label + " (" + (game as Game).i18n.localize(`midgard5.chat.${type}`) + ")";
actor.update({
system: {
[target]: actor.system[target] - 1,
},
});
if (type !== "modify") {
for (var key in flagData.rolls) {
if (!!flagData.rolls[key]) {
rollData.rolls[key] = {
formula: flagData.rolls[key]?.formula,
enabled: flagData.rolls[key]?.enabled,
label: flagData.rolls[key]?.label,
result: "",
total: 0,
totalStr: "",
dice: {},
css: "",
} as M5RollResult;
}
}
} else {
for (var key in flagData.rolls) {
if (!!flagData.rolls[key]) {
rollData.rolls[key] = {
formula: key === "0" ? flagData.rolls[key]?.result + " + " + (message["flags"].faces[0] === 100 ? 10 : 2) : flagData.rolls[key]?.result,
enabled: flagData.rolls[key]?.enabled,
label: flagData.rolls[key]?.label,
result: "",
total: 0,
totalStr: "",
dice: {},
css: "",
} as M5RollResult;
}
}
}
const newRoll = new M5Roll(rollData, actor, rollData.res.label, "-1");
if (!newRoll._evaluated) await newRoll.evaluate();
const chatData = {
type: CONST.CHAT_MESSAGE_TYPES.ROLL,
content: await newRoll.render(),
speaker: ChatMessage.getSpeaker({ actor: actor }),
sound: CONFIG.sounds.dice,
roll: Roll.fromTerms([newRoll.pool]),
flags: { rerolled: true },
};
message.update(chatData);
}
};

View File

@ -77,7 +77,6 @@ export default class M5CharacterSheet extends ActorSheet {
let target = event.target.closest("[data-attribute]") as HTMLElement; let target = event.target.closest("[data-attribute]") as HTMLElement;
let attributeValue = target ? parseInt(target.dataset.value) : null; let attributeValue = target ? parseInt(target.dataset.value) : null;
let attributeStr = target ? target.dataset.attribute : null; let attributeStr = target ? target.dataset.attribute : null;
const roll = M5Roll.fromAttributeValue(this.actor, attributeStr, attributeValue); const roll = M5Roll.fromAttributeValue(this.actor, attributeStr, attributeValue);
await roll.toMessage(); await roll.toMessage();
}); });

View File

@ -0,0 +1,18 @@
<form>
<div class="window-content">
<label><b>Wahl der Kosten</b></label>
<hr />
<span class="dice-tooltip">
<div class="dice-rolls flexrow">
<div>
{{localize "midgard5.destiny"}}:
{{sg}}
</div>
<div>
{{localize "midgard5.luckPoints"}}:
{{gp}}
</div>
</div>
</span>
</div>
</form>

View File

@ -125,7 +125,7 @@
{{#each rolls as |roll index|}} {{#each rolls as |roll index|}}
{{#if roll.enabled}} {{#if roll.enabled}}
<tr class="roll-row {{roll.css}}"> <tr class="roll-row {{roll.css}}">
<td>{{roll.label}}</td> <td>{{roll.label}} {{#if (eq index '0')}} {{#if (gt ../b.modifier 0)}}+{{../b.modifier}}{{/if}}{{#if (gt 0 ../b.modifier)}}{{../b.modifier}}{{/if}}{{/if}}</td>
<td class="roll-result"> <td class="roll-result">
<span class="roll-total {{#if (contains roll.label "Schaden")}}apply damage{{/if}}{{#if (contains roll.label "Heilung")}}apply heal{{/if}}">{{roll.totalStr}}</span> <span class="roll-total {{#if (contains roll.label "Schaden")}}apply damage{{/if}}{{#if (contains roll.label "Heilung")}}apply heal{{/if}}">{{roll.totalStr}}</span>
<span class="roll-detail">{{roll.result}}</span> <span class="roll-detail">{{roll.result}}</span>

View File

@ -0,0 +1,22 @@
<form>
<div class="form-group">
<label>{{localize "midgard5.chat.options.modifier"}}</label>
<input type="number" name="modifier" value="{{modifier}}" />
</div>
{{#unless isPW}}
<div class="form-group">
<label>{{localize "midgard5.chat.options.difficulty"}}</label>
<input type="number" name="difficulty" value="{{difficulty}}" />
</div>
{{/unless}}
<div class="form-group">
<label>{{localize "midgard5.chat.options.rollMode"}}</label>
<select name="rollMode">
{{#select rollMode}}
{{#each rollModes as |label mode|}}
<option value="{{mode}}">{{localize label}}</option>
{{/each}}
{{/select}}
</select>
</div>
</form>