summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
authorAnnieRuru <jeankofannie2@gmail.com>2019-01-27 21:21:01 +0800
committerAnnieRuru <jeankofannie2@gmail.com>2019-01-27 21:21:01 +0800
commit7b48fee4ffd90913e2beac51e0bed958129dd3e7 (patch)
tree88238ce77d615e154f271091d738a57c659d7864 /npc
parent51483b4569a6018f79ae8ece69273e3611e98a89 (diff)
downloadhercules-7b48fee4ffd90913e2beac51e0bed958129dd3e7.tar.gz
hercules-7b48fee4ffd90913e2beac51e0bed958129dd3e7.tar.bz2
hercules-7b48fee4ffd90913e2beac51e0bed958129dd3e7.tar.xz
hercules-7b48fee4ffd90913e2beac51e0bed958129dd3e7.zip
Add F_MesItemInfo function to show item name with description link
also fix OldGlastHeim ITEMLINK display incorrectly
Diffstat (limited to 'npc')
-rw-r--r--npc/other/Global_Functions.txt23
-rw-r--r--npc/re/instances/OldGlastHeim.txt4
2 files changed, 24 insertions, 3 deletions
diff --git a/npc/other/Global_Functions.txt b/npc/other/Global_Functions.txt
index 904ed7165..d45b3c3e7 100644
--- a/npc/other/Global_Functions.txt
+++ b/npc/other/Global_Functions.txt
@@ -434,7 +434,7 @@ function script F_ShuffleNumbers {
//== Function F_MesColor ===================================
// Function to colorize npc dialog without having to memorize the color code
// Examples:
-// mes callfunc("F_MesColor", C_BLUE) +"This message is now in BLUE";
+// mesf("%sThis message is now in BLUE.", F_MesColor(C_BLUE));
function script F_MesColor {
return sprintf("^%06X", min(getarg(0), 0xFFFFFF));
}
@@ -475,3 +475,24 @@ function script F_GetTradeRestriction {
.@trade$ += "NoAuction|";
}
}
+
+//== Function F_MesItemInfo ===================================
+// Show the item name and a clickable link for the item description
+// Only works with mes and mesf, does not work in menu/select
+function script F_MesItemInfo {
+ .@item = getarg(0);
+ .@itemname$ = getitemname(.@item);
+ if (.@itemname$ != "null") {
+ .@itemslot = getitemslots(.@item);
+ if (.@itemslot)
+ .@itemname$ = sprintf("%s [%d]", .@itemname$, .@itemslot);
+ }
+ else
+ .@itemname$ = "Unknown Item";
+ if (PACKETVER >= 20150729)
+ return sprintf("<ITEM>%s<INFO>%d</INFO></ITEM>", .@itemname$, .@item);
+ else if (PACKETVER >= 20130130)
+ return sprintf("<ITEMLINK>%s<INFO>%d</INFO></ITEMLINK>", .@itemname$, .@item);
+ else
+ return .@itemname$;
+}
diff --git a/npc/re/instances/OldGlastHeim.txt b/npc/re/instances/OldGlastHeim.txt
index 44b5f1e61..ec0efeb53 100644
--- a/npc/re/instances/OldGlastHeim.txt
+++ b/npc/re/instances/OldGlastHeim.txt
@@ -2744,7 +2744,7 @@ glast_01,188,273,5 script White Knight#1a 4_WHITEKNIGHT,{
close();
}
mes("I exchange you a White Knight Card for ^0000FF3000 Coagulated Spell^000000 or ^FF000070 Contaminated Magic^000000.");
- mes("<ITEMLINK>White Knight Card<INFO>4608</INFO></ITEMLINK>");
+ mes(F_MesItemInfo(White_Knightage_Card));
next();
setarray(.@item[0], Coagulated_Spell, Corrupted_Charm);
setarray(.@cost[0], 3000, 70);
@@ -2777,7 +2777,7 @@ glast_01,192,273,3 script Khalitzburg Knight#1a 4_F_KHALITZBURG,{
close();
}
mes("I exchange you a Khalitzburg Knight Card for ^0000FF5000 Coagulated Spell^000000 or ^FF0000100 Contaminated Magic^000000.");
- mes("<ITEMLINK>Khalitzburg Knight Card<INFO>4609</INFO></ITEMLINK>");
+ mes(F_MesItemInfo(Khali_Knightage_Card));
next();
setarray(.@item[0], Coagulated_Spell, Corrupted_Charm);
setarray(.@cost[0], 5000, 100);