Merge pull request #48 from Roll20/master

update my fork
This commit is contained in:
Vince
2018-08-25 06:04:46 -07:00
committed by GitHub
301 changed files with 69286 additions and 39335 deletions
+1354 -1200
View File
File diff suppressed because it is too large Load Diff
+14
View File
@@ -11,6 +11,20 @@ Bugs fall into the patch category.
The sheet will always upgrade itself unless I specify otherwise, though some things like roll template fields changing will require users who have added custom macros to fix.
## 19.1.1
### Bug fixes
- [#754: Incorrect assumption that all innate spellcasting groups will end with "each"](https://bitbucket.org/mlenser/5eshaped/issues/757/incorrect-assumption-that-all-innate)
## 19.1.0
### Features
- The sheet now supports some newer script edge-case features such as Anubian’s stealth being higher in sand.
### Bug fixes
- [#752: NPC Average HP's not calculating properly](https://bitbucket.org/mlenser/5eshaped/issues/752/npc-average-hps-not-calculating-properly)
## 19.0.0
### Breaking Changes
+46 -46
View File
@@ -61,13 +61,13 @@
"ABILITY_SCORE": "Ability score",
"ABILITY_SCORES": "Очки статов",
"ABJURATION": "Ограждение",
"AC": "КБ",
"AC": "КД",
"ACID": "кислота",
"ACROBATICS": "Акробатика",
"ACTION": "Действие",
"ACTIONS": "Действия",
"AC_ARMORED": "КБ в доспехах",
"AC_UNARMORED": "КБ без доспехов",
"AC_ARMORED": "КД в броне",
"AC_UNARMORED": "КД без брони",
"AC_UNARMORED_ABILITY": "Умение, без доспехов",
"ADD_COMMON_ITEMS": "Add common items",
"ADD_HALF_PROFICIENCY_TO_UNPROFICIENT_SAVING_THROWS": "Добавлять половину бонуса владения к непрофессиональным спасброскам",
@@ -110,12 +110,12 @@
"BACKSTORY": "Backstory",
"BARBARIAN": "Варвар",
"BARD": "Бард",
"BASE_DC": "Базовая СЛ",
"BASE_DC": "Базовая Сл",
"BIG": "Большое",
"BITE": "Укус",
"BLINDED": "Ослеплено",
"BLINDED_1": "A blinded creature can’t see and automatically fails any ability check that requires sight.",
"BLINDED_2": "Attack rolls against the creature have advantage, and the creature’s attack rolls have disadvantage.",
"BLINDED_1": "Ослеплённое существо ничего не видит и автоматически проваливает все проверки характеристик, связанные со зрением.",
"BLINDED_2": "Броски атаки по такому существу совершаются с преимуществом, а его броски атаки совершаются с помехой.",
"BLINDSIGHT": "Слепое",
"BLIND_BEYOND": "Слепо за пределами",
"BLUDGEONING": "дробящий",
@@ -148,7 +148,7 @@
"CHARACTER_NAME": "Имя персонажа",
"CHARACTER_NAME_ON_ROLL_TEMPLATES": "Имя Персонажа на всех щаблонах бросков",
"CHARISMA": "Харизма",
"CHARISMA_SAVING_THROW": "Charisma saving throw",
"CHARISMA_SAVING_THROW": "Спасбросок Харизмы",
"CHARMED": "Очаровно",
"CHARMED_1": "A charmed creature can’t attack the charmer or target the charmer with harmful abilities or magical effects.",
"CHARMED_2": "The charmer has advantage on any ability check to interact socially with the creature.",
@@ -158,7 +158,7 @@
"CLASS": "Класс",
"CLASS_AND_LEVEL": "Класс & Уровень",
"CLASS_AND_LEVEL_PLACEHOLDER": "Включить режим редактирования нажав на карандаш",
"CLASS_FEATURES": "Class features",
"CLASS_FEATURES": "Классовые умения",
"CLASS_FEATURE_ARTIFICER_INFUSE_MAGIC": "Infuse Magic",
"CLASS_FEATURE_ARTIFICER_INFUSE_MAGIC_TEXT": "You gain the ability to channel your artificer spells into objects for later use. When you cast an artificer spell with a casting time of 1 action, you can increase its casting time to 1 minute. If you do so and hold a nonmagical item throughout the casting, you expend a spell slot, but none of the spell’s effects occur. Instead, the spell transfers into that item for later use if the item doesn’t already contain a spell from this feature.\nAny creature holding the item thereafter can use an action to activate the spell if the creature has an Intelligence score of at least 6. The spell is cast using your spellcasting ability, targeting the creature that activates the item. If the spell targets more than one creature, the creature that activates the item selects the additional targets. If the spell has an area of effect, it is centered on the item. If the spell’s range is self, it targets the creature that activates the item.\nWhen you infuse a spell in this way, it must be used within 8 hours. After that time, its magic fades and is wasted.\nYou can have a limited number of infused spells at the same time. The number equals your Intelligence modifier.",
"CLASS_FEATURE_ARTIFICER_MAGIC_ITEM_ANALYSIS": "Magic Item Analysis",
@@ -189,14 +189,14 @@
"CLASS_FEATURE_BARBARIAN_PERSISTENT_RAGE_TEXT": "Your rage is so fierce that it ends early only if you fall unconscious or if you choose to end it.",
"CLASS_FEATURE_BARBARIAN_PRIMAL_CHAMPION": "Primal Champion",
"CLASS_FEATURE_BARBARIAN_PRIMAL_CHAMPION_TEXT": "You embody the power of the wilds. Your Strength and Constitution scores increase by 4. Your maximum for those scores is now 24.",
"CLASS_FEATURE_BARBARIAN_RAGE": "Rage",
"CLASS_FEATURE_BARBARIAN_RAGE": "Ярость",
"CLASS_FEATURE_BARBARIAN_RAGE_TEXT": "On your turn, you can enter a rage as a bonus action. While raging, you gain the following benefits if you aren’t wearing heavy armor:\n•You have advantage on Strength checks and Strength saving throws.\n•When you make a melee weapon attack using Strength, you add RAGE_DAMAGE to that damage roll.\n•You have resistance to bludgeoning, piercing, and slashing damage\nIf you are able to cast spells, you can’t cast them or concentrate on them while raging.\nYour rage lasts for 1 minute. It ends early if you are knocked unconscious or if your turn ends and you haven’t attacked a hostile creature since your last turn or taken damage since then. You can also end your rage on your turn as a bonus action.",
"CLASS_FEATURE_BARBARIAN_RECKLESS_ATTACK": "Reckless Attack",
"CLASS_FEATURE_BARBARIAN_RECKLESS_ATTACK_TEXT": "When you make your first attack on your turn, you can decide to attack recklessly. Doing so gives you advantage on melee weapon attack rolls using Strength during this turn, but attack rolls against you have advantage until your next turn.",
"CLASS_FEATURE_BARBARIAN_RELENTLESS_RAGE": "Relentless Rage",
"CLASS_FEATURE_BARBARIAN_RELENTLESS_RAGE_TEXT": "Your rage can keep you fighting despite grievous wounds. If you drop to 0 hit points while you’re raging and don’t die outright, you can make a DC [[10]] Constitution saving throw. If you succeed, you drop to 1 hit point instead.\nEach time you use this feature after the first, the DC increases by 5. When you finish a short or long rest, the DC resets to 10",
"CLASS_FEATURE_BARBARIAN_UNARMORED_DEFENSE": "Unarmored Defense",
"CLASS_FEATURE_BARBARIAN_UNARMORED_DEFENSE_TEXT": "While you are not wearing any armor, your Armor Class equals 10 + your Dexterity modifier + your Constitution modifier. You can use a shield and still gain this benefit.",
"CLASS_FEATURE_BARBARIAN_UNARMORED_DEFENSE_TEXT": "Если вы не носите доспехов, ваш Класс Доспеха равен 10 + модификатор Ловкости + модификатор Телосложения. Вы можете использовать щит, не теряя этого преимущества.",
"CLASS_FEATURE_BARD_BARDIC_INSPIRATION": "Bardic Inspiration",
"CLASS_FEATURE_BARD_BARDIC_INSPIRATION_TEXT": "You can inspire others through stirring words or music. To do so, you use a bonus action on your turn to choose one creature other than yourself within 60 feet of you who can hear you. That creature gains one Bardic Inspiration die, a d6.\nOnce within the next 10 minutes, the creature can roll the die and add the number rolled to one ability check, attack roll, or saving throw it makes. The creature can wait until after it rolls the d20 before deciding to use the Bardic Inspiration die, but must decide before the GM says whether the roll succeeds or fails. Once the Bardic Inspiration die is rolled, it is lost. A creature can have only one Bardic Inspiration die at a time.",
"CLASS_FEATURE_BARD_COUNTERCHARM": "Countercharm",
@@ -234,7 +234,7 @@
"CLASS_FEATURE_FIGHTER_ACTION_SURGE_TEXT": "On your turn, you can take one additional action on top of your regular action and a possible bonus action.",
"CLASS_FEATURE_FIGHTER_CHAMPION_REMARKABLE_ATHLETE": "Remarkable Athlete",
"CLASS_FEATURE_FIGHTER_EXTRA_ATTACK": "Extra Attack (Fighter)",
"CLASS_FEATURE_FIGHTER_EXTRA_ATTACK_TEXT": "You can attack twice, instead of once, whenever you take the Attack action on your turn.\nThe number of attacks increases to three when you reach 11th level in this class and to four when you reach 20th level in this class.",
"CLASS_FEATURE_FIGHTER_EXTRA_ATTACK_TEXT": "Вы можете совершить две атаки вместо одной, если в свой ход совершаете действие Атака.\nКоличество атак увеличивается до трёх на 11 уровне этого класса и до четырёх на 20 уровне.",
"CLASS_FEATURE_FIGHTER_FIGHTING_STYLE": "Fighting Style (Fighter)",
"CLASS_FEATURE_FIGHTER_FIGHTING_STYLE_TEXT": "You adopt a particular style of fighting as your specialty. Choose one of the following options. You can’t take a Fighting Style option more than once, even if you later get to choose again.\n\nArchery\nYou gain a +2 bonus to attack rolls you make with ranged weapons.\n\nDefense\nWhile you are wearing armor, you gain a +1 bonus to AC.\n\nDueling\nWhen you are wielding a melee weapon in one hand and no other weapons, you gain a +2 bonus to damage rolls with that weapon.\n\nGreat Weapon Fighting\nWhen you roll a 1 or 2 on a damage die for an attack you make with a melee weapon that you are wielding with two hands, you can reroll the die and must use the new roll, even if the new roll is a 1 or a 2. The weapon must have the two-handed or versatile property for you to gain this benefit.\n\nProtection\nWhen a creature you can see attacks a target other than you that is within 5 feet of you, you can use your reaction to impose disadvantage on the attack roll. You must be wielding a shield.\n\nTwo-Weapon Fighting\nWhen you engage in two-weapon fighting, you can add your ability modifier to the damage of the second attack.",
"CLASS_FEATURE_FIGHTER_INDOMITABLE": "Indomitable",
@@ -250,7 +250,7 @@
"CLASS_FEATURE_MONK_EVASION": "Evasion",
"CLASS_FEATURE_MONK_EVASION_TEXT": "Your instinctive agility lets you dodge out of the way of certain area effects, such as a blue dragon’s lightning breath or a fireball spell. When you are subjected to an effect that allows you to make a Dexterity saving throw to take only half damage, you instead take no damage if you succeed on the saving throw, and only half damage if you fail.",
"CLASS_FEATURE_MONK_EXTRA_ATTACK": "Extra Attack (Monk)",
"CLASS_FEATURE_MONK_EXTRA_ATTACK_TEXT": "You can attack twice, instead of once, whenever you take the Attack action on your turn.",
"CLASS_FEATURE_MONK_EXTRA_ATTACK_TEXT": "Вы можете совершить две атаки вместо одной, если в свой ход совершаете действие Атака.",
"CLASS_FEATURE_MONK_FLURRY_OF_BLOWS": "Flurry of Blows",
"CLASS_FEATURE_MONK_FLURRY_OF_BLOWS_TEXT": "Immediately after you take the Attack action on your turn, you can spend 1 ki point to make two unarmed strikes as a bonus action.",
"CLASS_FEATURE_MONK_KI": "Ki",
@@ -296,7 +296,7 @@
"CLASS_FEATURE_PALADIN_DIVINE_SMITE": "Divine Smite",
"CLASS_FEATURE_PALADIN_DIVINE_SMITE_TEXT": "When you hit a creature with a melee weapon attack, you can expend one spell slot to deal radiant damage to the target, in addition to the weapon’s damage. The extra damage is 2d8 for a 1st-level spell slot, plus 1d8 for each spell level higher than 1st, to a maximum of 5d8. The damage increases by 1d8 if the target is an undead or a fiend.",
"CLASS_FEATURE_PALADIN_EXTRA_ATTACK": "Extra Attack (Paladin)",
"CLASS_FEATURE_PALADIN_EXTRA_ATTACK_TEXT": "You can attack twice, instead of once, whenever you take the Attack action on your turn.",
"CLASS_FEATURE_PALADIN_EXTRA_ATTACK_TEXT": "Вы можете совершить две атаки вместо одной, если в свой ход совершаете действие Атака.",
"CLASS_FEATURE_PALADIN_FIGHTING_STYLE": "Fighting Style (Paladin)",
"CLASS_FEATURE_PALADIN_FIGHTING_STYLE_TEXT": "You adopt a particular style of fighting as your specialty. Choose one of the following options. You can’t take a Fighting Style option more than once, even if you later get to choose again.\n\nDefense\nWhile you are wearing armor, you gain a +1 bonus to AC.\n\nDueling\nWhen you are wielding a melee weapon in one hand and no other weapons, you gain a +2 bonus to damage rolls with that weapon.\n\nGreat Weapon Fighting\nWhen you roll a 1 or 2 on a damage die for an attack you make with a melee weapon that you are wielding with two hands, you can reroll the die and must use the new roll, even if the new roll is a 1 or a 2. The weapon must have the two-handed or versatile property for you to gain this benefit.\n\nProtection\nWhen a creature you can see attacks a target other than you that is within 5 feet of you, you can use your reaction to impose disadvantage on the attack roll. You must be wielding a shield.",
"CLASS_FEATURE_PALADIN_IMPROVED_DIVINE_SMITE": "Improved Divine Smite",
@@ -324,7 +324,7 @@
"CLASS_FEATURE_RANGERUA_VANISH": "Vanish",
"CLASS_FEATURE_RANGERUA_VANISH_TEXT": "You can use the Hide action as a bonus action on your turn. Also, you can’t be tracked by nonmagical means, unless you choose to leave a trail.",
"CLASS_FEATURE_RANGER_EXTRA_ATTACK": "Extra Attack (Ranger)",
"CLASS_FEATURE_RANGER_EXTRA_ATTACK_TEXT": "You can attack twice, instead of once, whenever you take the Attack action on your turn.",
"CLASS_FEATURE_RANGER_EXTRA_ATTACK_TEXT": "Вы можете совершить две атаки вместо одной, если в свой ход совершаете действие Атака.",
"CLASS_FEATURE_RANGER_FAVORED_ENEMY": "Favored Enemy",
"CLASS_FEATURE_RANGER_FAVORED_ENEMY_TEXT": "You have significant experience studying, tracking, hunting, and even talking to a certain type of enemy.\nChoose a type of favored enemy: aberrations, beasts, celestials, constructs, dragons, elementals, fey, fiends, giants, monstrosities, oozes, plants, or undead. Alternatively, you can select two races of humanoid (such as gnolls and orcs) as favored enemies.\nYou have advantage on Wisdom (Survival) checks to track your favored enemies, as well as on Intelligence checks to recall information about them.\nWhen you gain this feature, you also learn one language of your choice that is spoken by your favored enemies, if they speak one at all.\nYou choose one additional favored enemy, as well as an associated language, at 6th and 14th level. As you gain levels, your choices should reflect the types of monsters you have encountered on your adventures.",
"CLASS_FEATURE_RANGER_FERAL_SENSES": "Feral Senses",
@@ -435,7 +435,7 @@
"CONDITION_IMMUNITIES": "Иммунитет к состояниям",
"CONJURATION": "Вызов",
"CONSTITUTION": "Телосложение",
"CONSTITUTION_SAVING_THROW": "Constitution saving throw",
"CONSTITUTION_SAVING_THROW": "Спасбросок Телосложения",
"CONTENT": "Описание",
"CONTRACT": "Contract",
"COPPER": "Медных",
@@ -472,7 +472,7 @@
"DECEPTION": "Обман",
"DEX": "Лов",
"DEXTERITY": "Ловкость",
"DEXTERITY_SAVING_THROW": "Dexterity saving throw",
"DEXTERITY_SAVING_THROW": "Спасбросок Ловкости",
"DEX_MAX_X": "Dex (max X)",
"DICE": "Кости",
"DICE_MODIFIERS": "Dice modifiers",
@@ -516,12 +516,12 @@
"EMOTE": "Эмоция",
"ENCHANTMENT": "Очарование",
"ENCUMBERED": "Перегружен",
"ENCUMBERED_FEET": "Speed reduced by 10 feet",
"ENCUMBERED_FEET": "Скорость уменьшается на 10 футов",
"ENCUMBERED_HEAVILY": "Т. перегруз",
"ENCUMBERED_HEAVILY_2": "You have disadvantage on ability checks, attack rolls, and saving throws that use Strength, Dexterity, or Constitution.",
"ENCUMBERED_HEAVILY_FEET": "Speed reduced by 20 feet",
"ENCUMBERED_HEAVILY_METERS": "Speed reduced by 6 meters",
"ENCUMBERED_METERS": "Speed reduced by 3 meters",
"ENCUMBERED_HEAVILY_2": "Вы совершаете с помехой проверки характеристик, броски атаки и спасброски, использующие Силу, Ловкость или Телосложение.",
"ENCUMBERED_HEAVILY_FEET": "Скорость уменьшается на 20 футов",
"ENCUMBERED_HEAVILY_METERS": "Скорость уменьшается на 6 метров",
"ENCUMBERED_METERS": "Скорость уменьшается на 3 метра",
"ENCUMBRANCE_MULTIPLIER": "Множ. перегруза",
"ENGINEERING": "Инженерия",
"EP": "ЭП",
@@ -575,10 +575,10 @@
"GM": "GM",
"GOLD": "Золотых",
"GP": "ЗМ",
"GRAPPLED": "Cхвачено",
"GRAPPLED_1": "A grappled creature’s speed becomes 0, and it can’t benefit from any bonus to its speed.",
"GRAPPLED_2": "The condition ends if the grappler is incapacitated (see the condition).",
"GRAPPLED_3": "The condition also ends if an effect removes the grappled creature from the reach of the grappler or grappling effect, such as when a creature is hurled away by the thunderwave spell.",
"GRAPPLED": "Cхвачен",
"GRAPPLED_1": "Скорость схваченного существа равна 0, и оно не получает выгоды ни от каких бонусов к скорости.",
"GRAPPLED_2": "Состояние оканчивается, если схвативший становится недееспособен (см. состояние).",
"GRAPPLED_3": "Это состояние также оканчивается, если какой-либо эффект выводит схваченное существо из зоны досягаемости того, кто его удерживает, или из зоны удерживающего эффекта. Например, когда существо отбрасывается заклинанием волна грома.",
"HAIR": "Волосы",
"HALF": "Half",
"HALFLING_LUCK": "Удача полурос.",
@@ -647,14 +647,14 @@
"INSTANTANEOUS_OR_1_HOUR": "Мгновенно или 1 час",
"INT": "Инт",
"INTELLIGENCE": "Интеллект",
"INTELLIGENCE_SAVING_THROW": "Intelligence saving throw",
"INTELLIGENCE_SAVING_THROW": "Спасбросок Интеллекта",
"INTIMIDATION": "Запугивание",
"INVESTIGATION": "Анализ",
"INVISIBLE": "Невидимо",
"INVISIBLE_1": "An invisible creature is impossible to see without the aid of magic or a special sense. For the purpose of hiding, the creature is heavily obscured. The creature’s location can be detected by any noise it makes or any tracks it leaves.",
"INVISIBLE_2": "Attack rolls against the creature have disadvantage, and the creature’s attack rolls have advantage.",
"JACK_OF_ALL_TRADES": "Мастер на все руки",
"KI": "Ki",
"KI": "Ци",
"KILOGRAMS": "Килограмм",
"KILOGRAMS_SHORT": "кг",
"KNOWN": "Known",
@@ -696,7 +696,7 @@
"MELEE_WEAPON_ATTACK_MODIFIER": "Melee weapon attack modifier",
"MELEE_WEAPON_DAMAGE_MODIFIER": "Melee weapon damage modifier",
"METERS": "Метры",
"METERS_ABBREVIATION": "m.",
"METERS_ABBREVIATION": "м",
"MISC": "Прочее",
"MISCELLANEOUS": "Прочее",
"MISCELLANEOUS_NOTES": "Другие заметки",
@@ -729,8 +729,8 @@
"PALADIN": "Паладин",
"PARALYZED": "Парализовано",
"PARALYZED_1": "A paralyzed creature is incapacitated (see the condition) and can’t move or speak.",
"PARALYZED_2": "The creature automatically fails Strength and Dexterity saving throws.",
"PARALYZED_3": "Attack rolls against the creature have advantage.",
"PARALYZED_2": "Существо автоматически проваливает спасброски Силы и Ловкости.",
"PARALYZED_3": "Броски атаки по существу совершаются с преимуществом.",
"PARALYZED_4": "Any attack that hits the creature is a critical hit if the attacker is within 5 feet of the creature.",
"PASSIVE": "Пассивное",
"PASSIVE_ABILITY_CHECK": "Passive ability check",
@@ -745,8 +745,8 @@
"PETRIFIED": "Окаменело",
"PETRIFIED_1": "A petrified creature is transformed, along with any nonmagical object it is wearing or carrying, into a solid inanimate substance (usually stone). Its weight increases by a factor of ten, and it ceases aging.",
"PETRIFIED_2": "The creature is incapacitated (see the condition), can’t move or speak, and is unaware of its surroundings.",
"PETRIFIED_3": "Attack rolls against the creature have advantage.",
"PETRIFIED_4": "The creature automatically fails Strength and Dexterity saving throws.",
"PETRIFIED_3": "Броски атаки по существу совершаются с преимуществом.",
"PETRIFIED_4": "Существо автоматически проваливает спасброски Силы и Ловкости.",
"PETRIFIED_5": "The creature has resistance to all damage.",
"PETRIFIED_6": "The creature is immune to poison and disease, although a poison or disease already in its system is suspended, not neutralized.",
"PIERCING": "проникающий",
@@ -809,11 +809,11 @@
"REACTIONS": "Реакции",
"RECHARGE": "Перезарядка",
"RECHARGED": "recharged",
"RECHARGE_2_6": "Recharge 2-6",
"RECHARGE_3_6": "Recharge 3-6",
"RECHARGE_4_6": "Recharge 4-6",
"RECHARGE_5_6": "Recharge 5-6",
"RECHARGE_6": "Recharge 6",
"RECHARGE_2_6": "Перезарядка 2-6",
"RECHARGE_3_6": "Перезарядка 3-6",
"RECHARGE_4_6": "Перезарядка 4-6",
"RECHARGE_5_6": "Перезарядка 5-6",
"RECHARGE_6": "Перезарядка 6",
"RECHARGE_AFTER_LONG_REST": "Recharges after a Long Rest",
"RECHARGE_AFTER_SHORT_OR_LONG_REST": "Recharges after a Short or Long Rest",
"RECOVERED": "recovered",
@@ -871,7 +871,7 @@
"SHOW_ALL": "Показать все",
"SHOW_RESTS": "Отобразить Отдыхи",
"SHOW_SPELL_LEVEL_IF_ALL_SLOTS_ARE_USED": "Отображать уровни если все ячейки использованы",
"SHOW_TARGET_AC_ON_ATTACKS": "КБ цели при атаках и СБ",
"SHOW_TARGET_AC_ON_ATTACKS": "КД цели при атаках и СБ",
"SHOW_TARGET_NAME_ON_ATTACKS": "Имя цели при атаках и СБ",
"SHOW_TOTALS": "Показать все",
"SHOW_UNPREPARED_SPELLS": "Показать неподготовленные",
@@ -951,13 +951,13 @@
"STEALTH": "Скрытность",
"STR": "Сила",
"STRENGTH": "Сила",
"STRENGTH_SAVING_THROW": "Strength saving throw",
"STRENGTH_SAVING_THROW": "Спасбросок Силы",
"STR_13": "Сила 13",
"STR_15": "Сила 15",
"STUNNED": "Оглушено",
"STUNNED_1": "A stunned creature is incapacitated (see the condition), can’t move, and can speak only falteringly.",
"STUNNED_2": "The creature automatically fails Strength and Dexterity saving throws.",
"STUNNED_3": "Attack rolls against the creature have advantage.",
"STUNNED": "Ошеломлён",
"STUNNED_1": "Ошеломлённое существо «недееспособно» (см. состояние), не способно перемещаться и говорит, запинаясь.",
"STUNNED_2": "Существо автоматически проваливает спасброски Силы и Ловкости.",
"STUNNED_3": "Броски атаки по существу совершаются с преимуществом.",
"SUCCESSES": "Удачи",
"SUMMONER": "Призыватель",
"SURVIVAL": "Выживание",
@@ -985,8 +985,8 @@
"UNCONSCIOUS": "Без сознания",
"UNCONSCIOUS_1": "An unconscious creature is incapacitated (see the condition), can’t move or speak, and is unaware of its surroundings.",
"UNCONSCIOUS_2": "The creature drops whatever it’s holding and falls prone.",
"UNCONSCIOUS_3": "The creature automatically fails Strength and Dexterity saving throws.",
"UNCONSCIOUS_4": "Attack rolls against the creature have advantage.",
"UNCONSCIOUS_3": "Существо автоматически проваливает спасброски Силы и Ловкости.",
"UNCONSCIOUS_4": "Броски атаки по существу совершаются с преимуществом.",
"UNCONSCIOUS_5": "Any attack that hits the creature is a critical hit if the attacker is within 5 feet of the creature.",
"UNITS": "Units",
"UNPROFICIENT": "Не проф.",
@@ -1013,7 +1013,7 @@
"WILL_SAVING_THROW": "Will saving throw",
"WIS": "Муд",
"WISDOM": "Мудрость",
"WISDOM_SAVING_THROW": "Wisdom saving throw",
"WISDOM_SAVING_THROW": "Спасбросок Мудрости",
"WIZARD": "Волшебник",
"WONDROUS": "Wondrous",
"YES": "Да",
@@ -3909,6 +3909,16 @@ span.sheet-spellconcentration
cursor: none;
}
.sheet-charmancer .sheet-summary .sheet-returnblock {
margin-bottom: 1em;
}
.sheet-equipment_choice_title {
font-weight: bold;
margin-bottom: 0px;
margin-top: 10px;
}
.sheet-backgrounds_options label select,
.sheet-backgrounds_options label span,
.sheet-backgrounds_options label button {
@@ -3952,6 +3962,18 @@ span.sheet-spellconcentration
margin: 5px;
}
.sheet-charmancer .sheet-mancer_progress {
width: 100%;
border: 2px solid black;
height: 10px;
margin-top: 1.5em;
}
.sheet-charmancer .sheet-mancer_progress div {
background-color: red;
height: 100%;
}
/* Firefox 3.5+ */
body:not(:-moz-handler-blocked) .sheet-charmancer .sheet-steps {
top:-.8em;
File diff suppressed because one or more lines are too long
+3 -1
View File
@@ -583,5 +583,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -7,7 +7,7 @@
"armor-class-u": "Rüstungsklasse",
"class-u": "Klasse",
"type-u": "Typ",
"abilities-u": "ABILITIES",
"abilities-u": "ATTRIBUTE",
"npc-armor-place": "Schuppenpanzer",
"hit-points-u": "Trefferpunkte",
"formula-u": "Formel",
@@ -91,7 +91,7 @@
"ac": "Rüstungsklasse",
"hp": "Trefferpunkte",
"speed": "Geschwindigkeit",
"language-proficiencies": "Language Proficiencies:",
"language-proficiencies": "Sprachfertigkeiten:",
"skill-proficiencies": "Skill Proficiencies:",
"weapon-proficiencies": "Weapon Proficiencies",
"armor-proficiencies": "Armor Proficiencies:",
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
+70 -68
View File
@@ -7,7 +7,7 @@
"armor-class-u": "CLASSE D'ARMURE",
"class-u": "CLASSE",
"type-u": "TYPE",
"abilities-u": "ABILITIES",
"abilities-u": "CARACTÉRISTIQUES",
"npc-armor-place": "armure d'écailles",
"hit-points-u": "POINTS DE VIE",
"formula-u": "FORMULE",
@@ -91,8 +91,8 @@
"ac": "Classe d'armure",
"hp": "Points de vie",
"speed": "Vitesse",
"language-proficiencies": "Language Proficiencies:",
"skill-proficiencies": "Skill Proficiencies:",
"language-proficiencies": "Maîtrises des languages :",
"skill-proficiencies": "Maîtrises des compétences :",
"weapon-proficiencies": "Maîtrises des Armes",
"armor-proficiencies": "Maîtrises des Armures :",
"saving-throw": "Jets de sauvegarde",
@@ -207,8 +207,8 @@
"core-u": "FICHE",
"bio-u": "BIO",
"spells-u": "SORTS",
"feats-u": "FEATS",
"review-u": "REVIEW",
"feats-u": "DONS",
"review-u": "VÉRIFICATION",
"char-name-u": "NOM DU PERSONNAGE",
"barbarian": "Barbare",
"bard": "Barde",
@@ -227,7 +227,7 @@
"background": "Historique",
"race-u": "RACE",
"alignment-u": "ALIGNEMENT",
"alignment": "Alignment:",
"alignment": "Alignement:",
"exp-pts-u": "PX",
"inspiration-u": "INSPIRATION",
"prof-bonus-u": "BONUS DE MAÎTRISE",
@@ -286,13 +286,13 @@
"failures-u": "ÉCHECS",
"death-save-u": "SVG CONTRE LA MORT",
"death-saves-u": "SVG CONTRE LA MORT",
"exhaustion-setting-u": "SHOW EXHAUSTION TRACKING:",
"exhaustion-setting-u": "Voir niveaux d'épuisement:",
"exhaustion-u": "NIVEAU D'ÉPUISEMENT",
"exhaustion-0": "Aucun effet",
"exhaustion-1": "Désavantage aux jets de compétences",
"exhaustion-2": "Vitesse réduite de motié",
"exhaustion-3": "Disadvantage on attack rolls and saving throws",
"exhaustion-4": "Hit point maximum halved",
"exhaustion-3": "Désavantage aux jets d’attaque et de sauvegarde",
"exhaustion-4": "Points de vie maximums diminués de moitié",
"exhaustion-5": "Vitesse réduite à 0",
"exhaustion-6": "Mort",
"atk-u": "ATT",
@@ -344,7 +344,7 @@
"feats-traits-u": "CAPACITÉS & TRAITS",
"age-u": "ÂGE",
"size-u": "TAILLE",
"size": "Size",
"size": "Taille",
"height-u": "HAUTEUR",
"weight-u": "POIDS",
"eye-u": "YEUX",
@@ -375,10 +375,10 @@
"arcane-fighter-u": "Guerrier lanceur de sorts",
"arcane-rogue-u": "Roublard lanceur de sorts",
"class-options-u": "OPTIONS DE CLASSE (<input type=\"text\" name=\"attr_class_label\" value=\"@{class}\" disabled=\"true\">)",
"class:-u": "CLASS:",
"subclass:-u": "SUBCLASS:",
"class:-u": "CLASSE:",
"subclass:-u": "SOUS-CLASSE:",
"race:-u": "RACE:",
"subrace:-u": "SUBRACE:",
"subrace:-u": "SOUS-RACE:",
"2nd-class:-u": "2e CLASSE&nbsp;:",
"lvl:-u": "NIVEAU&nbsp;:",
"3rd-class:-u": "3e CLASSE&nbsp;:",
@@ -524,63 +524,65 @@
"accepting-drop-u": "PEUT RECEVOIR UN GLISSER-DÉPOSER DU COMPENDIUM",
"are_you_sure": "Êtes-vous sûr de vouloir transformer ce personnage en ",
"yes": "Oui",
"next": "Next",
"next": "Suivant",
"cancel": "Annuler",
"cancel-u": "CANCEL",
"cancel-u": "ANNULER",
"choose": "Choisir",
"innate:-u": "INNÉ&nbsp;:",
"mod:-u": "MOD:",
"hpmods:-u": "HP MODIFIERS:",
"charmancer-welcome": "Welcome to the Charactermancer!",
"charmancer-what-is": "The Charactermancer is a step-by-step process that makes building a character simple and streamlined. Changes are saved as you progress, but the character sheet is only updated when the Charactermancer has been completed.",
"get-started": "Get started by clicking Next.",
"opt-out-u": "OPT OUT",
"charmancer-compendium": "Your Compendium Awaits.",
"charmancer-compendium-detail": "The Charactermancer currently supports Dungeons &amp; Dragons 5th Edition SRD and the Player's Handbook. You can add the Player's Handbook to your compendium in the Marketplace, or the game owner can share their compendium with everyone in the game.",
"charmancer-choose-race": "Choose a Race:",
"charmancer-custom-race-name": "Custom Race Name:",
"suggested-abilities": "Suggested Abilities: ",
"class-spellcasting": "Class Spellcasting Ability: ",
"ability-score-increase": "Ability Score Increase:",
"lawful-good": "Lawful Good",
"neutral-good": "Neutral Good",
"chaotic-good": "Chaotic Good",
"lawful-neutral": "Lawful Neutral",
"neutral": "Neutral",
"chaotic-neutral": "Chaotic Neutral",
"lawful-evil": "Lawful Evil",
"neutral-evil": "Neutral Evil",
"chaotic-evil": "Chaotic Evil",
"tiny": "Tiny",
"small": "Small",
"medium": "Medium",
"large": "Large",
"huge": "Huge",
"age": "Age:",
"gargantuan": "Gargantuan",
"step1-equipment": "Step 5: Equipment",
"equipment-from-background": "Equipment from Background",
"equipment-from-class": "Equipment from Class",
"class-equipment": "Class Equipment",
"starting-wealth": "Starting Wealth (PHB)",
"starting-gold:": "Starting Gold:",
"no_class_warning-u": "NO CLASS HAS BEEN SELECTED OR SELECTED CLASS DOES NOT HAVE STANDARD EQUIPMENT. CLASS EQUIPMENT CANNOT BE CHOSEN AT THIS TIME.",
"standard-array": "Standard Array",
"roll-for-stats": "Roll for Stats",
"standard-roll": "Roll 4d6, drop lowest",
"charmancer-cancel-heading": "Where would you like to go, traveler?",
"continue-charmancer": "Continue Charactermancer",
"save_progress_and_exit": "Save and Exit",
"cancel_charactermancer": "Discard and exit",
"mod:-u": "MOD :",
"hpmods:-u": "MODIFICATEURS DE PV :",
"charmancer-welcome": "Bienvenue au Charactermancer !",
"charmancer-what-is": "Le Charactermancer est outil qui permet la création pas à pas d'un personnage, de manière simple et intuitive. Vos modifications sont enregistrées à chaque étape, mais le résultat est uniquement mis à jour dans une fiche de personnage lorsque le Charactermancer est terminé.",
"get-started": "Pour commencer, cliquer sur Suivant.",
"opt-out-u": "QUITTER",
"charmancer-compendium": "Votre Compendium vous attend.",
"charmancer-compendium-detail": "Le Charactermancer est compatible avec le SRD Dungeons &amp; Dragons 5e Édition et le Player's Handbook. Vous pouvez ajouter le Player's Handbook à votre Compendium depuis la Boutique, ou le créateur de la partie peut partager son Compendium avec tous les joueurs.",
"charmancer-choose-race": "Choisir une race :",
"charmancer-custom-race-name": "Nom de race personalisée :",
"suggested-abilities": "Caractéristiques recommandées :",
"class-spellcasting": "Caractéristique de lancement de Sorts :",
"ability-score-increase": "Bonus de Caractéristique :",
"lawful-good": "Loyal Bon",
"neutral-good": "Neutre Bon",
"chaotic-good": "Chaotique Bon",
"lawful-neutral": "Loyal Neutre",
"neutral": "Neutre",
"chaotic-neutral": "Chaotique Neutre",
"lawful-evil": "Loyal Mauvais",
"neutral-evil": "Neutre Mauvais",
"chaotic-evil": "Chaotique Mauvais",
"tiny": "Très Petite",
"small": "Petite",
"medium": "Moyenne",
"large": "Grande",
"huge": "Très Grande",
"age": "Âge :",
"gargantuan": "Gigantesque",
"step1-equipment": "Étape 5 : équipement",
"equipment-from-background": "Équipement de l'Historique",
"equipment-from-class": "Équipement de Classe",
"class-equipment": "Équipement de Classe",
"starting-wealth": "Richesse de départ (PHB)",
"starting-gold:": "Or de départ :",
"no_class_warning-u": "AUCUNE CLASSE N’A ÉTÉ SÉLECTIONNÉE OU LA CLASSE SÉLECTIONNÉE N’A PAS D’ÉQUIPEMENT STANDARD. LE MATÉRIEL DE CLASSE NE PEUT PAS ÊTRE CHOISI POUR L'INSTANT.",
"standard-array": "Distribution Standard",
"roll-for-stats": "Jets de dés",
"standard-roll": "Jeter 4d6, ignorer le faibe",
"charmancer-cancel-heading": "Où vous souhaitez aller, voyageur ?",
"continue-charmancer": "Continuer le Charactermancer",
"save_progress_and_exit": "Enregistrer et Quitter",
"cancel_charactermancer": "Annuler et Quitter",
"charmancer-discard-warning": "Discard and Exit will cause all choices to be lost.",
"mancer-opts-u": "CHARACTERMANCER OPTIONS",
"relaunch-lvl1mancer-u": "LAUNCH LEVEL 1 CHARACTERMANCER (CANNOT BE UNDONE)",
"point-buy": "Point Buy",
"available-points:": "Available Points: ",
"equipment-choice-text": "How would you like to choose your equipment?",
"charmancer-start": "Start",
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"mancer-opts-u": "OPTIONS DU CHARACTERMANCER",
"relaunch-lvl1mancer-u": "DÉMARRER LE CHARACTERMANCER NIVEAU 1 (NE PEUT ÊTRE ANNULÉ)",
"point-buy": "Achat de Points",
"available-points:": "Points disponibles :",
"equipment-choice-text": "Comment voulez vous choisir votre équipement ?",
"charmancer-start": "Commencer",
"clear-abilities": "Tout effacer",
"use-charactermancer-for-new:-u": "UTILISER LE CHARACTERMANCER NIVEAU 1 POUR LES NOUVEAUX PERSONNAGES :",
"use-charactermancer-for-new-info": "Lorsque cette option est activée, tous les nouveaux personnages commenceront avec le Charactermancer niveau 1 de Roll20. Désactiver cette option ouvrira directement la fiche de personnage. Le Charactermancer pourra tout de même être lancer manuellement depuis l'onglet Paramètres de la fiche de personnage.",
"feat-pre-check": "Attention ! Les prérequis ne sont pas vérifiés automatiquement.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Настройка Значений Характеристик",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "USE LEVEL 1 CHARACTERMANCER FOR NEW CHARACTERS:",
"use-charactermancer-for-new-info": "With this option enabled all new characters will open with the Level 1 Roll20 Charactermancer. Disabling this option will start new characters directly on the character sheet disabling the Level 1 Charactermancer, which can still be manually run from the Settings tab of the character sheet.",
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically."
"feat-pre-check": "Look carefully! Prerequisites are not checked automatically.",
"stats-rolled-hint": "We rolled your dice! Check the chat window to view your results in detail. Assign the results below to your preferred attributes:",
"return-to:": "Return to: "
}
@@ -534,7 +534,7 @@
"charmancer-welcome": "歡迎來到 Charactermancer!",
"charmancer-what-is": "Charactermancer是一個循序漸進的過程,可以讓創造角色變得簡單和流暢。更改會在您進行時即儲存,但角色卡只在Charactermancer完成時更新。",
"get-started": "點擊下一步開始。",
"opt-out-u": "OPT OUT",
"opt-out-u": "選擇退出",
"charmancer-compendium": "你的Compendium正在等著呢",
"charmancer-compendium-detail": "The Charactermancer目前支持龍與地下城第5版SRD和玩家手冊。您可以在商城中將玩家手冊添加到compendium中,或者遊戲所有者可以與遊戲中的每個人分享他的compendium。",
"charmancer-choose-race": "選擇種族:",
@@ -582,5 +582,7 @@
"clear-abilities": "Clear Assignment",
"use-charactermancer-for-new:-u": "新角色使用等級1的Charactermancer:",
"use-charactermancer-for-new-info": "啟用此選項後,將使用等級1的Roll20 Charactermancer打開所有新角色。關閉此選項將直接在角色卡上開始新角色,仍然可以從角色卡的設定選項卡中手動執行等級1的Charactermancer。",
"feat-pre-check": "仔細地看! 不會自動檢查先決條件。"
"feat-pre-check": "仔細地看! 不會自動檢查先決條件。",
"stats-rolled-hint": "我們來幫您擲骰子! 請檢查聊天視窗來察看詳細結果。將結果分配到您的屬性:",
"return-to:": "Return to: "
}
@@ -582,5 +582,7 @@
"clear-abilities": "crwdns71431:0crwdne71431:0",
"use-charactermancer-for-new:-u": "crwdns71725:0crwdne71725:0",
"use-charactermancer-for-new-info": "crwdns71726:0crwdne71726:0",
"feat-pre-check": "crwdns71727:0crwdne71727:0"
"feat-pre-check": "crwdns71727:0crwdne71727:0",
"stats-rolled-hint": "crwdns74783:0crwdne74783:0",
"return-to:": "crwdns74784:0crwdne74784:0"
}
+1307 -81
View File
File diff suppressed because it is too large Load Diff
+3173 -1359
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 KiB

