f
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
876e16b85a
commit
11426c3eda
|
@ -0,0 +1,21 @@
|
||||||
|
const myContent = `
|
||||||
|
Value:
|
||||||
|
<input id="myInputID" type="number" value="0" />
|
||||||
|
`;
|
||||||
|
|
||||||
|
new Dialog({
|
||||||
|
title: "My Dialog Title",
|
||||||
|
content: myContent,
|
||||||
|
buttons: {
|
||||||
|
button1: {
|
||||||
|
label: "Display Value",
|
||||||
|
callback: (html) => myCallback(html),
|
||||||
|
icon: `<i class="fas fa-check"></i>`
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}).render(true);
|
||||||
|
|
||||||
|
function myCallback(html) {
|
||||||
|
const value = html.find("input#myInputID").val();
|
||||||
|
ui.notifications.info(`Value: ${value}`);
|
||||||
|
}
|
|
@ -0,0 +1,112 @@
|
||||||
|
// старый способ добавить итем персонажу
|
||||||
|
//
|
||||||
|
// const compendiumPackName = 'pf2e.feature-effects';
|
||||||
|
// const effectName = 'Effect: Rage';
|
||||||
|
|
||||||
|
// const actor = game.user.character;
|
||||||
|
|
||||||
|
// await pack.getEntry(effectId).then(effect => actor.createOwnedItem(effect) );
|
||||||
|
|
||||||
|
// get item from compendium to actor
|
||||||
|
async function getItemFromCompendium (itemName){
|
||||||
|
const pack = game.packs.get("sc-items.sc-items");
|
||||||
|
await pack.getIndex();
|
||||||
|
const itemId = pack.index.find(e => e.name === itemName)._id;
|
||||||
|
item = [await pack.getDocument(itemId)]
|
||||||
|
await actor.createEmbeddedDocuments("Item", item)
|
||||||
|
}
|
||||||
|
|
||||||
|
// проверить что у игрока есть персонаж
|
||||||
|
if (game.user.character == null){
|
||||||
|
ui.notifications.warn('Игроку не назначен персонаж');
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
let compendium = (Array.from(game.packs)).filter(element => element.metadata.name == 'sc-items')
|
||||||
|
compendiumData = Array.from(compendium[0].index)
|
||||||
|
compendiumData.find(element => element.name == 'Рапира/Rapier')
|
||||||
|
|
||||||
|
// найти объект по имени
|
||||||
|
function findItem(itemName, compendium) {
|
||||||
|
let compendiumData = (Array.from(game.packs)).filter(element => element.metadata.name == compendium)
|
||||||
|
compArray = Array.from(compendiumData[0].index)
|
||||||
|
return compArray.find(element => element.name == itemName)
|
||||||
|
}
|
||||||
|
|
||||||
|
// получить класс персонажа
|
||||||
|
// от класса выбрать варианты стартового снаряжения
|
||||||
|
// передать выбранное снаряжение персонажу
|
||||||
|
let a = `
|
||||||
|
<html lang="en">
|
||||||
|
<form>
|
||||||
|
<fieldset>
|
||||||
|
<legend>
|
||||||
|
Select items
|
||||||
|
</legend>
|
||||||
|
<fieldset>
|
||||||
|
<legend>
|
||||||
|
Legend2
|
||||||
|
</legend>
|
||||||
|
<div>
|
||||||
|
<ul>
|
||||||
|
<li><input type="radio" id="choise1" name="set1" value="Длинный меч/Longsword">Длинный меч/Longsword</li>
|
||||||
|
<li><input type="radio" id="choise2" name="set1" value="Рапира/Rapier">Рапира/Rapier</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</fieldset>
|
||||||
|
<fieldset>
|
||||||
|
<legend>
|
||||||
|
Legend3
|
||||||
|
</legend>
|
||||||
|
<div>
|
||||||
|
<ul>
|
||||||
|
<li><input type="radio" id="choise1" name="set2" value="Набор дипломата/Diplomat's Pack">Набор дипломата</li>
|
||||||
|
<li><input type="radio" id="choise2" name="set2" value="Набор артиста/Entertainer's Pack">Набор артиста</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
||||||
|
</fieldset>
|
||||||
|
<input type="submit" id="button">
|
||||||
|
</form>
|
||||||
|
</html>
|
||||||
|
`
|
||||||
|
|
||||||
|
new Dialog({
|
||||||
|
title: "Test Dialog",
|
||||||
|
// content: a,
|
||||||
|
template: "./templates/bard.html"
|
||||||
|
buttons: {
|
||||||
|
one: {
|
||||||
|
icon: '<i class="fas fa-check"></i>',
|
||||||
|
label: "Option One",
|
||||||
|
callback: (html) => myCallback(html)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
).render(true);
|
||||||
|
|
||||||
|
function myCallback(html) {
|
||||||
|
// let radios = document.querySelectorAll('input[type="radio"]');
|
||||||
|
let radios = html.find('input[type="radio"]');
|
||||||
|
// let button = document.querySelector('#button');
|
||||||
|
for (let radio of radios) {
|
||||||
|
if (radio.checked) {
|
||||||
|
console.log(radio.value);
|
||||||
|
// item = findItem(radio.value, "sc-items")
|
||||||
|
// if (item == null || item == undefined){
|
||||||
|
// ui.notifications.warn(`Предмет `+radio.value+`не найден в библиотеке`);
|
||||||
|
// return
|
||||||
|
// }
|
||||||
|
getItemFromCompendium(radio.value)
|
||||||
|
// console.log(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// const value = html.find("input#choise1").val();
|
||||||
|
// const array1 = [html.find('input[type="radio"]:checked').val()];
|
||||||
|
// const value = html.find('input[type="radio"]:checked').val();
|
||||||
|
// ui.notifications.info(`Value: ${value}`);
|
||||||
|
// console.log(value)
|
||||||
|
// console.log(array1)
|
||||||
|
// return value
|
||||||
|
}
|
Loading…
Reference in New Issue