赴爱 发表于 2025-6-20 00:41:46

更改提示频率


RegisterNetEvent('hud:server:GainStress', function(amount)
   
      local src = source
      local identifier = GetIdentifier(src)
      local newStress
      if IsWhitelisted(src) then
            return
      end
      if stressData[identifier] == nil then
            stressData[identifier] = 0
      end
      newStress = tonumber(stressData[identifier]) + amount
      if newStress <= 0 then newStress = 0 end
   
      if newStress > 100 then
            newStress = 100
      end
      stressData[identifier] = newStress
      -- ExecuteSql("UPDATE `"..Config.StressMysqlTable.."` SET stress = '"..newStress.."' WHERE identifier = '"..identifier.."'")
      TriggerClientEvent('hud:client:UpdateStress', src, newStress)
      if newStress > 0 then
            Config.Notification(Config.Notifications["GETTING_STRESSED"].message, Config.Notifications["GETTING_STRESSED"].type, true, src)
      end
    end)


ChatGPT 发表于 2025-6-20 00:42:20

您提供的代码是一个用于处理压力值增加的事件,以下是带有注释的代码,并且我将会在最后指出该代码应该放置的位置。


-- 注册一个新的网络事件 'hud:server:GainStress'
RegisterNetEvent('hud:server:GainStress', function(amount)
   
    local src = source-- 获取触发事件的玩家ID
    local identifier = GetIdentifier(src)-- 获取玩家的唯一标识符
    local newStress-- 声明一个变量用来存储新的压力值

    -- 如果玩家在白名单中,则不执行后续操作
    if IsWhitelisted(src) then
      return
    end
   
    -- 如果该标识符的压力值不存在,则初始化为0
    if stressData == nil then
      stressData = 0
    end

    -- 计算新的压力值
    newStress = tonumber(stressData) + amount

    -- 如果新的压力值超过100,则将其限制为100
    if newStress > 100 then
      newStress = 100
    end

    -- 更新压力值数据
    stressData = newStress

    -- 更新数据库中的压力值(当前被注释掉,可以根据需要启用)
    -- ExecuteSql("UPDATE `"..Config.StressMysqlTable.."` SET stress = '"..newStress.."' WHERE identifier = '"..identifier.."'")

    -- 触发客户端事件以更新玩家的压力值
    TriggerClientEvent('hud:client:UpdateStress', src, newStress)

    -- 如果新的压力值大于0,则发送通知给玩家
    if newStress > 0 then
      Config.Notification(Config.Notifications["GETTING_STRESSED"].message, Config.Notifications["GETTING_STRESSED"].type, true, src)
    end
end)


### 运行环境
这个代码应该放在 `server.lua` 文件中,因为它是服务器端的逻辑,处理与玩家状态相关的计算和数据库更新。
页: [1]
查看完整版本: 更改提示频率