Files
roll20-character-sheets/Stars_Without_Number_Revised/Source/pug/drones.pug
T

80 lines
4.8 KiB
Plaintext

- const drones = ["ALECTO", "CUTTLEFISH", "GHOSTWALKER", "PAX", "PRIMITIVE_DRONE", "SLEEPER", "STALKER", "VOID_HAWK"]
- const droneFittings = ["ammo_unit", "bomber", "environmental_power", "expert_system", "extended_flight", "grav_muffles", "heavy_lift", "holoskin", "medical_support", "observation_suite", "racing_gravitics", "reinforced_structure", "sensor_transparency", "stationkeeping", "suicide_charge", "weapon_fitting"]
fieldset.repeating_drones
.drone
.core-box.stats
+text-input("drone_name", "NAME").important.cols-4
.text-input.focusinfo.cols-3
input(type="text", name="attr_drone_model" list="drones-list")
datalist(id="drones-list")
each drone in drones
option(data-i18n=drone)
.label(data-i18n="MODEL")
//.details(data-i18n="DRONE_MODEL_BLURB")
+text-input-duo("drone_HP", "drone_HP_max", "HIT_POINTS").important.cols-2
+text-input("drone_AC", "AC")(type="number", value="10").center
+text-input("drone_enc", "ENCUMBRANCE_SHORT")(type="number", value="").center
+text-input("drone_range", "RANGE").center.cols-2
+fake-text-input("NUM_FITTINGS")
select(name="attr_drone_num_fittings")
each num in [1,2,3,4,5]
option(value=num)= num
.fittings.grey-box.rows-2
input(type="hidden", name="attr_drone_num_fittings", value="1").num-fittings
.table-header.rep-grid.fitting-grid.edit
div(data-i18n="FITTING")
div(data-i18n="DESCRIPTION")
each num in [1,2,3,4,5]
.rep-grid.fitting-grid(class=`fitting-${num}`).edit
.text-input.focusinfo
input(type="text", name=`attr_drone_fitting_${num}_name`, list="drone-fittings-list")
.label
.details(data-i18n="DRONE_FITTING_BLURB")
datalist(id="drone-fittings-list")
each fitting in droneFittings
option(data-i18n=fitting.toUpperCase())
+fake-text-input()
textarea(name=`attr_drone_fitting_${num}_desc`)
.display(class=`fitting-${num}`)
span.name(name=`attr_drone_fitting_${num}_name`)
span.desc(name=`attr_drone_fitting_${num}_desc`)
.grey-box.drone-weapons
.table-header.rep-grid.weapon-grid.edit
div(data-i18n="ACTIVE?")
div(data-i18n="WEAPON")
div(data-i18n="DAMAGE")
div(data-i18n="BURST")
div(data-i18n="ATTACK_BONUS_SHORT")
div(data-i18n="AMMO")
each num in [1,2,3]
.weapon
input(type="hidden", name=`attr_drone_weapon${num}_active`, value="0").hider
.display
button(type="roll", name=`roll_drone_weapon${num}_attack`, value!=`&{template:swn-attack} {{charname=@{drone_name} (^{DRONE})}} {{title=@{drone_weapon${num}_name}}} {{attack=[[1d20 + @{drone_weapon${num}_skill}[Skill] + @{drone_weapon${num}_ab}[Weapon AB] + @{attack_bonus}[AB] + @{intelligence_mod}[Intelligence] @{drone_weapon${num}_burst} @{modifier_query}]]}} {{damage=[[@{drone_weapon${num}_damage} + @{intelligence_mod}[Intelligence] @{drone_weapon${num}_burst}]]}} {{burst=[[0@{drone_weapon${num}_burst}]]}} {{mod=[[0 @{modifier_query}]]}}`).invisible-button.pc-show
button(type="roll", name=`roll_drone_weapon${num}_attack`, value!=`&{template:swn-attack} {{charname=@{drone_name} (^{DRONE})}} {{title=@{drone_weapon${num}_name}}} {{attack=[[1d20 + @{drone_weapon${num}_ab}[Weapon AB] + @{npc_attack_bonus}[AB] @{drone_weapon${num}_burst} @{modifier_query}]]}} {{damage=[[@{drone_weapon${num}_damage} @{drone_weapon${num}_burst}]]}} {{burst=[[0@{drone_weapon${num}_burst}]]}} {{mod=[[0 @{modifier_query}]]}}`).invisible-button.npc-show
div
span(name=`attr_drone_weapon${num}_name`).name.space-after
input(type="hidden", name=`attr_drone_weapon${num}_attack`, value="0").add-plus
span(name=`attr_drone_weapon${num}_attack`).space-after
| (#[span(name=`attr_drone_weapon${num}_damage`)] #[span(data-i18n="DAMAGE").lower])
input(type="hidden", name=`attr_drone_weapon${num}_ammo_max`, value="0").hider
span
| . #[span(data-i18n="AMMO")]: 
input(type="number", name=`attr_drone_weapon${num}_ammo`).inline-input
|  / 
span(name=`attr_drone_weapon${num}_ammo_max`)
.edit.weapon-grid.rep-grid
input(type="hidden", name=`attr_drone_weapon${num}_skill`, value="0")
+fake-text-input().center
input(type="checkbox", name=`attr_drone_weapon${num}_active`, value="1")
+text-input(`drone_weapon${num}_name`)
+text-input(`drone_weapon${num}_damage`)(value="0").center
+fake-text-input()
select(name=`attr_drone_weapon${num}_burst`)
option(value="", data-i18n="NO", selected)
option(value="@{burst_query}", data-i18n="ASK")
option(value="+ 2[Burst]", data-i18n="ALWAYS")
+text-input(`drone_weapon${num}_ab`)(type="number", value="0").center
+text-input-duo(`drone_weapon${num}_ammo`, `drone_weapon${num}_ammo_max`, "", {min: "0", value: "0"})(min="0")
.label