mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-04-25 14:17:46 +00:00
Scripts for retainers. Adds item storage functionality.
This commit is contained in:
parent
64006d2351
commit
4160622556
3 changed files with 15 additions and 9 deletions
|
@ -39,9 +39,9 @@ function onEventStarted(player, npc, triggerName)
|
|||
while (true) do
|
||||
choice = callClientFunction(player, "eventTalkRetainerMenu", false, true);
|
||||
if (choice == 1) then
|
||||
doItemTrade(player, npc);
|
||||
doItemTrade(player, retainer);
|
||||
elseif (choice == 2) then
|
||||
doBazaar(player, npc);
|
||||
doBazaar(player, retainer);
|
||||
elseif (choice == 7) then
|
||||
callClientFunction(player, "eventTalkRetainerMannequin", 0);
|
||||
elseif (choice == 8) then
|
||||
|
|
|
@ -24,6 +24,10 @@ function init(npc)
|
|||
return false, false, 0, 0;
|
||||
end
|
||||
|
||||
function onSpawn(player, npc)
|
||||
npc:SendFullRetainerInventory(player);
|
||||
end
|
||||
|
||||
function onEventStarted(player, retainer, triggerName)
|
||||
|
||||
while (true) do
|
||||
|
|
|
@ -22,16 +22,18 @@ function doItemTrade(player, retainer)
|
|||
callClientFunction(player, "eventTalkRetainerItemTrade", 1);
|
||||
|
||||
while (true) do
|
||||
resultCode, type7Param, un1, quantity, itemId, unk2 = callClientFunction(player, "eventTalkRetainerItemTrade", 2);
|
||||
resultCode, type7Param, un1, quantity, itemId, quality = callClientFunction(player, "eventTalkRetainerItemTrade", 2);
|
||||
|
||||
--Retreieve
|
||||
if (resultCode == 31) then
|
||||
--UpdatePlayer
|
||||
--UpdateRetainer
|
||||
if (resultCode == 31) then
|
||||
retainer:GetInventory(type7Param.inventoryType):RemoveItemAtSlot(type7Param.slot, quantity);
|
||||
retainer:GetInventory(type7Param.inventoryType):SendUpdatePackets(player, true);
|
||||
player:GetInventory(type7Param.inventoryType):AddItem(itemId, quantity, quality);
|
||||
--Entrust
|
||||
elseif (resultCode == 32) then
|
||||
--UpdatePlayer
|
||||
--UpdateRetainer
|
||||
elseif (resultCode == 32) then
|
||||
player:GetInventory(type7Param.inventoryType):RemoveItemAtSlot(type7Param.slot, quantity);
|
||||
retainer:GetInventory(type7Param.inventoryType):AddItem(itemId, quantity, quality);
|
||||
retainer:GetInventory(type7Param.inventoryType):SendUpdatePackets(player, true);
|
||||
end
|
||||
|
||||
callClientFunction(player, "eventReturnResult", resultCode, false);
|
||||
|
|
Loading…
Add table
Reference in a new issue