Ero sivun ”Hiekkalaatikko” versioiden välillä

Kosmikon wikistä
Siirry navigaatioon Siirry hakuun
Jarnor (keskustelu | muokkaukset)
Ei muokkausyhteenvetoa
Jarnon (keskustelu | muokkaukset)
pEi muokkausyhteenvetoa
 
(2 välissä olevaa versiota 2 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
[[Filinos]]in sukukronikka on laaja kokoelma koottuja tarinoita Filinosin suvun vaiheista. Osa kronikasta koostuu hallitsijoiden päiväkirjoista, suurin osa on yleensä hovin [[magistros]]in keräämää perinne- ja aikalaistietoa.
Tämän makron avulla voit käyttää ''Enlarge Person''-loitsua, sitten että se huomioi kaikki koon muutoksesta tulevat vaikutukset.


Kronikka sisältää osion suvun jokaisesta päämiehestä. Kronikka etenee aikajärjestyksessä [[Euthalion 'Efilonios]]ista aina [[Fukilos Filinos]]iin saakka.
:Luo ensin makron vaatima ''Buff'' ja nimeä se ''Enlarge Person''.


Kronikassa on pyritty kertomaan asiat niin todenpohjaisesti kuin mahdollista. Usein hallitsevan [[arkon]]in osio kirjoitettiin vasta hallitsijan kuoleman jälkeen, jotta tekstiä ei olisi sensuroitu.
[[Tiedosto:Enlarge person1.PNG|500px]]


Perimmäinen tarkoitus kronikalla on antaa hallitsijoille tietoa esi-isistään, heidän toimistaan, ja oppia sitä kautta toimimaan joko paremmin tai vähintäänkin yhtähyvin. Kronikka tarjoaa kaunistelemattoman kuvan Filinos-dynastian historiaan.
:Lisää luomasi buffin ''Changes''-välilehdelle loitsun aiheuttamat muutokset attribuutteihin.


[[Tiedosto:Enlarge person2.PNG|500px]]


:Hae ''Compendium packs'' valikosta kohdasta ''Sample macros'' esimerkki makro ''Toggle Buff'' ja raahaa se alas ''Macros Directory''n vapaaseen paikkaan.


==[[Euthalion 'Efilonios]], [[2877]]-[[2912]]==
[[Tiedosto:Enlarge person3.PNG|500px]]
===[[Euthalion 'Efilonios#Nuoruus|Nuoruus]]===
===[[Euthalion 'Efilonios#Suuren Skisman alku|Suuren Skisman alku]]===
===[[Euthalion 'Efilonios#Suuri Skisma|Suuri Skisma]]===
===[[Euthalion 'Efilonios#Psiarosin taistelu|Psiarosin taistelu]]===
===[[Euthalion 'Efilonios#Dynastia|Dynastia]]===
===[[Euthalion 'Efilonios#Perhe|Perhe]]===
===[[Euthalion 'Efilonios#Hovin jäseniä|Hovin jäseniä]]===


==[[Pantholeion Filinos]], [[2900]]-[[2940]]==
:Tämän jälkeen kopioi alla oleva koodi ja korvaa sillä ''Toggle Buff''in sisältö. Nimeä uusi makro esim. nimellä Enlarge Person.
===[[Pantholeion Filinos#Lapsuus ja nuoruus|Lapsuus ja nuoruus]]===
===[[Pantholeion Filinos#Arkon 2912-2940|Arkon 2912-2940]]===
====[[Pantholeion Filinos#Matkalla Abydosiin|Matkalla Abydosiin]]====
====[[Pantholeion Filinos#Abydosin taistelu|Abydosin taistelu]]====
====[[Pantholeion Filinos#Vuodet 2916-2932|Vuodet 2916-2932]]====
====[[Pantholeion Filinos#Trabisionin taistelu|Trabisionin taistelu]]====
====[[Pantholeion Filinos#Vuodet 2932-2940|Vuodet 2932-2940]]====
====[[Pantholeion Filinos#Perhe|Perhe]]====
====[[Pantholeion Filinos#Hovin jäseniä|Hovin jäseniä]]====


==[[Panagiotakis Filinos]], [[2917]]-[[2961]]==
<pre>
===[[Panagiotakis Filinos#Lapsuus ja nuoruus|Lapsuus ja nuoruus]]===
// CONFIGURATION
===[[Panagiotakis Filinos#Arkon 2940-2961|Arkon 2940-2961]]===
// If one or more tokens are selected, those will be used instead of the listed actors
===[[Panagiotakis Filinos#Perhe|Perhe]]===
// Leave the actorNames array empty to guess the players
===[[Panagiotakis Filinos#Hovin jäseniä|Hovin jäseniä]]===
// Example actorNames: `actorNames: ["Bob", "John"],`
const c = {
  actorNames: [],
  buffName: "Enlarge Person"
};
// END CONFIGURATION


const transform = (caster, size) => {
  caster.update({'data.traits.size': size});
};


==[[Faidon Filinos]], [[2940]]-[[2992]]==
const sizes = ["fine", "dim", "tiny", "sm", "med", "lg", "huge", "grg", "col"];
==[[Sotiras Filinos]], [[2978]]-[[3036]]==
==[[Fotios Filinos]], [[2995]]-[[3020]]==
==[[Fokionas Filinos]], [[3018]]-[[3099]]==
==[[Nestoras Filinos]], [[3035]]-[[3111]]==
==[[Dionysios Filinos]], [[3059]]-[[3112]]==
==[[Iorgos Filinos]], [[3082]]-==
==[[Fukilos Filinos]], [[3106]]-==


var sizeToBe = 0


const tokens = canvas.tokens.controlled;
let actors = tokens.map(o => o.actor);
if (!actors.length && c.actorNames.length) actors = game.actors.entities.filter(o => c.actorNames.includes(o.name));
if (!actors.length) actors = game.actors.entities.filter(o => o.isPC);
actors = actors.filter(o => o.hasPerm(game.user, "OWNER"));


if (!actors.length) ui.notifications.warn("No applicable actor(s) found");
else {
  for (let actor of actors) {
    const buff = actor.items.find(o => o.name === c.buffName && o.type === "buff");
    if (buff != null) {
      let active = getProperty(buff.data, "data.active");
      if (active == null) active = false;
      for (let tester in sizes) {
        if (actor.data.data.traits.size == sizes[tester]) {
          var currentSize = parseInt(tester);
          break;
        }
      }
      if (active == false) sizeToBe = currentSize + 1;
      else sizeToBe = currentSize - 1;
      transform(actor, sizes[sizeToBe]);
      buff.update({ "data.active": !active });
    }
  }
}
</pre>


{{Kirjat}}
:Muistakaa käyttää sizeRoll-funktiota (ks. alla) lähitaisteluaseissan niin muuttuu myös vaurionopat automaattisesti oikeiksi.
[[Category:Esineet]]
 
[[Category:Historia]]
<code>sizeRoll(1, 6, @size)</code>
:ensimmäinen parametri määrittelee noppien määrän ja toinen nopan eli esimerkin tapauksessa 1d6. Jos koko muuttuu suuremmaksi niin noppa muuttuu automaattisesti 1d8:ksi jne.

Nykyinen versio 14. tammikuuta 2021 kello 00.27

Tämän makron avulla voit käyttää Enlarge Person-loitsua, sitten että se huomioi kaikki koon muutoksesta tulevat vaikutukset.

Luo ensin makron vaatima Buff ja nimeä se Enlarge Person.

Lisää luomasi buffin Changes-välilehdelle loitsun aiheuttamat muutokset attribuutteihin.

Hae Compendium packs valikosta kohdasta Sample macros esimerkki makro Toggle Buff ja raahaa se alas Macros Directoryn vapaaseen paikkaan.

Tämän jälkeen kopioi alla oleva koodi ja korvaa sillä Toggle Buffin sisältö. Nimeä uusi makro esim. nimellä Enlarge Person.
// CONFIGURATION
// If one or more tokens are selected, those will be used instead of the listed actors
// Leave the actorNames array empty to guess the players
// Example actorNames: `actorNames: ["Bob", "John"],`
const c = {
  actorNames: [],
  buffName: "Enlarge Person"
};
// END CONFIGURATION

const transform = (caster, size) => {
  caster.update({'data.traits.size': size});
};

const sizes = ["fine", "dim", "tiny", "sm", "med", "lg", "huge", "grg", "col"];

var sizeToBe = 0

const tokens = canvas.tokens.controlled;
let actors = tokens.map(o => o.actor);
if (!actors.length && c.actorNames.length) actors = game.actors.entities.filter(o => c.actorNames.includes(o.name));
if (!actors.length) actors = game.actors.entities.filter(o => o.isPC);
actors = actors.filter(o => o.hasPerm(game.user, "OWNER"));

if (!actors.length) ui.notifications.warn("No applicable actor(s) found");
else {
  for (let actor of actors) {
    const buff = actor.items.find(o => o.name === c.buffName && o.type === "buff");
    if (buff != null) {
      let active = getProperty(buff.data, "data.active");
      if (active == null) active = false;
      for (let tester in sizes) {
        if (actor.data.data.traits.size == sizes[tester]) {
          var currentSize = parseInt(tester);
          break;
        }
      }
      if (active == false) sizeToBe = currentSize + 1;
      else sizeToBe = currentSize - 1;
      transform(actor, sizes[sizeToBe]);
      buff.update({ "data.active": !active });
    }
  }
}
Muistakaa käyttää sizeRoll-funktiota (ks. alla) lähitaisteluaseissan niin muuttuu myös vaurionopat automaattisesti oikeiksi.

sizeRoll(1, 6, @size)

ensimmäinen parametri määrittelee noppien määrän ja toinen nopan eli esimerkin tapauksessa 1d6. Jos koko muuttuu suuremmaksi niin noppa muuttuu automaattisesti 1d8:ksi jne.