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:
Jacob
2022-04-23 22:02:00 +01:00
parent f4da768bc6
commit 75d13d0d0b
3 changed files with 82 additions and 13 deletions
+49 -9
View File
@@ -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)
+3 -2
View File
@@ -1,5 +1,6 @@
Config = {}
DisplayStaffTag = "Staff |"
DisplayAfkTag = "Afk | "
disPlayerNames = 10
DisplayAfkTag = "AFK |"
disPlayerNames = 10
secondsforafk = 300
+30 -2
View File
@@ -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