|
function drawDefault(token, fillColor, p, aw, h, hh, w, hw, ah) {
|
|
|
|
token.target.beginFill(fillColor, 1.0)
|
|
.lineStyle(1, 0x000000)
|
|
.drawPolygon([-p, hh, -p - aw, hh - ah, -p - aw, hh + ah])
|
|
.drawPolygon([w + p, hh, w + p + aw, hh - ah, w + p + aw, hh + ah])
|
|
.drawPolygon([hw, -p, hw - ah, -p - aw, hw + ah, -p - aw])
|
|
.drawPolygon([hw, h + p, hw - ah, h + p + aw, hw + ah, h + p + aw]);
|
|
|
|
}
|
|
|
|
function drawCrossHairs1(token, fillColor, p, aw, h, hh, w, hw, ah) {
|
|
let borderColor = 0x000000;
|
|
let rw = 10; // rect width
|
|
let rh = 30; // rect length
|
|
let r = hh; // radius
|
|
let topX = hw - rw / 2;
|
|
let topY = 0 - rh / 2;
|
|
let rightX = w - rh / 2;
|
|
let rightY = hh - rw / 2;
|
|
let botX = hw - rw / 2;
|
|
let botY = h - rh / 2;
|
|
let leftX = 0 - rh / 2;
|
|
let leftY = hh - rw / 2;
|
|
token.target
|
|
.beginFill(borderColor, 0).lineStyle(10, borderColor).drawCircle(hw, hh, r).endFill()
|
|
.beginFill(fillColor, 0).lineStyle(6, fillColor).drawCircle(hw, hh, r).endFill()
|
|
.beginFill(fillColor).lineStyle(2, borderColor).drawRect(topX, topY, rw, rh).endFill() // top bar
|
|
.beginFill(fillColor).lineStyle(2, borderColor).drawRect(rightX, rightY, rh, rw).endFill() // right bar
|
|
.beginFill(fillColor).lineStyle(2, borderColor).drawRect(botX, botY, rw, rh).endFill() // bottom bar
|
|
.beginFill(fillColor).lineStyle(2, borderColor).drawRect(leftX, leftY, rh, rw).endFill(); // tleft bar
|
|
}
|
|
|
|
function drawCrossHairs2(token, fillColor, p, aw, h, hh, w, hw, ah) {
|
|
let borderColor = 0x000000;
|
|
let rw = 10; // rect width
|
|
let rh = 50; // rect length
|
|
let r = hh; // radius
|
|
let topX = hw - rw / 2;
|
|
let topY = 0 - rh / 2;
|
|
let rightX = w - rh / 2;
|
|
let rightY = hh - rw / 2;
|
|
let botX = hw - rw / 2;
|
|
let botY = h - rh / 2;
|
|
let leftX = 0 - rh / 2;
|
|
let leftY = hh - rw / 2;
|
|
token.target
|
|
.beginFill(borderColor, 1).lineStyle(8, borderColor).drawCircle(hw, hh, 2).endFill()
|
|
.beginFill(fillColor, 1).lineStyle(6, fillColor).drawCircle(hw, hh, 2).endFill()
|
|
.beginFill(fillColor).lineStyle(2, borderColor).drawRect(topX, topY, rw, rh).endFill() // top bar
|
|
.beginFill(fillColor).lineStyle(2, borderColor).drawRect(rightX, rightY, rh, rw).endFill() // right bar
|
|
.beginFill(fillColor).lineStyle(2, borderColor).drawRect(botX, botY, rw, rh).endFill() // bottom bar
|
|
.beginFill(fillColor).lineStyle(2, borderColor).drawRect(leftX, leftY, rh, rw).endFill(); // tleft bar
|
|
}
|
|
|
|
function drawBullsEye1(token, fillColor, p, aw, h, hh, w, hw, ah) {
|
|
let borderColor = 0x000000;
|
|
token.target
|
|
.beginFill(borderColor, 0).lineStyle(6, borderColor).drawCircle(hw, hh, hh).endFill()
|
|
.beginFill(fillColor, 0).lineStyle(4, fillColor).drawCircle(hw, hh, hh).endFill() // stop here for outer ring
|
|
.beginFill(borderColor, 0).lineStyle(6, borderColor).drawCircle(hw, hh, hh - 40).endFill()
|
|
.beginFill(fillColor, 0).lineStyle(4, fillColor).drawCircle(hw, hh, hh - 40).endFill();
|
|
}
|
|
|
|
function drawBullsEye2(token, fillColor, p, aw, h, hh, w, hw, ah) {
|
|
let borderColor = 0x000000;
|
|
token.target
|
|
.beginFill(borderColor, 0).lineStyle(6, borderColor).drawCircle(hw, hh, hh).endFill()
|
|
.beginFill(fillColor, 0).lineStyle(4, fillColor).drawCircle(hw, hh, hh).endFill() // stop here for outer ring
|
|
.beginFill(borderColor, 0).lineStyle(6, borderColor).drawCircle(hw, hh, hh - 20).endFill()
|
|
.beginFill(fillColor, 0).lineStyle(4, fillColor).drawCircle(hw, hh, hh - 20).endFill()
|
|
.beginFill(fillColor, 1).lineStyle(8, fillColor).drawCircle(hw, hh, 2).endFill();
|
|
|
|
}
|
|
|
|
function drawBetterTarget(token, fillColor, p, aw, h, hh, w, hw, ah) {
|
|
let size = token.w;
|
|
// Constrain dimensions to the shortest axis
|
|
if (size > token.h) {
|
|
size = token.h;
|
|
}
|
|
const padding = size / 8;
|
|
const stroke = size / 16;
|
|
const vmid = token.h / 2;
|
|
const hmid = token.w / 2;
|
|
const crossLen = (size / 2) - (padding * 1.5);
|
|
// TODO: Remove this when core PIXI.js graphics-smooth version >= v0.0.17
|
|
const smoothGraphicsHack = 0.999;
|
|
token.target
|
|
.beginFill(0x000000, 0.0).lineStyle(stroke + 2, 0x000000)
|
|
.drawCircle(hmid, vmid, (size / 2) - padding - (stroke / 2))
|
|
.endFill()
|
|
.beginFill(0x000000, 0.0).lineStyle(stroke, fillColor)
|
|
.drawCircle(hmid, vmid, (size / 2) - padding - (stroke / 2))
|
|
.endFill()
|
|
.beginFill(fillColor, 1.0).lineStyle(1, 0x000000)
|
|
.drawRoundedRect(hmid - (stroke / 2), vmid - stroke - (padding / 2) - crossLen, stroke, crossLen, stroke / 2 * smoothGraphicsHack)
|
|
.drawRoundedRect(hmid - (stroke / 2), vmid + (padding * 1.5) - stroke, stroke, crossLen, stroke / 2 * smoothGraphicsHack)
|
|
.drawRoundedRect(hmid - stroke - (padding / 2) - crossLen, vmid - (stroke / 2), crossLen, stroke, stroke / 2 * smoothGraphicsHack)
|
|
.drawRoundedRect(hmid + (padding * 1.5) - stroke, vmid - (stroke / 2), crossLen, stroke, stroke / 2 * smoothGraphicsHack)
|
|
.endFill();
|
|
}
|