Improvement: Automatic AFK head tags!
+ Added automatically-enabling AFK in the Head-Tags resource. + Runs at intervals of 300 seconds.
This commit is contained in:
@@ -3,6 +3,7 @@ local ShowTag = false
|
||||
local showTags = true
|
||||
local seeTags = false
|
||||
local isDriver = false
|
||||
local isafk = false
|
||||
local staffTable = { 0 }
|
||||
local afkTable = { 0 }
|
||||
|
||||
@@ -10,10 +11,10 @@ RegisterNetEvent('staffTag')
|
||||
AddEventHandler('staffTag', function(playerID)
|
||||
if staffTag then
|
||||
staffTag = false
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Staff tag ^*^1Disabled^0"}})
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Staff tag has been ^*^1Disabled!^0"}})
|
||||
else
|
||||
staffTag = true
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Staff tag ^*^2Enabled^0"}})
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Staff tag has been ^*^2Enabled!^0"}})
|
||||
end
|
||||
end)
|
||||
|
||||
@@ -26,10 +27,10 @@ RegisterNetEvent('afkTag')
|
||||
AddEventHandler('afkTag', function(playerID)
|
||||
if afkTag then
|
||||
afkTag = false
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Afk tag ^*^1Disabled^0"}})
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "AFK tag has been ^*^1Disabled!^0"}})
|
||||
else
|
||||
afkTag = true
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Afk tag ^*^2Enabled^0"}})
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "AFK tag has been ^*^2Enabled!^0"}})
|
||||
end
|
||||
end)
|
||||
|
||||
@@ -43,10 +44,10 @@ RegisterNetEvent('showTags')
|
||||
AddEventHandler('showTags', function()
|
||||
if showTags then
|
||||
showTags = false
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Player tags ^*^1Disabled^0"}})
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Player tags are ^*^1Disabled!^0"}})
|
||||
else
|
||||
showTags = true
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Player tags ^*^2Enabled^0"}})
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Player tags are ^*^2Enabled!^0"}})
|
||||
end
|
||||
end)
|
||||
|
||||
@@ -54,10 +55,10 @@ RegisterNetEvent('seeTags')
|
||||
AddEventHandler('seeTags', function()
|
||||
if seeTags then
|
||||
seeTags = false
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Player tags trough walls ^*^1Disabled^0"}})
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Player tags trough walls are ^*^1Disabled!^0"}})
|
||||
else
|
||||
seeTags = true
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Player tags trough walls ^*^2Enabled^0"}})
|
||||
TriggerEvent('chat:addMessage', {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "Player tags trough walls are ^*^2Enabled!^0"}})
|
||||
end
|
||||
end)
|
||||
|
||||
@@ -82,7 +83,7 @@ function ManageHeadLabels()
|
||||
SetMpGamerTagColour(headDisplayId, 0, 6)
|
||||
elseif has_value(afkTable,GetPlayerServerId(i)) then
|
||||
SetMpGamerTagName(headDisplayId,DisplayAfkTag.." "..GetPlayerServerId(i).." | "..GetPlayerName(i))
|
||||
SetMpGamerTagColour(headDisplayId, 0, 6)
|
||||
SetMpGamerTagColour(headDisplayId, 0, 4)
|
||||
else
|
||||
SetMpGamerTagColour(headDisplayId, 0, 0)
|
||||
SetMpGamerTagName(headDisplayId,GetPlayerServerId(i).." | "..GetPlayerName(i))
|
||||
@@ -124,3 +125,42 @@ Citizen.CreateThread(function()
|
||||
Citizen.Wait(0)
|
||||
end
|
||||
end)
|
||||
|
||||
Citizen.CreateThread(function()
|
||||
while true do
|
||||
Wait(1000)
|
||||
|
||||
playerPed = GetPlayerPed(-1)
|
||||
if playerPed then
|
||||
currentPos = GetEntityCoords(playerPed, true)
|
||||
|
||||
if currentPos == prevPos and not(isafk) then
|
||||
if time > 0 then
|
||||
if time == math.ceil(secondsforafk / 4) then
|
||||
TriggerEvent("chat:addMessage", {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "You will be set as AFK in ^*^1"..time.." seconds!"}})
|
||||
elseif time == 30 then
|
||||
TriggerEvent("chat:addMessage", {color = { 255, 0, 0},multiline = false,args = {"[SYSTEM]", "You will be set as AFK in ^*^1"..time.." seconds!"}})
|
||||
end
|
||||
|
||||
time = time - 1
|
||||
else
|
||||
--TriggerEvent("chatMessage", "[SYSTEM]", {255, 0, 0}, "^1DEBUGGING - Add to table.")
|
||||
--Add to AFK table
|
||||
TriggerServerEvent("addafk")
|
||||
isafk = true
|
||||
end
|
||||
|
||||
elseif currentPos ~= prevPos and isafk then
|
||||
--TriggerEvent("chatMessage", "[SYSTEM]", {255, 0, 0}, "^1DEBUGGING - Remove from table.")
|
||||
--Remove from AFK table
|
||||
TriggerServerEvent("removeafk")
|
||||
isafk = false
|
||||
|
||||
else
|
||||
time = secondsforafk
|
||||
end
|
||||
|
||||
prevPos = currentPos
|
||||
end
|
||||
end
|
||||
end)
|
||||
@@ -1,5 +1,6 @@
|
||||
Config = {}
|
||||
|
||||
DisplayStaffTag = "Staff |"
|
||||
DisplayAfkTag = "Afk | "
|
||||
disPlayerNames = 10
|
||||
DisplayAfkTag = "AFK |"
|
||||
disPlayerNames = 10
|
||||
secondsforafk = 300
|
||||
@@ -6,17 +6,45 @@ local afkTable = { 0 }
|
||||
--print(table.unpack(staffTable))
|
||||
|
||||
RegisterCommand("afktag", function(source, args, rawCommand)
|
||||
-- Add player to Staff table
|
||||
-- Add player to Afk table
|
||||
TriggerClientEvent("afkTag", source, source)
|
||||
if has_value(afkTable, source) then
|
||||
removebyKey(afkTable, source)
|
||||
else
|
||||
table.insert(afkTable, source)
|
||||
end
|
||||
--print(table.unpack(staffTable))
|
||||
--print(table.unpack(afkTable))
|
||||
TriggerClientEvent("sendAfk", -1, afkTable)
|
||||
end)
|
||||
|
||||
RegisterServerEvent("addafk")
|
||||
AddEventHandler("addafk", function()
|
||||
-- Add player to Afk table
|
||||
if has_value(afkTable, source) then
|
||||
--removebyKey(afkTable, source)
|
||||
else
|
||||
TriggerClientEvent("afkTag", source, source)
|
||||
table.insert(afkTable, source)
|
||||
TriggerClientEvent("sendAfk", -1, afkTable)
|
||||
end
|
||||
--print(table.unpack(afkTable))
|
||||
--TriggerClientEvent("sendAfk", -1, afkTable)
|
||||
end)
|
||||
|
||||
RegisterServerEvent("removeafk")
|
||||
AddEventHandler("removeafk", function()
|
||||
-- Add player to Afk table
|
||||
if has_value(afkTable, source) then
|
||||
TriggerClientEvent("afkTag", source, source)
|
||||
removebyKey(afkTable, source)
|
||||
TriggerClientEvent("sendAfk", -1, afkTable)
|
||||
else
|
||||
--table.insert(afkTable, source)
|
||||
end
|
||||
--print(table.unpack(afkTable))
|
||||
--TriggerClientEvent("sendAfk", -1, afkTable)
|
||||
end)
|
||||
|
||||
RegisterCommand("stafftag", function(source, args, rawCommand)
|
||||
if IsPlayerAceAllowed(source, "jd.staff") then
|
||||
-- Add player to Staff table
|
||||
|
||||
Reference in New Issue
Block a user