diff options
author | Jesusaves <cpntb1@ymail.com> | 2019-06-15 18:45:37 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2019-06-15 18:45:37 -0300 |
commit | 2f45bd7aa3109731edc73316c10338d605734995 (patch) | |
tree | 87bce97ad9a4e7b108f407618175462128c76edd /npc | |
parent | 422b7b9261527e1b288499da620a5ace6f5b2489 (diff) | |
download | serverdata-2f45bd7aa3109731edc73316c10338d605734995.tar.gz serverdata-2f45bd7aa3109731edc73316c10338d605734995.tar.bz2 serverdata-2f45bd7aa3109731edc73316c10338d605734995.tar.xz serverdata-2f45bd7aa3109731edc73316c10338d605734995.zip |
Rewrite how Mercenary Boxsets are handled (for easier maintenance)
Diffstat (limited to 'npc')
-rw-r--r-- | npc/items/mercenary.txt | 54 | ||||
-rw-r--r-- | npc/scripts.conf | 1 |
2 files changed, 55 insertions, 0 deletions
diff --git a/npc/items/mercenary.txt b/npc/items/mercenary.txt new file mode 100644 index 000000000..c87081760 --- /dev/null +++ b/npc/items/mercenary.txt @@ -0,0 +1,54 @@ +// TMW2 scripts. +// Authors: +// Jesusalva +// Description: +// Core functions for Mercenary boxset + +// Main loop +// merc_boxset(5★, 4★, 3★, 2★, 1★) +function script merc_boxset { + .@s5=getarg(0,0); + .@s4=getarg(1,0); + .@s3=getarg(2,0); + .@s2=getarg(3,0); + .@s1=getarg(4,0); + + .@sumup=.@s5+.@s4+.@s3+.@s2+.@s1; + + // Make the seed. More level and luck increases odds of higher rarity + .@seed=rand(0, .@sumup)-BaseLevel-readparam(bLuk); + + // 5 ★ + if (.@seed < .@s5) { + setarray .@r, MercCard_AndreiSakar, MercCard_Woody, MercCard_Lilanna, MercCard_Xanthem; + .@n=any_of(.@r); + // 4 ★ + } else if (.@seed < .@s4) { + setarray .@r, MercCard_Aisen, MercCard_Msawis, MercCard_Swezanne, MercCard_DragonStar; + .@n=any_of(.@r); + // 3 ★ + } else if (.@seed < .@s3) { + setarray .@r, MercCard_Saulc, MercCard_Crazyfefe, MercCard_LawnCable, MercCard_Arthur; + .@n=any_of(.@r); + // 2 ★ + } else if (.@seed < .@s2) { + setarray .@r, MercCard_Pookie, MercCard_Jesusalva, MercCard_Demure, MercCard_EarthWitch; + .@n=any_of(.@r); + // 1 ★ + } else { + setarray .@r, MercCard_Apane, MercCard_Soren, MercCard_GonzoDark, MercCard_Rosa; + .@n=any_of(.@r); + } + + getitem .@r[.@n], 1; + return; +} + +/* +// Setup a merc_boxset based on level (TODO) +function script cond_mercboxset { + return; +} +*/ + + diff --git a/npc/scripts.conf b/npc/scripts.conf index cf4871aba..cda4ea36e 100644 --- a/npc/scripts.conf +++ b/npc/scripts.conf @@ -72,6 +72,7 @@ "npc/items/croconut.txt", "npc/items/emptybox.txt", "npc/items/lofteleporter.txt", +"npc/items/mercenary.txt", "npc/items/shovel.txt", "npc/items/teleporter.txt", |