summaryrefslogtreecommitdiff
path: root/npc/other
diff options
context:
space:
mode:
Diffstat (limited to 'npc/other')
-rw-r--r--npc/other/Global_Functions.txt49
-rw-r--r--npc/other/inventory_expansion.txt18
2 files changed, 40 insertions, 27 deletions
diff --git a/npc/other/Global_Functions.txt b/npc/other/Global_Functions.txt
index 904ed7165..e3741b495 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));
}
@@ -446,32 +446,45 @@ function script F_MesColor {
function script F_GetTradeRestriction {
.@trade = getiteminfo(getarg(0), ITEMINFO_TRADE);
- if (.@trade == 0) {
+ if (.@trade == 0)
return "None";
- }
.@trade$ = "";
- if (.@trade & ITR_NODROP) {
+ if (.@trade & ITR_NODROP)
.@trade$ += "NoDrop|";
- }
- if (.@trade & ITR_NOTRADE) {
+ if (.@trade & ITR_NOTRADE)
.@trade$ += "NoTrade|";
- }
- if (.@trade & ITR_PARTNEROVERRIDE) {
+ if (.@trade & ITR_PARTNEROVERRIDE)
.@trade$ += "PartnerOverride|";
- }
- if (.@trade & ITR_NOSELLTONPC) {
+ if (.@trade & ITR_NOSELLTONPC)
.@trade$ += "NoSellToNpc|";
- }
- if (.@trade & ITR_NOSTORAGE) {
+ if (.@trade & ITR_NOSTORAGE)
.@trade$ += "NoStorage|";
- }
- if (.@trade & ITR_NOGSTORAGE) {
+ if (.@trade & ITR_NOGSTORAGE)
.@trade$ += "NoGuildStorage|";
- }
- if (.@trade & ITR_NOMAIL) {
+ if (.@trade & ITR_NOMAIL)
.@trade$ += "NoMail|";
- }
- if (.@trade & ITR_NOAUCTION) {
+ if (.@trade & ITR_NOAUCTION)
.@trade$ += "NoAuction|";
+ return .@trade$;
+}
+
+//== 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/other/inventory_expansion.txt b/npc/other/inventory_expansion.txt
index db18e09e1..8a5ac5e6c 100644
--- a/npc/other/inventory_expansion.txt
+++ b/npc/other/inventory_expansion.txt
@@ -33,28 +33,28 @@
OnInvExpandRequest:
if (countitem(Inventory_Extension_Coupon) < 1) {
- expandInventoryAck(EXPAND_INV_MISSING_ITEM);
+ expandinventoryack(EXPAND_INV_MISSING_ITEM);
end;
}
- if (getInventorySize() + INVENTORY_INCREASE_STEP > MAX_INVENTORY) {
- expandInventoryAck(EXPAND_INV_MAX_SIZE);
+ if (getinventorysize() + INVENTORY_INCREASE_STEP > MAX_INVENTORY) {
+ expandinventoryack(EXPAND_INV_MAX_SIZE);
end;
}
- expandInventoryAck(EXPAND_INV_ASK_CONFIRMATION, Inventory_Extension_Coupon);
+ expandinventoryack(EXPAND_INV_ASK_CONFIRMATION, Inventory_Extension_Coupon);
end;
OnInvExpandConfirmed:
if (countitem(Inventory_Extension_Coupon) < 1) {
- expandInventoryResult(EXPAND_INV_RESULT_MISSING_ITEM);
+ expandinventoryresult(EXPAND_INV_RESULT_MISSING_ITEM);
end;
}
- if (getInventorySize() + INVENTORY_INCREASE_STEP > MAX_INVENTORY) {
- expandInventoryResult(EXPAND_INV_RESULT_MAX_SIZE);
+ if (getinventorysize() + INVENTORY_INCREASE_STEP > MAX_INVENTORY) {
+ expandinventoryresult(EXPAND_INV_RESULT_MAX_SIZE);
end;
}
delitem(Inventory_Extension_Coupon, 1);
- if (expandInventory(INVENTORY_INCREASE_STEP) == true) {
- expandInventoryResult(EXPAND_INV_RESULT_SUCCESS);
+ if (expandinventory(INVENTORY_INCREASE_STEP) == true) {
+ expandinventoryresult(EXPAND_INV_RESULT_SUCCESS);
}
end;