After

Width:  |  Height:  |  Size: 144 KiB

+4 -4
View File
@@ -1,8 +1,8 @@
{
"html": "agon.html",
"css": "agon.css",
"authors": "Tsolval (@Tsolval)",
"roll20userid": "1628415",
"authors": "Tsolval (@Tsolval), G-G-G",
"roll20userid": "1628415,157788",
"preview": "agon.png",
"instructions": "This is a rough draft copy of a character sheet for John Harper's Agon Roll Playing Game (Agon-rpg.com). Current functionality is limited. Please feel free to contribute."
}
"instructions": "This sheet is for John Harper's Agon Role Playing Game (Agon-rpg.com). Recent updates inlude resizing many page elements, fixing some elements, and shifting column contents around to improve usablilty. Also added a number of features: \n* Added NPC and Minion sheets, as well as a GM sheet for saving quick rolls. (click \"PC NAME\" for dropdown). \n* Ability scores can now have a +1 or +2 bonus included. \n* An Ability Roller - the title of each Ability is a button to roll that Ability. This button automatically rolls the Ability, the Name Die, and asks for any other dice (enter a valid die string like 1d6+2 or 1d10+2d6). \n* A Custom Die Roller at top right: just enter a dice string (like \"1d8+1d6+2\") and click the title to roll. \n* A combat die roller - enter the dice in the Left Hand and Right hand boxes (e.g. 1d6+1d8+1d10+1) and click the title to roll them. \n* a Bonus Die roller, for open-ended rolls, and any simple 1d4, d6, d8, 10, or d12 rolls. \n* The Ability Roller buttons automatically include the Name Die, while the combat and custom die rollers do not. \n* When making an Ability roll, the die rolled will take Impairment levels into account. For custom and combat rolls, you'll need to enter the correct die size. \n* Wound Penalties are included in Ability and Combat rolls. Temporary wound modifiers (for Wounds 1-3) are applied; after making a roll, uncheck the \"Clear Temporary Penalties\" box to remove the penalty. \n* The Armor Die will be automatically calculated - just click the pieces worn (greaves, helmet, breastplate). Bonuses boxes are provided in case you gain armor better than standard. As with Abilities, Armor rolls take Impairment into account. \n* Finally, your Name Die is automatically calculated from Fate boxes. \n\n "
}
+52 -52
View File
@@ -2,7 +2,7 @@
"0": "",
"tab-general": "Geral",
"tab-magic": "Magia",
"tab-psychic": "Psychic",
"tab-psychic": "Psíquico",
"tab-ki": "Ki",
"tab-armory": "Arsenal",
"char-info": "Informação do Personagem",
@@ -12,53 +12,53 @@
"char-weight": "Peso",
"char-size": "Tamanho",
"char-appearance": "Aparên.",
"race": "Race",
"class": "Class",
"age": "Age",
"level": "Level",
"development-points": "DP",
"presence": "Presence",
"xperience-points": "XP",
"level-next": "Next Level",
"resistances": "Resistances",
"type": "Type",
"physical-resistance": "Physical Resistance",
"physical-resistance-short": "PhR",
"disease-resistance": "Disease Resistance",
"disease-resistance-short": "DR",
"poison-resistance": "Poison Resistance",
"poison-resistance-short": "PsnR",
"magic-resistance": "Magic Resistance",
"magic-resistance-short": "MR",
"psychic-resistance": "Psychic Resistance",
"psychic-resistance-short": "PsyR",
"race": "Raça",
"class": "Classe",
"age": "Idade",
"level": "Nível",
"development-points": "PD",
"presence": "Presença",
"xperience-points": "EXP",
"level-next": "Próximo Nível",
"resistances": "Resistências",
"type": "Tipo",
"physical-resistance": "Resistência Física",
"physical-resistance-short": "RFC",
"disease-resistance": "Resistência a Doenças",
"disease-resistance-short": "RD",
"poison-resistance": "Resistência a Veneno",
"poison-resistance-short": "RV",
"magic-resistance": "Resistência Mágica",
"magic-resistance-short": "RM",
"psychic-resistance": "Resistência Psíquica",
"psychic-resistance-short": "RP",
"all-action-modifier": "All Action Mod",
"characteristics": "Characteristics",
"ability": "Ability",
"magic-ability": "Magic Ability",
"agility": "Agility",
"characteristics": "Características",
"ability": "Habilidade",
"magic-ability": "Habilidade Mágica",
"agility": "Agilidade",
"agility-short": "AGI",
"constitution": "Constitution",
"constitution": "Constituição",
"constitution-short": "CON",
"dexterity": "Dexterity",
"dexterity-short": "DEX",
"strength": "Strength",
"strength-short": "STR",
"intelligence": "Intelligence",
"strength": "Força",
"strength-short": "FOR",
"intelligence": "Inteligência",
"intelligence-short": "INT",
"perception": "Perception",
"perception": "Percepção",
"perception-short": "PER",
"soul-power": "Power",
"soul-power": "Poder",
"soul-power-short": "POW",
"willpower": "Willpower",
"willpower": "Desejo de Poder",
"willpower-short": "WP",
"opposed": "Opposed",
"final-opposed": "Final Opp.",
"movement": "Movement",
"movement": "Movimento",
"penalty-short": "Pen.",
"bonus": "Bonus",
"bonus": "Bônus",
"full-movement": "Full",
"1/4-movement": "1/4 Move",
"1/4-movement": "1/4 de Movimento",
"running-movement": "Running",
"lifepoints-short": "LP",
"base-value": "Base",
@@ -67,13 +67,13 @@
"temporary-bonus": "Temp.",
"final-value": "Final",
"bought": "Bought",
"yes": "Yes",
"no": "No",
"description": "Description",
"fatigue": "Fatigue",
"system": "System",
"new": "New",
"old": "Old",
"yes": "Sim",
"no": "Não",
"description": "Descrição",
"fatigue": "Fadiga",
"system": "Sistema",
"new": "Novo",
"old": "Velho",
"roll": "Roll",
"roll-as": "as",
"actual-value": "Actual",
@@ -82,8 +82,8 @@
"block": "Block",
"dodge": "Dodge",
"initiative": "Initiative",
"armor": "Armor",
"weapon": "Weapon",
"armor": "Armadura",
"weapon": "Armas",
"secondary-abilities": "Secondary Abilities",
"secondary-penalty": "Secondary Abilities bordered in red are affected by armor penalties",
"tab-athletics": "Athletics",
@@ -99,10 +99,10 @@
"natural-ability-short": "N.A.",
"acrobatics": "Acrobatics",
"athleticism": "Athleticism",
"climb": "Climb",
"jump": "Jump",
"climb": "Subir",
"jump": "Pular",
"ride": "Ride",
"swim": "Swim",
"swim": "Nadar",
"etiquette": "Etiquette",
"intimidate": "Intimidate",
"leadership": "Leadership",
@@ -135,12 +135,12 @@
"stealth": "Stealth",
"theft": "Theft",
"trap-lore": "Trap Lore",
"art": "Art",
"dance": "Dance",
"art": "Arte",
"dance": "Dançar",
"forging": "Forging",
"music": "Music",
"music": "Música",
"slight-of-hand": "Sl. of Hand",
"advantages": "Advantages",
"advantages": "Vantagens",
"cost": "Cost",
"disadvantages": "Disadvantages",
"benefit": "Benefit",
@@ -168,7 +168,7 @@
"innate-magic": "Innate Magic",
"summoning-abilities": "Summoning Abilities",
"summon-ritual": "Summon",
"control-ritual": "Control",
"control-ritual": "Controle",
"bind-ritual": "Bind",
"banish-ritual": "Banish",
"ritual": "Ritual",
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 276 KiB

Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 362 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 341 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 885 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 878 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 486 B

