可以使用 `giveitem` 函数给玩家物品。其语法为 `giveitem(actor, item, mailMode)`。
参数说明:
- `actor`:玩家对象。
- `item`:物品字符串,格式为“物品ID或名称#数量#物品规则”。多个物品用 `&` 连接。数量默认为1,物品规则为二进制标记组合(如1=禁止扔,2=禁止交易,4=禁止存,需要3项则填7)。
- `mailMode`(可选):当背包满且开启邮件发送时,`0` 或为空保持原逻辑(逐个邮件发送),`1` 为合并所有物品到单封邮件发送。
返回值:返回一个物品对象(对于非叠加物品,就是给予的物品对象;对于叠加物品,返回的是最后一格物品的对象,不建议接收)。
示例代码:
```lua
-- 发放单个物品(默认数量为1)
local result = giveitem(actor, "包子")
if result then
print("成功发放包子")
end
-- 发放指定数量的物品
local result = giveitem(actor, "直刀#5")
-- 一次发放多个物品
local itemString = "木剑#1&布衣#1&金币#100"
local result = giveitem(actor, itemString)
-- 使用物品ID发放
local result = giveitem(actor, "51001#3")
-- 带物品规则的发放(7=禁止扔+禁止交易+禁止存仓)
local result = giveitem(actor, "木剑#1#7")
-- 背包空间不足时使用邮件模式合并发送
local result = giveitem(actor, "木剑#200", 1)
```
另外,也可以通过 `sendmail` 函数以邮件附件形式给予物品,在 `rewards` 参数中设置,格式为“物品1#数量#绑定标记&物品2#数量#绑定标记”。