diff options
Diffstat (limited to 'MCServer/Plugins/Core')
-rw-r--r-- | MCServer/Plugins/Core/item.lua | 43 |
1 files changed, 23 insertions, 20 deletions
diff --git a/MCServer/Plugins/Core/item.lua b/MCServer/Plugins/Core/item.lua index 00a6aa790..30e8820a9 100644 --- a/MCServer/Plugins/Core/item.lua +++ b/MCServer/Plugins/Core/item.lua @@ -1,36 +1,39 @@ -function HandleItemCommand( Split, Player )
- if( #Split ~= 2 and #Split ~=3 ) then
- Player:SendMessage( cChatColor.Green .. "Usage: /item [ItemType/Name:Dmg] <Amount>" )
- return true
+function HandleItemCommand(Split, Player)
+ if ((#Split ~= 2) and (#Split ~=3)) then
+ Player:SendMessage(cChatColor.Green .. "Usage: /item [ItemType/Name:Dmg] <Amount>");
+ return true;
end
- local Item = cItem(E_ITEM_EMPTY, 1)
- local FoundItem = StringToItem( Split[2], Item )
+ local Item = cItem(E_ITEM_EMPTY, 1);
+ local FoundItem = StringToItem(Split[2], Item);
- if( IsValidItem( Item.m_ItemType ) == false ) then -- StringToItem does not check if item is valid
+ if not(IsValidItem(Item.m_ItemType)) then -- StringToItem does not check if item is valid
FoundItem = false
end
- if( FoundItem == false ) then
+ if not(FoundItem) then
Player:SendMessage( cChatColor.Green .. "Invalid Item type / name !" )
return true
end
- if( #Split == 3 ) then
- ItemAmount = tonumber( Split[3] )
- if( ItemAmount == nil or ItemAmount < 1 or ItemAmount > 512 ) then
- Player:SendMessage( cChatColor.Green .. "Invalid Amount !" )
- return true
- else
- Item.m_ItemCount = ItemAmount
+ local ItemAmount = 1;
+ if (#Split == 3) then
+ ItemAmount = tonumber(Split[3]);
+ if ((ItemAmount == nil) or (ItemAmount < 1) or (ItemAmount > 512)) then
+ Player:SendMessage(cChatColor.Green .. "Invalid Amount!");
+ return true;
end
end
- if( Player:GetInventory():AddItem( Item ) == true ) then
- Player:SendMessage( cChatColor.Green .. "There you go !" )
- LOG("Gave " .. Player:GetName() .. " " .. Item.m_ItemCount .. " times " .. Item.m_ItemType .. ":" .. Item.m_ItemDamage)
+ Item.m_ItemCount = ItemAmount;
+
+ local ItemsGiven = Player:GetInventory():AddItem(Item);
+ if (ItemsGiven == ItemAmount) then
+ Player:SendMessage( cChatColor.Green .. "There you go !");
+ LOG("Gave " .. Player:GetName() .. " " .. Item.m_ItemCount .. " times " .. Item.m_ItemType .. ":" .. Item.m_ItemDamage);
else
- Player:SendMessage( cChatColor.Green .. "Not enough space in inventory !" )
+ Player:SendMessage(cChatColor.Green .. "Not enough space in inventory, only gave " .. ItemsGiven);
+ LOG("Player " .. Player:GetName() .. " asked for " .. Item.m_ItemCount .. " times " .. Item.m_ItemType .. ":" .. Item.m_ItemDamage ..", but only could fit " .. ItemsGiven);
end
- return true
+ return true;
end
\ No newline at end of file |