+4 -4
View File
@@ -1,8 +1,8 @@
{
"html": "Ars_Magica_5th.html",
"css": "Ars_Magica_5th.css",
"authors": "Coal Powered Puppet.",
"roll20userid": "492849",
"authors": "Medieve & Felan, original sheet by Coal Powered Puppet.",
"roll20userid": "492849,23472",
"preview": "Ars_Magica_5th.png",
"instructions": "#Ars Magica 5th \r \r **For use with Ars Magica 5th edition** \r \r Chrome Users must load unsafe scripts to see ultra-cool Font. \r\r If there's something you want added, or you'd like to report a bug, please contact the author of this sheet. "
}
"instructions": "#Ars Magica 5th \r \r **For use with Ars Magica 5th edition** \r\r If there's something you want added, or you'd like to report a bug, please contact the author of this sheet. "
}
+79 -79
View File
@@ -1,89 +1,89 @@
{
"name-u": "Name:",
"player-u": "Player:",
"chronicle-u": "Chronicle:",
"nature-u": "Nature:",
"demeanor-u": "Demeanor:",
"concept-u": "Concept:",
"player-u": "Spieler:",
"chronicle-u": "Chronik:",
"nature-u": "Wesen:",
"demeanor-u": "Verhalten:",
"concept-u": "Konzept:",
"clan-u": "Clan:",
"generation-u": "Generation:",
"sire-u": "Sire:",
"attributes-u": "Attributes",
"physical-u": "Physical",
"social-u": "Social",
"mental-u": "Mental",
"strength-u": "Strength",
"dexterity-u": "Dexterity",
"stamina-u": "Stamina",
"sire-u": "Erschaffer:",
"attributes-u": "Attribute",
"physical-u": "K?rperlich",
"social-u": "Gesellschaftlich",
"mental-u": "Geistig",
"strength-u": "K?rperkraft",
"dexterity-u": "Geschick",
"stamina-u": "Widerstandsf?higkeit",
"charisma-u": "Charisma",
"manipulation-u": "Manipulation",
"appearance-u": "Appearance",
"intelligence-u": "Intelligence",
"wits-u": "Wits",
"perception-u": "Perception",
"abilities-u": "Abilities",
"talents-u": "Talents",
"skills-u": "Skills",
"knowledges-u": "Knowledges",
"alertness-u": "Alertness",
"athletics-u": "Athletics",
"awareness-u": "Awareness",
"brawl-u": "Brawl",
"empathy-u": "Empathy",
"expression-u": "Expression",
"intimidation-u": "Intimidation",
"leadership-u": "Leadership",
"subterfuge-u": "Subterfuge",
"streetwise-u": "Subterfuge",
"animalken-u": "Animal Ken",
"craft-u": "Craft",
"drive-u": "Drive",
"etiquette-u": "Etiquette",
"firearms-u": "Firearms",
"larceny-u": "Larceny",
"melee-u": "Melee",
"performance-u": "Performance",
"stealth-u": "Stealth",
"survival-u": "Survival",
"academics-u": "Academics",
"appearance-u": "Erscheinungsbild",
"intelligence-u": "Intelligenz",
"wits-u": "Wahrnehmung",
"perception-u": "Geistessch?rfe",
"abilities-u": "F?higkeiten",
"talents-u": "Talente",
"skills-u": "Fertigkeiten",
"knowledges-u": "Kenntnisse",
"alertness-u": "Aufmerksamkeit",
"athletics-u": "Sportlichkeit",
"awareness-u": "Magiegesp?r",
"brawl-u": "Handgemenge",
"empathy-u": "Empathie",
"expression-u": "Ausdruck",
"intimidation-u": "Einsch?chtern",
"leadership-u": "F?hrungsqualit?ten",
"subterfuge-u": "Ausfl?chte",
"streetwise-u": "Szenekenntnis",
"animalken-u": "Tierkunde",
"craft-u": "Handwerk",
"drive-u": "Fahren",
"etiquette-u": "Etikette",
"firearms-u": "Schusswaffen",
"larceny-u": "Diebstahl",
"melee-u": "Nahkampf",
"performance-u": "Vortrag",
"stealth-u": "Heimlichkeit",
"survival-u": "?berleben",
"academics-u": "Akademisches Wissen",
"computer-u": "Computer",
"finance-u": "Finance",
"investigation-u": "Investigation",
"law-u": "Law",
"medicine-u": "Medicine",
"occult-u": "Occult",
"politics-u": "Politics",
"science-u": "Science",
"technology-u": "Technology",
"advantages-u": "Advantages",
"disciplines-u": "Disciplines",
"backgrounds-u": "Backgrounds",
"virtues-u": "Virtues",
"conscience-u": "Conscience",
"convinction-u": "Convinction",
"selfcontrol-u": "Self-Control",
"instinct-u": "Instinct",
"courage-u": "Courage",
"othertraits-u": "Other Traits",
"paths-u": "Paths",
"merits-u": "Merits",
"flaws-u": "Flaws",
"humanitypath-u": "Humanity/path",
"finance-u": "Finanzen",
"investigation-u": "Nachforschungen",
"law-u": "Gesetzeskenntnis",
"medicine-u": "Medizin",
"occult-u": "Okkultismus",
"politics-u": "Politik",
"science-u": "Naturwissenschaften",
"technology-u": "Technologie",
"advantages-u": "Vorteile",
"disciplines-u": "Disziplinen",
"backgrounds-u": "Hintergr?nde",
"virtues-u": "Tugenden",
"conscience-u": "Gewissen",
"convinction-u": "?berzeugung",
"selfcontrol-u": "Selbstbeherrschung",
"instinct-u": "Instinkt",
"courage-u": "Mut",
"othertraits-u": "Andere Eigenschaften",
"paths-u": "Pfad",
"merits-u": "Vorzug",
"flaws-u": "Schw?che",
"humanitypath-u": "Menschlichkeit/Pfad",
"bearing-u": "Bearing:",
"willpower-u": "Willpower",
"bloodpool-u": "Blood Pool",
"pointsperturn-u": "Points Per Turn",
"dicepools-u": "Dice Pools",
"attributeability-u": "<b >Attribute &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ability</b >",
"health-u": "Health",
"bruised-u": "Bruised",
"hurt-u": "Hurt",
"injured-u": "Injured",
"wounded-u": "Wounded",
"mauled-u": "Mauled",
"crippled-u": "Crippled",
"incapacitated-u": "Incapacitated",
"weakness-u": "Weakness",
"willpower-u": "Willenskraft",
"bloodpool-u": "Blutvorrat",
"pointsperturn-u": "Blutpunkte pro Runde",
"dicepools-u": "W?rfelbecher",
"attributeability-u": "<b >Attribut &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; F?higkeit</b >",
"health-u": "Gesundheit",
"bruised-u": "Blaue Flecken",
"hurt-u": "Verletzt",
"injured-u": "Schwer verletzt",
"wounded-u": "Verwundet",
"mauled-u": "Schwer verwundet",
"crippled-u": "Verkr?ppelt",
"incapacitated-u": "Au?er Gefecht",
"weakness-u": "Clansschw?che",
"experience-u": "Experience",
"notes-u": "Notes"
"notes-u": "Notizen"
}
+83 -76
View File
@@ -768,7 +768,7 @@
<option value="@{Subterfuge}">Subterfuge</option>
<option value="@{Survival}">Survival</option>
<option value="@{Technology}">Technology</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
@@ -850,7 +850,7 @@
<option value="@{Subterfuge}">Subterfuge</option>
<option value="@{Survival}">Survival</option>
<option value="@{Technology}">Technology</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
@@ -931,14 +931,14 @@
<option value="@{Subterfuge}">Subterfuge</option>
<option value="@{Survival}">Survival</option>
<option value="@{Technology}">Technology</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
<option value="@{Other5}">Other5</option>
<option value="@{Other6}">Other6</option>
<option value="@{Other7}">Other7</option>
<option value="@{Other8}">Other8</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">OtherTrait2</option>
<option value="@{Other3}">OtherTrait3</option>
<option value="@{Other4}">OtherTrait4</option>
<option value="@{Other5}">OtherTrait5</option>
<option value="@{Other6}">OtherTrait6</option>
<option value="@{Other7}">OtherTrait7</option>
<option value="@{Other8}">OtherTrait8</option>
</select>
</td>
<td style="width:60px"><input type='number' class="sheet-dicepool" name='attr_DicePoolMod-3' value='0'/></td>
@@ -1012,7 +1012,7 @@
<option value="@{Subterfuge}">Subterfuge</option>
<option value="@{Survival}">Survival</option>
<option value="@{Technology}">Technology</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
@@ -1093,7 +1093,7 @@
<option value="@{Subterfuge}">Subterfuge</option>
<option value="@{Survival}">Survival</option>
<option value="@{Technology}">Technology</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
@@ -1178,7 +1178,7 @@
<option value="@{Subterfuge}">Subterfuge</option>
<option value="@{Survival}">Survival</option>
<option value="@{Technology}">Technology</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
@@ -2269,18 +2269,19 @@
</select></td>
</th>
<th><select class="sheet-select" style="width:90px" name="attr_weapon_skill-1" value="0" >
<option value="0" selected></option>
<option value="0" selected></option>
<option value="@{Athletics}">Athletics</option>
<option value="@{Brawl}">Brawl</option>
<option value="@{Firearms}">Firearms</option>
<option value="@{Melee}">Melee</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
<option value="@{Other5}">Other5</option>
<option value="@{Other6}">Other6</option>
<option value="@{Other7}">Other7</option>
<option value="@{Other8}">Other8</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">OtherTrait2</option>
<option value="@{Other3}">OtherTrait3</option>
<option value="@{Other4}">OtherTrait4</option>
<option value="@{Other5}">OtherTrait5</option>
<option value="@{Other6}">OtherTrait6</option>
<option value="@{Other7}">OtherTrait7</option>
<option value="@{Other8}">OtherTrait8</option>
</select></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Modifier-1" value="0"/></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Difficulty-1" value="6"/></th>
@@ -2316,18 +2317,19 @@
</select></td>
</th>
<th><select class="sheet-select" style="width:90px" name="attr_weapon_skill-2" value="0" >
<option value="0" selected></option>
<option value="0" selected></option>
<option value="@{Athletics}">Athletics</option>
<option value="@{Brawl}">Brawl</option>
<option value="@{Firearms}">Firearms</option>
<option value="@{Melee}">Melee</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
<option value="@{Other5}">Other5</option>
<option value="@{Other6}">Other6</option>
<option value="@{Other7}">Other7</option>
<option value="@{Other8}">Other8</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">OtherTrait2</option>
<option value="@{Other3}">OtherTrait3</option>
<option value="@{Other4}">OtherTrait4</option>
<option value="@{Other5}">OtherTrait5</option>
<option value="@{Other6}">OtherTrait6</option>
<option value="@{Other7}">OtherTrait7</option>
<option value="@{Other8}">OtherTrait8</option>
</select></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Modifier-2" value="0"/></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Difficulty-2" value="6"/></th>
@@ -2363,18 +2365,19 @@
</select></td>
</th>
<th><select class="sheet-select" style="width:90px" name="attr_weapon_skill-3" value="0" >
<option value="0" selected></option>
<option value="0" selected></option>
<option value="@{Athletics}">Athletics</option>
<option value="@{Brawl}">Brawl</option>
<option value="@{Firearms}">Firearms</option>
<option value="@{Melee}">Melee</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
<option value="@{Other5}">Other5</option>
<option value="@{Other6}">Other6</option>
<option value="@{Other7}">Other7</option>
<option value="@{Other8}">Other8</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">OtherTrait2</option>
<option value="@{Other3}">OtherTrait3</option>
<option value="@{Other4}">OtherTrait4</option>
<option value="@{Other5}">OtherTrait5</option>
<option value="@{Other6}">OtherTrait6</option>
<option value="@{Other7}">OtherTrait7</option>
<option value="@{Other8}">OtherTrait8</option>
</select></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Modifier-3" value="0"/></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Difficulty-3" value="6"/></th>
@@ -2410,18 +2413,19 @@
</select></td>
</th>
<th><select class="sheet-select" style="width:90px" name="attr_weapon_skill-4" value="0" >
<option value="0" selected></option>
<option value="0" selected></option>
<option value="@{Athletics}">Athletics</option>
<option value="@{Brawl}">Brawl</option>
<option value="@{Firearms}">Firearms</option>
<option value="@{Melee}">Melee</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
<option value="@{Other5}">Other5</option>
<option value="@{Other6}">Other6</option>
<option value="@{Other7}">Other7</option>
<option value="@{Other8}">Other8</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">OtherTrait2</option>
<option value="@{Other3}">OtherTrait3</option>
<option value="@{Other4}">OtherTrait4</option>
<option value="@{Other5}">OtherTrait5</option>
<option value="@{Other6}">OtherTrait6</option>
<option value="@{Other7}">OtherTrait7</option>
<option value="@{Other8}">OtherTrait8</option>
</select></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Modifier-4" value="0"/></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Difficulty-4" value="6"/></th>
@@ -2457,18 +2461,19 @@
</select></td>
</th>
<th><select class="sheet-select" style="width:90px" name="attr_weapon_skill-5" value="0" >
<option value="0" selected></option>
<option value="0" selected></option>
<option value="@{Athletics}">Athletics</option>
<option value="@{Brawl}">Brawl</option>
<option value="@{Firearms}">Firearms</option>
<option value="@{Melee}">Melee</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
<option value="@{Other5}">Other5</option>
<option value="@{Other6}">Other6</option>
<option value="@{Other7}">Other7</option>
<option value="@{Other8}">Other8</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">OtherTrait2</option>
<option value="@{Other3}">OtherTrait3</option>
<option value="@{Other4}">OtherTrait4</option>
<option value="@{Other5}">OtherTrait5</option>
<option value="@{Other6}">OtherTrait6</option>
<option value="@{Other7}">OtherTrait7</option>
<option value="@{Other8}">OtherTrait8</option>
</select></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Modifier-5" value="0"/></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Difficulty-5" value="6"/></th>
@@ -2504,18 +2509,19 @@
</select></td>
</th>
<th><select class="sheet-select" style="width:90px" name="attr_weapon_skill-6" value="0" >
<option value="0" selected></option>
<option value="0" selected></option>
<option value="@{Athletics}">Athletics</option>
<option value="@{Brawl}">Brawl</option>
<option value="@{Firearms}">Firearms</option>
<option value="@{Melee}">Melee</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
<option value="@{Other5}">Other5</option>
<option value="@{Other6}">Other6</option>
<option value="@{Other7}">Other7</option>
<option value="@{Other8}">Other8</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">OtherTrait2</option>
<option value="@{Other3}">OtherTrait3</option>
<option value="@{Other4}">OtherTrait4</option>
<option value="@{Other5}">OtherTrait5</option>
<option value="@{Other6}">OtherTrait6</option>
<option value="@{Other7}">OtherTrait7</option>
<option value="@{Other8}">OtherTrait8</option>
</select></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Modifier-6" value="0"/></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Difficulty-6" value="6"/></th>
@@ -2551,18 +2557,19 @@
</select></td>
</th>
<th><select class="sheet-select" style="width:90px" name="attr_weapon_skill-7" value="0" >
<option value="0" selected></option>
<option value="0" selected></option>
<option value="@{Athletics}">Athletics</option>
<option value="@{Brawl}">Brawl</option>
<option value="@{Firearms}">Firearms</option>
<option value="@{Melee}">Melee</option>
<option value="@{Other1}">Other1</option>
<option value="@{Other2}">Other2</option>
<option value="@{Other3}">Other3</option>
<option value="@{Other4}">Other4</option>
<option value="@{Other5}">Other5</option>
<option value="@{Other6}">Other6</option>
<option value="@{Other7}">Other7</option>
<option value="@{Other8}">Other8</option>
<option value="@{Other1}">OtherTrait1</option>
<option value="@{Other2}">OtherTrait2</option>
<option value="@{Other3}">OtherTrait3</option>
<option value="@{Other4}">OtherTrait4</option>
<option value="@{Other5}">OtherTrait5</option>
<option value="@{Other6}">OtherTrait6</option>
<option value="@{Other7}">OtherTrait7</option>
<option value="@{Other8}">OtherTrait8</option>
</select></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Modifier-7" value="0"/></th>
<th><input type="number" class="sheet-textbox" name="attr_weapon_Difficulty-7" value="6"/></th>
+3 -3
View File
@@ -22,9 +22,9 @@
"majorwound-u": "",
"pulphp-u": "",
"luck-u": "Sorte",
"current": "current",
"current": "atual",
"damagebonus-u": "Bônus de dano",
"None": "None",
"None": "Nenhum",
"build-u": "Estrutura",
"sanity-u": "Sanidade",
"start": "start",
@@ -99,7 +99,7 @@
"Fighting(Brawl)": "Fighting(Brawl)",
"Firarms(HG)": "Firarms(HG)",
"Firarms(R/S)": "Firarms(R/S)",
"Throw": "Throw",
"Throw": "Lançar",
"Other Skill #1": "Other Skill #1",
"Other Skill #2": "Other Skill #2",
"Other Skill #3": "Other Skill #3",
+6 -6
View File
@@ -65,7 +65,7 @@
"own-language-u": "Muttersprache (EDU x5)",
"mechanical-repair-u": "Mechanische Reparaturen (20&#37;)",
"medicine-u": "Medizin (05&#37;)",
"cthulhu-mythos-u": "Cthulhu Mythos (00&#37;)",
"cthulhu-mythos-u": "Cthulhu-Mythos (00&#37;)",
"swim-u": "Schwimmen (00&#37;)",
"conceal-u": "Tarnen (15&#37;)",
"hide-u": "Verbergen (10&#37;)",
@@ -87,12 +87,12 @@
"shotgun-u": "Schrotflinte (30&#37;)",
"submachine-gun-u": "Maschinenpistole (15&#37;)",
"other-skills-u": "Andere Fertigkeiten",
"time-area-u": "Time Area",
"art-u": "Art (05%)",
"all-ages-u": "anytime",
"time-area-u": "Zeitbereich",
"art-u": "Kunst (05 %)",
"all-ages-u": "jederzeit",
"job-u": "Handwerk (05&#37;)",
"computer-u": "Computernutzung (00&#37;)",
"90s-u": "1990s",
"90s-u": "1990er",
"not-1890-u": "ab 1920er",
"carriage-u": "Fahren Kutsche (20&#37;)",
"1890s-u": "Gaslicht",
@@ -138,6 +138,6 @@
"heal-u": "Heilung",
"weekly-u": "W&ouml;chentlich",
"objective-u": "Ziel",
"edition-u": "Game edition",
"edition-u": "Spiel Edition",
"edition-info": "Choose between editions. If you are playing the 6e french edition, please, use the especific sheet, this isn't the one you're looking for. If you convert a game between editions, you will need to change the skills manually."
}
+97 -97
View File
@@ -1,114 +1,114 @@
{
"tab-character": "Character",
"tab-characternotes": "Character Notes",
"tab-spaceship": "Spaceship",
"tab-spaceshipnotes": "Spaceship Notes",
"tab-character": "Personnage",
"tab-characternotes": "Notes - Personnage",
"tab-spaceship": "Vaisseau spatial",
"tab-spaceshipnotes": "Notes - Vaisseau spatial",
"tab-scripts": "Scripts",
"title-character-u": "CHARACTER SHEET",
"title-characternotes-u": "CHARACTER NOTES",
"title-spaceship-u": "SPACESHIP SHEET",
"title-spaceshipnotes-u": "SPACESHIP NOTES",
"title-character-u": "FEUILLE DE PERSONNAGE",
"title-characternotes-u": "NOTES - PERSONNAGE",
"title-spaceship-u": "FEUILLE DE VAISSEAU",
"title-spaceshipnotes-u": "NOTES - VAISSEAU",
"notes-u": "NOTES",
"modifiers-u": "MODIFIERS",
"modifiers-positive": "Positive",
"modifiers-negative": "Negative",
"attributes-u": "ATTRIBUTES",
"attributes-strength": "Strength",
"attributes-agility": "Agility",
"attributes-wits": "Wits",
"attributes-empathy": "Empathy",
"character-trauma-u": "TRAUMA",
"character-trauma-hitpoints-strength-plus-agility": "Hit Points (Str+Agi)",
"character-trauma-critical-injuries": "Critical Injuries:",
"character-trauma-mindpoints-wits-plus-empathy": "Mind points (Wits+Emp)",
"name": "Name:",
"character-background": "Background:",
"character-concept": "Concept:",
"character-icon": "Icon:",
"character-group-concept": "Group concept:",
"character-reputation": "Reputation:",
"character-personal-problem": "Personal Problem:",
"appearance-u": "Appearance",
"appearance-face": "Face:",
"appearance-clothing": "Clothing:",
"character-relationships-u": "RELATIONSHIPS",
"character-relationships-buddy-u": "BUDDY",
"radiation-u": "RADIATION",
"experience-u": "EXPERIENCE",
"character-skills-u": "SKILLS",
"character-skills-general-u": "GENERAL",
"character-skills-advanced-u": "ADVANCED",
"character-skills-dexterity-agility": "Dexterity (Agi)",
"character-skills-command-empathy": "Command (Emp)",
"character-skills-force-strength": "Force (Str)",
"modifiers-u": "MODIFICATEURS",
"modifiers-positive": "Positif",
"modifiers-negative": "Négatif",
"attributes-u": "ATTRIBUTS",
"attributes-strength": "Vigueur",
"attributes-agility": "Agilité",
"attributes-wits": "Astuce",
"attributes-empathy": "Empathie",
"character-trauma-u": "BLESSURES",
"character-trauma-hitpoints-strength-plus-agility": "Points de Vie (Vig+Agi)",
"character-trauma-critical-injuries": "Blessure critique :",
"character-trauma-mindpoints-wits-plus-empathy": "Points d'Esprit (Ast+Emp)",
"name": "Nom :",
"character-background": "Historique :",
"character-concept": "Concept :",
"character-icon": "Icône :",
"character-group-concept": "Concept de groupe :",
"character-reputation": "Réputation :",
"character-personal-problem": "Problème personnel :",
"appearance-u": "Apparence",
"appearance-face": "Visage :",
"appearance-clothing": "Vêtements :",
"character-relationships-u": "RELATIONS",
"character-relationships-buddy-u": "AMI",
"radiation-u": "IRRADIATION",
"experience-u": "EXPÉRIENCE",
"character-skills-u": "COMPÉTENCES",
"character-skills-general-u": "GÉNÉRALES",
"character-skills-advanced-u": "AVANCÉES",
"character-skills-dexterity-agility": "Dextérité (Agi)",
"character-skills-command-empathy": "Commandement (Emp)",
"character-skills-force-strength": "Force (Vig)",
"character-skills-culture-empathy": "Culture (Emp)",
"character-skills-infiltration-agility": "Infiltration (Agi)",
"character-skills-datadjinn-wits": "Data Djinn (Wit)",
"character-skills-datadjinn-wits": "Génie Numérique (Ast)",
"character-skills-manipulation-empathy": "Manipulation (Emp)",
"character-skills-medicurgy-wits": "Medicurgy (Wit)",
"character-skills-meleecombat-strength": "Melee Combat (Str)",
"character-skills-mysticpowers-empathy": "Mystic Powers (Emp)",
"character-skills-observation-wits": "Observation (Wit)",
"character-skills-pilot-agility": "Pilot (Agi)",
"character-skills-rangedcombat-agility": "Ranged Combat (Agi)",
"character-skills-science-wits": "Science (Wit)",
"character-skills-survival-wits": "Survival (Wit)",
"character-skills-technology-wits": "Technology (Wit)",
"character-skills-talents-u": "TALENTS",
"carry-u": "CARRY",
"character-skills-medicurgy-wits": "Médirurgie (Ast)",
"character-skills-meleecombat-strength": "Mêlée (Vig)",
"character-skills-mysticpowers-empathy": "Pouvoirs Mystiques (Emp)",
"character-skills-observation-wits": "Observation (Ast)",
"character-skills-pilot-agility": "Pilotage (Agi)",
"character-skills-rangedcombat-agility": "Tir (Agi)",
"character-skills-science-wits": "Science (Ast)",
"character-skills-survival-wits": "Survie (Ast)",
"character-skills-technology-wits": "Technologie (Ast)",
"character-skills-talents-u": "DONS",
"carry-u": "TRANSPORT",
"carry-max-u": "MAX",
"inventory-gear-u": "GEAR",
"inventory-gear-u": "EQUIPEMENT",
"bonus-u": "BONUS",
"armor-u": "ARMOR",
"armor-rating-u": "RATING",
"comment-u": "COMMENT",
"comments-u": "COMMENTS",
"weapons-u": "WEAPONS",
"armor-u": "ARMURE",
"armor-rating-u": "SCORE",
"comment-u": "COMMENTAIRE",
"comments-u": "COMMENTAIRES",
"weapons-u": "ARMES",
"init-initiative-u": "INIT",
"weapons-damage-u": "DAMAGE",
"weapons-damage-u": "DÉGÂTS",
"weapons-crit-critical-u": "CRIT",
"weapons-range-u": "RANGE",
"weapons-reloads-u": "RELOADS",
"people-u": "PEOPLE I'VE MET",
"weapons-range-u": "PORTÉE",
"weapons-reloads-u": "RECHARGE",
"people-u": "PERSONNES RENCONTRÉES",
"people-concept-u": "CONCEPT",
"characternotes-cabin-u": "MY CABIN",
"characternotes-cabin-description": "Description:",
"characternotes-cabin-gear": "Gear:",
"characternotes-cabin-other": "Other:",
"tiny-items-u": "TINY ITEMS",
"characternotes-money-birr-u": "Birr:",
"spaceship-class": "Class & Type:",
"spaceship-shipyard": "Shipyard:",
"spaceship-problem": "Problem:",
"spaceship-debt": "Debt",
"spaceship-data-u": "DATA",
"spaceship-data-maneuverability": "Maneuverability",
"characternotes-cabin-u": "MA CABINE",
"characternotes-cabin-description": "Description :",
"characternotes-cabin-gear": "Equipement :",
"characternotes-cabin-other": "Autre :",
"tiny-items-u": "PETITS OBJETS",
"characternotes-money-birr-u": "Birrs :",
"spaceship-class": "Classe & Type :",
"spaceship-shipyard": "Chantier naval :",
"spaceship-problem": "Problème :",
"spaceship-debt": "Dette",
"spaceship-data-u": "DONNÉES",
"spaceship-data-maneuverability": "Manœuvrabilité",
"spaceship-data-signature": "Signature",
"spaceship-data-speed": "Speed",
"spaceship-data-armor": "Armor",
"spaceship-data-speed": "Vitesse",
"spaceship-data-armor": "Armure",
"spaceship-modules-u": "MODULES",
"spaceship-modules-disabled-u": "DISABLED",
"spaceship-modules-maximum": "Maximum number of modules",
"spaceship-energypoints-u": "ENERGY POINTS",
"spaceship-hullpoints-u": "HULL POINTS",
"spaceship-hullpoints-criticaldamage": "Critical Damage:",
"spaceship-features-u": "FEATURES",
"spaceship-skill-level-u": "Skill Level",
"spaceship-captain-u": "CAPTAIN",
"spaceship-pilot-u": "PILOT",
"spaceship-sensor-operator-u": "SENSOR OPERATOR",
"spaceship-gunner-u": "GUNNER",
"spaceship-engineer-u": "ENGINEER",
"spaceshipnotes-log-u": "SHIP'S LOG",
"spaceship-modules-disabled-u": "HORS SERVICE",
"spaceship-modules-maximum": "Nombre maximum de modules",
"spaceship-energypoints-u": "POINTS D'ENERGIE",
"spaceship-hullpoints-u": "POINTS DE COQUE",
"spaceship-hullpoints-criticaldamage": "Dégâts critiques :",
"spaceship-features-u": "FONCTIONNALITES",
"spaceship-skill-level-u": "Niveau de Compétence",
"spaceship-captain-u": "CAPITAINE",
"spaceship-pilot-u": "PILOTE",
"spaceship-sensor-operator-u": "OPÉRATEUR DE SENSEURS",
"spaceship-gunner-u": "ARTILLEUR",
"spaceship-engineer-u": "INGENIEUR",
"spaceshipnotes-log-u": "JOURNAL DE BORD",
"spaceshipnotes-log-coriolis-cycles-segment-u": "CC/SEGMENT",
"spaceshipnotes-log-route-u": "ROUTE",
"spaceshipnotes-log-danger-u": "DANGER",
"spaceshipnotes-cargo-u": "CARGO AND GEAR",
"rolltemplate-autofail": "Missing skill point in advanced skill. Automatic fail.",
"rolltemplate-dice-pool": "Dice pool is 0 or less.<br> Rolling 2d6 instead.",
"rolltemplate-difficult-fail": "Difficult Roll Failure.",
"rolltemplate-difficult-success": "Difficult Roll Success.",
"rolltemplate-fail": "Failure.",
"rolltemplate-limitedsuccess": "Limited Success.",
"rolltemplate-criticalsuccess": "Critical Success."
"spaceshipnotes-cargo-u": "CARGAISON ET EQUIPEMENT",
"rolltemplate-autofail": "Absence de point de compétence avancée. Échec automatique.",
"rolltemplate-dice-pool": "Total des dé de 0 ou moins.<br> Lancement de 2D6.",
"rolltemplate-difficult-fail": "Échec au Jet Difficile.",
"rolltemplate-difficult-success": "Réussite au Jet Difficile.",
"rolltemplate-fail": "Échec.",
"rolltemplate-limitedsuccess": "Réussite limitée.",
"rolltemplate-criticalsuccess": "Réussite critique."
}
+5 -5
View File
@@ -545,7 +545,7 @@ input.sheet-tager_human:checked ~ div.sheet-tager_block
}
.sheet-arcane_green {
width:275px;
background: url('http://pre08.deviantart.net/7350/th/pre/i/2011/345/6/f/arcane_circles_by_todachan96-d4it7ff.jpg');
background: url('https://78.media.tumblr.com/2326815cab68c1ec514ce60fff9b3f49/tumblr_pderycBCGy1s9slulo1_1280.jpg');
background-size: 400px;
border-radius:15px;
padding:2px;
@@ -1253,8 +1253,8 @@ input.sheet-shadow[type="radio"]:checked ~ input.sheet-shadow[type="radio"] + sp
.sheet-feat_button button[type="roll"],
.sheet-feat_button {
border-radius: 5px;
height: 25px;
width: 80px;
height: 20px;
width: 70px;
font-weight:bold;
margin: 0;
background: transparent;
@@ -1289,8 +1289,8 @@ input.sheet-shadow[type="radio"]:checked ~ input.sheet-shadow[type="radio"] + sp
.sheet-tager_block .sheet-feat_button button[type="roll"],
.sheet-tager_block .sheet-feat_button {
border-radius: 5px;
height: 25px;
width: 80px;
height: 20px;
width: 70px;
font-weight:bold;
margin: 0px;
background: #b30000;
+30 -25
View File
@@ -152,7 +152,7 @@
</table>
<input type="checkbox" class="sheet-tager_human sheet-hidden" name="attr_form_switch1" value="1"/><span></span>
<div class="sheet-human_block">
<div class="sheet-mundane_green" style="height:200px;">
<div class="sheet-mundane_green" style="height:220px;">
<table class="sheet-table">
<tr>
<td>Name</td>
@@ -182,7 +182,7 @@
</div>
</div>
<div class="sheet-tager_block">
<div class="sheet-arcane_green" style="height:200px;">
<div class="sheet-arcane_green" style="height:220px;">
<table class="sheet-table">
<tr>
<td>Monster Name</td>
@@ -242,7 +242,7 @@
</table>
<input type="checkbox" class="sheet-tager_human sheet-hidden" name="attr_form_switch2" value="1"/><span></span>
<div class="sheet-human_block">
<div class="sheet-mundane_green" style="height:200px;">
<div class="sheet-mundane_green" style="height:220px;">
<table class="sheet-table">
<tr>
<td></td>
@@ -252,7 +252,7 @@
<td>Feat</td>
</tr>
<tr>
<th><button type="roll" class="sheet-feat_button" name="attr_feat_Agility" value="!ct [[ [[ @{rating-Agi-Feat} ]]d10 ]] [[@{Agi}]] --|@{character_name} --Feat: Agility">Agility</button></th>
<th><button type="roll" class="sheet-feat_button" name="attr_feat_Agility" value="!ct [[ [[ @{Agi} ]]d10 ]] [[@{Agi}]] --|@{character_name} --Feat: Agility">Agility</button></th>
<td><input type="number" class="sheet-attribute1" name="attr_rating_Agi_total" value="[[@{Agi}]]" disabled/></td>
<td><input type="number" class="sheet-attribute" name="attr_rating_Agi_base" value="0"/></td>
<td><input type="number" class="sheet-attribute" name="attr_rating_Agi_mod" value="0"/></td>
@@ -297,7 +297,7 @@
</div>
</div>
<div class="sheet-tager_block">
<div class="sheet-arcane_green" style="height:200px;">
<div class="sheet-arcane_green" style="height:220px;">
<table class="sheet-table">
<tr>
<td></td>
@@ -307,7 +307,7 @@
<td>Feat</td>
</tr>
<tr>
<th><button type="roll" class="sheet-feat_button" name="attr_feat-Agility_tager" value="!ct [[ [[ @{rating_Agi_Feat} ]]d10 ]] [[@{Agi}]] --|@{character_name} --Feat: Agility">Agility</button></th>
<th><button type="roll" class="sheet-feat_button" name="attr_feat-Agility_tager" value="!ct [[ [[ @{Agi} ]]d10 ]] [[@{Agi}]] --|@{character_name} --Feat: Agility">Agility</button></th>
<td><input type="number" class="sheet-attribute_tager1" name="attr_Agi_total" value="[[@{Agi}]]" disabled/></td>
<td><input type="number" class="sheet-attribute_tager" name="attr_rating_Agi_humanform" value="0"/></td>
<td><input type="number" class="sheet-attribute_tager" name="attr_rating_Agi_tagerform" value="0"/></td>
@@ -395,7 +395,7 @@
</table>
<input type="checkbox" class="sheet-tager_human sheet-hidden" name="attr_form_switch3" value="1"/><span></span>
<div class="sheet-human_block">
<div class="sheet-mundane_green" style="width:260px;height:200px;">
<div class="sheet-mundane_green" style="width:260px;height:220px;">
<table class="sheet-table">
<tr>
<td></td>
@@ -460,7 +460,7 @@
</div>
</div>
<div class="sheet-tager_block">
<div class="sheet-arcane_green" style="width:260px;height:200px;">
<div class="sheet-arcane_green" style="width:260px;height:220px;">
<table class="sheet-table">
<tr>
<td></td>
@@ -535,7 +535,7 @@
<tr>
<td><h4>Flesh</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_vitality_1" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vitality_1" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vitality_1" value="3" /><span></span>
@@ -581,7 +581,7 @@
</th>
<td><h4>Light</h4></td>
<th colspan="4">
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_vitality_2" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vitality_2" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vitality_2" value="3" /><span></span>
@@ -631,7 +631,7 @@
<tr>
<td><h4>Moderate</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_vitality_3" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vitality_3" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vitality_3" value="3" /><span></span>
@@ -677,7 +677,7 @@
</th>
<td><h4>Serious</h4></td>
<th colspan="4">
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_vitality_4" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vitality_4" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vitality_4" value="3" /><span></span>
@@ -726,7 +726,7 @@
<tr>
<td><h4>Death's Door</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_vitality_5" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vitality_5" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vitality_5" value="3" /><span></span>
@@ -794,7 +794,7 @@
<tr>
<td><h4>Flesh</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_1" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_1" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_1" value="3" /><span></span>
@@ -840,7 +840,7 @@
</th>
<td><h4>Light</h4></td>
<th colspan="4">
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_2" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_2" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_2" value="3" /><span></span>
@@ -862,7 +862,6 @@
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_2" value="19" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_2" value="20" /><span></span><br>
<input type="radio" class="sheet-health sheet-zero" name="attr_tager_rating-health-light" value="0" checked/><span></span>
<input type="radio" class="sheet-health" name="attr_tager_rating-health-light" value="1.01" /><span></span>
<input type="radio" class="sheet-health" name="attr_tager_rating-health-light" value="1.02"/><span></span>
@@ -889,7 +888,7 @@
<tr>
<td><h4>Moderate</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_3" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_3" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_3" value="3" /><span></span>
@@ -934,7 +933,8 @@
<input type="radio" class="sheet-health" name="attr_tager_rating-health-Moderate" value="3.20"/><span></span>
</th>
<td><h4>Serious</h4></td>
<th colspan="4">
<th colspan="4">
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_4" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_4" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_4" value="3" /><span></span>
@@ -982,8 +982,8 @@
<tr>
<td><h4>Death's Door</h4></td>
<th>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_5" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_5" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_tager_rating_vitality_5" value="3" /><span></span>
@@ -7084,7 +7084,7 @@
<tr>
<td><h4>Cosmetic</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-1" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-1" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-1" value="3" /><span></span>
@@ -7130,7 +7130,7 @@
</th>
<td><h4>Light</h4></td>
<th colspan="4">
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-2" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-2" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-2" value="3" /><span></span>
@@ -7180,7 +7180,7 @@
<tr>
<td><h4>Moderate</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-3" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-3" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-3" value="3" /><span></span>
@@ -7226,7 +7226,7 @@
</th>
<td><h4>Serious</h4></td>
<th colspan="4">
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-4" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-4" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-4" value="3" /><span></span>
@@ -7274,6 +7274,7 @@
<tr>
<td><h4>Critical</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-5" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-5" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_vehicle_Integrity-5" value="3" /><span></span>
@@ -7348,6 +7349,7 @@
<tr>
<td><h4>Cosmetic</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-1" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-1" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-1" value="3" /><span></span>
@@ -7393,6 +7395,7 @@
</th>
<td><h4>Light</h4></td>
<th colspan="4">
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-2" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-2" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-2" value="3" /><span></span>
@@ -7414,7 +7417,6 @@
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-2" value="19" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-2" value="20" /><span></span><br>
<input type="radio" class="sheet-health sheet-zero" name="attr_mecha_health-light" value="0" checked/><span></span>
<input type="radio" class="sheet-health" name="attr_mecha_health-light" value="1.01" /><span></span>
<input type="radio" class="sheet-health" name="attr_mecha_health-light" value="1.02"/><span></span>
@@ -7441,6 +7443,7 @@
<tr>
<td><h4>Moderate</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-3" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-3" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-3" value="3" /><span></span>
@@ -7486,6 +7489,7 @@
</th>
<td><h4>Serious</h4></td>
<th colspan="4">
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-4" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-4" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-4" value="3" /><span></span>
@@ -7533,6 +7537,7 @@
<tr>
<td><h4>Critical</h4></td>
<th>
&nbsp;
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-5" value="1" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-5" value="2" /><span></span>
<input type="radio" class="sheet-shadow" name="attr_mecha_Integrity-5" value="3" /><span></span>
+1 -1
View File
@@ -10,7 +10,7 @@
}
.charsheet .sheet-version::after {
content: 'Sheet Version 1.71';
content: 'Sheet Version 1.72';
}
.charsheet label, h1, h2, h3{
+121 -69
View File
@@ -1,77 +1,129 @@
D6-StarWars-Character-Sheet
===========================
# D6-StarWars-Character-Sheet
This is the Character sheet for the D6-Based WEG Star Wars and the new D6 Star Wars games. The sheet is geared to 2E and REUP as the rolls use wild die, but the option to disable wild die and others are on the top upcoming improvement.
List your dice and pips next to the appropriate skills - 3pips equal another die.
The text areas are expandable for additional info.
Wiki page for the sheet:
--------------->https://wiki.roll20.net/Star_Wars_WEG_D6_character_sheet<-------------
Version 1.71 (2018-07-31):
Fix:
-Corrected Force Emptiness to scale properly with DarkSidePoints
Version 1.70 (2018-07-24):
Layout:
-Made wound tracker wider
-Force section
New Feature:
-Under Force skills, space for powers and their roll buttons added
Version 1.68 (2018-07-17):
Layout:
-remove empty gap on top of sheet
-improved layout in most sections
-added some tooltip info to menu settings
-Moved Backgorund section under Equipment Section
-Sheet version number & sheet type is now shown in corner
Fixes:
-corrected Lightsaber Combat dmg roll
-Force Emptiness bonus is now properly reduced by number of DSP
New Feature:
-added Resist Pain Force power(with sheet worker)
Other:
-code cleanup of some rolls
-removed all sheetworkers that where Gumshoe inmort and unnecessary
-updated preview
Version 1.6 (2018-07-10):
-sheet customization menu added with these options:
-pc/npc sheet switch (condenced basic info block & equipment sections)
-hide/show gmroll buttons option (these rolls are whispered to GM)
-show/hide options for Force, Background & Equipment section
-Fixed Force Emptiness tracker (now able to change it's strength according to DSP)
-minor formatting
-some code cleanup
Prior v1.6:
-Weapon section roll fixed (2018-02)
-Vehicle/Ship text blocks have been added to the bottom of the sheet(2018-02)
-"Lightsaber Combat" option added to the Force section so you can have your attack and damage rolls preset for "Lightsaber Combat" (2018-02)
-Unused Resist Pain attribute removed (2018-02)
-Added a Skill Section and Attack Button (weapon section) (2018-01-15)
-Increased the Size of the Medium Range to take triple digit numbers (weapon section) (2018-01-15)
-Weapon name is properly showed when damage is rolled from the sheet (2017-11)
-Perception skills and old weapons are back! (2017-11)
-All skills and attributes now rolls with a template and dice/pip mod can be given (2017-11)
-Armor section is working, rolls and all (2017-11)
-added tracker for permanent initiative bonus(some races have that) (2017-11)
-A initiative skill have been added to second section next to char points, with a roll that sends to tracker (2017-11)
-Custom rollers, with and without wild die have been added to same section (2017-11)
-Roller for char points have been added next to char point attribute (2017-11)
-Force and Background section can now be hidden with a checkbox each (2017-11)
-Resist pain in force section have been disabled for not working properly (2017-11)
-Duplicating text fields "character connections" <-> "other notes" is fixed (2017-11)
-Added attributes for wound levels, and trackers for force emptiness, number of force powers active and Resist Pain (2017-11-15)
-Added repeating armor section with soak rolls (2017-11)
-All attributes & skill roll using a template, taking wounds in considerations, and the player can additionally choose to include Dice/pip mods for the rolls (2017-11-15)
-Added missing Star Wars logo & black space background (2017-11-15)
-Checkbox to hide force section (2017-11-15)
-Change dice icon to d6 (2017-11-15)
[Wiki page for the sheet](https://wiki.roll20.net/Star_Wars_WEG_D6_character_sheet)
Good source for all things D6 Star wars related, including fanmade conversions of campaign settings, forums and more:
--------------->http://www.d6holocron.com/<-------------
**--------------->[http://www.d6holocron.com/](http://www.d6holocron.com/)<-------------**
## Sheet Versions
### Version 1.72 (2018-08-22)
- Readme formatting
### Version 1.71 (2018-07-31)
**Fix:**
- Corrected Force Emptiness to scale properly with DarkSidePoints
### Version 1.70 (2018-07-24)
**Layout:**
- Made wound tracker wider
- Force section
**New Feature:**
- Under Force skills, space for powers and their roll buttons added
### Version 1.68 (2018-07-17)
**Layout:**
- remove empty gap on top of sheet
- improved layout in most sections
- added some tooltip info to menu settings
- Moved Backgorund section under Equipment Section
- Sheet version number & sheet type is now shown in corner
**Fixes:**
- corrected Lightsaber Combat dmg roll
- Force Emptiness bonus is now properly reduced by number of DSP
**New Feature:**
- added Resist Pain Force power(with sheet worker)
**Other:**
- code cleanup of some rolls
- removed all sheetworkers that where Gumshoe inmort and unnecessary
- updated preview
### Version 1.6 (2018-07-10)
- sheet customization menu added with these options:
- pc/npc sheet switch (condenced basic info block & equipment sections)
- hide/show gmroll buttons option (these rolls are whispered to GM)
- show/hide options for Force, Background & Equipment section
- Fixed Force Emptiness tracker (now able to change it's strength according to DSP)
- minor formatting
- some code cleanup
### Prior v1.6
- Weapon section roll fixed (2018-02)
- Vehicle/Ship text blocks have been added to the bottom of the sheet(2018-02)
- "Lightsaber Combat" option added to the Force section so you can have your attack and damage rolls preset for "Lightsaber Combat" (2018-02)
- Unused Resist Pain attribute removed (2018-02)
- Added a Skill Section and Attack Button (weapon section) (2018-01-15)
- Increased the Size of the Medium Range to take triple digit numbers (weapon section) (2018-01-15)
- Weapon name is properly showed when damage is rolled from the sheet (2017-11)
- Perception skills and old weapons are back! (2017-11)
- All skills and attributes now rolls with a template and dice/pip mod can be given (2017-11)
- Armor section is working, rolls and all (2017-11)
- added tracker for permanent initiative bonus(some races have that) (2017-11)
- A initiative skill have been added to second section next to char points, with a roll that sends to tracker (2017-11)
- Custom rollers, with and without wild die have been added to same section (2017-11)
- Roller for char points have been added next to char point attribute (2017-11)
- Force and Background section can now be hidden with a checkbox each (2017-11)
- Resist pain in force section have been disabled for not working properly (2017-11)
- Duplicating text fields "character connections" <-> "other notes" is fixed (2017-11)
- Added attributes for wound levels, and trackers for force emptiness, number of force powers active and Resist Pain (2017-11-15)
- Added repeating armor section with soak rolls (2017-11)
- All attributes & skill roll using a template, taking wounds in considerations, and the player can additionally choose to include Dice/pip mods for the rolls (2017-11-15)
- Added missing Star Wars logo & black space background (2017-11-15)
- Checkbox to hide force section (2017-11-15)
- Change dice icon to d6 (2017-11-15)
+2 -2
View File
@@ -89,11 +89,11 @@
"leftleg": "Левая Нога",
"rightleg": "Правая Нога",
"rangedweapons": "Дистанционное Оружие",
"range:": "Дистанция:",
"range:": "Дист:",
"type:": "Тип:",
"rof:": "РоФ:",
"clip:": "Обойма:",
"reload:": "Перезарядка:",
"reload:": "Пер:",
"gear": "Оборудование",
"thronegelt:": "Троны: ",
"income:": "Доход: ",
+74 -6
View File
@@ -156,6 +156,10 @@
margin: auto;
}
.sheet-chiprow .sheet-item {
width: 8%;
}
.sheet-itemright {
margin: auto;
margin-right: 5px;
@@ -386,14 +390,16 @@ textarea {
.sheet-big input[type=radio],
.sheet-location input[type=radio] {
display: inline-block;
text-align: center;
position: relative;
left: 20px;
width: 25px;
opacity: 0;
position: relative;
width: 30px;
z-index: 2;
}
.sheet-chiprow .sheet-buttons input[type=radio] {
top: 20px;
}
.sheet-big input[type=radio] + span {
position: relative;
left: -15px;
@@ -408,13 +414,13 @@ textarea {
.sheet-location input[type=radio]:hover + span,
.sheet-location input[type=radio]:checked + span {
color: white;
font-size: 1rem;
font-size: 1.5em;
text-shadow: 1px 0 0 #000, 0 -1px 0 #000, 0 1px 0 #000, -1px 0 0 #000;
}
.sheet-buttons input[type=radio] + span {
font-weight: bolder;
font-size: 1rem;
font-size: 1.2em;
}
.sheet-buttonsred input[type=radio]:hover + span,
@@ -461,6 +467,31 @@ textarea {
left: 5px;
}
.sheet-weapon-headers .sheet-wea-label {
width: 13%;
}
.sheet-weapon-headers .sheet-wea-label:nth-of-type(3) {
width: 4%;
}
.sheet-weapon-headers .sheet-wea-label:nth-of-type(4) {
width: 5%;
}
.sheet-weapon .sheet-large {
text-align: left;
width: 5%;
}
.sheet-weapon .sheet-large input[type=text] {
text-align: center;
}
.sheet-weapon .sheet-xxxlarge input[type=text] {
width: 39%;
}
.sheet-xxxlarge .sheet-xxhuge {
padding-bottom: 5px;
}
@@ -470,12 +501,23 @@ textarea {
float: right;
}
.sheet-location input[type=radio] {
height: 25px;
margin-right: -27px;
}
.sheet-location input[type=radio]:last-child,
.sheet-location input[type=radio]:last-child + span {
margin-left: 10px;
}
.sheet-location label {
display: inline;
margin-right: -10px;
}
.sheet-location span {
padding: 5px;
font-weight: bolder;
}
@@ -486,4 +528,30 @@ textarea {
.sheet-rolltemplate-default table {
border-color: #6d4b3e;
}
.sheet-xxxlarge .repcontrol .repcontrol_edit {
position: relative;
left: 30px;
width: 40%;
top: 25px;
z-index: 3;
}
.sheet-xxxlarge .repcontrol .repcontrol_edit:after {
position: relative;
left: -35px;
}
.sheet-xxxlarge .repcontrol .repcontrol_add {
position: relative;
width: 40%;
}
.sheet-xxxlarge .repcontrol .repcontrol_add:after {
}
.sheet-arcane-row .sheet-item {
vertical-align: top;
}
+279 -415
View File
@@ -119,25 +119,25 @@
<div class="sheet-col">
<div class="sheet-item">
Pace:
<input type="number" name="attr_pace">
<input type="number" name="attr_pace" placeholder="0">
</div>
</div>
<div class="sheet-col">
<div class="sheet-item">
Size:
<input type="number" name="attr_size">
<input type="number" name="attr_size" placeholder="0">
</div>
</div>
<div class="sheet-col">
<div class="sheet-item">
Max Wind:
<input type="number" name="attr_maxwind">
<input type="number" name="attr_maxwind" placeholder="0">
</div>
</div>
<div class="sheet-col">
<div class="sheet-item">
Grit:
<input type="number" name="attr_grit">
<input type="number" name="attr_grit" placeholder="0">
</div>
</div>
</div>
@@ -145,48 +145,74 @@
<div class="sheet-row sheet-h1">
<div class="sheet-center">Fate Chips</div>
</div>
<div class="sheet-row chiprow">
<div class="sheet-row sheet-h3">
<div class="sheet-center">White Chips</div>
<div class="sheet-2colrow">
<div class="sheet-col">
<div class="sheet-row sheet-h3">
<div class="sheet-center">White Chips</div>
</div>
<div class="sheet-row chiprow">
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="0" checked="checked"><span>0</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="1"><span>1</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="2"><span>2</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="3"><span>3</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="4"><span>4</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="5"><span>5</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="6"><span>6</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="7"><span>7</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="8"><span>8</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="9"><span>9</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="10"><span>10</span>
</div>
</div>
</div>
<div class="sheet-row chiprow">
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="0" checked="checked"><span>0</span>
<div class="sheet-col">
<div class="sheet-row sheet-h3 chiprow">
<div class="sheet-center">Legend Chips</div>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="1"><span>1</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="2"><span>2</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="3"><span>3</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="4"><span>4</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="5"><span>5</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="6"><span>6</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="7"><span>7</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="8"><span>8</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="9"><span>9</span>
</div>
<div class="sheet-item buttons">
<input type="radio" name="attr_fatew" value="10"><span>10</span>
<div class="sheet-row buttons chiprow">
<div class="sheet-item buttons buttonsleg">
<input type="radio" name="attr_fatel" value="0"><span>0</span>
</div>
<div class="sheet-item buttons buttonsleg">
<input type="radio" name="attr_fatel" value="1"><span>1</span>
</div>
<div class="sheet-item buttons buttonsleg">
<input type="radio" name="attr_fatel" value="2"><span>2</span>
</div>
<div class="sheet-item buttons buttonsleg">
<input type="radio" name="attr_fatel" value="3"><span>3</span>
</div>
<div class="sheet-item buttons buttonsleg">
<input type="radio" name="attr_fatel" value="4"><span>4</span>
</div>
<div class="sheet-item buttons buttonsleg">
<input type="radio" name="attr_fatel" value="5"><span>5</span>
</div>
</div>
</div>
</div>
<br>
<div class="sheet-3colrow">
<div class="sheet-2colrow">
<div class="sheet-col">
<div class="sheet-row sheet-h3">
<div class="sheet-center">Red Chips</div>
@@ -210,6 +236,21 @@
<div class="sheet-item buttons buttonsred">
<input type="radio" name="attr_fater" value="5"><span>5</span>
</div>
<div class="sheet-item buttons buttonsred">
<input type="radio" name="attr_fater" value="6"><span>6</span>
</div>
<div class="sheet-item buttons buttonsred">
<input type="radio" name="attr_fater" value="7"><span>7</span>
</div>
<div class="sheet-item buttons buttonsred">
<input type="radio" name="attr_fater" value="8"><span>8</span>
</div>
<div class="sheet-item buttons buttonsred">
<input type="radio" name="attr_fater" value="9"><span>9</span>
</div>
<div class="sheet-item buttons buttonsred">
<input type="radio" name="attr_fater" value="10"><span>10</span>
</div>
</div>
</div>
<div class="sheet-col">
@@ -232,28 +273,28 @@
<div class="sheet-item buttons buttonsblue">
<input type="radio" name="attr_fateb" value="4"><span>4</span>
</div>
</div>
</div>
<div class="sheet-col">
<div class="sheet-row sheet-h3 chiprow">
<div class="sheet-center">Legend Chips</div>
</div>
<div class="sheet-row buttons chiprow">
<div class="sheet-item buttons buttonsleg">
<input type="radio" name="attr_fatel" value="0"><span>0</span>
<div class="sheet-item buttons buttonsblue">
<input type="radio" name="attr_fateb" value="5"><span>5</span>
</div>
<div class="sheet-item buttons buttonsleg">
<input type="radio" name="attr_fatel" value="1"><span>1</span>
<div class="sheet-item buttons buttonsblue">
<input type="radio" name="attr_fateb" value="6"><span>6</span>
</div>
<div class="sheet-item buttons buttonsleg">
<input type="radio" name="attr_fatel" value="2"><span>2</span>
<div class="sheet-item buttons buttonsblue">
<input type="radio" name="attr_fateb" value="7"><span>7</span>
</div>
<div class="sheet-item buttons buttonsblue">
<input type="radio" name="attr_fateb" value="8"><span>8</span>
</div>
<div class="sheet-item buttons buttonsblue">
<input type="radio" name="attr_fateb" value="9"><span>9</span>
</div>
<div class="sheet-item buttons buttonsblue">
<input type="radio" name="attr_fateb" value="10"><span>10</span>
</div>
</div>
</div>
</div>
<br>
</div>
<br>
<div class="sheet-borderdiv">
<div class="sheet-row sheet-h1">
<div class="sheet-center">Common Rolls</div>
@@ -262,7 +303,7 @@
<div class="sheet-col">
<div class="sheet-item sheet-xxxlarge"><label><b>Guts + Grit</b></label></div>
<div class="sheet-item sheet-small">
<button type="roll" name="roll_GutsGrit" value="@{gmtoggle}&{template:simple} {{rollname=Guts+Grit}} {{dice=[[@{gutslvl}@{spidtype}!!k1+@{gutsmod}+@{grit}]]}}"></button>
<button type="roll" name="roll_GutsGrit" value="@{gmtoggle}&{template:simple} {{rollname=Guts+Grit}} {{dice=[[@{gutslvl}@{spidtype}!!k1@{gutsmod}+@{grit}]]}}"></button>
</div>
</div>
</div>
@@ -1375,6 +1416,186 @@
</div>
<br>
<div class="sheet-borderdiv">
<div class="sheet-row sheet-h1">
<div class="sheet-center">Shootin Irons &amp; Such</div>
</div>
<div class="sheet-row weapon-headers">
<div class="sheet-item sheet-xlarge"><label><b>Weapon</b></label></div>
<div class="sheet-item sheet-large wea-label"><label><b>Shots / Max</b></label></div>
<div class="sheet-item sheet-large wea-label"><label><b>RoF</b></label></div>
<div class="sheet-item sheet-large wea-label"><label><b>Range</b></label></div>
<div class="sheet-item sheet-large wea-label"><label><b>Damage</b></label></div>
<div class="sheet-item sheet-xlarge location"><label><b>Location Toggle</b></label>
<input type="radio" name="attr_locationtoggle" value="{{location=[[1d20]]}}" /><span>On</span>
<input type="radio" name="attr_locationtoggle" value="" checked="checked" /><span>Off</span>
</div>
</div>
<div class="sheet-row weapon" style="vertical-align: top;">
<fieldset class="repeating_range">
<div class="sheet-item sheet-xlarge"><input type="text" name="attr_name" placeholder="Colt Army"></div>
<div class="sheet-item sheet-large"><input type="text" name="attr_shots" placeholder="6"></div> /
<div class="sheet-item sheet-large"><input type="text" name="attr_shots_max" placeholder="6"></div>
<div class="sheet-item sheet-large"><input type="text" name="attr_rof" placeholder="1"></div>
<div class="sheet-item sheet-large"><input type="text" name="attr_range" placeholder="10"></div>
<div class="sheet-item sheet-xxxlarge">
<input type="text" name="attr_damage" placeholder="example 3d6">
<button type="roll" name="roll_mien" value="@{gmtoggle}&{template:simple} {{rollname=@{name}}} {{damage=[[@{damage}!!]]}} @{locationtoggle}"></button>
<input type="text" name="attr_damage2" placeholder="example 3d6">
<button type="roll" name="roll_mien" value="@{gmtoggle}&{template:simple} {{rollname=@{name}}} {{damage=[[@{damage2}!!]]}} @{locationtoggle}"></button>
</div>
<hr>
</fieldset>
</div>
</div>
<br>
<div class="sheet-borderdiv">
<div class="sheet-row sheet-h1">
<div class="sheet-center">Hand-To-Hand Weapons</div>
</div>
<div class="sheet-row">
<div class="sheet-item sheet-xlarge"><label><b>Weapon</b></label></div>
<div class="sheet-item sheet-large"><label><b>Defense</b></label></div>
<div class="sheet-item sheet-large"><label><b>Speed</b></label></div>
<div class="sheet-item sheet-large"><label><b>Damage</b></label></div>
<div class="sheet-item sheet-xlarge location"><label><b>Location Toggle</b></label>
<input type="radio" name="attr_meleelocationtoggle" value="{{location=[[1d20]]}}" /><span>On</span>
<input type="radio" name="attr_meleelocationtoggle" value="" checked="checked" /><span>Off</span>
</div>
</div>
<div class="sheet-row" style="vertical-align: top;">
<fieldset class="repeating_melee">
<div class="sheet-item sheet-xlarge"><input type="text" name="attr_name" value="" placeholder="Fist"></div>
<div class="sheet-item sheet-large"><input type="text" name="attr_defense" value="" placeholder="-"></div>
<div class="sheet-item sheet-large"><input type="text" name="attr_speed" value="" placeholder=""></div>
<div class="sheet-item sheet-xxxlarge weapon-damage">
<input type="text" name="attr_damage" style="width: 89%" value="" placeholder="(Add 0 to roll only STR)">
<button type="roll" name="roll_mien" value="@{gmtoggle}&{template:simple} {{rollname=@{name}}} {{strength=[[@{strlvl}@{strdtype}!!k1]]}} {{meleedamage=[[@{damage}!!]]}} @{meleelocationtoggle}"></button>
</div>
<hr>
</fieldset>
</div>
</div>
</div><!-- Combat Stuff Tab -->
<!-- Arcane Ablities Tab -->
<div class="sheet-section-arcane">
<div class="sheet-row sheet-h1">
<div class="sheet-center">Arcane Abilities</div>
</div>
<div class="sheet-row">
<div class="sheet-item sheet-large"><label><b>Hexslingin'</b></label></div>
<div class="sheet-item sheet-small"><input type="number" min="0" name="attr_hexslinginlvl"></div>
<div class="sheet-item sheet-large"><b>Ritual</b></div>
<div class="sheet-item sheet-small">
<input type="number" name="attr_rituallvl">
</div>
<div class="sheet-item sheet-large"><b>Rituals</b></div>
<div class="sheet-item sheet-huge">
<input type="text" name="attr_rituals">
</div>
</div>
<br>
<div class="sheet-row">
<div class="sheet-item sheet-large"><label><b>Power</b></label></div>
<div class="sheet-item sheet-small"><label><b>Speed</b></label></div>
<div class="sheet-item sheet-large"><label><b>Duration</b></label></div>
<div class="sheet-item sheet-small"><label><b>Range</b></label></div>
<div class="sheet-item sheet-small"><label><b>Trait</b></label></div>
<div class="sheet-item sheet-small"><label><b>TN</b></label></div>
<div class="sheet-item sheet-small"><label><b>Trait</b></label></div>
<div class="sheet-item sheet-large"><label><b>Notes</b></label></div>
<fieldset class="repeating_spells" style="display: none;">
<div class="arcane-row">
<div class="sheet-item sheet-large"><input type="text" name="attr_spellname" placeholder="Shadow Man"></div>
<div class="sheet-item sheet-small"><input type="number" name="attr_spellspeed" placeholder="2"></div>
<div class="sheet-item sheet-large"><input type="text" name="attr_spelldur" placeholder="Concentration"></div>
<div class="sheet-item sheet-small"><input type="text" name="attr_spellran" placeholder="Self"></div>
<div class="sheet-item sheet-small"><input type="text" name="attr_spelltrait" placeholder="Smarts">
</div>
<div class="sheet-item sheet-small"><input type="text" name="attr_spelltn" placeholder="Target #"></div>>
<div class="sheet-item sheet-huge" style="width: 30%;">
<textarea name="attr_spellnotes" class="sheet-shorttextarea" placeholder="Notes"></textarea>
</div>
</div>
</fieldset>
<div class="repcontainer" data-groupname="repeating_spells"></div>
</div>
</div> <!-- Arcane Ablities Tab -->
<!-- Misc Tab -->
<div class="sheet-section-misc">
<div class="sheet-row">
<div class="sheet-2colrow">
<div class="sheet-col">
<div class="sheet-row">
<h2>Edges</h2>
</div>
<fieldset class="repeating_edges">
<div class="sheet-row sheet-textarea">
<input type="text" name="attr_edgename" placeholder="Edge name"><br>
<textarea name="attr_edgesdesc" class="sheet-shorttextarea"></textarea>
</div>
</fieldset>
</div>
<div class="sheet-col">
<div class="sheet-row">
<h2>Hindrances</h2>
</div>
<fieldset class="repeating_hinds">
<div class="sheet-row sheet-textarea">
<input type="text" name="attr_hindname" placeholder="Hindrance name"><br>
<textarea name="attr_hinddesc" class="sheet-shorttextarea"></textarea>
</div>
</fieldset>
</div>
</div>
<div class="sheet-2colrow">
<div class="sheet-col">
<div class="sheet-row">
<h2>Equipment</h2>
</div>
<div class="sheet-row sheet-textarea">
<textarea name="attr_equipment" class="sheet-textarea" placeholder="Equipment"></textarea>
</div>
</div>
<div class="sheet-col">
<div class="sheet-row">
<h2>Money</h2>
</div>
<div class="sheet-row sheet-textarea">
<textarea name="attr_money" class="sheet-textarea" placeholder="Money"></textarea>
</div>
</div>
</div>
<div class="sheet-2colrow">
<div class="sheet-col">
<div class="sheet-row">
<h2>Your Worst Nightmare</h2>
</div>
<div class="sheet-row sheet-textarea">
<textarea name="attr_nightmare" class="sheet-textarea" placeholder="Elm Street"></textarea>
</div>
</div>
<div class="sheet-col">
<div class="sheet-row">
<h2>Character Notes</h2>
</div>
<div class="sheet-row sheet-textarea">
<textarea name="attr_notes" class="sheet-textarea" placeholder="Notes"></textarea>
</div>
</div>
</div>
</div>
</div><!-- Misc Tab -->
<!-- Obsolete Data Tab -->
<div class="sheet-section-obsolete">
<div style="border: 1px solid black">
<div class="sheet-alert sheet-alert-warning">
<div class="sheet-row" style="margin-bottom: 15px;">
This sheet has been recently updated. This section was broke and has been made obsolete. Data on this tab will be removed over time.
</div>
</div>
<div class="sheet-borderdiv">
<div class="sheet-row sheet-h1">
<div class="sheet-center">Shootin Irons &amp; Such</div>
</div>
@@ -1558,362 +1779,5 @@
</div>
</div>
<!-- Combat Stuff Tab -->
<!-- Arcane Ablities Tab -->
<div class="sheet-section-arcane">
<div class="sheet-row sheet-h1">
<div class="sheet-center">Arcane Abilities</div>
</div>
<div class="sheet-row">
<div class="sheet-item sheet-large"><label><b>Hexslingin'</b></label></div>
<div class="sheet-item sheet-small"><input type="number" name="attr_hexslinginlvl"></div>
<div class="sheet-item sheet-large"><b>Ritual</b></div>
<div class="sheet-item sheet-small">
<input type="number" name="attr_rituallvl">
</div>
<div class="sheet-item sheet-large"><b>Rituals</b></div>
<div class="sheet-item sheet-huge">
<input type="text" name="attr_rituals">
</div>
</div>
<br>
<div class="sheet-row">
<div class="sheet-item sheet-large"><label><b>Power</b></label></div>
<div class="sheet-item sheet-small"><label><b>Speed</b></label></div>
<div class="sheet-item sheet-large"><label><b>Duration</b></label></div>
<div class="sheet-item sheet-small"><label><b>Range</b></label></div>
<div class="sheet-item sheet-small"><label><b>Trait</b></label></div>
<div class="sheet-item sheet-small"><label><b>TN</b></label></div>
<div class="sheet-item sheet-large"><label><b>Notes</b></label></div>
<fieldset class="repeating_spells" style="display: none;">
<div class="sheet-item sheet-large"><input type="text" name="attr_spellname" placeholder="Shadow Man"></div>
<div class="sheet-item sheet-small"><input type="number" name="attr_spellspeed" placeholder="2"></div>
<div class="sheet-item sheet-large"><input type="text" name="attr_spelldur" placeholder="Concentration"></div>
<div class="sheet-item sheet-small"><input type="text" name="attr_spellran" placeholder="Self"></div>
<div class="sheet-item sheet-small"><input type="text" name="attr_spelltrait" placeholder="Smarts"></div>
<div class="sheet-item sheet-small"><input type="text" name="attr_spelltn" placeholder="Target Number"></div>
<div class="sheet-item sheet-huge"><textarea name="attr_spellnotes" class="sheet-shorttextarea" placeholder="Notes"></textarea></div>
</fieldset>
<div class="repcontainer" data-groupname="repeating_spells"></div>
</div>
</div>
<!-- Arcane Ablities Tab -->
<!-- Misc Tab -->
<div class="sheet-section-misc">
<div class="sheet-row">
<div class="sheet-2colrow">
<div class="sheet-col">
<div class="sheet-row">
<h2>Edges</h2>
</div>
<fieldset class="repeating_edges">
<div class="sheet-row sheet-textarea">
<input type="text" name="attr_edgename" placeholder="Edge name"><br>
<textarea name="attr_edgesdesc" class="sheet-shorttextarea"></textarea>
</div>
</fieldset>
</div>
<div class="sheet-col">
<div class="sheet-row">
<h2>Hindrances</h2>
</div>
<fieldset class="repeating_hinds">
<div class="sheet-row sheet-textarea">
<input type="text" name="attr_hindname" placeholder="Hindrance name"><br>
<textarea name="attr_hinddesc" class="sheet-shorttextarea"></textarea>
</div>
</fieldset>
</div>
</div>
<div class="sheet-2colrow">
<div class="sheet-col">
<div class="sheet-row">
<h2>Equipment</h2>
</div>
<div class="sheet-row sheet-textarea">
<textarea name="attr_equipment" class="sheet-textarea" placeholder="Equipment"></textarea>
</div>
</div>
<div class="sheet-col">
<div class="sheet-row">
<h2>Money</h2>
</div>
<div class="sheet-row sheet-textarea">
<textarea name="attr_money" class="sheet-textarea" placeholder="Money"></textarea>
</div>
</div>
</div>
<div class="sheet-2colrow">
<div class="sheet-col">
<div class="sheet-row">
<h2>Your Worst Nightmare</h2>
</div>
<div class="sheet-row sheet-textarea">
<textarea name="attr_nightmare" class="sheet-textarea" placeholder="Elm Street"></textarea>
</div>
</div>
<div class="sheet-col">
<div class="sheet-row">
<h2>Character Notes</h2>
</div>
<div class="sheet-row sheet-textarea">
<textarea name="attr_notes" class="sheet-textarea" placeholder="Notes"></textarea>
</div>
</div>
</div>
</div>
</div>
<!-- Misc Tab -->
<!-- Obsolete Data Tab -->
<div class="sheet-section-obsolete">
<div class="sheet-row">
<div class="sheet-alert sheet-alert-warning">
<div class="sheet-row" style="margin-bottom: 15px;">
This sheet has been recently updated. Some fields have been obsoleted. Please review and ensure your information is correct.<br />
Data on this tab will be removed over time. It is obsolete fields from the orginal Kevin Justus sheet design.
</div>
</div>
</div>
<div class="sheet-2colrow">
<div class="sheet-col">
<div class="sheet-h2">Shootin Irons &amp; Such</div>
<div>
<table>
<tbody>
<tr>
<th><p><b>Weapon</b></p></th>
<th><p><b>Shots</b></p></th>
<th><p><b>RoF</b></p></th>
<th><p><b>Range</b></p></th>
<th><p><b>Damage</b></p></th>
</tr>
<tr>
<td><input type="text" name="attr_weapon1name" style="width: 100px"></td>
<td><input type="number" name="attr_weapon1shots" style="width: 50px"></td>
<td><input type="number" name="attr_weapon1rof" style="width: 40px"></td>
<td><input type="number" name="attr_weapon1range" style="width: 50px"></td>
<td><input type="text" name="attr_weapon1damage" style="width: 80px"></td>
</tr><tr>
<td><input type="text" name="attr_weapon2name" style="width: 100px"></td>
<td><input type="number" name="attr_weapon2shots" style="width: 50px"></td>
<td><input type="number" name="attr_weapon2rof" style="width: 40px"></td>
<td><input type="number" name="attr_weapon2range" style="width: 50px"></td>
<td><input type="text" name="attr_weapon2damage" style="width: 80px"></td>
</tr>
<tr>
<td><input type="text" name="attr_weapon3name" style="width: 100px"></td>
<td><input type="number" name="attr_weapon3shots" style="width: 50px"></td>
<td><input type="number" name="attr_weapon3rof" style="width: 40px"></td>
<td><input type="number" name="attr_weapon3range" style="width: 50px"></td>
<td><input type="text" name="attr_weapon3damage" style="width: 80px"></td>
</tr>
</tbody>
</table>
</div>
<div class="sheet-h2">Hand-To-Hand Weapons</div>
<div>
<table>
<tbody>
<tr>
<th><p><b>Weapon</b></p></th>
<th><p><b>Defense</b></p></th>
<th><p><b>Speed</b></p></th>
<th><p><b>Damage</b></p></th>
</tr>
<tr>
<td>
<input type="text" name="attr_weapon4name" value="Fist" style="width: 100px" disabled="" data-formula="Fist">
</td>
<td>
<input type="number" name="attr_weapon4def" value="0" style="width: 50px" disabled="" data-formula="0">
</td>
<td>
<input type="number" name="attr_weapon4speed" value="1" style="width: 40px" disabled="" data-formula="1">
</td>
<td>
<input type="text" name="attr_weapon4damage" style="width: 100px">
</td>
</tr>
<tr>
<td>
<input type="text" name="attr_weapon5name" style="width: 100px">
</td>
<td>
<input type="number" name="attr_weapon5def" style="width: 50px">
</td>
<td>
<input type="number" name="attr_weapon5speed" style="width: 40px">
</td>
<td>
<input type="text" name="attr_weapon5damage" style="width: 100px">
</td>
</tr>
<tr>
<td>
<input type="text" name="attr_weapon6name" style="width: 100px">
</td>
<td>
<input type="number" name="attr_weapon6def" style="width: 50px">
</td>
<td>
<input type="number" name="attr_weapon6speed" style="width: 40px">
</td>
<td>
<input type="text" name="attr_weapon6damage" style="width: 100px">
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="sheet-col">
<div class="sheet-2colrow">
<div class="sheet-col">
<div class="sheet-row sheet-h3">Ammo One</div>
<div class="sheet-row"><div class="sheet-row">
<div class="sheet-item sheet-ammo1"><b>0</b></div>
<div class="sheet-item sheet-ammo1"><b>1</b></div>
<div class="sheet-item sheet-ammo1"><b>2</b></div>
<div class="sheet-item sheet-ammo1"><b>3</b></div>
<div class="sheet-item sheet-ammo1"><b>4</b></div>
<div class="sheet-item sheet-ammo1"><b>5</b></div>
<div class="sheet-item sheet-ammo1"><b>6</b></div>
</div>
<div class="sheet-row">
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo1" value="0">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo1" value="1">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo1" value="2">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo1" value="3">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo1" value="4">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo1" value="5">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo1" value="6"></div></div>
</div></div>
<div class="sheet-col">
<div class="sheet-row sheet-h3">Ammo Two</div>
<div class="sheet-row">
<div class="sheet-row">
<div class="sheet-item sheet-ammo1"><b>0</b></div>
<div class="sheet-item sheet-ammo1"><b>1</b></div>
<div class="sheet-item sheet-ammo1"><b>2</b></div>
<div class="sheet-item sheet-ammo1"><b>3</b></div>
<div class="sheet-item sheet-ammo1"><b>4</b></div>
<div class="sheet-item sheet-ammo1"><b>5</b></div>
<div class="sheet-item sheet-ammo1"><b>6</b></div>
</div>
<div class="sheet-row">
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo2" value="0">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo2" value="1">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo2" value="2">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo2" value="3">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo2" value="4">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo2" value="5">
</div>
<div class="sheet-item sheet-ammo1">
<input type="radio" name="attr_ammo2" value="6"></div></div>
</div></div></div>
<div class="sheet-row"><div class="sheet-row"><div class="sheet-h3">Ammo Three</div>
</div>
<div class="sheet-row"><div class="sheet-row"><div class="sheet-row">
<div class="sheet-item sheet-ammo3"><b>0</b></div>
<div class="sheet-item sheet-ammo3"><b>1</b></div>
<div class="sheet-item sheet-ammo3"><b>2</b></div>
<div class="sheet-item sheet-ammo3"><b>3</b></div>
<div class="sheet-item sheet-ammo3"><b>4</b></div>
<div class="sheet-item sheet-ammo3"><b>5</b></div>
<div class="sheet-item sheet-ammo3"><b>6</b></div>
<div class="sheet-item sheet-ammo3"><b>7</b></div>
<div class="sheet-item sheet-ammo3"><b>8</b></div>
<div class="sheet-item sheet-ammo3"><b>9</b></div>
<div class="sheet-item sheet-ammo3"><b>10</b></div>
<div class="sheet-item sheet-ammo3"><b>11</b></div>
<div class="sheet-item sheet-ammo3"><b>12</b></div>
<div class="sheet-item sheet-ammo3"><b>13</b></div>
<div class="sheet-item sheet-ammo3"><b>14</b></div>
<div class="sheet-item sheet-ammo3"><b>15</b></div>
</div>
<div class="sheet-row">
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="0">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="1">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="2">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="3">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="4">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="5">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="6">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="7">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="8">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="9">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="10">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="11">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="12">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="13">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="14">
</div>
<div class="sheet-item sheet-ammo3">
<input type="radio" name="attr_ammo3" value="15">
</div>
</div>
</div></div>
</div>
</div></div>
</div>
<!-- Obsolete Data Tab -->
</div>
</div><!-- Sheet wrapper-->
+3 -3
View File
@@ -8,7 +8,7 @@
"tags:": "Eigenschaften: ",
"tags": "Eigenschaften",
"attack-name": "Name des Angriffs",
"1d8+2": "1d8+2",
"1d8+2": "1W8+2",
"zero-piercing": "Durchdringung 0",
"hp-u": "TP",
"attack-reach": "Reichweite",
@@ -59,7 +59,7 @@
"moves-u": "SPIELZÜGE",
"move-name": "Spielzug-Name:",
"move-trigger": "Auslöser:",
"roll1d61d8formoves": "Roll 1d6+1d8 for Moves",
"roll1d61d8formoves": "Würfel 1W6+1W8 für bewegen",
"move-roll": "Würfelwurf:",
"ask-u": "MANUELL",
"move-success": "Voller Erfolg (10+):",
@@ -70,7 +70,7 @@
"gear-u": "AUSRÜSTUNG",
"load-u": "TRAGKR.",
"gear-name": "Name des Gegenstands:",
"gear-tags": "Gear Tags:",
"gear-tags": "Ausrüstungskennzeichen:",
"value:": "Wert:",
"qty:": "Anz:",
"weight:": "Gewicht:",
+1
View File
@@ -0,0 +1 @@
node_modules
+51
View File
@@ -0,0 +1,51 @@
module.exports = function(grunt) {
grunt.initConfig({
less: {
default: {
files: {
'sheet.css': 'less/index.less'
}
}
},
pug: {
default: {
files: {
'sheet.html': 'pug/index.pug'
},
options: {
pretty: true
}
}
},
'string-replace': {
default: {
files: {
'sheet.css': 'sheet.css'
},
options: {
replacements: [
{
pattern: /,\n/g,
replacement: ', '
},
{
pattern: /\.((?!charsheet)[^ .\n]+)(?=.+\{)/g,
replacement: function(match, p1) {
if(p1 === 'itemcontrol' || p1 === 'repcontrol')
return '.' + p1;
else
return '.sheet-' + p1;
}
}
]
}
}
}
});
grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-contrib-pug');
grunt.loadNpmTasks('grunt-string-replace');
grunt.registerTask('default', ['less', 'pug', 'string-replace']);
};
+11
View File
@@ -0,0 +1,11 @@
# Engine Heart
This is a character sheet for the Kickstarter-funded system Engine Heart, a
post-apocalyptic game where humans left Earth. Now the little appliance robots
that were left behind fend for themselves, doing the best they can.
Engine Heart official web site: http://www.viralgamespublishing.com/2.html
Icon graphics used with permission from Viral Games.
Please enjoy!
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

+291
View File
@@ -0,0 +1,291 @@
/**
* Forces an update on a list of numerical fields, also making sure that
* any undefined fields are set to 0.
* @param {string[]} attrs
* @param {function} cb
*/
function forceUpdate(attrs, cb) {
parseAttrs(attrs, values => {
let tempValues = {};
_.each(attrs, attr => {
tempValues[attr] = -9999;
});
setAttrs(tempValues);
setAttrs(values);
});
}
function onChange(attrs, cb) {
attrs = _.map(attrs, attr => {
return 'change:' + attr;
}).join(' ');
on(attrs, cb);
}
function onChangeParse(attrs, cb) {
onChange(attrs, () => {
parseAttrs(attrs, cb);
});
}
/**
* Gets the specified attributes and parses them as an integer or 0.
*/
function parseAttrs(attrs, cb) {
getAttrs(attrs, function(values) {
_.each(attrs, function(attr) {
if(_.isUndefined(values[attr]))
values[attr] = 0;
else if(!isNaN(values[attr]))
values[attr] = parseInt(values[attr]);
});
cb(values);
});
}
/**
* Updates the roll calculation for an attribute.
* @param {string} attr
*/
function updateAttribute(attr) {
parseAttrs([attr, attr + '_mod'], values => {
let rating = parseInt(values[attr]);
let mod = parseInt(values[attr + '_mod']) || 0;
let total = rating + mod;
let calc = `(${total})d10>?{Target Number (TN)}`;
setAttrs({
[attr + '_calc']: calc,
[attr + '_total']: total
});
});
}
function updateRcom() {
updateAttribute('rcom');
}
function updateHcom() {
updateAttribute('hcom');
}
function updateDcon() {
updateAttribute('dcon');
}
function updateMcon() {
updateAttribute('mcon');
}
function updateDex() {
updateAttribute('dex');
}
function updateMobil() {
updateAttribute('mobil');
}
function updatePer() {
updateAttribute('per');
}
function updateRef() {
updateAttribute('ref');
}
function updateStr() {
updateAttribute('str');
}
function updateDur() {
updateAttribute('dur');
}
function updateBuf() {
updateAttribute('buf');
}
function updateSize() {
updateAttribute('size');
}
function updatePow() {
updateAttribute('pow');
}
function updateAllAttributes() {
updateRcom();
updateHcom();
updateDcon();
updateMcon();
updateDex();
updateMobil();
updatePer();
updateRef();
updateStr();
updateDur();
updateBuf();
updateSize();
updatePow();
}
function updateIntPool() {
parseAttrs(['dex_total', 'ref_total', 'intPool_mod'], values => {
let dex_total = parseInt(values['dex_total']);
let ref_total = parseInt(values['ref_total']);
let intPool_mod = parseInt(values['intPool_mod']) || 0;
let intPool = dex_total + ref_total;
let intPool_total = intPool + intPool_mod;
let intPool_calc = `(${intPool_total})d10>?{Target Number (TN)}`;
setAttrs({ intPool, intPool_calc, intPool_total });
});
}
function updateTn2bStruck() {
parseAttrs(['mobil_total', 'ref_total', 'tn2bStruck_mod'], values => {
let mobil_total = parseInt(values['mobil_total']);
let ref_total = parseInt(values['ref_total']);
let tn2bStruck_mod = parseInt(values['tn2bStruck_mod']) || 0;
let tn2bStruck = mobil_total + ref_total;
let tn2bStruck_total = tn2bStruck + tn2bStruck_mod;
setAttrs({ tn2bStruck, tn2bStruck_total });
});
}
function updateDmgFromStrike() {
parseAttrs(['str_total', 'dmgFromStrike_mod'], values => {
let str_total = parseInt(values['str_total']);
let dmgFromStrike_mod = parseInt(values['dmgFromStrike_mod']) || 0;
let dmgFromStrike = Math.floor(str_total/2);
let dmgFromStrike_total = dmgFromStrike + dmgFromStrike_mod;
setAttrs({ dmgFromStrike, dmgFromStrike_total });
});
}
function updateInitiative() {
parseAttrs(['ref_total', 'initiative_mod'], values => {
let ref_total = parseInt(values['ref_total']);
let initiative_mod = parseInt(values['initiative_mod']) || 0;
let initiative = ref_total;
let initiative_total = initiative + initiative_mod;
let initiative_calc = `1d10 + ${initiative_total}`;
setAttrs({ initiative, initiative_total, initiative_calc });
});
}
function updateSpeed() {
parseAttrs(['mobil_total', 'ref_total', 'speed_mod'], values => {
let mobil_total = parseInt(values['mobil_total']);
let ref_total = parseInt(values['ref_total']);
let speed_mod = parseInt(values['speed_mod']) || 0;
let speed = mobil_total + ref_total;
let speed_total = speed + speed_mod;
setAttrs({ speed, speed_total });
});
}
function updateOsThreshold() {
parseAttrs(['dcon_total', 'buf_total'], values => {
let dcon_total = parseInt(values['dcon_total']);
let buf_total = parseInt(values['buf_total']);
let osThreshold_max = dcon_total + buf_total;
setAttrs({ osThreshold_max });
});
}
function updateDmgThreshold() {
parseAttrs(['dur_total', 'size_total'], values => {
let dur_total = parseInt(values['dur_total']);
let size_total = parseInt(values['size_total']);
let dmgThreshold_max = dur_total + size_total;
setAttrs({ dmgThreshold_max });
});
}
// Change events
onChange(['rcom', 'rcom_mod'], () => {
updateRcom();
});
onChange(['hcom', 'hcom_mod'], () => {
updateHcom();
});
onChange(['dcon', 'dcon_mod'], () => {
updateDcon();
});
onChange(['mcon', 'mcon_mod'], () => {
updateMcon();
});
onChange(['dex', 'dex_mod'], () => {
updateDex();
});
onChange(['mobil', 'mobil_mod'], () => {
updateMobil();
});
onChange(['per', 'per_mod'], () => {
updatePer();
});
onChange(['ref', 'ref_mod'], () => {
updateRef();
});
onChange(['str', 'str_mod'], () => {
updateStr();
});
onChange(['dur', 'dur_mod'], () => {
updateDur();
});
onChange(['buf', 'buf_mod'], () => {
updateBuf();
});
onChange(['size', 'size_mod'], () => {
updateSize();
});
onChange(['pow', 'pow_mod'], () => {
updatePow();
});
onChange(['dex_total', 'ref_total', 'intPool_mod'], () => {
updateIntPool();
});
onChange(['mobil_total', 'ref_total', 'tn2bStruck_mod'], () => {
updateTn2bStruck();
});
onChange(['str_total', 'dmgFromStrike_mod'], () => {
updateDmgFromStrike();
});
onChange(['ref_total', 'initiative_mod'], () => {
updateInitiative();
});
onChange(['mobil_total', 'ref_total', 'speed_mod'], () => {
updateSpeed();
});
onChange(['dcon_total', 'buf_total'], () => {
updateOsThreshold();
});
onChange(['dur_total', 'size_total'], () => {
updateDmgThreshold();
});
// Init
on('sheet:opened', () => {
setAttrs({
character_sheet: 'EngineHeart v1.0.0'
});
updateAllAttributes();
});
+255
View File
@@ -0,0 +1,255 @@
input {
border: none;
box-shadow: none;
&[type=number]::-webkit-inner-spin-button, &[type=number]::-webkit-outer-spin-button {
-webkit-appearance: none;
margin: 0;
}
}
select {
box-shadow: none;
height: auto;
line-height: 18px;
margin-bottom: 0;
-moz-appearance: none;
-webkit-appearance: none;
}
textarea {
background: linear-gradient(to bottom, transparent, transparent 17px, #000);
background-attachment: local;
background-size: 1px 18px;
border: none;
box-shadow: none;
padding: 0;
resize: none;
}
.bubble {
display: inline-block;
height: 50px;
position: relative;
width: 48px;
label {
bottom: -16px;
font-size: 10px;
left: 50%;
padding: 0;
position: absolute;
transform: translateX(-50%);
width: auto;
}
.inner {
border: solid 3px black;
border-radius: 32px;
height: 32px;
left: 50%;
overflow: hidden;
position: absolute;
text-align: center;
transform: translateX(-50%);
width: 32px;
input {
background: transparent;
line-height: 32px;
max-height: 32px;
max-width: 32px;
text-align: center;
vertical-align: middle;
}
.readOnly {
background: #ccc;
display: inline-block;
height: 32px;
line-height: 32px;
width: 32px;
}
}
}
.fieldBox {
background: #000;
border: solid 1px #000;
display: inline-block;
position: relative;
label {
position: absolute;
font-size: 0.75em;
line-height: 0.75em;
top: 110%;
}
.inner input {
border: none;
border-radius: 0
display: inline;
text-align: center;
}
}
.labelledAbove {
display: inline-block;
label {
font-size: 0.8em;
margin-bottom: 0;
padding-top: 0.5em;
}
}
.labelledBoxH {
background: #000;
border: solid 1px #000;
border-radius: 0.5em;
display: inline-block;
overflow: hidden;
& > label {
background: #000;
color: #fff;
display: inline;
font-weight: bold;
padding: 0 0.25em;
vertical-align: middle;
}
& > .inner {
background: #fff;
display: inline-block;
float: right;
vertical-align: middle;
& > * {
vertical-align: middle;
}
.fraction {
background: #fff;
display: inline-block;
input {
border: none;
display: inline;
}
}
}
}
.labelledBoxV {
background: #000;
border: solid 1px #000;
border-radius: 0.5em;
display: inline-block;
overflow: hidden;
& > label {
background: #000;
color: #fff;
display: inline-block;
font-weight: bold;
margin: 0;
padding: 0;
text-align: center;
}
& > .inner {
background: #fff;
text-align: center;
width: 100%;
input {
text-align: center;
width: 100%;
}
.fraction {
background: #fff;
display: inline-block;
input {
border: none;
display: inline;
}
}
}
}
.labelledLeft {
display: inline-block;
margin-bottom: 1em;
min-width: 0.45in;
position: relative;
label {
display: inline-block;
margin-bottom: 0;
padding-right: 2px;
width: auto;
vertical-align: bottom
}
.inner {
border-bottom: solid 2px #000;
display: inline-block;
vertical-align: bottom;
input {
background: transparent;
padding: 0;
transform: translateY(2px);
}
}
}
.labelledUnderlined {
display: inline-block;
margin-bottom: 1em;
min-width: 0.45in;
position: relative;
label {
position: absolute;
font-size: 0.75em;
line-height: 0.75em;
top: 110%;
}
.inner {
border-bottom: solid 1px #000;
width: 100%;
input {
border: none;
border-radius: 0;
padding-bottom: 0;
width: 100%;
}
select {
border: none;
border-radius: 0;
padding-bottom: 0;
width: 100%;
}
.readOnlyBox {
padding: 0;
padding-top: initial;
width: 100%;
}
}
}
.mathOperator {
display:inline-block;
margin-bottom: 0.5em;
padding-left: 0.25em;
padding-right: 0.25em;
}
+237
View File
@@ -0,0 +1,237 @@
@import "rolltemplate.less";
.charsheet {
background: #fff;
height: 100%;
width: 9in;
@import "fields.less";
.column {
display: inline-block;
}
.inlineBlock {
display: inline-block;
}
.attributes {
margin-bottom: 32px;
width: 100%;
.attribute {
position: relative;
button {
height: 100%;
opacity: 0;
position: absolute;
right: 0;
top: 0;
width: 40%;
z-index: 10;
}
& > label {
position: absolute;
left: 55%;
top: 15%;
width: auto;
&::before {
content: "0";
font-family: dicefontd10;
font-size: 32px;
vertical-align: middle;
}
}
}
.column {
vertical-align: top;
width: 33%;
}
}
.attrsHeader {
margin-bottom: 10px;
h2 {
display: inline-block;
line-height: 1em;
max-width: 2in;
vertical-align: middle;
}
.boxedIcon {
display: inline-block;
height: 60px;
vertical-align: middle;
width: 60px;
&.iconChassis {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconChassis.png");
}
&.iconCrux {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconCrux.png");
}
&.iconIntelligence {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconIntelligence.png");
}
&.iconMovement {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconMovement.png");
}
&.iconPhysicalInteraction {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconPhysicalInteraction.png");
}
&.iconThresholds {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconThresholds.png");
}
}
}
.featuresDefects {
margin-bottom: 32px;
table {
font-size: 10px;
margin-left: 8px;
width: 100%;
th:nth-child(1) {
width: 30%;
}
th:nth-child(2) {
width: 10%;
}
}
.feature, .defect {
input {
border-bottom: solid 1px black;
border-radius: 0;
padding: 0;
vertical-align: top;
}
textarea {
height: 1.5em;
margin-top: 1px;
resize: vertical;
vertical-align: top;
}
input:nth-child(1) {
width: 30%;
}
input:nth-child(2) {
width: 10%;
}
textarea:nth-child(3) {
width: 55%;
}
}
}
.secondaryAttrs {
margin-bottom: 32px;
width: 100%;
.attribute {
position: relative;
& > label {
position: absolute;
left: 55%;
margin-left: 1.7em;
text-indent: -1.7em;
top: 15%;
width: auto;
}
&.threshold {
& > label {
left: 37%;
}
}
}
.column {
vertical-align: top;
width: 33%;
}
.rollable {
position: relative;
button {
height: 100%;
opacity: 0;
position: absolute;
right: 0;
top: 0;
width: 40%;
z-index: 10;
}
.attribute {
& > label::before {
content: "0";
font-family: dicefontd10;
font-size: 32px;
vertical-align: middle;
}
}
}
}
.top {
width: 100%;
.column.bio {
width: 80%;
& > div {
width: 100%;
.labelledLeft {
display: inline-table;
label {
display: table-cell;
white-space: nowrap;
width: 1px;
}
.inner {
display: table-cell;
input {
width: 100%;
}
}
}
}
}
.column.points {
margin-left: 20px;
transform: scale(1.5);
width: 10%;
}
}
.twoColumns {
.column {
vertical-align: top;
width: 49%;
}
}
}
+39
View File
@@ -0,0 +1,39 @@
.rolltemplate-eh {
table {
background: #fff;
border: solid 2px #000;
border-collapse: separate;
border-radius: 0;
overflow: hidden;
width: 100%;
thead th {
background: #000;
color: #fff;
padding: 0.5em 1em;
}
tbody {
text-align: center;
td {
padding: 0.5em 0;
hr {
border-top: 1px solid #000;
margin: 2px;
}
}
.crit {
font-weight: bold;
text-transform: uppercase;
}
.notes {
font-size: 0.8em;
font-style: italic;
}
}
}
}
+9
View File
@@ -0,0 +1,9 @@
{
"name": "EngineHeart",
"devDependencies": {
"grunt": "^1.0.1",
"grunt-contrib-less": "^1.4.0",
"grunt-contrib-pug": "^1.0.0",
"grunt-string-replace": "^1.3.0"
}
}
+40
View File
@@ -0,0 +1,40 @@
include fields.pug
mixin attribute(label, attr, title)
.attribute(title=title)
+rollButton(attr + '_calc')
+input('hidden', attr + '_calc')
label= label
+bubble('TOTAL'): +readOnly(attr + '_total')
+bubble('RATING'): +input('number', attr)
+bubble('MODIFIER'): +input('number', attr + '_mod')
.attributes
.column
.attrsHeader
.boxedIcon.iconIntelligence
h2 INTELLIGENCE
.attrsInner
+attribute('RealityCom', 'rcom', 'Defines how well a robot understands cause and effect in the physical world.')
+attribute('HumanCom', 'hcom', 'Defines how well a robot understands human minds or organic actions.')
+attribute('DigiCon', 'dcon', 'Defines how adept a robot is at interacting with non-physical systems like computers.')
+attribute('MechaniCon', 'mcon', 'Defines how adept a robot is at interacting with mechanical systems.')
.column
.attrsHeader
.boxedIcon.iconChassis
h2 CHASSIS
.attrsInner
+attribute('Dexterity', 'dex', 'Measures the degree of fine motor control ncessary for interaction with the outside world.')
+attribute('Mobility', 'mobil', 'Dictates the robot\'s cability to propel itself about the environment.')
+attribute('Perception', 'per', 'Determines the variety and quality of sensors mounted, as well as information relayed back.')
+attribute('Reflexes', 'ref', 'Determines response lag and overall speed of animation.')
+attribute('Strength', 'str', 'Determines the robot\'s maximum load capacity and ability to inflict brute-force damage on other objects.')
.column
.attrsHeader
.boxedIcon.iconCrux
h2 CRUX
.attrsInner
+attribute('Durability', 'dur', 'Measures how much damage a robot can withstand before ceasing operation or being destroyed.')
+attribute('Buffer', 'buf', 'Rates the robot\'s ability to withstand information overload.')
+attribute('Size', 'size', 'Rates the robot\'s physical dimensions.')
+attribute('Power', 'pow', 'Rates how long the robot can operate on its own without recharging.')
+46
View File
@@ -0,0 +1,46 @@
mixin bubble(label)
.bubble(style=attributes.style, title=attributes.title)
label= label
.inner: block
mixin input(type, name)
input(type=type, name='attr_' + name, placeholder=attributes.placeholder, style=attributes.style, value=attributes.value)
mixin labelledUnderlined(label)
.labelledUnderlined(style=attributes.style)
label= label
.inner: block
mixin labelledLeft(label)
.labelledLeft(style=attributes.style)
label= label
.inner: block
mixin option(view, value, isSelected)
-
if(!value)
value = view;
option(value=value, selected=isSelected)= view
mixin readOnly(name)
span.readOnly(name='attr_' + name)
+input('hidden', name)
mixin repeating(name)
fieldset(class='repeating_' + name)
block
mixin rollButton(attr, notes, options)
-
var tpl = '&{template:eh} {{charName=@{character_name}}} ' +
'{{attr=' + attr + '}} {{result=[[@{' + attr + '}]]}}';
if(notes)
tpl += '{{notes=@{' + notes + '}}}';
button(type='roll', value=tpl)
mixin select(name)
select(name='attr_' + name, style=attributes.style)
block
mixin textarea(name)
textarea(name='attr_' + name, style=attributes.style, placeholder=attributes.placeholder)
+53
View File
@@ -0,0 +1,53 @@
include fields.pug
+input('text', 'debug')(value=' ', style='display: none;')
+input('text', 'character_sheet')(value='EngineHeart', style='display: none;')
.top
.column.bio
div
+labelledLeft('UNIT NAME')(style='width: 50%;'): +input('text', 'character_name')
+labelledLeft('PLAYER')(style='width: 49%;'): +input('text', 'player_name')
div
+labelledLeft('ORIGINAL PURPOSE')(style='width: 100%;'): +input('text', 'originalPurpose')
.column.points
+bubble('POINTS'): +input('number', 'points')
include attributes.pug
include secondaryAttributes.pug
.twoColumns.featuresDefects
.column.features
h2 FEATURES
table: thead
th Feature
th Rating
th Notes
+repeating('features')
.feature
+input('text', 'name')
+input('number', 'rating')
+textarea('notes')
.column.defects
h2 DEFECTS
table: thead
th Feature
th Rating
th Notes
+repeating('defects')
.defect
+input('text', 'name')
+input('number', 'rating')
+textarea('notes')
.twoColumns
.column.equipment
h2 EQUIPMENT
+textarea('equipment')
.column.campaign
h2 CAMPAIGN NOTES
+textarea('campaignNotes')
script(type='text/worker')
include ../js/worker.js
include rolltemplate.pug
+13
View File
@@ -0,0 +1,13 @@
mixin notes()
| {{#notes}}
tr: td.notes
div Notes:
div {{notes}}
| {{/notes}}
rolltemplate.sheet-rolltemplate-eh
table
thead: tr: th unit( "{{charName}}" ).exec( "{{attr}}" );
tbody
tr: td Successes {{result}}
+notes()
+45
View File
@@ -0,0 +1,45 @@
include fields.pug
// A secondary attribute.
mixin secAttr(label, attr, title)
.attribute(title=title)
+input('hidden', attr + '_calc')
label= label
+bubble('TOTAL'): +readOnly(attr + '_total')
+bubble('NORMAL'): +readOnly(attr)
+bubble('MODIFIER'): +input('number', attr + '_mod')
// Thresholds are like hit points.
mixin threshold(label, attr, title)
.attribute.threshold
label= label
+bubble('MAX')(title=title): +readOnly(attr + '_max')
+bubble('CURRENT')(title=title): +input('number', attr)
.secondaryAttrs
.column
.attrsHeader
.boxedIcon.iconPhysicalInteraction
h2 Physical interaction
.attrsInner
.intPool.rollable
+secAttr('Interaction Pool', 'intPool', '(Dex + Ref) This is the dice pool a robot has to strike, grab, or otherwise manually interact with an unwilling robot or other mobile object.')
+rollButton('intPool_calc')
+secAttr('TN to be struck', 'tn2bStruck', '(Mobil + Ref) A robot\'s TN to be struck may not be higher than 10.')
+secAttr('Damage from Strike', 'dmgFromStrike', '(Str/2, round down) This is how much damage a robot can inflict by simply smashing its body or limbs into another object.')
.column
.attrsHeader
.boxedIcon.iconMovement
h2 Movement
.attrsInner
.initiative.rollable
+secAttr('Initiative', 'initiative', '(1d10 + Ref) This measures which robots will act first in a conflict or other event where multiple robots attempt to act before each other.')
+rollButton('initiative_calc')
+secAttr('Speed', 'speed', '(Mobil + Ref) This determines how fast a robot can move from one place to another. A robot\'s speed is equal to its speed in kilometers per hour during long journeys, or meters per round during conflict situations.')
.column
.attrsHeader
.boxedIcon.iconThresholds
h2 Thresholds
.attrsInner
+threshold('OS Threshold', 'osThreshold', '(DigiCon + Buffer) This is a measure of how resilient and self-sustaining the robot\'s "brain" is.')
+threshold('Damage Threshold', 'dmgThreshold', '(Durability + Size) This is a measure of how hardy and resilient the robot\'s physical body is.')
+433
View File
@@ -0,0 +1,433 @@
.sheet-rolltemplate-eh table {
background: #fff;
border: solid 2px #000;
border-collapse: separate;
border-radius: 0;
overflow: hidden;
width: 100%;
}
.sheet-rolltemplate-eh table thead th {
background: #000;
color: #fff;
padding: 0.5em 1em;
}
.sheet-rolltemplate-eh table tbody {
text-align: center;
}
.sheet-rolltemplate-eh table tbody td {
padding: 0.5em 0;
}
.sheet-rolltemplate-eh table tbody td hr {
border-top: 1px solid #000;
margin: 2px;
}
.sheet-rolltemplate-eh table tbody .sheet-crit {
font-weight: bold;
text-transform: uppercase;
}
.sheet-rolltemplate-eh table tbody .sheet-notes {
font-size: 0.8em;
font-style: italic;
}
.charsheet {
background: #fff;
height: 100%;
width: 9in;
}
.charsheet input {
border: none;
box-shadow: none;
}
.charsheet input[type=number]::-webkit-inner-spin-button, .charsheet input[type=number]::-webkit-outer-spin-button {
-webkit-appearance: none;
margin: 0;
}
.charsheet select {
box-shadow: none;
height: auto;
line-height: 18px;
margin-bottom: 0;
-moz-appearance: none;
-webkit-appearance: none;
}
.charsheet textarea {
background: linear-gradient(to bottom, transparent, transparent 17px, #000);
background-attachment: local;
background-size: 1px 18px;
border: none;
box-shadow: none;
padding: 0;
resize: none;
}
.charsheet .sheet-bubble {
display: inline-block;
height: 50px;
position: relative;
width: 48px;
}
.charsheet .sheet-bubble label {
bottom: -16px;
font-size: 10px;
left: 50%;
padding: 0;
position: absolute;
transform: translateX(-50%);
width: auto;
}
.charsheet .sheet-bubble .sheet-inner {
border: solid 3px black;
border-radius: 32px;
height: 32px;
left: 50%;
overflow: hidden;
position: absolute;
text-align: center;
transform: translateX(-50%);
width: 32px;
}
.charsheet .sheet-bubble .sheet-inner input {
background: transparent;
line-height: 32px;
max-height: 32px;
max-width: 32px;
text-align: center;
vertical-align: middle;
}
.charsheet .sheet-bubble .sheet-inner .sheet-readOnly {
background: #ccc;
display: inline-block;
height: 32px;
line-height: 32px;
width: 32px;
}
.charsheet .sheet-fieldBox {
background: #000;
border: solid 1px #000;
display: inline-block;
position: relative;
}
.charsheet .sheet-fieldBox label {
position: absolute;
font-size: 0.75em;
line-height: 0.75em;
top: 110%;
}
.charsheet .sheet-fieldBox .sheet-inner input {
border: none;
border-radius: 0
display: inline;
text-align: center;
}
.charsheet .sheet-labelledAbove {
display: inline-block;
}
.charsheet .sheet-labelledAbove label {
font-size: 0.8em;
margin-bottom: 0;
padding-top: 0.5em;
}
.charsheet .sheet-labelledBoxH {
background: #000;
border: solid 1px #000;
border-radius: 0.5em;
display: inline-block;
overflow: hidden;
}
.charsheet .sheet-labelledBoxH > label {
background: #000;
color: #fff;
display: inline;
font-weight: bold;
padding: 0 0.25em;
vertical-align: middle;
}
.charsheet .sheet-labelledBoxH > .sheet-inner {
background: #fff;
display: inline-block;
float: right;
vertical-align: middle;
}
.charsheet .sheet-labelledBoxH > .sheet-inner > * {
vertical-align: middle;
}
.charsheet .sheet-labelledBoxH > .sheet-inner .sheet-fraction {
background: #fff;
display: inline-block;
}
.charsheet .sheet-labelledBoxH > .sheet-inner .sheet-fraction input {
border: none;
display: inline;
}
.charsheet .sheet-labelledBoxV {
background: #000;
border: solid 1px #000;
border-radius: 0.5em;
display: inline-block;
overflow: hidden;
}
.charsheet .sheet-labelledBoxV > label {
background: #000;
color: #fff;
display: inline-block;
font-weight: bold;
margin: 0;
padding: 0;
text-align: center;
}
.charsheet .sheet-labelledBoxV > .sheet-inner {
background: #fff;
text-align: center;
width: 100%;
}
.charsheet .sheet-labelledBoxV > .sheet-inner input {
text-align: center;
width: 100%;
}
.charsheet .sheet-labelledBoxV > .sheet-inner .sheet-fraction {
background: #fff;
display: inline-block;
}
.charsheet .sheet-labelledBoxV > .sheet-inner .sheet-fraction input {
border: none;
display: inline;
}
.charsheet .sheet-labelledLeft {
display: inline-block;
margin-bottom: 1em;
min-width: 0.45in;
position: relative;
}
.charsheet .sheet-labelledLeft label {
display: inline-block;
margin-bottom: 0;
padding-right: 2px;
width: auto;
vertical-align: bottom;
}
.charsheet .sheet-labelledLeft .sheet-inner {
border-bottom: solid 2px #000;
display: inline-block;
vertical-align: bottom;
}
.charsheet .sheet-labelledLeft .sheet-inner input {
background: transparent;
padding: 0;
transform: translateY(2px);
}
.charsheet .sheet-labelledUnderlined {
display: inline-block;
margin-bottom: 1em;
min-width: 0.45in;
position: relative;
}
.charsheet .sheet-labelledUnderlined label {
position: absolute;
font-size: 0.75em;
line-height: 0.75em;
top: 110%;
}
.charsheet .sheet-labelledUnderlined .sheet-inner {
border-bottom: solid 1px #000;
width: 100%;
}
.charsheet .sheet-labelledUnderlined .sheet-inner input {
border: none;
border-radius: 0;
padding-bottom: 0;
width: 100%;
}
.charsheet .sheet-labelledUnderlined .sheet-inner select {
border: none;
border-radius: 0;
padding-bottom: 0;
width: 100%;
}
.charsheet .sheet-labelledUnderlined .sheet-inner .sheet-readOnlyBox {
padding: 0;
padding-top: initial;
width: 100%;
}
.charsheet .sheet-mathOperator {
display: inline-block;
margin-bottom: 0.5em;
padding-left: 0.25em;
padding-right: 0.25em;
}
.charsheet .sheet-column {
display: inline-block;
}
.charsheet .sheet-inlineBlock {
display: inline-block;
}
.charsheet .sheet-attributes {
margin-bottom: 32px;
width: 100%;
}
.charsheet .sheet-attributes .sheet-attribute {
position: relative;
}
.charsheet .sheet-attributes .sheet-attribute button {
height: 100%;
opacity: 0;
position: absolute;
right: 0;
top: 0;
width: 40%;
z-index: 10;
}
.charsheet .sheet-attributes .sheet-attribute > label {
position: absolute;
left: 55%;
top: 15%;
width: auto;
}
.charsheet .sheet-attributes .sheet-attribute > label::before {
content: "0";
font-family: dicefontd10;
font-size: 32px;
vertical-align: middle;
}
.charsheet .sheet-attributes .sheet-column {
vertical-align: top;
width: 33%;
}
.charsheet .sheet-attrsHeader {
margin-bottom: 10px;
}
.charsheet .sheet-attrsHeader h2 {
display: inline-block;
line-height: 1em;
max-width: 2in;
vertical-align: middle;
}
.charsheet .sheet-attrsHeader .sheet-boxedIcon {
display: inline-block;
height: 60px;
vertical-align: middle;
width: 60px;
}
.charsheet .sheet-attrsHeader .sheet-boxedIcon.sheet-iconChassis {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconChassis.png");
}
.charsheet .sheet-attrsHeader .sheet-boxedIcon.sheet-iconCrux {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconCrux.png");
}
.charsheet .sheet-attrsHeader .sheet-boxedIcon.sheet-iconIntelligence {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconIntelligence.png");
}
.charsheet .sheet-attrsHeader .sheet-boxedIcon.sheet-iconMovement {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconMovement.png");
}
.charsheet .sheet-attrsHeader .sheet-boxedIcon.sheet-iconPhysicalInteraction {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconPhysicalInteraction.png");
}
.charsheet .sheet-attrsHeader .sheet-boxedIcon.sheet-iconThresholds {
background: url("https://raw.githubusercontent.com/Cazra/roll20-character-sheets/engineHeart/EngineHeart/img/iconThresholds.png");
}
.charsheet .sheet-featuresDefects {
margin-bottom: 32px;
}
.charsheet .sheet-featuresDefects table {
font-size: 10px;
margin-left: 8px;
width: 100%;
}
.charsheet .sheet-featuresDefects table th:nth-child(1) {
width: 30%;
}
.charsheet .sheet-featuresDefects table th:nth-child(2) {
width: 10%;
}
.charsheet .sheet-featuresDefects .sheet-feature input, .charsheet .sheet-featuresDefects .sheet-defect input {
border-bottom: solid 1px black;
border-radius: 0;
padding: 0;
vertical-align: top;
}
.charsheet .sheet-featuresDefects .sheet-feature textarea, .charsheet .sheet-featuresDefects .sheet-defect textarea {
height: 1.5em;
margin-top: 1px;
resize: vertical;
vertical-align: top;
}
.charsheet .sheet-featuresDefects .sheet-feature input:nth-child(1), .charsheet .sheet-featuresDefects .sheet-defect input:nth-child(1) {
width: 30%;
}
.charsheet .sheet-featuresDefects .sheet-feature input:nth-child(2), .charsheet .sheet-featuresDefects .sheet-defect input:nth-child(2) {
width: 10%;
}
.charsheet .sheet-featuresDefects .sheet-feature textarea:nth-child(3), .charsheet .sheet-featuresDefects .sheet-defect textarea:nth-child(3) {
width: 55%;
}
.charsheet .sheet-secondaryAttrs {
margin-bottom: 32px;
width: 100%;
}
.charsheet .sheet-secondaryAttrs .sheet-attribute {
position: relative;
}
.charsheet .sheet-secondaryAttrs .sheet-attribute > label {
position: absolute;
left: 55%;
margin-left: 1.7em;
text-indent: -1.7em;
top: 15%;
width: auto;
}
.charsheet .sheet-secondaryAttrs .sheet-attribute.sheet-threshold > label {
left: 37%;
}
.charsheet .sheet-secondaryAttrs .sheet-column {
vertical-align: top;
width: 33%;
}
.charsheet .sheet-secondaryAttrs .sheet-rollable {
position: relative;
}
.charsheet .sheet-secondaryAttrs .sheet-rollable button {
height: 100%;
opacity: 0;
position: absolute;
right: 0;
top: 0;
width: 40%;
z-index: 10;
}
.charsheet .sheet-secondaryAttrs .sheet-rollable .sheet-attribute > label::before {
content: "0";
font-family: dicefontd10;
font-size: 32px;
vertical-align: middle;
}
.charsheet .sheet-top {
width: 100%;
}
.charsheet .sheet-top .sheet-column.sheet-bio {
width: 80%;
}
.charsheet .sheet-top .sheet-column.sheet-bio > div {
width: 100%;
}
.charsheet .sheet-top .sheet-column.sheet-bio > div .sheet-labelledLeft {
display: inline-table;
}
.charsheet .sheet-top .sheet-column.sheet-bio > div .sheet-labelledLeft label {
display: table-cell;
white-space: nowrap;
width: 1px;
}
.charsheet .sheet-top .sheet-column.sheet-bio > div .sheet-labelledLeft .sheet-inner {
display: table-cell;
}
.charsheet .sheet-top .sheet-column.sheet-bio > div .sheet-labelledLeft .sheet-inner input {
width: 100%;
}
.charsheet .sheet-top .sheet-column.sheet-points {
margin-left: 20px;
transform: scale(1.5);
width: 10%;
}
.charsheet .sheet-twoColumns .sheet-column {
vertical-align: top;
width: 49%;
}
+895
View File
@@ -0,0 +1,895 @@
<input type="text" name="attr_debug" style="display: none;" value=" "/>
<input type="text" name="attr_character_sheet" style="display: none;" value="EngineHeart"/>
<div class="top">
<div class="column bio">
<div>
<div class="labelledLeft" style="width: 50%;">
<label>UNIT NAME</label>
<div class="inner">
<input type="text" name="attr_character_name"/>
</div>
</div>
<div class="labelledLeft" style="width: 49%;">
<label>PLAYER</label>
<div class="inner">
<input type="text" name="attr_player_name"/>
</div>
</div>
</div>
<div>
<div class="labelledLeft" style="width: 100%;">
<label>ORIGINAL PURPOSE</label>
<div class="inner">
<input type="text" name="attr_originalPurpose"/>
</div>
</div>
</div>
</div>
<div class="column points">
<div class="bubble">
<label>POINTS</label>
<div class="inner">
<input type="number" name="attr_points"/>
</div>
</div>
</div>
</div>
<div class="attributes">
<div class="column">
<div class="attrsHeader">
<div class="boxedIcon iconIntelligence"></div>
<h2>INTELLIGENCE</h2>
</div>
<div class="attrsInner">
<div class="attribute" title="Defines how well a robot understands cause and effect in the physical world.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=rcom_calc}} {{result=[[@{rcom_calc}]]}}"></button>
<input type="hidden" name="attr_rcom_calc"/>
<label>RealityCom</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_rcom_total"></span>
<input type="hidden" name="attr_rcom_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_rcom"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_rcom_mod"/>
</div>
</div>
</div>
<div class="attribute" title="Defines how well a robot understands human minds or organic actions.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=hcom_calc}} {{result=[[@{hcom_calc}]]}}"></button>
<input type="hidden" name="attr_hcom_calc"/>
<label>HumanCom</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_hcom_total"></span>
<input type="hidden" name="attr_hcom_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_hcom"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_hcom_mod"/>
</div>
</div>
</div>
<div class="attribute" title="Defines how adept a robot is at interacting with non-physical systems like computers.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=dcon_calc}} {{result=[[@{dcon_calc}]]}}"></button>
<input type="hidden" name="attr_dcon_calc"/>
<label>DigiCon</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_dcon_total"></span>
<input type="hidden" name="attr_dcon_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_dcon"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_dcon_mod"/>
</div>
</div>
</div>
<div class="attribute" title="Defines how adept a robot is at interacting with mechanical systems.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=mcon_calc}} {{result=[[@{mcon_calc}]]}}"></button>
<input type="hidden" name="attr_mcon_calc"/>
<label>MechaniCon</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_mcon_total"></span>
<input type="hidden" name="attr_mcon_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_mcon"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_mcon_mod"/>
</div>
</div>
</div>
</div>
</div>
<div class="column">
<div class="attrsHeader">
<div class="boxedIcon iconChassis"></div>
<h2>CHASSIS</h2>
</div>
<div class="attrsInner">
<div class="attribute" title="Measures the degree of fine motor control ncessary for interaction with the outside world.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=dex_calc}} {{result=[[@{dex_calc}]]}}"></button>
<input type="hidden" name="attr_dex_calc"/>
<label>Dexterity</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_dex_total"></span>
<input type="hidden" name="attr_dex_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_dex"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_dex_mod"/>
</div>
</div>
</div>
<div class="attribute" title="Dictates the robot's cability to propel itself about the environment.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=mobil_calc}} {{result=[[@{mobil_calc}]]}}"></button>
<input type="hidden" name="attr_mobil_calc"/>
<label>Mobility</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_mobil_total"></span>
<input type="hidden" name="attr_mobil_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_mobil"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_mobil_mod"/>
</div>
</div>
</div>
<div class="attribute" title="Determines the variety and quality of sensors mounted, as well as information relayed back.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=per_calc}} {{result=[[@{per_calc}]]}}"></button>
<input type="hidden" name="attr_per_calc"/>
<label>Perception</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_per_total"></span>
<input type="hidden" name="attr_per_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_per"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_per_mod"/>
</div>
</div>
</div>
<div class="attribute" title="Determines response lag and overall speed of animation.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=ref_calc}} {{result=[[@{ref_calc}]]}}"></button>
<input type="hidden" name="attr_ref_calc"/>
<label>Reflexes</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_ref_total"></span>
<input type="hidden" name="attr_ref_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_ref"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_ref_mod"/>
</div>
</div>
</div>
<div class="attribute" title="Determines the robot's maximum load capacity and ability to inflict brute-force damage on other objects.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=str_calc}} {{result=[[@{str_calc}]]}}"></button>
<input type="hidden" name="attr_str_calc"/>
<label>Strength</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_str_total"></span>
<input type="hidden" name="attr_str_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_str"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_str_mod"/>
</div>
</div>
</div>
</div>
</div>
<div class="column">
<div class="attrsHeader">
<div class="boxedIcon iconCrux"></div>
<h2>CRUX</h2>
</div>
<div class="attrsInner">
<div class="attribute" title="Measures how much damage a robot can withstand before ceasing operation or being destroyed.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=dur_calc}} {{result=[[@{dur_calc}]]}}"></button>
<input type="hidden" name="attr_dur_calc"/>
<label>Durability</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_dur_total"></span>
<input type="hidden" name="attr_dur_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_dur"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_dur_mod"/>
</div>
</div>
</div>
<div class="attribute" title="Rates the robot's ability to withstand information overload.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=buf_calc}} {{result=[[@{buf_calc}]]}}"></button>
<input type="hidden" name="attr_buf_calc"/>
<label>Buffer</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_buf_total"></span>
<input type="hidden" name="attr_buf_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_buf"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_buf_mod"/>
</div>
</div>
</div>
<div class="attribute" title="Rates the robot's physical dimensions.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=size_calc}} {{result=[[@{size_calc}]]}}"></button>
<input type="hidden" name="attr_size_calc"/>
<label>Size</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_size_total"></span>
<input type="hidden" name="attr_size_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_size"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_size_mod"/>
</div>
</div>
</div>
<div class="attribute" title="Rates how long the robot can operate on its own without recharging.">
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=pow_calc}} {{result=[[@{pow_calc}]]}}"></button>
<input type="hidden" name="attr_pow_calc"/>
<label>Power</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_pow_total"></span>
<input type="hidden" name="attr_pow_total"/>
</div>
</div>
<div class="bubble">
<label>RATING</label>
<div class="inner">
<input type="number" name="attr_pow"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_pow_mod"/>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- A secondary attribute.-->
<!-- Thresholds are like hit points.-->
<div class="secondaryAttrs">
<div class="column">
<div class="attrsHeader">
<div class="boxedIcon iconPhysicalInteraction"></div>
<h2>Physical interaction</h2>
</div>
<div class="attrsInner">
<div class="intPool rollable">
<div class="attribute" title="(Dex + Ref) This is the dice pool a robot has to strike, grab, or otherwise manually interact with an unwilling robot or other mobile object.">
<input type="hidden" name="attr_intPool_calc"/>
<label>Interaction Pool</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_intPool_total"></span>
<input type="hidden" name="attr_intPool_total"/>
</div>
</div>
<div class="bubble">
<label>NORMAL</label>
<div class="inner"><span class="readOnly" name="attr_intPool"></span>
<input type="hidden" name="attr_intPool"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_intPool_mod"/>
</div>
</div>
</div>
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=intPool_calc}} {{result=[[@{intPool_calc}]]}}"></button>
</div>
<div class="attribute" title="(Mobil + Ref) A robot's TN to be struck may not be higher than 10.">
<input type="hidden" name="attr_tn2bStruck_calc"/>
<label>TN to be struck</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_tn2bStruck_total"></span>
<input type="hidden" name="attr_tn2bStruck_total"/>
</div>
</div>
<div class="bubble">
<label>NORMAL</label>
<div class="inner"><span class="readOnly" name="attr_tn2bStruck"></span>
<input type="hidden" name="attr_tn2bStruck"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_tn2bStruck_mod"/>
</div>
</div>
</div>
<div class="attribute" title="(Str/2, round down) This is how much damage a robot can inflict by simply smashing its body or limbs into another object.">
<input type="hidden" name="attr_dmgFromStrike_calc"/>
<label>Damage from Strike</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_dmgFromStrike_total"></span>
<input type="hidden" name="attr_dmgFromStrike_total"/>
</div>
</div>
<div class="bubble">
<label>NORMAL</label>
<div class="inner"><span class="readOnly" name="attr_dmgFromStrike"></span>
<input type="hidden" name="attr_dmgFromStrike"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_dmgFromStrike_mod"/>
</div>
</div>
</div>
</div>
</div>
<div class="column">
<div class="attrsHeader">
<div class="boxedIcon iconMovement"></div>
<h2>Movement</h2>
</div>
<div class="attrsInner">
<div class="initiative rollable">
<div class="attribute" title="(1d10 + Ref) This measures which robots will act first in a conflict or other event where multiple robots attempt to act before each other.">
<input type="hidden" name="attr_initiative_calc"/>
<label>Initiative</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_initiative_total"></span>
<input type="hidden" name="attr_initiative_total"/>
</div>
</div>
<div class="bubble">
<label>NORMAL</label>
<div class="inner"><span class="readOnly" name="attr_initiative"></span>
<input type="hidden" name="attr_initiative"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_initiative_mod"/>
</div>
</div>
</div>
<button type="roll" value="&amp;{template:eh} {{charName=@{character_name}}} {{attr=initiative_calc}} {{result=[[@{initiative_calc}]]}}"></button>
</div>
<div class="attribute" title="(Mobil + Ref) This determines how fast a robot can move from one place to another. A robot's speed is equal to its speed in kilometers per hour during long journeys, or meters per round during conflict situations.">
<input type="hidden" name="attr_speed_calc"/>
<label>Speed</label>
<div class="bubble">
<label>TOTAL</label>
<div class="inner"><span class="readOnly" name="attr_speed_total"></span>
<input type="hidden" name="attr_speed_total"/>
</div>
</div>
<div class="bubble">
<label>NORMAL</label>
<div class="inner"><span class="readOnly" name="attr_speed"></span>
<input type="hidden" name="attr_speed"/>
</div>
</div>
<div class="bubble">
<label>MODIFIER</label>
<div class="inner">
<input type="number" name="attr_speed_mod"/>
</div>
</div>
</div>
</div>
</div>
<div class="column">
<div class="attrsHeader">
<div class="boxedIcon iconThresholds"></div>
<h2>Thresholds</h2>
</div>
<div class="attrsInner">
<div class="attribute threshold">
<label>OS Threshold</label>
<div class="bubble" title="(DigiCon + Buffer) This is a measure of how resilient and self-sustaining the robot's &amp;quot;brain&amp;quot; is.">
<label>MAX</label>
<div class="inner"><span class="readOnly" name="attr_osThreshold_max"></span>
<input type="hidden" name="attr_osThreshold_max"/>
</div>
</div>
<div class="bubble" title="(DigiCon + Buffer) This is a measure of how resilient and self-sustaining the robot's &amp;quot;brain&amp;quot; is.">
<label>CURRENT</label>
<div class="inner">
<input type="number" name="attr_osThreshold"/>
</div>
</div>
</div>
<div class="attribute threshold">
<label>Damage Threshold</label>
<div class="bubble" title="(Durability + Size) This is a measure of how hardy and resilient the robot's physical body is.">
<label>MAX</label>
<div class="inner"><span class="readOnly" name="attr_dmgThreshold_max"></span>
<input type="hidden" name="attr_dmgThreshold_max"/>
</div>
</div>
<div class="bubble" title="(Durability + Size) This is a measure of how hardy and resilient the robot's physical body is.">
<label>CURRENT</label>
<div class="inner">
<input type="number" name="attr_dmgThreshold"/>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="twoColumns featuresDefects">
<div class="column features">
<h2>FEATURES</h2>
<table>
<thead>
<th>Feature</th>
<th>Rating</th>
<th>Notes</th>
</thead>
</table>
<fieldset class="repeating_features">
<div class="feature">
<input type="text" name="attr_name"/>
<input type="number" name="attr_rating"/>
<textarea name="attr_notes"></textarea>
</div>
</fieldset>
</div>
<div class="column defects">
<h2>DEFECTS</h2>
<table>
<thead>
<th>Feature</th>
<th>Rating</th>
<th>Notes</th>
</thead>
</table>
<fieldset class="repeating_defects">
<div class="defect">
<input type="text" name="attr_name"/>
<input type="number" name="attr_rating"/>
<textarea name="attr_notes"></textarea>
</div>
</fieldset>
</div>
</div>
<div class="twoColumns">
<div class="column equipment">
<h2>EQUIPMENT</h2>
<textarea name="attr_equipment"></textarea>
</div>
<div class="column campaign">
<h2>CAMPAIGN NOTES</h2>
<textarea name="attr_campaignNotes"></textarea>
</div>
</div>
<script type="text/worker">/**
* Forces an update on a list of numerical fields, also making sure that
* any undefined fields are set to 0.
* @param {string[]} attrs
* @param {function} cb
*/
function forceUpdate(attrs, cb) {
parseAttrs(attrs, values => {
let tempValues = {};
_.each(attrs, attr => {
tempValues[attr] = -9999;
});
setAttrs(tempValues);
setAttrs(values);
});
}
function onChange(attrs, cb) {
attrs = _.map(attrs, attr => {
return 'change:' + attr;
}).join(' ');
on(attrs, cb);
}
function onChangeParse(attrs, cb) {
onChange(attrs, () => {
parseAttrs(attrs, cb);
});
}
/**
* Gets the specified attributes and parses them as an integer or 0.
*/
function parseAttrs(attrs, cb) {
getAttrs(attrs, function(values) {
_.each(attrs, function(attr) {
if(_.isUndefined(values[attr]))
values[attr] = 0;
else if(!isNaN(values[attr]))
values[attr] = parseInt(values[attr]);
});
cb(values);
});
}
/**
* Updates the roll calculation for an attribute.
* @param {string} attr
*/
function updateAttribute(attr) {
parseAttrs([attr, attr + '_mod'], values => {
let rating = parseInt(values[attr]);
let mod = parseInt(values[attr + '_mod']) || 0;
let total = rating + mod;
let calc = `(${total})d10>?{Target Number (TN)}`;
setAttrs({
[attr + '_calc']: calc,
[attr + '_total']: total
});
});
}
function updateRcom() {
updateAttribute('rcom');
}
function updateHcom() {
updateAttribute('hcom');
}
function updateDcon() {
updateAttribute('dcon');
}
function updateMcon() {
updateAttribute('mcon');
}
function updateDex() {
updateAttribute('dex');
}
function updateMobil() {
updateAttribute('mobil');
}
function updatePer() {
updateAttribute('per');
}
function updateRef() {
updateAttribute('ref');
}
function updateStr() {
updateAttribute('str');
}
function updateDur() {
updateAttribute('dur');
}
function updateBuf() {
updateAttribute('buf');
}
function updateSize() {
updateAttribute('size');
}
function updatePow() {
updateAttribute('pow');
}
function updateAllAttributes() {
updateRcom();
updateHcom();
updateDcon();
updateMcon();
updateDex();
updateMobil();
updatePer();
updateRef();
updateStr();
updateDur();
updateBuf();
updateSize();
updatePow();
}
function updateIntPool() {
parseAttrs(['dex_total', 'ref_total', 'intPool_mod'], values => {
let dex_total = parseInt(values['dex_total']);
let ref_total = parseInt(values['ref_total']);
let intPool_mod = parseInt(values['intPool_mod']) || 0;
let intPool = dex_total + ref_total;
let intPool_total = intPool + intPool_mod;
let intPool_calc = `(${intPool_total})d10>?{Target Number (TN)}`;
setAttrs({ intPool, intPool_calc, intPool_total });
});
}
function updateTn2bStruck() {
parseAttrs(['mobil_total', 'ref_total', 'tn2bStruck_mod'], values => {
let mobil_total = parseInt(values['mobil_total']);
let ref_total = parseInt(values['ref_total']);
let tn2bStruck_mod = parseInt(values['tn2bStruck_mod']) || 0;
let tn2bStruck = mobil_total + ref_total;
let tn2bStruck_total = tn2bStruck + tn2bStruck_mod;
setAttrs({ tn2bStruck, tn2bStruck_total });
});
}
function updateDmgFromStrike() {
parseAttrs(['str_total', 'dmgFromStrike_mod'], values => {
let str_total = parseInt(values['str_total']);
let dmgFromStrike_mod = parseInt(values['dmgFromStrike_mod']) || 0;
let dmgFromStrike = Math.floor(str_total/2);
let dmgFromStrike_total = dmgFromStrike + dmgFromStrike_mod;
setAttrs({ dmgFromStrike, dmgFromStrike_total });
});
}
function updateInitiative() {
parseAttrs(['ref_total', 'initiative_mod'], values => {
let ref_total = parseInt(values['ref_total']);
let initiative_mod = parseInt(values['initiative_mod']) || 0;
let initiative = ref_total;
let initiative_total = initiative + initiative_mod;
let initiative_calc = `1d10 + ${initiative_total}`;
setAttrs({ initiative, initiative_total, initiative_calc });
});
}
function updateSpeed() {
parseAttrs(['mobil_total', 'ref_total', 'speed_mod'], values => {
let mobil_total = parseInt(values['mobil_total']);
let ref_total = parseInt(values['ref_total']);
let speed_mod = parseInt(values['speed_mod']) || 0;
let speed = mobil_total + ref_total;
let speed_total = speed + speed_mod;
setAttrs({ speed, speed_total });
});
}
function updateOsThreshold() {
parseAttrs(['dcon_total', 'buf_total'], values => {
let dcon_total = parseInt(values['dcon_total']);
let buf_total = parseInt(values['buf_total']);
let osThreshold_max = dcon_total + buf_total;
setAttrs({ osThreshold_max });
});
}
function updateDmgThreshold() {
parseAttrs(['dur_total', 'size_total'], values => {
let dur_total = parseInt(values['dur_total']);
let size_total = parseInt(values['size_total']);
let dmgThreshold_max = dur_total + size_total;
setAttrs({ dmgThreshold_max });
});
}
// Change events
onChange(['rcom', 'rcom_mod'], () => {
updateRcom();
});
onChange(['hcom', 'hcom_mod'], () => {
updateHcom();
});
onChange(['dcon', 'dcon_mod'], () => {
updateDcon();
});
onChange(['mcon', 'mcon_mod'], () => {
updateMcon();
});
onChange(['dex', 'dex_mod'], () => {
updateDex();
});
onChange(['mobil', 'mobil_mod'], () => {
updateMobil();
});
onChange(['per', 'per_mod'], () => {
updatePer();
});
onChange(['ref', 'ref_mod'], () => {
updateRef();
});
onChange(['str', 'str_mod'], () => {
updateStr();
});
onChange(['dur', 'dur_mod'], () => {
updateDur();
});
onChange(['buf', 'buf_mod'], () => {
updateBuf();
});
onChange(['size', 'size_mod'], () => {
updateSize();
});
onChange(['pow', 'pow_mod'], () => {
updatePow();
});
onChange(['dex_total', 'ref_total', 'intPool_mod'], () => {
updateIntPool();
});
onChange(['mobil_total', 'ref_total', 'tn2bStruck_mod'], () => {
updateTn2bStruck();
});
onChange(['str_total', 'dmgFromStrike_mod'], () => {
updateDmgFromStrike();
});
onChange(['ref_total', 'initiative_mod'], () => {
updateInitiative();
});
onChange(['mobil_total', 'ref_total', 'speed_mod'], () => {
updateSpeed();
});
onChange(['dcon_total', 'buf_total'], () => {
updateOsThreshold();
});
onChange(['dur_total', 'size_total'], () => {
updateDmgThreshold();
});
// Init
on('sheet:opened', () => {
setAttrs({
character_sheet: 'EngineHeart v1.0.0'
});
updateAllAttributes();
});
</script>
<rolltemplate class="sheet-rolltemplate-eh">
<table>
<thead>
<tr>
<th>unit( "{{charName}}" ).exec( "{{attr}}" );</th>
</tr>
</thead>
<tbody>
<tr>
<td>Successes {{result}}</td>
</tr>{{#notes}}
<tr>
<td class="notes">
<div>Notes:</div>
<div>{{notes}}</div>
</td>
</tr>{{/notes}}
</tbody>
</table>
</rolltemplate>
+8
View File
@@ -0,0 +1,8 @@
{
"html": "sheet.html",
"css": "sheet.css",
"authors": "Stephen Lindberg",
"preview": "sheet.png",
"roll20userid": "46544",
"instructions": "# Engine Heart\r\rThis is a character sheet for the Kickstarter-funded system Engine Heart, a\rpost-apocalyptic game where humans left Earth. Now the little appliance robots\rthat were left behind fend for themselves, doing the best they can.\r\rEngine Heart official web site: http://www.viralgamespublishing.com/2.html\r\rIcon graphics used with permission from Viral Games.\r\rPlease enjoy!\r"
}

Some files were not shown because too many files have changed in this diff Show More