Position and effect support, chat formatting

This commit is contained in:
Alex Tsourakis 2020-08-01 12:03:56 +02:00
parent 2e332d1c9c
commit fd73129e2a
6 changed files with 182 additions and 29 deletions

View file

@ -55,6 +55,22 @@ export class BladesActor extends Actor {
<select id="mod" name="mod">
${this.createListOfDiceMods(-3,+3,0)}
</select>
</div>
<div class="form-group">
<label>Position:</label>
<select id="pos" name="pos">
<option value="controlled">Controlled</option>
<option value="risky" selected>Risky</option>
<option value="desperate">Desperate</option>
</select>
</div>
<div class="form-group">
<label>Effect:</label>
<select id="fx" name="fx">
<option value="limited">Limited</option>
<option value="standard" selected>Standard</option>
<option value="great">Great</option>
</select>
</div>
</form>
`,
@ -64,7 +80,9 @@ export class BladesActor extends Actor {
label: `Roll`,
callback: (html) => {
let modifier = parseInt(html.find('[name="mod"]')[0].value);
this.rollAttribute(attribute_name, modifier);
let position = html.find('[name="pos"]')[0].value;
let effect = html.find('[name="fx"]')[0].value;
this.rollAttribute(attribute_name, modifier, position, effect);
}
},
no: {
@ -79,7 +97,7 @@ export class BladesActor extends Actor {
/* -------------------------------------------- */
rollAttribute(attribute_name = "", additional_dice_amount = 0) {
rollAttribute(attribute_name = "", additional_dice_amount = 0, position, effect) {
let dice_amount = 0;
if (attribute_name !== "") {
@ -91,7 +109,7 @@ export class BladesActor extends Actor {
}
dice_amount += additional_dice_amount;
bladesRoll(dice_amount, attribute_name);
bladesRoll(dice_amount, attribute_name, position, effect);
}
/* -------------------------------------------- */

View file

@ -2,8 +2,10 @@
* Roll Dice.
* @param {int} dice_amount
* @param {string} attribute_name
* @param {string} position
* @param {string} effect
*/
export async function bladesRoll(dice_amount, attribute_name = "") {
export async function bladesRoll(dice_amount, attribute_name = "", position="risky", effect="standard") {
// Is Dice So Nice enabled ?
let niceDice = false;
@ -25,11 +27,11 @@ export async function bladesRoll(dice_amount, attribute_name = "") {
// show 3d Dice so Nice if enabled
if (niceDice) {
game.dice3d.showForRoll(r).then((displayed) => {
showChatRollMessage(r, zeromode, attribute_name);
showChatRollMessage(r, zeromode, attribute_name, position, effect);
});
} else {
r.roll();
showChatRollMessage(r, zeromode, attribute_name)
showChatRollMessage(r, zeromode, attribute_name, position, effect)
}
}
@ -39,8 +41,10 @@ export async function bladesRoll(dice_amount, attribute_name = "") {
* @param {Roll} r
* @param {Boolean} zeromode
* @param {String} attribute_name
* @param {string} position
* @param {string} effect
*/
async function showChatRollMessage(r, zeromode, attribute_name = "") {
async function showChatRollMessage(r, zeromode, attribute_name = "", position="", effect="") {
let speaker = ChatMessage.getSpeaker();
let isBelow070 = isNewerVersion('0.7.0', game.data.version);
@ -56,7 +60,7 @@ async function showChatRollMessage(r, zeromode, attribute_name = "") {
// Retrieve Roll status.
let roll_status = getBladesRollStatus(rolls, zeromode);
let result = await renderTemplate("systems/blades-in-the-dark/templates/blades-roll.html", {rolls: rolls, roll_status: roll_status, attribute_name: attribute_name});
let result = await renderTemplate("systems/blades-in-the-dark/templates/blades-roll.html", {rolls: rolls, roll_status: roll_status, attribute_name: attribute_name, position: position, effect: effect});
let messageData = {
speaker: speaker,

View file

@ -6,6 +6,8 @@ $almost_black: #191813;
$almost_white: #EEEFFF;
$gold: #DAA520;
$green: #008000;
$light_green: #12a012;
$blue: #04578f;
// Imports
@import 'mixin.scss';
@ -107,6 +109,24 @@ $green: #008000;
text-transform: capitalize;
}
.chat-label {
background-color: $almost_black;
color: $almost_white;
font-size: 21px;
text-align: center;
padding: 0px 5px;
height: 30px !important;
text-transform: capitalize;
}
.chat-label-small {
background-color: $gray;
color: $almost_black;
font-size: small;
text-align: center;
padding: 3px 5px;
height: 20px !important;
}
.label-stripe {
text-transform: uppercase;
background-color: $almost_black;
@ -130,6 +150,29 @@ $green: #008000;
font-weight: bold;
}
.label-stripe-chat {
text-transform: uppercase;
background-color: $almost_black;
color: $almost_white;
margin-bottom: 10px;
position: relative;
padding-top: 3px;
display: flex;
font-weight: bold;
margin: 0;
}
.label-stripe-chat-small {
text-transform: capitalize;
background-color: $gray;
color: $almost_black;
margin-bottom: 10px;
position: relative;
padding-top: 3px;
display: flex;
font-weight: bold;
}
.description {
font-style: italic;
}
@ -585,9 +628,10 @@ $green: #008000;
.die {
font-weight: bold;
text-transform: capitalize;
font-size: large;
&.critical-success {
color: $gold;
color: $light_green;
}
&.success {
@ -595,7 +639,7 @@ $green: #008000;
}
&.partial-success {
color: $almost_black;
color: $blue;
}
&.failure {

View file

@ -100,6 +100,23 @@
height: 30px !important;
text-transform: capitalize;
}
* .chat-label {
background-color: #191813;
color: #EEEFFF;
font-size: 21px;
text-align: center;
padding: 0px 5px;
height: 30px !important;
text-transform: capitalize;
}
* .chat-label-small {
background-color: #999;
color: #191813;
font-size: small;
text-align: center;
padding: 3px 5px;
height: 20px !important;
}
* .label-stripe {
text-transform: uppercase;
background-color: #191813;
@ -121,6 +138,27 @@
display: flex;
font-weight: bold;
}
* .label-stripe-chat {
text-transform: uppercase;
background-color: #191813;
color: #EEEFFF;
margin-bottom: 10px;
position: relative;
padding-top: 3px;
display: flex;
font-weight: bold;
margin: 0;
}
* .label-stripe-chat-small {
text-transform: capitalize;
background-color: #999;
color: #191813;
margin-bottom: 10px;
position: relative;
padding-top: 3px;
display: flex;
font-weight: bold;
}
* .description {
font-style: italic;
}
@ -866,15 +904,16 @@
* .blades-die-tooltip .die {
font-weight: bold;
text-transform: capitalize;
font-size: large;
}
* .blades-die-tooltip .die.critical-success {
color: #DAA520;
color: #12a012;
}
* .blades-die-tooltip .die.success {
color: #008000;
}
* .blades-die-tooltip .die.partial-success {
color: #191813;
color: #04578f;
}
* .blades-die-tooltip .die.failure {
color: red;

View file

@ -1 +1 @@
{"version":3,"sourceRoot":"","sources":["../scss/mixin.scss","../scss/style.scss"],"names":[],"mappings":"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","file":"blades.css"}
{"version":3,"sourceRoot":"","sources":["../scss/mixin.scss","../scss/style.scss"],"names":[],"mappings":"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","file":"blades.css"}

View file

@ -1,25 +1,73 @@
<div class="dice-tooltip blades-die-tooltip">
<div class="die {{roll_status}}">
{{#if attribute_name}}Roll {{attribute_name}}: {{/if}}
{{#if (eq roll_status "critical-success")}}
Critical Success!
{{/if}}
{{#if attribute_name}}<div class="chat-label label-stripe-chat">{{attribute_name}}</div>{{/if}}
{{#if position}}
<div class="chat-label-small label-stripe-chat-small">
{{position}} | {{effect}}
</div>
{{/if}}
{{#if (eq roll_status "success")}}
Success!
{{/if}}
{{#if (eq roll_status "critical-success")}}
<div class="die {{roll_status}}">Critical Success!</div>
<div class="description">
<p>
You do it with <strong>increased effect</strong>.
</p>
</div>
{{/if}}
{{#if (eq roll_status "partial-success")}}
Partial Success
{{/if}}
{{#if (eq roll_status "success")}}
<div class="die {{roll_status}}">Success!</div>
<div class="description">
<p>
You do it.
</p>
</div>
{{/if}}
{{#if (eq roll_status "failure")}}
Failure
{{/if}}
{{#if (eq roll_status "partial-success")}}
<div class="die {{roll_status}}">Partial Success</div>
<div class="description">
<p>
{{#if (eq position "controlled")}}
You hesitate. Withdraw and try a different approach, or else do it with a minor consequence: a <strong>minor
complication</strong> occurs, you have <strong>reduced effect</strong>, you suffer <strong>lesser
harm</strong>,
you end up in a <strong>risky</strong> position.
{{else if (eq position "risky")}}
You do it, but theres a consequence: you suffer <strong>harm</strong>, a <strong>complication</strong> occurs,
you have <strong>reduced effect</strong>, you end up in a <strong>desperate</strong> position.
{{else}}
You do it, but theres a consequence: you suffer <strong>severe harm</strong>, a <strong>serious
complication</strong> occurs, you have <strong>reduced effect</strong>.
{{/if}}
</p>
</div>
{{/if}}
{{#if (eq roll_status "failure")}}
<div class="die {{roll_status}}">Failure</div>
<div class="description">
<p>
{{#if (eq position "controlled")}}
You falter. Press on by seizing a <strong>risky</strong> opportunity, or withdraw and try a different approach.
{{else if (eq position "risky")}}
Things go badly. You suffer <strong>harm</strong> a <strong>complication</strong> occurs, you end up in a
<strong>desperate</strong> position, you <strong>lose this opportunity</strong>.
{{else}}
Its the worst outcome. You suffer <strong>severe harm</strong>, a <strong>serious complication occurs</strong>,
you <strong>lose this opportunity for action</strong>.
{{/if}}
</p>
</div>
{{/if}}
<ol class="dice-rolls">
{{#each this.rolls}}
<li class="roll die d6">{{{this.result}}}</li>
{{#if this.result}}
<li class="roll die d6">{{{this.result}}}</li>
{{else}}
<li class="roll die d6">{{{this.roll}}}</li>
{{/if}}
{{/each}}
</ol>
</ol>
</div>