mirror of
https://github.com/asphyxia-core/plugins.git
synced 2026-09-12 05:05:49 -05:00
PlayerBoard Customization Improvement
This commit is contained in:
@@ -60,7 +60,7 @@ function parsePlayerBoard(input: string | PlayerInfo['playerboard']): PlayerInfo
|
||||
};
|
||||
|
||||
const stickers = Array.isArray(value.sticker) ? value.sticker : [];
|
||||
const normalizedStickers = stickers.slice(0, 10).reduce((result: any[], sticker: any) => {
|
||||
const normalizedStickers = stickers.slice(0, 11).reduce((result: any[], sticker: any) => {
|
||||
if (!sticker || typeof sticker !== 'object') return result;
|
||||
const position = Array.isArray(sticker.position) ? sticker.position : [];
|
||||
const scale = Array.isArray(sticker.scale) ? sticker.scale : [];
|
||||
|
||||
@@ -25,7 +25,7 @@ export function getPlayerStickerResponse(playerCard : any[]) : PlayerStickerResp
|
||||
return stickers
|
||||
}
|
||||
|
||||
for (const item of playerCard.slice(0, 10)) {
|
||||
for (const item of playerCard.slice(0, 11)) {
|
||||
const id = _.get(item, 'id');
|
||||
// Accept both the historical card shape and the wire-shaped playerboard
|
||||
// shape used by the editor.
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
return "Tri-Boost Re:EVOLVE"
|
||||
case "matixx":
|
||||
return "Matixx"
|
||||
case "EXCHAIN":
|
||||
return "exchain"
|
||||
case "exchain":
|
||||
return "EXCHAIN"
|
||||
case "nextage":
|
||||
return "NEX+AGE"
|
||||
case "highvoltage":
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
return "Tri-Boost Re:EVOLVE"
|
||||
case "matixx":
|
||||
return "Matixx"
|
||||
case "EXCHAIN":
|
||||
return "exchain"
|
||||
case "exchain":
|
||||
return "EXCHAIN"
|
||||
case "nextage":
|
||||
return "NEX+AGE"
|
||||
case "highvoltage":
|
||||
@@ -87,7 +87,7 @@ div
|
||||
span.icon
|
||||
i.mdi.mdi-account-edit
|
||||
| User Detail (#{getFullGameVersion(i.version)})
|
||||
a.button.is-link.playerboard-link(href=('/plugin/gitadora@asphyxia/profile?refid=' + refid + '&view=playerboard') style="margin-left:auto")
|
||||
a.button.is-link.playerboard-link(href=('/plugin/gitadora@asphyxia/profile?refid=' + refid + '&version=' + i.version + '&view=playerboard') style="margin-left:auto")
|
||||
span.icon
|
||||
i.mdi.mdi-view-dashboard
|
||||
span PlayerBoard
|
||||
@@ -110,7 +110,6 @@ div
|
||||
.control
|
||||
input.input(type="text" name="title", value=i.title)
|
||||
- const boardValue = getPlayerboardValue(i)
|
||||
.field
|
||||
.field.is-hidden(data-playerboard-section)#playerboard
|
||||
label.label Playerboard
|
||||
.box.playerboard-editor(data-playerboard-editor)
|
||||
@@ -352,9 +351,9 @@ script.
|
||||
row.querySelector('[data-sticker-field="pos_x"]').value = fromXPercent(x).toFixed(2);
|
||||
row.querySelector('[data-sticker-field="pos_y"]').value = fromYPercent(y).toFixed(2);
|
||||
sync(editor);
|
||||
});
|
||||
button.style.left = `${x}%`;
|
||||
button.style.top = `${y}%`;
|
||||
});
|
||||
button.addEventListener('pointerup', event => { if (drag) { try { button.releasePointerCapture(event.pointerId); } catch (_) {} } drag = null; });
|
||||
button.addEventListener('pointercancel', () => { drag = null; });
|
||||
preview.appendChild(button);
|
||||
@@ -491,11 +490,15 @@ script.
|
||||
script.
|
||||
(() => {
|
||||
const isBoardView = new URLSearchParams(location.search).get('view') === 'playerboard';
|
||||
const toggle = document.querySelector('.playerboard-link');
|
||||
if (toggle && isBoardView) {
|
||||
toggle.textContent = 'Back to Profile';
|
||||
toggle.href = location.pathname + '?refid=' + encodeURIComponent(new URLSearchParams(location.search).get('refid') || '');
|
||||
}
|
||||
const selectedVersion = new URLSearchParams(location.search).get('version');
|
||||
document.querySelectorAll('.playerboard-link').forEach(toggle => {
|
||||
const card = toggle.closest('.card');
|
||||
const version = card && card.querySelector('input[name="version"]');
|
||||
if (isBoardView && (!selectedVersion || !version || version.value === selectedVersion)) {
|
||||
toggle.textContent = 'Back to Profile';
|
||||
toggle.href = location.pathname + '?refid=' + encodeURIComponent(new URLSearchParams(location.search).get('refid') || '') + '&version=' + encodeURIComponent(version ? version.value : '');
|
||||
}
|
||||
});
|
||||
const editor = document.querySelector('[data-playerboard-editor]');
|
||||
const preview = document.querySelector('[data-board-preview]');
|
||||
if (!editor || !preview) return;
|
||||
@@ -531,3 +534,18 @@ script.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
script.
|
||||
(() => {
|
||||
const params = new URLSearchParams(location.search);
|
||||
const selectedVersion = params.get('version');
|
||||
if (!selectedVersion || params.get('view') !== 'playerboard') return;
|
||||
document.querySelectorAll('[data-playerboard-editor]').forEach(editor => {
|
||||
const form = editor.closest('form');
|
||||
const version = form && form.querySelector('input[name="version"]');
|
||||
if (version && version.value !== selectedVersion) editor.closest('.card').style.display = 'none';
|
||||
});
|
||||
})();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user