WIP: Score bonuses on attacks
							parent
							
								
									58cbeb95a9
								
							
						
					
					
						commit
						3283519e4a
					
				|  | @ -164,7 +164,7 @@ export class OseActorSheet extends ActorSheet { | |||
|       let actorObject = this.actor; | ||||
|       let element = event.currentTarget; | ||||
|       let attack = element.parentElement.parentElement.dataset.attack; | ||||
|       actorObject.rollAttack({ label: this.actor.name, type: attack }, ev); | ||||
|       actorObject.rollAttack({ skipDialog: ev.ctrlKey }, { type: attack }); | ||||
|     }); | ||||
| 
 | ||||
|     html.find(".spells .item-reset").click((ev) => { | ||||
|  |  | |||
|  | @ -393,12 +393,12 @@ export class OseActor extends Actor { | |||
|     if (ascending) { | ||||
|       rollParts.push(data.thac0.bba.toString()); | ||||
|     } | ||||
|     if (attData.type == "missile") { | ||||
|     if (options.type == "missile") { | ||||
|       rollParts.push( | ||||
|         data.scores.dex.mod.toString(), | ||||
|         data.thac0.mod.missile.toString() | ||||
|       ); | ||||
|     } else if (attData.type == "melee") { | ||||
|     } else if (options.type == "melee") { | ||||
|       rollParts.push( | ||||
|         data.scores.str.mod.toString(), | ||||
|         data.thac0.mod.melee.toString() | ||||
|  | @ -408,14 +408,14 @@ export class OseActor extends Actor { | |||
|       rollParts.push(attData.item.data.bonus); | ||||
|     } | ||||
|     let thac0 = data.thac0.value; | ||||
|     if (attData.type == "melee") { | ||||
|     if (options.type == "melee") { | ||||
|       dmgParts.push(data.scores.str.mod); | ||||
|     } | ||||
|     const rollData = { | ||||
|       actor: this.data, | ||||
|       item: attData.item, | ||||
|       roll: { | ||||
|         type: attData.type, | ||||
|         type: options.type, | ||||
|         thac0: thac0, | ||||
|         dmg: dmgParts, | ||||
|       }, | ||||
|  |  | |||
|  | @ -65,9 +65,13 @@ export class OseDice { | |||
|     }; | ||||
| 
 | ||||
|     // Optionally include a situational bonus
 | ||||
|     // if (form !== null) data["bonus"] = form.bonus.value;
 | ||||
|     if (data.item && data.item.data.bonus) parts.push(data.item.data.bonus); | ||||
| 
 | ||||
|     if (form !== null && form.bonus.value) { | ||||
|       parts.push(form.bonus.value); | ||||
|     } | ||||
|     if (data.item && data.item.data.bonus) { | ||||
|       parts.push(data.item.data.bonus.toString()); | ||||
|     } | ||||
|     console.log(parts); | ||||
|     const roll = new Roll(parts.join("+"), data).roll(); | ||||
| 
 | ||||
|     // Convert the roll to a chat message and return the roll
 | ||||
|  | @ -169,8 +173,9 @@ export class OseDice { | |||
|     }; | ||||
| 
 | ||||
|     // Optionally include a situational bonus
 | ||||
|     if (form !== null) data["bonus"] = form.bonus.value; | ||||
|     if (data["bonus"]) parts.push(data["bonus"]); | ||||
|     if (form !== null && form.bonus.value) parts.push(form.bonus.value); | ||||
| 
 | ||||
|     if (data.item && data.item.data.bonus) parts.push(data.item.data.bonus); | ||||
| 
 | ||||
|     const roll = new Roll(parts.join("+"), data).roll(); | ||||
|     const dmgRoll = new Roll(data.roll.dmg.join("+"), data).roll(); | ||||
|  | @ -243,7 +248,7 @@ export class OseDice { | |||
|     title = null, | ||||
|   } = {}) { | ||||
|     let rolled = false; | ||||
| 
 | ||||
|     console.log(data); | ||||
|     const template = "systems/ose/templates/chat/roll-dialog.html"; | ||||
|     let dialogData = { | ||||
|       formula: parts.join(" "), | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue