我正在尝试创建一个脚本,任何人都可以使用 /createmafia 命令在现场创建黑手党。
问题是我正在将数据插入数据库,但是当我将新的 mafiajob 设置为播放器时,它会忽略它导致 es_extended 脚本无法在 ESX.MafiaJobs 表中找到工作,每次服务器重新启动时都会获取女巫。
在执行 setjob 命令之前,我可以以某种方式强制再次从数据库中获取数据吗?
这是我正在使用的功能:
function createmafia(mafia, identifier, grade)
MySQL.Async.execute('INSERT INTO mafiajobs (name, identifier, label) VALUES (@name, @identifier, @label)',{
['@name'] = mafia,
['@identifier'] = identifier,
['@label'] = mafia
}, function() end)
MySQL.Async.execute('INSERT INTO mafiajob_grades (mafiajob_name, mafiagrade, name, label, identifier) VALUES (@mafiajob_name, @mafiagrade, @mafiagradename, @mafiagradelabel, @identifier)',{
['@mafiajob_name'] = mafia,
['@mafiagrade'] = grade,
['@mafiagradename'] = 'boss',
['@mafiagradelabel'] = 'Αφεντικό',
['@identifier'] = identifier
}, function() end)
MySQL.Async.execute('UPDATE users SET mafiajob = @mafiajob, mafiajob_grade = @mafiajob_grade WHERE identifier = @identifier ',{
['@identifier'] = identifier,
['@mafiajob_grade'] = grade,
['@mafiajob'] = mafia
}, function() end)
local xPlayer = GetPlayerFromIdentifier(identifier)
xPlayer.setMafiaJob(mafia, grade)
end