diff options
author | Jesusaves <cpntb1@ymail.com> | 2019-01-09 01:45:00 -0200 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2019-01-09 01:45:00 -0200 |
commit | ee02ee04566b15f3769b6bf3cfc0f4427107641a (patch) | |
tree | 011460dac5e15208a45cea8fba1ba499e986a0fc /npc/020-5 | |
parent | 331ccd80bf57ac78ef7273c4b06ec0f2fa288b6b (diff) | |
download | serverdata-ee02ee04566b15f3769b6bf3cfc0f4427107641a.tar.gz serverdata-ee02ee04566b15f3769b6bf3cfc0f4427107641a.tar.bz2 serverdata-ee02ee04566b15f3769b6bf3cfc0f4427107641a.tar.xz serverdata-ee02ee04566b15f3769b6bf3cfc0f4427107641a.zip |
Introduce Nivalis forge and armorer: Bracco.
He restocks every 28 hours. He forges armbands (mage equip).
Armbands are currently cap items, so prices are extremely high atm.
Diffstat (limited to 'npc/020-5')
-rw-r--r-- | npc/020-5/_import.txt | 1 | ||||
-rw-r--r-- | npc/020-5/bracco.txt | 132 |
2 files changed, 133 insertions, 0 deletions
diff --git a/npc/020-5/_import.txt b/npc/020-5/_import.txt index 5857fefbe..c98775e96 100644 --- a/npc/020-5/_import.txt +++ b/npc/020-5/_import.txt @@ -1,3 +1,4 @@ // Map 020-5: Nivalis Indoors // This file is generated automatically. All manually added changes will be removed when running the Converter. "npc/020-5/_warps.txt", +"npc/020-5/bracco.txt", diff --git a/npc/020-5/bracco.txt b/npc/020-5/bracco.txt new file mode 100644 index 000000000..31174bdb3 --- /dev/null +++ b/npc/020-5/bracco.txt @@ -0,0 +1,132 @@ +// TMW-2 Script +// Author: +// Jesusalva +// Description: +// Nivalis shopkeeper & forge master. He deals with the equipment which Nicholas, +// Silversmith and Nahred doesn't works with. + +020-5,31,25,0 script Bracco NPC_M_SHOPKEEPER,{ + goto L_Start; + // blacksmith_create( BaseItem1, Amount, BaseItem2, Amount, PrizeItem, Price ) + function blacksmith_create { + .@base1=getarg(0); + .@amon1=getarg(1); + .@base2=getarg(2); + .@amon2=getarg(3); + .@prize=getarg(4); + .@price=getarg(5); + + mesn; + mesq l("Do you want to craft @@? For that I will need:", getitemlink(.@prize)); + mesc l("@@/@@ @@", countitem(.@base1), .@amon1, getitemlink(.@base1)); + mesc l("@@/@@ @@", countitem(.@base2), .@amon2, getitemlink(.@base2)); + mesc l("@@/@@ GP", format_number(Zeny), format_number(.@price)); + + select + l("Yes"), + l("No"); + + if (@menu == 2) + return; + + if (countitem(.@base1) >= .@amon1 && + countitem(.@base2) >= .@amon2 && + Zeny >= .@price) { + inventoryplace .@prize, 1; + delitem .@base1, .@amon1; + delitem .@base2, .@amon2; + Zeny = Zeny - .@price; + getitem .@prize, 1; + .@xp=getiteminfo(.@base1, ITEMINFO_SELLPRICE)*.@amon1+getiteminfo(.@base2, ITEMINFO_SELLPRICE)*.@amon2; + .@xp=.@xp*2/3; + getexp .@xp, rand(1,10); + + mes ""; + mesn; + mesq l("Many thanks! Come back soon."); + } else { + speech S_FIRST_BLANK_LINE,// | S_LAST_NEXT, + l("You don't have enough material, sorry."); + } + return; + } + +// Start +L_Start: + mesn; + mesq l("Welcome to my fine establishment!"); + mes ""; + select + l("Trade"), + l("I'm actually looking for an item forged!"), + l("Leave"); + + if (@menu == 2) + goto L_Forge; + + closedialog; + if (@menu == 1) + shop .name$; + goodbye; + close; +// Note: the prices are absurd atm, but hey hey, every single one of them are cap items currently +L_Forge: + mesn; + mesq l("Well, if you want warrior craft, perhaps you should look for @@ or @@.", l("Nicholas"), l("Nahrec")); + mes ""; + select + l("Nothing, sorry!"), + l("I want leather armbands!"), + l("I want copper armbands!"), + l("I want iron armbands!"); + mes ""; + switch (@menu) { + case 1: + close; break; + case 2: + blacksmith_create(LeatherPatch, 60, TitaniumIngot, 1, Armbands, 4500); + break; + case 3: + blacksmith_create(CopperIngot, 40, Coal, 40, CopperArmbands, 9000); + break; + case 4: + blacksmith_create(IronIngot, 100, Coal, 90, IronArmbands, 15000); + break; + } + goto L_Forge; + +OnInit: + .@npcId = getnpcid(.name$); + setunitdata(.@npcId, UDT_HEADTOP, NPCEyes); + setunitdata(.@npcId, UDT_HEADMIDDLE, TneckSweater); + setunitdata(.@npcId, UDT_HEADBOTTOM, RaidTrousers); + setunitdata(.@npcId, UDT_WEAPON, FurBoots); + setunitdata(.@npcId, UDT_HAIRSTYLE, 26); + setunitdata(.@npcId, UDT_HAIRCOLOR, 2); + + tradertype(NST_MARKET); + sellitem LeatherShirt, 15000, 1; + sellitem LeatherShield, 5000, 1; + sellitem ShortBow, 11200, 1; + sellitem ArrowAmmoBox,-1,rand(8,12); + sellitem IronAmmoBox,-1,rand(3,5); + + npcsit; + .sex = G_MALE; + .distance = 5; + end; + +OnWed0000: +OnThu0400: +OnFri0800: +OnSat1200: +OnSun1600: +OnMon2000: + restoreshopitem LeatherShirt, 15000, 1; + restoreshopitem LeatherShield, 5000, 1; + restoreshopitem ShortBow, 11200, 1; + restoreshopitem ArrowAmmoBox,rand(8,12); + restoreshopitem IronAmmoBox,rand(3,5); + end; + +} |