mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 19:52:29 +00:00
1025 lines
50 KiB
HTML
1025 lines
50 KiB
HTML
<div class="sheet-centerIt sheet-topheader">En Garde!</div>
|
|
<div class="sheet-wrapper1 ">
|
|
<div class="sheet-name sheet-borderTop sheet-borderLeft sheet-borderRight">
|
|
<div data-i18n="character">Character:</div>
|
|
<div><input type="text" class="sheet-text_input" name="attr_character_name"></div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-block1 sheet-borderRight">
|
|
<div class="sheet-borderBot">
|
|
<div>
|
|
<h1 data-i18n="STR">STR</h1>
|
|
<div class="sheet-smallHeader" data-i18n="STR-prompt">(Initially 3-18)</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-borderRight sheet-borderBot"><input type="text" class="sheet-text_input sheet-abilities" name="attr_STR" value="0"></div>
|
|
<div class="sheet-birth">
|
|
<h1 data-i18n="Birth">Birth</h1>
|
|
<span>
|
|
<textarea name="attr_birth"></textarea>
|
|
</span>
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<div>
|
|
<h1 data-i18n="CON">CON</h1>
|
|
<div class="sheet-smallHeader" data-i18n="CON-prompt">(3-18)</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight"><input type="text" class="sheet-text_input sheet-abilities" name="attr_CON" value="0"></div>
|
|
|
|
<div class="sheet-borderBot">
|
|
<div>
|
|
<h1 data-i18n="END">END</h1>
|
|
<div class="sheet-smallHeader" data-i18n="END-prompt">(Max: STRxCON)</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight"><input type="text" class="sheet-text_input sheet-abilities" readonly=readonly name="attr_END" value="0"></div>
|
|
<div>
|
|
<div class="sheet-EndMAGrid">
|
|
<div class="sheet-borderRight">
|
|
<div class="sheet-EndCurrentGrid">
|
|
<div>
|
|
<div><h1 data-i18n="END">END</h1></div>
|
|
<div class="sheet-smallHeader" data-i18n="current"> </div>
|
|
</div>
|
|
<div>
|
|
<textarea name="attr_end_current"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div class="sheet-MAGrid">
|
|
<div>
|
|
<div><h1 data-i18n="MA">MA</h1></div>
|
|
<div class="sheet-smallHeader" data-i18n="MA-prompt">Initially 1-6</div>
|
|
</div>
|
|
<div>
|
|
<textarea class="sheet-abilities" name="attr_MA"></textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="sheet-borderBot">
|
|
<div>
|
|
<h1 data-i18n="EXP">EXP</h1>
|
|
<div class="sheet-smallHeader" data-i18n="EXP-prompt">(Base: 3-18)</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-abilities" name="attr_EXP" value="0">
|
|
</div>
|
|
<div class="sheet-practiseGrid">
|
|
<div class="sheet-borderRight sheet-borderBot sheet-practiseGridRow">
|
|
<div>
|
|
<span class="sheet-practiseHeader" data-i18n="Dagger">Dagger</span>
|
|
<span class="sheet-weapon-exp">
|
|
<input type="text" class="sheet-text_input sheet-aswasdass" name="attr_dagger_exp" value="0">
|
|
</span>
|
|
</div>
|
|
|
|
<div class="sheet-pVGrid">
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_dagger" value="0"></div>
|
|
<div>/</div>
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_dagger_max" value="4"></div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-borderRight sheet-borderBot sheet-practiseGridRow">
|
|
<div>
|
|
<span class="sheet-practiseHeader" data-i18n="Foil">Foil</span>
|
|
<span class="sheet-weapon-exp">
|
|
<input type="text" class="sheet-text_input sheet-aswasdass" name="attr_foil_exp" value="0">
|
|
</span>
|
|
</div>
|
|
<div class="sheet-pVGrid">
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_foil" value="0"></div>
|
|
<div>/</div>
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_foil_max" value="4"></div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-borderRight sheet-borderBot sheet-practiseGridRow">
|
|
<div>
|
|
<span class="sheet-practiseHeader" data-i18n="Rapier">Rapier</span>
|
|
<span class="sheet-weapon-exp">
|
|
<input type="text" class="sheet-text_input sheet-aswasdass" name="attr_rapier_exp" value="0">
|
|
</span>
|
|
</div>
|
|
<div class="sheet-pVGrid">
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_rapier" value="0"></div>
|
|
<div>/</div>
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_rapier_max" value="4"></div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-borderRight sheet-borderBot sheet-practiseGridRow">
|
|
<div>
|
|
<span class="sheet-practiseHeader" data-i18n="Sabre">Sabre</span>
|
|
<span class="sheet-weapon-exp">
|
|
<input type="text" class="sheet-text_input sheet-aswasdass" name="attr_sabre_exp" value="0">
|
|
</span>
|
|
</div>
|
|
<div class="sheet-pVGrid">
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_sabre" value="0"></div>
|
|
<div>/</div>
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_sabre_max" value="4"></div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-borderRight sheet-borderBot sheet-practiseGridRow">
|
|
<div>
|
|
<span class="sheet-practiseHeader" data-i18n="Cutlass">Cutlass</span>
|
|
<span class="sheet-weapon-exp">
|
|
<input type="text" class="sheet-text_input sheet-aswasdass" name="attr_cutlass_exp" value="0">
|
|
</span>
|
|
</div>
|
|
<div class="sheet-pVGrid">
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_cutlass" value="0"></div>
|
|
<div>/</div>
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_cutlass_max" value="4"></div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-practiseGridRow">
|
|
<div>
|
|
<span class="sheet-practiseHeader" data-i18n="2-Hand">2-Hand</span>
|
|
<span class="sheet-weapon-exp">
|
|
<input type="text" class="sheet-text_input sheet-aswasdass" name="attr_2hand_exp" value="0">
|
|
</span>
|
|
</div>
|
|
<div class="sheet-pVGrid">
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_2-Hand" value="0"></div>
|
|
<div>/</div>
|
|
<div><input type="text" class="sheet-text_input sheet-aswasdass" name="attr_practise_2-Hand_max" value="4"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
<div class="sheet-block2-wrapper">
|
|
<div class="sheet-SLGrid">
|
|
<div class="sheet-borderRight">
|
|
<h1 data-i18n="SL">SL</h1>
|
|
</div>
|
|
<div class="sheet-borderRight">
|
|
<span class="sheet-SL_value" >
|
|
<textarea type="text" class="sheet-text_input sheet-abilities" name="attr_SL"></textarea>
|
|
</span>
|
|
</div>
|
|
<div class="sheet-borderRight">
|
|
<span class="sheet-SLHeader" data-i18n="Funds"></span>
|
|
<span class="sheet-funds" >
|
|
<textarea type="text" class="sheet-text_input" name="attr_funds"></textarea>
|
|
</span>
|
|
</div>
|
|
<div class="sheet-borderRight">
|
|
<span class="sheet-SLHeader" data-i18n="Allowance"></span>
|
|
<span class="sheet-allowance" >
|
|
<textarea type="text" class="sheet-text_input" name="attr_allowance"></textarea>
|
|
</span>
|
|
</div>
|
|
<div class="sheet-borderRight">
|
|
<span class="sheet-SLHeader" data-i18n="Horses"></span>
|
|
<span class="sheet-horses" >
|
|
<textarea type="text" class="sheet-text_input" name="attr_horses"></textarea>
|
|
</span>
|
|
</div>
|
|
<div class="sheet-borderRight">
|
|
<span class="sheet-SLHeader" data-i18n="Date"></span>
|
|
<span class="sheet-date">
|
|
<textarea type="text" class="sheet-text_input" name="attr_date"></textarea>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-monthlyVariables">
|
|
<div class="sheet-borderBot sheet-borderRight"> </div>
|
|
<div class="sheet-borderBot sheet-borderRight"><span class="sheet-monthlyVariablesHeader" data-i18n="Income">Income</span></div>
|
|
<div class="sheet-borderBot sheet-borderRight"><span class="sheet-monthlyVariablesHeader" data-i18n="Spending">Spending</span></div>
|
|
<div class="sheet-borderBot"><span class="sheet-monthlyVariablesHeader" data-i18n="SPs">SPs</span></div>
|
|
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="allowance-support">Allowance, Support costs:</span>
|
|
<span> <input type="text" class="sheet-text_input" name="attr_monthly_allowance_desc" value=""></span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_monthly_allowance_support_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_monthly_allowance_support_spending" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_monthly_allowance_support_sps" value="0">
|
|
</div>
|
|
|
|
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="title">Title</span>
|
|
<span> <input type="text" class="sheet-text_input" name="attr_title_desc" value=""></span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_title_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<div class="sheet-filler"></div>
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_title_sps" value="0">
|
|
</div>
|
|
|
|
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="club-membership">Club membership</span>
|
|
<span> <input type="text" class="sheet-text_input" name="attr_club_desc" value=""></span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<div class="sheet-filler"></div>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_club_spending" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_club_sps" value="0">
|
|
</div>
|
|
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="regiment-rank">Regiment and/or Rank</span>
|
|
<span> <input type="text" class="sheet-text_input" name="attr_regiment_rank_desc" value=""></span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_regiment_rank_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<div class="sheet-filler"></div>
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_regiment_rank_sps" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="mistress-details">Mistress (Name, SL & attributes)</span>
|
|
<span> <input type="text" class="sheet-text_input" name="attr_mistress_desc" value=""></span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_mistress_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_mistress_spending" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_mistress_sps" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="Appointment">Appointment</span>
|
|
<span> <input type="text" class="sheet-text_input" name="attr_appointment_desc" value=""></span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_appointment_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<div class="sheet-filler"></div>
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_appointment_sps" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span class="sheet-borderRight sheet-dispatchesLabel" data-i18n="mentions">Mentions in Despatches </span>
|
|
<span class="sheet-mentionsSpan">
|
|
<div class="sheet-mentionsGrid">
|
|
<div class="sheet-borderRight" data-i18n="mentions-current">Current (1-6 SPs ea.)</div>
|
|
<div class="sheet-borderRight"><input type="text" class="sheet-text_input" name="attr_mentions_current" value=""></div>
|
|
<div class="sheet-borderRight sheet-oldMentionsLabel" >
|
|
<span data-i18n="mentions-old">Old (1 SP ea.)</span>
|
|
</div>
|
|
<div class="sheet-borderRight"><input type="text" class="sheet-text_input" name="attr_mentions_old" value=""></div>
|
|
</div>
|
|
</span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<div class="sheet-filler"></div>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<div class="sheet-filler"></div>
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_mentions_sps" value="0">
|
|
</div>
|
|
</div>
|
|
<div class="sheet-monthlyVariables">
|
|
<div class="sheet-borderBot sheet-borderRight"><button name="act_reset" type="action" class="sheet-text_roll">RESET</button></div>
|
|
<div class="sheet-borderBot sheet-borderRight"><span class="sheet-monthlyVariablesHeader" data-i18n="Income">Income</span></div>
|
|
<div class="sheet-borderBot sheet-borderRight"><span class="sheet-monthlyVariablesHeader" data-i18n="Spending">Spending</span></div>
|
|
<div class="sheet-borderBot"><span class="sheet-monthlyVariablesHeader" data-i18n="SPs">SPs</span></div>
|
|
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="week1">Week 1</span>
|
|
<span> <input type="text" class="sheet-text_input" name="attr_week1_desc" value=""></span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week1_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week1_spending" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week1_sps" value="0">
|
|
</div>
|
|
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="week2">Week 2</span>
|
|
<span> <input type="text" class="sheet-text_input" name="attr_week2_desc" value=""></span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week2_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week2_spending" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week2_sps" value="0">
|
|
</div>
|
|
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="week3">Week 3</span>
|
|
<span> <input type="text" class="sheet-text_input" name="attr_week3_desc" value=""></span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week3_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week3_spending" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week3_sps" value="0">
|
|
</div>
|
|
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="week4">Week 4</span>
|
|
<span> <input type="text" class="sheet-text_input" name="attr_week4_desc" value=""></span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week4_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week4_spending" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_week4_sps" value="0">
|
|
</div>
|
|
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="monthly-values">Monthly Values</span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_monthly_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_monthly_spending" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_monthly_sps" value="0">
|
|
</div>
|
|
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="total">Total</span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_final_income" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_final_spending" value="0">
|
|
</div>
|
|
<div class="sheet-borderBot">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_final_sps" value="0">
|
|
</div>
|
|
|
|
|
|
</div>
|
|
<div class="sheet-fundAdjust">
|
|
<div class="sheet-borderBot sheet-borderRight sheet-monthlyVariablesDesc">
|
|
<span data-i18n="funds-adjust">Funds Adjustment</span>
|
|
</div>
|
|
<div class="sheet-borderBot sheet-borderRight">
|
|
<input type="text" class="sheet-text_input sheet-monthlyVV" name="attr_funds_adjustment" value="0">
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
<div class="sheet-personal-battle-outcome-title">
|
|
<span data-i18n="personal-battle-outcome">Personal Battle Outcome</span>
|
|
</div>
|
|
|
|
<div class="sheet-centerIt">
|
|
<div class="sheet-deployment-results sheet-borderRight">
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="force-deployment"></div>
|
|
<div class="sheet-borderRight">
|
|
<select class="sheet-monthlyVariablesDesc sheet-borderTop" name="attr_force_deployment">
|
|
<option selected value="0"></option>
|
|
<option value="assault" data-i18n="Assault">Assault</option>
|
|
<option value="defense" data-i18n="Defense">Defense</option>
|
|
<option value="fieldops" data-i18n="Field-Ops">Field Ops</option>
|
|
<option value="siege" data-i18n="Seige">Seige</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="battle-results"></div>
|
|
<div class="sheet-borderRight">
|
|
<select class="sheet-monthlyVariablesDesc" name="attr_battle_result">
|
|
<option selected value="0"></option>
|
|
<option value="1">1</option>
|
|
<option value="2">2</option>
|
|
<option value="3">3</option>
|
|
<option value="4">4</option>
|
|
<option value="5">5</option>
|
|
<option value="6">6</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="bravery-poltroonery" data-i18n-title="polbrav-title" title="postive for bravery, negative for poltroonery"></div>
|
|
<div class="sheet-borderRight">
|
|
<input type="text" class="sheet-text_input" name="attr_bravery_poltroonery" data-i18n-title="polbrav-title" value="0">
|
|
</div>
|
|
<div>
|
|
<button type="action" name="act_outcome" class="sheet-text_roll">
|
|
<img style="height: 20px;width: 21px;" src="https://raw.githubusercontent.com/Lockbox313/imagedump/master//EnGarde/d6s_small3.png">
|
|
</button>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-deployment-results-mods sheet-borderRight">
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="command"></div>
|
|
<div class="sheet-borderRight">
|
|
<select class="sheet-monthlyVariablesDesc" name="attr_battle_command">
|
|
<option selected value="n/a" data-i18n="n/a">N/A</option>
|
|
<option value="army" data-i18n="army-commander"></option>
|
|
<option value="division" data-i18n="divison-commander"></option>
|
|
<option value="brigade" data-i18n="brigade-commander"></option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="regiment"></div>
|
|
<div class="sheet-borderRight">
|
|
<select class="sheet-monthlyVariablesDesc" name="attr_battle_regiment">
|
|
<option selected value="regiment0"></option>
|
|
<option value="regiment1" data-i18n="regiment-1">Royal Foot Guards</option>
|
|
<option value="regiment2" data-i18n="regiment-2">Cardinal's Guard</option>
|
|
<option value="regiment3" data-i18n="regiment-3">King's Musketeers</option>
|
|
<option value="regiment4" data-i18n="regiment-4">Dragoon Guards</option>
|
|
<option value="regiment5" data-i18n="regiment-5">Queen's Own Carabiniers</option>
|
|
<option value="regiment6" data-i18n="regiment-6">Archduke Leopold Cuirassiers</option>
|
|
<option value="regiment7" data-i18n="regiment-7">Crown Prince Cuirassiers</option>
|
|
<option value="regiment8" data-i18n="regiment-8">Royal Marines</option>
|
|
<option value="regiment9" data-i18n="regiment-9">Grand Duke Max Dragoons</option>
|
|
<option value="regiment10" data-i18n="regiment-10">Picardy Musketeers</option>
|
|
<option value="regiment11" data-i18n="regiment-11">13th Fusiliers</option>
|
|
<option value="regiment12" data-i18n="regiment-12">Princess Louisa's Light Dragoons</option>
|
|
<option value="regiment13" data-i18n="regiment-13">53rd Fusiliers</option>
|
|
<option value="regiment14" data-i18n="regiment-14">27th Musketeers</option>
|
|
<option value="regiment15" data-i18n="regiment-15">4th Arquebusiers</option>
|
|
<option value="regiment16" data-i18n="regiment-16">69th Arquebusiers</option>
|
|
<option value="regiment17" data-i18n="regiment-17">The Gascon Regiment</option>
|
|
<option value="regiment18" data-i18n="regiment-18">Frontier Regiment</option>
|
|
<option value="regiment19" data-i18n="regiment-19">RNHB Regiment</option>
|
|
</select>
|
|
</div>
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="rank"></div>
|
|
<div>
|
|
<select class="sheet-monthlyVariablesDesc" name="attr_battle_rank">
|
|
<option selected value="Private" data-i18n="Private">Private</option>
|
|
<option value="Subaltern" data-i18n="Subaltern">Subaltern</option>
|
|
<option value="Captain" data-i18n="Captain">Captain</option>
|
|
<option value="Major" data-i18n="Major">Major</option>
|
|
<option value="LieutenantColonel" data-i18n="Lieutenant-Colonel">Lieutenant-Colonel</option>
|
|
<option value="Colonel" data-i18n="Colonel">Colonel</option>
|
|
<option value="BrigadierGeneral" data-i18n="Brigadier-General">Brigadier-General</option>
|
|
<option value="LieutenantGeneral" data-i18n="Lieutenant-General">Lieutenant-General</option>
|
|
<option value="General" data-i18n="General">General</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="sheet-outcome">
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="Death"></div>
|
|
<div class="sheet-borderRight">
|
|
<input type="text" class="sheet-text_input" name="attr_death" readonly value="0">
|
|
</div>
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="Mention"></div>
|
|
<div class="sheet-borderRight">
|
|
<input type="text" class="sheet-text_input" name="attr_mention" readonly value="0">
|
|
</div>
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="Promotion"></div>
|
|
<div class="sheet-borderRight">
|
|
<input type="text" class="sheet-text_input" name="attr_promotion" readonly value="0">
|
|
</div>
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="Plunder"></div>
|
|
<div class="sheet-borderRight">
|
|
<input type="text" class="sheet-text_input" name="attr_plunder" readonly value="0">
|
|
</div>
|
|
<div class="sheet-borderRight">
|
|
<input type="text" class="sheet-text_input" name="attr_plunder_value" readonly value="">
|
|
</div>
|
|
</div>
|
|
<!--<div class="sheet-bravery-poltroonery sheet-borderRight">
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="bravery"></div>
|
|
<div class="sheet-borderRight">
|
|
<input type="text" class="sheet-text_input" name="attr_bravery" value="0">
|
|
</div>
|
|
<div class="sheet-monthlyVariablesDesc sheet-borderRight" data-i18n="poltroonery"></div>
|
|
<div>
|
|
<input type="text" class="sheet-text_input" name="attr_poltroonery" value="0">
|
|
</div>
|
|
</div>-->
|
|
</div>
|
|
<hr>
|
|
<hr>
|
|
<hr>
|
|
<div>
|
|
<div class="sheet-diceWrapper">
|
|
<span><button type="roll" class="sheet-text_roll" name="roll_1d6" value="&{template:EnGarde} {{name=1D6}} {{roll=[[1d6]]}}"><img src="https://raw.githubusercontent.com/Lockbox313/imagedump/master//EnGarde/d6-2.png"></button></span>
|
|
<span><button type="roll" class="sheet-text_roll" "sheet-text_roll" name="roll_2d6" value="&{template:EnGarde} {{name=2D6}} {{roll=[[2d6]]}}"><img src="https://raw.githubusercontent.com/Lockbox313/imagedump/master//EnGarde/2d6-2.png"></button></span>
|
|
</div>
|
|
<div>
|
|
|
|
|
|
<rolltemplate class="sheet-rolltemplate-EnGarde">
|
|
<div>
|
|
{{name}} {{roll}}
|
|
</div>
|
|
</rolltemplate>
|
|
|
|
<rolltemplate class="sheet-rolltemplate-outcome">
|
|
<div>
|
|
<b><div data-i18n="personal-battle-outcome"></div></b>
|
|
<div>Death {{death_roll}} >= {{death_target}}
|
|
{{#rollLess() death_roll death_target}}
|
|
<b><span data-i18n="No">No</span></b>
|
|
{{/rollLess() death_roll death_target}}
|
|
{{#^rollLess() death_roll death_target}}
|
|
<b><span data-i18n="Yes">Yes</span></b>
|
|
{{/^rollLess() death_roll death_target}}
|
|
</div>
|
|
<div>Mention {{mention_roll}} >= {{mention_target}}
|
|
{{#rollLess() mention_roll mention_target}}
|
|
<b><span data-i18n="No">No</span></b>
|
|
{{/rollLess() mention_roll mention_target}}
|
|
{{#^rollLess() mention_roll mention_target}}
|
|
<b><span data-i18n="Yes">Yes</span></b>
|
|
{{/^rollLess() mention_roll mention_target}}
|
|
</div>
|
|
<div>Promotion {{promotion_roll}} >= {{promotion_target}}
|
|
{{#rollLess() promotion_roll promotion_target}}
|
|
<b><span data-i18n="No">No</span></b>
|
|
{{/rollLess() promotion_roll promotion_target}}
|
|
{{#^rollLess() promotion_roll promotion_target}}
|
|
<b><span data-i18n="Yes">Yes</span></b>
|
|
{{/^rollLess() promotion_roll promotion_target}}
|
|
</div>
|
|
{{#rollTotal() poltroon 0}}
|
|
{{#rollTotal() show_plunder 1}}
|
|
<div>Plunder {{plunder_roll}} >= {{plunder_target}}
|
|
{{#rollLess() plunder_roll plunder_target}}
|
|
<b><span data-i18n="No">No</span></b></div>
|
|
{{/rollLess() plunder_roll plunder_target}}
|
|
{{#^rollLess() plunder_roll plunder_target}}
|
|
<b><span data-i18n="Yes">Yes</span></b></div>
|
|
<div>{{plunder_value}} Crowns</div>
|
|
{{/^rollLess() plunder_roll plunder_target}}
|
|
{{/rollTotal() show_plunder 1}}
|
|
{{/rollTotal() poltroon 0}}
|
|
{{#rollTotal() poltroon 1}}
|
|
<div>
|
|
<span data-i18n="poltroonery"></span> {{poltroon_value}}
|
|
</div>
|
|
{{/rollTotal() poltroon 1}}
|
|
{{#rollTotal() bravery 1}}
|
|
<div>
|
|
<span data-i18n="bravery"></span> {{bravery_value}}
|
|
</div>
|
|
{{/rollTotal() bravery 1}}
|
|
|
|
</rolltemplate>
|
|
|
|
|
|
<script type="text/worker">
|
|
|
|
const outcome_listeners = ["force_deployment","battle_result","bravery","poltroonery","battle_command","battle_rank","battle_regiment"];
|
|
|
|
const siege = [["10","11","9","9","3x100"],["8","9","7","8","4x100"],["11","12","10","11","2x100"],["11","12","10","12","1x100"],["9","10","8","-",""],["7","8","6","-",""]]
|
|
|
|
const assault = [["9","9","8","4","4x100"],["8","7","7","5","6x100"],["7","6","6","6","4x100"],["9","11","8","-",""],["8","9","7","-",""],["7","11","6","-",""]];
|
|
|
|
const defense = [["9","9","8","7","2x100"],["8","10","7","9","2x50"],["10","12","9","12","1x50"],["10","12","9","12","1x50"],["6","7","5","-",""],["7","11","6","-",""]];
|
|
|
|
const fieldops = [["10","9","9","8","2x50"],["10","10","9","9","2x100"],["9","12","8","10","2x50"],["8","12","7","11","1x50"],["7","10","6","12","1x50"],["6","7","5","-",""]];
|
|
|
|
|
|
const army = {death:4, mention:0, promotion:0, plunder:-3};
|
|
const division = {death:2, mention:0, promotion:0, plunder:-2};
|
|
const brigade = {death:1, mention:0, promotion:0, plunder:-1};
|
|
|
|
const regiment1 = {death:3,mention:0,promotion:1,plunder:-2}
|
|
const regiment2 = {death:2,mention:0,promotion:0,plunder:1}
|
|
const regiment3 = {death:2,mention:-1,promotion:0,plunder:-1}
|
|
const regiment4 = {death:2,mention:-1,promotion:0,plunder:-1}
|
|
const regiment5 = {death:2,mention:0,promotion:0,plunder:0}
|
|
const regiment6 = {death:2,mention:0,promotion:0,plunder:0}
|
|
const regiment7 = {death:1,mention:-1,promotion:-1,plunder:0}
|
|
const regiment8 = {death:1,mention:0,promotion:0,plunder:0}
|
|
const regiment9 = {death:1,mention:0,promotion:0,plunder:0}
|
|
const regiment10 = {death:0,mention:0,promotion:1,plunder:0}
|
|
const regiment11 = {death:0,mention:0,promotion:0,plunder:0}
|
|
const regiment12 = {death:0,mention:0,promotion:0,plunder:0}
|
|
const regiment13 = {death:0,mention:0,promotion:0,plunder:0}
|
|
const regiment14 = {death:0,mention:0,promotion:0,plunder:0}
|
|
const regiment15 = {death:0,mention:0,promotion:0,plunder:0}
|
|
const regiment16 = {death:-1,mention:0,promotion:1,plunder:-2}
|
|
const regiment17 = {death:-1,mention:0,promotion:1,plunder:-2}
|
|
const regiment18 = {death:-1,mention:0,promotion:1,plunder:-1}
|
|
const regiment19 = {death:-1,mention:-2,promotion:-1,plunder:-2}
|
|
|
|
const Subaltern = {death:1,mention:0,promotion:0,plunder:-1}
|
|
const Captain = {death:1,mention:0,promotion:0,plunder:-1}
|
|
const Major = {death:2,mention:0,promotion:0,plunder:-2}
|
|
const LieutenantColonel = {death:2,mention:0,promotion:0,plunder:-2}
|
|
const Colonel = {death:2,mention:0,promotion:0,plunder:-2}
|
|
const BrigadierGeneral = {death:3,mention:0,promotion:-1,plunder:-4}
|
|
const LieutenantGeneral = {death:4,mention:0,promotion:0,plunder:-5}
|
|
const General = {death:5,mention:0,promotion:0,plunder:-6}
|
|
|
|
|
|
|
|
on("clicked:outcome", function() {
|
|
console.log("Activate button clicked");
|
|
getAttrs(["death", "mention","promotion","plunder","plunder_value","bravery_poltroonery"], function(values) {
|
|
console.log(`values ${JSON.stringify(values)}`);
|
|
|
|
let dice_mod = parseInt(values.bravery_poltroonery);
|
|
let show_plunder=1
|
|
let plunder_str = "";
|
|
let plunder_dice = "";
|
|
let plunder_multiplier = 0;
|
|
if (values.plunder=="-"){
|
|
show_plunder=0
|
|
} else {
|
|
plunder_array = values.plunder_value.split("x");
|
|
console.log("plunder_array:"+plunder_array)
|
|
plunder_dice = plunder_array[0]+"D6";
|
|
console.log("plunder_dice:"+plunder_dice)
|
|
plunder_multiplier = plunder_array[1];
|
|
console.log("plunder_multiplier:"+plunder_multiplier)
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (dice_mod < 0){
|
|
roll_str="&{template:outcome} {{death_roll=[[2D6"+values.bravery_poltroonery+"]]}} {{mention_roll=[[2D6]]}} {{promotion_roll=[[2D6]]}} {{death_target=[["+values.death+"]]}} {{mention_target=[["+values.mention+"]]}} {{promotion_target=[["+values.promotion+"]]}} {{poltroon=[[1]]}} {{poltroon_value=[["+Math.abs(dice_mod)+"]]}} {{plunder_roll=[[2D6]]}}"
|
|
} else if (dice_mod > 0){
|
|
roll_str="&{template:outcome} {{death_roll=[[2D6+"+values.bravery_poltroonery+"]]}} {{mention_roll=[[2D6+"+values.bravery_poltroonery+"]]}} {{promotion_roll=[[2D6+"+values.bravery_poltroonery+"]]}} {{death_target=[["+values.death+"]]}} {{mention_target=[["+values.mention+"]]}} {{promotion_target=[["+values.promotion+"]]}} {{bravery=[[1]]}} {{bravery_value=[["+dice_mod+"]]}} {{plunder_roll=[[2D6+"+values.bravery_poltroonery+"]]}} {{poltroon=[[0]]}}"
|
|
} else {
|
|
roll_str="&{template:outcome} {{death_roll=[[2D6]]}} {{mention_roll=[[2D6]]}} {{promotion_roll=[[2D6]]}} {{death_target=[["+values.death+"]]}} {{mention_target=[["+values.mention+"]]}} {{promotion_target=[["+values.promotion+"]]}} {{plunder_roll=[[2D6]]}} {{poltroon=[[0]]}}"
|
|
console.log("marker1");
|
|
console.log("roll_str1:"+roll_str)
|
|
}
|
|
|
|
if (show_plunder==1){
|
|
roll_str = roll_str + "{{plunder_value=[["+plunder_dice+"*"+plunder_multiplier+"]]}} {{show_plunder=[[1]]}} {{plunder_target=[["+values.plunder+"]]}}"
|
|
} else {
|
|
roll_str = roll_str + "{{show_plunder=[[0]]}}"
|
|
}
|
|
|
|
console.log("roll_str2:"+roll_str)
|
|
setAttrs({bravery_poltroonery:0});
|
|
startRoll(roll_str, (results) => {
|
|
finishRoll(
|
|
results.rollId,
|
|
{
|
|
|
|
}
|
|
);
|
|
});
|
|
|
|
|
|
|
|
});
|
|
});
|
|
|
|
|
|
outcome_listeners.forEach(attribute => {
|
|
on(`change:${attribute}`, function(event) {
|
|
console.log(`income listener event ${JSON.stringify(event)}`);
|
|
getAttrs(["force_deployment","battle_result","bravery","poltroonery","battle_command","battle_rank","battle_regiment"], function(values) {
|
|
console.log(`values ${JSON.stringify(values)}`);
|
|
if (values.battle_regiment=="regiment0" || values.force_deployment=="0" || values.battle_result=="0" ){
|
|
setAttrs({death:0,mention:0,promotion:0,plunder:0,plunder_value:""})
|
|
} else{
|
|
deployment = values.force_deployment;
|
|
br = parseInt(values.battle_result);
|
|
|
|
let death = 0;
|
|
let mention = 0;
|
|
let promotion = 0;
|
|
let plunder = 0;
|
|
let plunder_str= "";
|
|
|
|
if (deployment=="siege"){
|
|
results = siege[br-1];
|
|
console.log("results:"+results);
|
|
death = results[0];
|
|
mention = results[1]
|
|
promotion = results[2]
|
|
plunder = results[3]
|
|
plunder_str = results[4]
|
|
} else if (deployment=="assault"){
|
|
|
|
results = assault[br-1];
|
|
console.log("results:"+results);
|
|
death = results[0];
|
|
mention = results[1]
|
|
promotion = results[2]
|
|
plunder = results[3]
|
|
plunder_str = results[4]
|
|
|
|
} else if (deployment=="defense"){
|
|
|
|
results = defense[br-1];
|
|
console.log("results:"+results);
|
|
death = results[0];
|
|
mention = results[1]
|
|
promotion = results[2]
|
|
plunder = results[3]
|
|
plunder_str = results[4]
|
|
|
|
} else if (deployment=="fieldops"){
|
|
results = fieldops[br-1];
|
|
console.log("results:"+results);
|
|
death = results[0];
|
|
mention = results[1]
|
|
promotion = results[2]
|
|
plunder = results[3]
|
|
plunder_str = results[4]
|
|
|
|
}
|
|
else {
|
|
console.log("Error");
|
|
}
|
|
|
|
death = parseInt(death);
|
|
mention = parseInt(mention);
|
|
promotion = parseInt(promotion);
|
|
if (plunder!="-"){
|
|
plunder = parseInt(plunder);
|
|
}
|
|
|
|
if (values.battle_command=="army"){
|
|
console.log("army.death:"+army.death);
|
|
console.log("army.mention:"+army.mention);
|
|
console.log("army.promotion:"+army.promotion);
|
|
console.log("army.plunder:"+army.plunder);
|
|
death = death+army.death;
|
|
mention = mention+army.mention;
|
|
promotion = promotion+army.promotion;
|
|
if (plunder!="-"){
|
|
plunder = plunder+army.plunder;
|
|
}
|
|
|
|
} else if (values.battle_command=="division"){
|
|
console.log("division.death:"+division.death);
|
|
console.log("division.mention:"+division.mention);
|
|
console.log("division.promotion:"+division.promotion);
|
|
console.log("division.plunder:"+division.plunder);
|
|
death = death+division.death;
|
|
mention = mention+division.mention;
|
|
promotion = promotion+division.promotion;
|
|
if (plunder!="-"){
|
|
plunder = plunder+division.plunder;
|
|
}
|
|
|
|
} else if (values.battle_command=="brigade"){
|
|
console.log("brigade.death:"+brigade.death);
|
|
console.log("brigade.mention:"+brigade.mention);
|
|
console.log("brigade.promotion:"+brigade.promotion);
|
|
console.log("brigade.plunder:"+brigade.plunder);
|
|
death = death+brigade.death;
|
|
mention = mention+brigade.mention;
|
|
promotion = promotion+brigade.promotion;
|
|
if (plunder!="-"){
|
|
plunder = plunder+brigade.plunder;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
let regiment_mods = eval(values.battle_regiment)
|
|
|
|
console.log("regiment_mods.death:"+regiment_mods.death);
|
|
console.log("regiment_mods.mention:"+regiment_mods.mention);
|
|
console.log("regiment_mods.promotion:"+regiment_mods.promotion);
|
|
console.log("regiment_mods.plunder:"+regiment_mods.plunder);
|
|
|
|
death = death+regiment_mods.death;
|
|
mention = mention+regiment_mods.mention;
|
|
promotion = promotion+regiment_mods.promotion;
|
|
if (plunder!="-"){
|
|
plunder = plunder+regiment_mods.plunder;
|
|
}
|
|
|
|
if (values.battle_rank!="Private"){
|
|
let rank_mods = eval(values.battle_rank)
|
|
|
|
console.log("rank_mods.death:"+rank_mods.death);
|
|
console.log("rank_mods.mention:"+rank_mods.mention);
|
|
console.log("rank_mods.promotion:"+rank_mods.promotion);
|
|
console.log("rank_mods.plunder:"+rank_mods.plunder);
|
|
|
|
death = death+rank_mods.death;
|
|
mention = mention+rank_mods.mention;
|
|
promotion = promotion+rank_mods.promotion;
|
|
if (plunder!="-"){
|
|
plunder = plunder+rank_mods.plunder;
|
|
}
|
|
}
|
|
|
|
|
|
console.log("death:"+death);
|
|
console.log("mention:"+mention);
|
|
console.log("promotion:"+promotion);
|
|
console.log("plunder:"+plunder);
|
|
console.log("plunder_str:"+plunder_str);
|
|
|
|
|
|
|
|
setAttrs({death:death,mention:mention,promotion:promotion,plunder:plunder,plunder_value:plunder_str});
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
});
|
|
;
|
|
|
|
|
|
|
|
on("clicked:reset", function() {
|
|
// write your sheetworker to do things here
|
|
setAttrs({week1_income:0,week2_income:0,week3_income:0,week4_income:0,week1_spending:0,week2_spending:0,week3_spending:0,week4_spending:0,week1_sps:0,week2_sps:0,week3_sps:0,week4_sps:0,week1_desc:"",week2_desc:"",week3_desc:"",week4_desc:""});
|
|
});
|
|
|
|
on("change:str change:con", function(event) {
|
|
console.log(`change con or str ${JSON.stringify(event)}`);
|
|
getAttrs(["str","con"], function(values) {
|
|
console.log(`change budo values ${JSON.stringify(values)}`);
|
|
let tot = parseInt(values.str)*parseInt(values.con);
|
|
setAttrs({end:tot});
|
|
});
|
|
});
|
|
|
|
const income_listeners = ["monthly_allowance_support_income","title_income","regiment_rank_income","mistress_income","appointment_income"];
|
|
income_listeners.forEach(attribute => {
|
|
on(`change:${attribute}`, function(event) {
|
|
console.log(`income listener event ${JSON.stringify(event)}`);
|
|
getAttrs(["monthly_allowance_support_income","title_income","regiment_rank_income","mistress_income","appointment_income"], function(values) {
|
|
console.log(`values ${JSON.stringify(values)}`);
|
|
|
|
var sum = 0;
|
|
for( var el in values ) {
|
|
if( values.hasOwnProperty( el ) ) {
|
|
sum += parseInt(values[el]);
|
|
}
|
|
}
|
|
console.log("sum:"+sum) ;
|
|
setAttrs({monthly_income:sum});
|
|
});
|
|
|
|
});
|
|
});
|
|
|
|
|
|
const weekly_income_listeners = ["week1_income","week2_income","week3_income","week4_income","monthly_income"];
|
|
weekly_income_listeners.forEach(attribute => {
|
|
on(`change:${attribute}`, function(event) {
|
|
console.log(`income listener event ${JSON.stringify(event)}`);
|
|
getAttrs(["week1_income","week2_income","week3_income","week4_income","monthly_income"], function(values) {
|
|
console.log(`values ${JSON.stringify(values)}`);
|
|
|
|
var sum = 0;
|
|
for( var el in values ) {
|
|
if( values.hasOwnProperty( el ) ) {
|
|
sum += parseInt(values[el]);
|
|
}
|
|
}
|
|
console.log("sum:"+sum) ;
|
|
setAttrs({final_income:sum});
|
|
});
|
|
|
|
});
|
|
});
|
|
|
|
|
|
const spending_listeners = ["monthly_allowance_support_spending","club_spending","mistress_spending"];
|
|
spending_listeners.forEach(attribute => {
|
|
on(`change:${attribute}`, function(event) {
|
|
console.log(`income listener event ${JSON.stringify(event)}`);
|
|
getAttrs(["monthly_allowance_support_spending","club_spending","mistress_spending"], function(values) {
|
|
console.log(`values ${JSON.stringify(values)}`);
|
|
|
|
var sum = 0;
|
|
for( var el in values ) {
|
|
if( values.hasOwnProperty( el ) ) {
|
|
sum += parseInt(values[el]);
|
|
}
|
|
}
|
|
console.log("sum:"+sum) ;
|
|
setAttrs({monthly_spending:sum});
|
|
});
|
|
|
|
});
|
|
});
|
|
|
|
|
|
const weekly_spending_listeners = ["week1_spending","week2_spending","week3_spending","week4_spending","monthly_spending"];
|
|
weekly_spending_listeners.forEach(attribute => {
|
|
on(`change:${attribute}`, function(event) {
|
|
console.log(`income listener event ${JSON.stringify(event)}`);
|
|
getAttrs(["week1_spending","week2_spending","week3_spending","week4_spending","monthly_spending"], function(values) {
|
|
console.log(`values ${JSON.stringify(values)}`);
|
|
|
|
var sum = 0;
|
|
for( var el in values ) {
|
|
if( values.hasOwnProperty( el ) ) {
|
|
sum += parseInt(values[el]);
|
|
}
|
|
}
|
|
console.log("sum:"+sum) ;
|
|
setAttrs({final_spending:sum});
|
|
});
|
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
const sp_listeners = ["monthly_allowance_support_sps","title_sps","club_sps","regiment_rank_sps","regiment_rank_sps","mistress_sps","appointment_sps","mentions_sps"];
|
|
sp_listeners.forEach(attribute => {
|
|
on(`change:${attribute}`, function(event) {
|
|
console.log(`income listener event ${JSON.stringify(event)}`);
|
|
getAttrs(["monthly_allowance_support_sps","title_sps","club_sps","regiment_rank_sps","regiment_rank_sps","mistress_sps","appointment_sps","mentions_sps"], function(values) {
|
|
console.log(`values ${JSON.stringify(values)}`);
|
|
|
|
var sum = 0;
|
|
for( var el in values ) {
|
|
if( values.hasOwnProperty( el ) ) {
|
|
sum += parseInt(values[el]);
|
|
}
|
|
}
|
|
console.log("sum:"+sum) ;
|
|
setAttrs({monthly_sps:sum});
|
|
});
|
|
|
|
});
|
|
});
|
|
|
|
|
|
const weekly_sp_listeners = ["week1_sps","week2_sps","week3_sps","week4_sps","monthly_sps"];
|
|
weekly_sp_listeners.forEach(attribute => {
|
|
on(`change:${attribute}`, function(event) {
|
|
console.log(`income listener event ${JSON.stringify(event)}`);
|
|
getAttrs(["week1_sps","week2_sps","week3_sps","week4_sps","monthly_sps"], function(values) {
|
|
console.log(`values ${JSON.stringify(values)}`);
|
|
|
|
var sum = 0;
|
|
for( var el in values ) {
|
|
if( values.hasOwnProperty( el ) ) {
|
|
sum += parseInt(values[el]);
|
|
}
|
|
}
|
|
console.log("sum:"+sum) ;
|
|
setAttrs({final_sps:sum});
|
|
});
|
|
|
|
});
|
|
});
|
|
|
|
|
|
const funds_adjustment_listeners = ["final_income","final_spending"];
|
|
funds_adjustment_listeners.forEach(attribute => {
|
|
on(`change:${attribute}`, function(event) {
|
|
console.log(`income listener event ${JSON.stringify(event)}`);
|
|
getAttrs(["final_income","final_spending"], function(values) {
|
|
console.log(`values ${JSON.stringify(values)}`);
|
|
|
|
var sum = parseInt(values.final_income) - parseInt(values.final_spending);
|
|
|
|
|
|
console.log("sum:"+sum) ;
|
|
|
|
if (sum > 0){
|
|
sum= "+"+sum;
|
|
} else {
|
|
sum = ""+sum;
|
|
}
|
|
|
|
setAttrs({funds_adjustment:sum});
|
|
});
|
|
|
|
});
|
|
});
|
|
|
|
</script>
|
|
|
|
|
|
|