Implemented Ghost Palace exchange NPC (#4003)
Fixed #3936 Thanks to @aleos89 @Angelic234 and @zackdreaver !
This commit is contained in:
parent
6d0eef0a20
commit
df65d5ddfc
@ -21039,9 +21039,10 @@ Body:
|
|||||||
NoAuction: true
|
NoAuction: true
|
||||||
- Id: 6672
|
- Id: 6672
|
||||||
AegisName: Shard_of_Gray
|
AegisName: Shard_of_Gray
|
||||||
Name: Shard of Gray
|
Name: Gray Shard
|
||||||
Type: Etc
|
Type: Etc
|
||||||
Buy: 10
|
Sell: 1
|
||||||
|
Weight: 1
|
||||||
Flags:
|
Flags:
|
||||||
BuyingStore: true
|
BuyingStore: true
|
||||||
Trade:
|
Trade:
|
||||||
|
@ -883,15 +883,16 @@ OnTimer28500:
|
|||||||
mes "Hey there, are you alive?";
|
mes "Hey there, are you alive?";
|
||||||
mes "I did not expect to meet someone who is still alive.";
|
mes "I did not expect to meet someone who is still alive.";
|
||||||
next;
|
next;
|
||||||
|
.@item_name_req$ = getitemname(6672);// Shard_of_Gray
|
||||||
mes "[King]";
|
mes "[King]";
|
||||||
mes "Do you possibly have the ^006400Gray Shard^000000?";
|
mes "Do you possibly have the ^006400" + .@item_name_req$ + "^000000?";
|
||||||
mes "Can you give it to me?";
|
mes "Can you give it to me?";
|
||||||
mes "The memories of the faithful royal guard";
|
mes "The memories of the faithful royal guard";
|
||||||
mes "and the memories of everyone he loved";
|
mes "and the memories of everyone he loved";
|
||||||
mes "are contained inside of these shards.";
|
mes "are contained inside of these shards.";
|
||||||
next;
|
next;
|
||||||
mes "[King]";
|
mes "[King]";
|
||||||
mes "Will you give the ^006400Gray Shard^000000 to me?";
|
mes "Will you give the ^006400" + .@item_name_req$ + "^000000 to me?";
|
||||||
mes "The guilt is eating my soul.";
|
mes "The guilt is eating my soul.";
|
||||||
mes "My soul is trapped inside the Ghost Palace.";
|
mes "My soul is trapped inside the Ghost Palace.";
|
||||||
next;
|
next;
|
||||||
@ -899,7 +900,7 @@ OnTimer28500:
|
|||||||
mes "I am collecting Sakray's abandoned memories from these shards.";
|
mes "I am collecting Sakray's abandoned memories from these shards.";
|
||||||
next;
|
next;
|
||||||
mes "[King]";
|
mes "[King]";
|
||||||
mes "If you give any ^006400Gray Shard^000000s to me, I can make equipment for you.";
|
mes "If you give any ^006400" + .@item_name_req$ + "^000000s to me, I can make equipment for you.";
|
||||||
next;
|
next;
|
||||||
mes "[King]";
|
mes "[King]";
|
||||||
mes "The cursed knight...";
|
mes "The cursed knight...";
|
||||||
@ -923,16 +924,16 @@ OnTimer28500:
|
|||||||
mes "Someday, Sakray will";
|
mes "Someday, Sakray will";
|
||||||
mes "get out of this curse for sure.";
|
mes "get out of this curse for sure.";
|
||||||
mes "I believe";
|
mes "I believe";
|
||||||
mes "^006400Gray Shard^000000s are the only method";
|
mes "^006400" + .@item_name_req$ + "^000000s are the only method";
|
||||||
mes "to save him....";
|
mes "to save him....";
|
||||||
close;
|
close;
|
||||||
}
|
}
|
||||||
.@cost = ( .@s > 13 ? 100 : 200 );
|
.@cost = ( .@s > 13 ? 100 : 200 );
|
||||||
mes "[King]";
|
mes "[King]";
|
||||||
mes "To make a ^FF0000" + .@item_name$[.@s] + "^000000";
|
mes "To make a ^FF0000" + .@item_name$[.@s] + "^000000";
|
||||||
mes "I need " + .@cost + " ^006400Gray Shard^000000.";
|
mes "I need " + .@cost + " ^006400" + .@item_name_req$ + "^000000.";
|
||||||
next;
|
next;
|
||||||
if (select( "Cancel", "Hand over " + .@cost + " Gray Shard." ) == 1) {
|
if (select( "Cancel", "Hand over " + .@cost + " " + .@item_name_req$ + "." ) == 1) {
|
||||||
mes "[King]";
|
mes "[King]";
|
||||||
mes "Someday, Sakray will";
|
mes "Someday, Sakray will";
|
||||||
mes "get out of this curse for sure.";
|
mes "get out of this curse for sure.";
|
||||||
@ -941,15 +942,15 @@ OnTimer28500:
|
|||||||
}
|
}
|
||||||
if (countitem(6672) < .@cost) {
|
if (countitem(6672) < .@cost) {
|
||||||
mes "[King]";
|
mes "[King]";
|
||||||
mes "You do not have enough ^006400Gray Shard^000000";
|
mes "You do not have enough ^006400" + .@item_name_req$ + "^000000";
|
||||||
mes "to make a ^FF0000" + .@item_name$[.@s] + "^000000.";
|
mes "to make a ^FF0000" + .@item_name$[.@s] + "^000000.";
|
||||||
mes "I need " + .@cost + " ^006400Gray Shard^000000.";
|
mes "I need " + .@cost + " ^006400" + .@item_name_req$ + "^000000.";
|
||||||
next;
|
next;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
mes "[King]";
|
mes "[King]";
|
||||||
mes "I will make a ^FF0000" + .@item_name$[.@s] + "^000000";
|
mes "I will make a ^FF0000" + .@item_name$[.@s] + "^000000";
|
||||||
mes "with " + .@cost + " ^006400Gray Shard^000000.";
|
mes "with " + .@cost + " ^006400" + .@item_name_req$ + "^000000.";
|
||||||
next;
|
next;
|
||||||
mes "You see a light through the folded hands of the king and it gradually takes on a shape.";
|
mes "You see a light through the folded hands of the king and it gradually takes on a shape.";
|
||||||
next;
|
next;
|
||||||
|
121
npc/re/merchants/ghost_palace_exchange.txt
Normal file
121
npc/re/merchants/ghost_palace_exchange.txt
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
//===== rAthena Script =======================================
|
||||||
|
//= Ghost Palace Exchange NPC.
|
||||||
|
//===== Description: =========================================
|
||||||
|
//= Walkthrough Conversion.
|
||||||
|
//===== Changelogs: ==========================================
|
||||||
|
//= 1.0 First Version. [Capuche]
|
||||||
|
//============================================================
|
||||||
|
|
||||||
|
dali02,51,130,4 script Dimension Traveler 4_F_SHABBY,{
|
||||||
|
if (checkweight(28100,1) == 0) {// Thanos Axe
|
||||||
|
mes "- You cannot proceed because you have too many items with you. -";
|
||||||
|
close;
|
||||||
|
}
|
||||||
|
.@item_name_req$ = getitemname(6672);// Shard_of_Gray
|
||||||
|
mes "[Dimension Traveler]";
|
||||||
|
mes "Adventurer friend, <ITEM>[" + .@item_name_req$ + "]<INFO>6672</INFO></ITEM> is what I need. How about exchanging it with something I have?";
|
||||||
|
next;
|
||||||
|
.@type = select( "Show me your weapon.", "Show me your armor.", "Anything special?", "I do not need." ) - 1;
|
||||||
|
mes "[Dimension Traveler]";
|
||||||
|
switch(.@type) {
|
||||||
|
case 0:
|
||||||
|
mes "Oh! Are you interested in weapons? We have all the weapons we can get from the Ghost Palace. Why don't you choose one?";
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
mes "Armor? We have all the armors we can get from the Ghost Palace. Why don't you choose one?";
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
mes "Huhh! It seems like many of them already heard that I have the best stuff. Feel free to check out my collections.";
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
mes "Goodbye friend~ Come again!";
|
||||||
|
close;
|
||||||
|
}
|
||||||
|
next;
|
||||||
|
mes "[Dimension Traveler]";
|
||||||
|
mes "Ah! The number that is written beside <ITEM>[" + .@item_name_req$ + "]<INFO>6672</INFO></ITEM> will be needed.";
|
||||||
|
mes "Please keep that in mind.";
|
||||||
|
|
||||||
|
switch(.@type) {
|
||||||
|
case 0:
|
||||||
|
setarray .@items[0],
|
||||||
|
13441, 200, // Thanos Sword
|
||||||
|
21009, 200, // Thanos Great Sword
|
||||||
|
1438, 200, // Thanos Spear
|
||||||
|
1496, 200, // Thanos Long Spear
|
||||||
|
1669, 200, // Thanos Staff
|
||||||
|
2023, 200, // Thanos Rod
|
||||||
|
18119, 200, // Thanos Bow
|
||||||
|
13093, 200, // Thanos Dagger
|
||||||
|
28000, 200, // Thanos Katar
|
||||||
|
1836, 200, // Thanos Knuckle
|
||||||
|
16028, 200, // Thanos Hammer
|
||||||
|
28100, 200, // Thanos Axe
|
||||||
|
1933, 200, // Thanos Violin
|
||||||
|
1988, 200; // Thanos Whip
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
setarray .@items[0],
|
||||||
|
2187, 100, // Shield Of Gray
|
||||||
|
15090, 100, // Armor Of Gray
|
||||||
|
15091, 100, // Gray Robe
|
||||||
|
20721, 100, // Cloak Of Gray
|
||||||
|
22033, 100, // Boots Of Gray
|
||||||
|
18820, 100; // Gray Helmet
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
setarray .@items[0],
|
||||||
|
27184, 10000, // Knight Sakray Card
|
||||||
|
23676, 50, // Gray Charcoal Melee (Melee)
|
||||||
|
23677, 50, // Gray Charcoal Magic (Magic)
|
||||||
|
23678, 50, // Gray Charcoal Range (Range)
|
||||||
|
27184, 10000; // Knight Sakray Card
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
.@size = getarraysize(.@items);
|
||||||
|
for ( .@i = 0; .@i < .@size; .@i += 2 )
|
||||||
|
.@menu$ += getitemname(.@items[.@i]) + " - " + .@items[.@i+1] + ":";
|
||||||
|
|
||||||
|
while(true) {
|
||||||
|
next;
|
||||||
|
.@s = (select(.@menu$) - 1) * 2;
|
||||||
|
mes "[Dimension Traveler]";
|
||||||
|
if (.@type != 1) // armor type doesn't display item info
|
||||||
|
mes "Do you mean <ITEM>[" + getitemname(.@items[.@s]) + "]<INFO>" + .@items[.@s] + "</INFO></ITEM>?";
|
||||||
|
mes "" + .@items[.@s+1] + " ^006400" + .@item_name_req$ + "^000000 are required in exchange.";
|
||||||
|
next;
|
||||||
|
switch( select( "Let's exchange.", "Let me see other stuff.", "I will come back later." ) ) {
|
||||||
|
case 1:
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
mes "[Dimension Traveler]";
|
||||||
|
switch(.@type) {
|
||||||
|
case 0:
|
||||||
|
mes "I have more than enough weapons.";
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
mes "We have many armors for you. Why don't you pick one?";
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
mes "If you bring me " + .@item_name_req$ + ", I will trade it with anything you want.";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
case 3:
|
||||||
|
mes "[Dimension Traveler]";
|
||||||
|
mes "Take care friend~ See you next time!";
|
||||||
|
close;
|
||||||
|
}
|
||||||
|
if (countitem(6672) < .@items[.@s+1]) {
|
||||||
|
mes "[Dimension Traveler]";
|
||||||
|
mes "You put me in a difficult situation, friend.";
|
||||||
|
mes "I am in need of " + .@item_name_req$ + ". I will exchange it for ^006400" + .@items[.@s+1] + " " + .@item_name_req$ + "^000000.";
|
||||||
|
close;
|
||||||
|
}
|
||||||
|
mes "[Dimension Traveler]";
|
||||||
|
mes "Thank you. Come back if you need anything else.";
|
||||||
|
delitem 6672, .@items[.@s+1];
|
||||||
|
getitem .@items[.@s], 1;
|
||||||
|
close;
|
||||||
|
}
|
||||||
|
}
|
@ -122,6 +122,7 @@ npc: npc/re/merchants/enchan_verus.txt
|
|||||||
npc: npc/re/merchants/Extended_Stylist.txt
|
npc: npc/re/merchants/Extended_Stylist.txt
|
||||||
npc: npc/re/merchants/flute.txt
|
npc: npc/re/merchants/flute.txt
|
||||||
npc: npc/re/merchants/gld_mission_exchange.txt
|
npc: npc/re/merchants/gld_mission_exchange.txt
|
||||||
|
npc: npc/re/merchants/ghost_palace_exchange.txt
|
||||||
npc: npc/re/merchants/guild_warehouse.txt
|
npc: npc/re/merchants/guild_warehouse.txt
|
||||||
npc: npc/re/merchants/hd_refiner.txt
|
npc: npc/re/merchants/hd_refiner.txt
|
||||||
npc: npc/re/merchants/HorrorToyFactory_merchants.txt
|
npc: npc/re/merchants/HorrorToyFactory_merchants.txt
|
||||||
|
Loading…
x
Reference in New Issue
Block a user