【发布时间】:2022-01-20 04:00:15
【问题描述】:
您好,一旦触发此事件并检查级别并给我正确的奖励,问题是 xplayer.blablabla 会在 1 次点击中多次随机运行,有人知道出了什么问题吗?
RegisterServerEvent('battlepass:rewardskteolekaramele')
AddEventHandler('battlepass:rewardskteolekaramele', function()
local _source = source
local xPlayer = ESX.GetPlayerFromId(source)
local identifier = xPlayer.identifier
MySQL.Async.fetchAll("SELECT level FROM levelxp_table WHERE identifier = @identifier", {
["identifier"] = GetPlayerIdentifiers(source)[1]},
function(attributeti)
print(attributeti[1].level)
local resultar = attributeti[1].level
if attributeti[1].level == 1 or resultar == 11 or resultar == 21 or resultar == 31 or resultar == 41 or resultar == 51 or resultar == 61 or resultar == 71 or resultar == 81 or resultar == 91 then
xPlayer.addMoney(50000)
elseif attributeti[1].level == 2 or resultar == 12 or resultar == 22 or resultar == 32 or resultar == 42 or resultar == 52 or resultar == 62 or resultar == 72 or resultar == 82 or resultar == 92 then
xPlayer.addInventoryItem("WEAPON_FENNEC", 1)
elseif attributeti[1].level == 3 or resultar == 13 or resultar == 23 or resultar == 33 or resultar == 43 or resultar == 53 or resultar == 63 or resultar == 73 or resultar == 83 or resultar == 93 then
xPlayer.addAccountMoney('bitcoin_money', 10)
end
end)
end)
【问题讨论】:
-
事件被多次触发的可能性更大。一个原因可能是函数本身最终可能导致第二个事件。可以通过注释代码轻松测试。
-
感谢您这么快回答我已经尝试过您所说的仍然发生同样的事情
-
那是最简单的。使用浏览器中的开发人员工具,网络,您可以查看流量。像关键事件这样的事件不止一次出现。客户端日志记录是可能的。
-
非常感谢您抽出宝贵的时间,先生度过了愉快的一天/晚上,我通过检查每个级别删除了 or 语句来修复它
-
我投票结束这个问题,因为 OP 已经修复了它。
标签: if-statement lua fivem