input(type="hidden", name="attr_setting_individual_hidden", value="1").input-individual-hide //- Menus .menus.col-3.core-box.flex-between h3(data-i18n="QUICK_MENUS") input(type="hidden", name="attr_macro_statblock", value="") button(type="roll", name="roll_Statblock_macro", data-i18n="STATBLOCK", value=`/w "@{character_name}" &{template:swn-default} {{charname=@{npc_name}}} {{title=[**^{HD}** @{npc_hd}](~npc_hp), ^{AC} @{AC}}} {{buttons=@{macro_statblock}}}`).unstyled-button input(type="hidden", name="attr_macro_npc_attacks", value="") button(type="roll", name="roll_NPC_Attack_macro", data-i18n="ATTACKS", value=`/w "@{character_name}" &{template:swn-default} {{charname=@{npc_name}}} {{title=^{ATTACKS}}} {{buttons=@{macro_npc_attacks}}}`).unstyled-button input(type="hidden", name="attr_macro_npc_abilities", value="") button(type="roll", name="roll_NPC_Abilities_macro", data-i18n="ABILITIES", value=`/w "@{character_name}" &{template:swn-default} {{charname=@{npc_name}}} {{title=^{ABILITIES}}} {{buttons=@{macro_npc_abilities}}}`).unstyled-button //- Name etc .core-box-text.info +text-input("npc_name", "NAME").cols-3.important +fake-text-input("STAT_BLOCK").cols-3 select(name="attr_npc_stat_block") option(value="", selected) — optgroup(data-i18n-label="GENERIC_HUMAN") option(value="peaceful_human", data-i18n="PEACEFUL_HUMAN") option(value="martial_human", data-i18n="MARTIAL_HUMAN") option(value="veteran_fighter", data-i18n="VETERAN_FIGHTER") option(value="elite_fighter", data-i18n="ELITE_FIGHTER") option(value="heroic_fighter", data-i18n="HEROIC_FIGHTER") optgroup(data-i18n-label="SPECIFIC_HUMAN") option(value="barbarian_hero", data-i18n="BARBARIAN_HERO") option(value="barbarian_tribal", data-i18n="BARBARIAN_TRIBAL") option(value="gang_boss", data-i18n="GANG_BOSS") option(value="gang_member", data-i18n="GANG_MEMBER") option(value="geneengineered_killer", data-i18n="GENEENGINEERED_KILLER") option(value="legendary_fighter", data-i18n="LEGENDARY_FIGHTER") option(value="military_elite", data-i18n="MILITARY_ELITE") option(value="military_soldier", data-i18n="MILITARY_SOLDIER") option(value="normal_human", data-i18n="NORMAL_HUMAN") option(value="pirate_king", data-i18n="PIRATE_KING") option(value="police_officer", data-i18n="POLICE_OFFICER") option(value="serial_killer", data-i18n="SERIAL_KILLER") option(value="skilled_professional", data-i18n="SKILLED_PROFESSIONAL") option(value="warrior_tyrant", data-i18n="WARRIOR_TYRANT") optgroup(data-i18n-label="ROBOT") option(value="janitor_bot", data-i18n="JANITOR_BOT") option(value="civilian_security_bot", data-i18n="CIVILIAN_SECURITY_BOT") option(value="repair_bot", data-i18n="REPAIR_BOT") option(value="industrial_work_bot", data-i18n="INDUSTRIAL_WORK_BOT") option(value="companion_bot", data-i18n="COMPANION_BOT") option(value="soldier_bot", data-i18n="SOLDIER_BOT") option(value="heavy_warbot", data-i18n="HEAVY_WARBOT") optgroup(data-i18n-label="BEAST") option(value="small_vicious_beast", data-i18n="SMALL_VICIOUS_BEAST") option(value="small_pack_hunter", data-i18n="SMALL_PACK_HUNTER") option(value="large_pack_hunter", data-i18n="LARGE_PACK_HUNTER") option(value="large_aggressive_prey_animal", data-i18n="LARGE_AGGRESSIVE_PREY_ANIMAL") option(value="lesser_lone_predator", data-i18n="LESSER_LONE_PREDATOR") option(value="greater_lone_predator", data-i18n="GREATER_LONE_PREDATOR") option(value="terrifying_apex_predator", data-i18n="TERRIFYING_APEX_PREDATOR") option(value="geneengineered_murder_beast", data-i18n="GENEENGINEERED_MURDER_BEAST") +text-input("npc_move", "MOVE") +text-input("npc_hd", "HD")(type="number", value="1").center +text-input("npc_saves", "SAVES")(type="number", value="15").center +text-input("npc_skills", "SKILLS")(type="number", value="0").center +text-input("npc_morale", "MORALE")(type="number", value="0").center +text-input("npc_attack_bonus", "ATTACK_BONUS")(type="number", value="0").center //- HP and AC .core-box-text.npc-hp +text-input-duo("npc_hp", "npc_hp_max", "HIT_POINTS").cols-2.important +text-input("npc_ac", "AC")(type="number", value="10").center +fake-text-input("TYPE").center select(name="attr_npc_armor_type") option(value="", data-i18n="NONE") option(value="PRIMITIVE", data-i18n="PRIMITIVE") option(value="STREET", data-i18n="STREET") option(value="COMBAT", data-i18n="COMBAT") option(value="POWERED", data-i18n="POWERED") //- Quick rolls .core-box.rolls .flex-between h3(data-i18n="QUICK_ROLLS") label.npc-checkbox span(data-i18n="HIDDEN") input(type="checkbox", name="attr_npc_rolls_hidden" value="/w GM") .flex-between .blue-button button(type="roll", name="roll_NPC_HP", value!="@{npc_hp_hidden} &{template:swn-default} {{charname=@{npc_name}}} {{title=^{HIT_POINTS}}} {{ =[[@{npc_hd}d8]]}}") span(name="attr_npc_hd") div(data-i18n="ROLL_HP") label.individual-hide input(type="checkbox", name="attr_npc_hp_hidden", value="/w GM") span(data-i18n="HIDE") .blue-button button(type="roll", name="roll_NPC_Initiative", value!="@{npc_initiative_hidden} &{template:swn-default} {{charname=@{npc_name}}} {{title=^{INITIATIVE_FIXED}}} {{ =[[1d8 &{tracker}]]}}") d8 div(data-i18n="INITIATIVE_FIXED") label.individual-hide input(type="checkbox", name="attr_npc_initiative_hidden", value="/w GM") span(data-i18n="HIDE") .blue-button button(type="roll", name="roll_NPC_Save", value!="@{npc_save_hidden} &{template:swn-save} {{title=^{SAVING_THROW}}} {{charname=@{npc_name}}} {{save=[[@{npc_saves}]]}} {{dice=[[1d20]]}}") | v#[span(name="attr_npc_saves")] div(data-i18n="SAVE") label.individual-hide input(type="checkbox", name="attr_npc_save_hidden", value="/w GM") span(data-i18n="HIDE") .blue-button button(type="roll", name="roll_NPC_Skill", value!="@{npc_skill_hidden} &{template:swn-skill} {{charname=@{npc_name}}} {{title=@{skill_name_query}}} {{dice=[[2d6 + @{proficient_query} @{modifier_query}]]}}") input(type="hidden", name="attr_npc_skills", value="0").add-plus span(name="attr_npc_skills") div(data-i18n="SKILL") label.individual-hide input(type="checkbox", name="attr_npc_skill_hidden", value="/w GM") span(data-i18n="HIDE") .blue-button button(type="roll", name="roll_NPC_Morale", value!="@{npc_morale_hidden} &{template:swn-save} {{charname=@{npc_name}}} {{title=^{MORALE}}} {{morale=[[@{npc_morale}]]}} {{dice=[[2d6 @{modifier_query}]]}}") | v#[span(name="attr_npc_morale")] div(data-i18n="MORALE") label.individual-hide input(type="checkbox", name="attr_npc_morale_hidden", value="/w GM") span(data-i18n="HIDE") .blue-button button(type="roll", name="roll_NPC_Reaction", value!="@{npc_reaction_hidden} &{template:swn-default} {{title=^{REACTION}}} {{charname=@{npc_name}}} {{reaction=[[2d6 @{modifier_query}]]}}") 2d6 div(data-i18n="REACTION") label.individual-hide input(type="checkbox", name="attr_npc_reaction_hidden", value="/w GM") span(data-i18n="HIDE") //- Attacks .section +sectionheader("show_npc_attacks", "ATTACKS") .npc-attacks .npc-rep-header.flex label.full-attacks.npc-checkbox span(data-i18n="ROLL_FULL_ATTACK") input(type="checkbox", name="attr_npc_roll_full_attack" value="1") label.npc-checkbox span(data-i18n="HIDDEN") input(type="checkbox", name="attr_npc_attacks_hidden" value="/w GM") fieldset.repeating_npc-attacks input(type="hidden", name="attr_attack_extra_macro", value="") button(type="roll", name="roll_Attack", value!="@{npc_attacks_hidden} &{template:swn-attack} {{charname=@{npc_name}}} {{title=@{attack_name}}} {{attack=[[1d20 + @{attack_ab} @{attack_burst} @{modifier_query}]]}} {{damage=[[@{attack_damage} @{attack_burst}]]}} {{burst=[[0@{attack_burst}]]}} {{range=@{attack_range}}} @{attack_shock} @{attack_extra_macro}").invisible-button.display .display.flex-between.grey-box-bordered span.name span(name="attr_attack_name").space-after input(type="hidden", name="attr_attack_ab", value="0").add-plus span(name="attr_attack_ab").space-after input(type="hidden", name="attr_attack_range", value="0").range span.range #[span(data-i18n="RANGE")]: #[span(name="attr_attack_range")] input(type="hidden", name="attr_attack_number", value="1").attacks span.attacks (#[span(name="attr_attack_number")] #[span(data-i18n="ATTACKS")]) span.damage span(data-i18n="DAMAGE").space-after span(name="attr_attack_damage") .edit.flex.grey-box-bordered +text-input("attack_name", "NAME").name +text-input("attack_range", "RANGE").range.center +text-input("attack_ab", "ATTACK_BONUS_SHORT")(type="number", value="0").ab.center +text-input("attack_damage", "DAMAGE")(value="0").damage.center +fake-text-input("BURST").burst.center select(name="attr_attack_burst") option(value="", data-i18n="NO", selected) option(value="@{burst_query}", data-i18n="ASK") option(value="+ 2[Burst]", data-i18n="ALWAYS") +text-input("attack_number", "NUM_ATTACKS")(type="number", value="1").attacks.center .text-input.shock-damage.center input(type="text", name="attr_attack_shock_damage", value="0") label.label input(type="checkbox", name="attr_attack_shock", value!="{{shock=[[@{attack_shock_damage}]] ^{SHOCK_DAMAGE_AGAINST_AC_LEQ} @{attack_shock_ac}!}}") span(data-i18n="SHOCK") +text-input("attack_shock_ac", "SHOCK_AC")(type="number", value="10").shock-ac.center //- Abilities .section.cols-2 +sectionheader("show_npc_abilities", "ABILITIES") .npc-abilities .npc-rep-header.flex label.npc-checkbox span(data-i18n="HIDDEN") input(type="checkbox", name="attr_npc_abilities_hidden" value="/w GM") fieldset.repeating_npc-abilities button.display.invisible-button(type="roll", name="roll_Ability", value!="@{npc_abilities_hidden} &{template:swn-default} {{charname=@{npc_name}}} {{title=@{ability_name}}} {{desc=@{ability_description}}}") .display.grey-box-bordered span(name="attr_ability_name").name.space-after span(name="attr_ability_description").description .edit.flex.grey-box-bordered +text-input("ability_name", "NAME").name +fake-text-input("DESCRIPTION").description textarea(name="attr_ability_description", data-i18n-placeholder="DESCRIPTION") //- Notes .section.cols-3 +sectionheader("show_npc_notes", "NOTES") div textarea(name="attr_npc_notes")