1
0
Fork 0
forked from Simnation/Main
This commit is contained in:
Nordi98 2025-07-09 20:17:42 +02:00
parent 369af59fc9
commit 664fa04d1a
40 changed files with 0 additions and 7379 deletions

View file

@ -1,7 +0,0 @@
Hi, thank you for buying okokChat! :)
If you need help contact me on discord: okok#3488
Discord server: https://discord.gg/okok
Docs: https://docs.okokscripts.io/
-> Installation Guide: https://docs.okokscripts.io/scripts/okokchat

View file

@ -1,225 +0,0 @@
local players = {}
local defaultScale = 0.7 -- Text scale
local displayTime = 3500 -- Duration to display the text (in ms)
local distToDraw = 250 -- Min. distance to draw
local pedDisplaying = {}
local function DrawText3D(coords, text, color)
local camCoords = GetGameplayCamCoord()
local dist = #(coords - camCoords)
local scale = 200 / (GetGameplayCamFov() * dist)
SetTextColour(color.r, color.g, color.b, color.a)
SetTextScale(0.0, defaultScale * scale)
SetTextDropshadow(0, 0, 0, 0, 55)
SetTextDropShadow()
SetTextFont(6)
SetTextCentre(true)
BeginTextCommandDisplayText("STRING")
AddTextComponentSubstringPlayerName(text)
SetDrawOrigin(coords, 0)
EndTextCommandDisplayText(0.0, 0.0)
ClearDrawOrigin()
end
local function Display(ped, text, color)
local playerPed = PlayerPedId()
local playerCoords = GetEntityCoords(playerPed)
local pedCoords = GetEntityCoords(ped)
local dist = #(playerCoords - pedCoords)
if dist <= distToDraw then
pedDisplaying[ped] = (pedDisplaying[ped] or 1) + 1
local display = true
Citizen.CreateThread(function()
Wait(displayTime)
display = false
end)
local offset = 0.7 + pedDisplaying[ped] * 0.15
while display do
if HasEntityClearLosToEntity(playerPed, ped, 17 ) then
local x, y, z = table.unpack(GetEntityCoords(ped))
z = z + offset
DrawText3D(vector3(x, y, z), text, color)
end
Wait(0)
end
pedDisplaying[ped] = pedDisplaying[ped] - 1
end
end
-- For 3dme:
RegisterNetEvent('okokChat:3dme')
AddEventHandler('okokChat:3dme', function(text, serverId)
local player = GetPlayerFromServerId(serverId)
if player ~= -1 then
local ped = GetPlayerPed(player)
local color = { r = 0, g = 0, b = 255, a = 255 } -- blue color
Display(ped, text, color)
end
end)
-- For 3ddo:
RegisterNetEvent('okokChat:3ddo')
AddEventHandler('okokChat:3ddo', function(text, serverId)
local player = GetPlayerFromServerId(serverId)
if player ~= -1 then
local ped = GetPlayerPed(player)
local color = { r = 222, g = 255, b = 0, a = 255 } -- yellow color
Display(ped, text, color)
end
end)
exports('Message', function(background, color, icon, title, playername, message, target, image)
TriggerServerEvent('okokChat:ServerMessage', background, color, icon, title, playername, message, target, image)
end)
AddEventHandler('playerSpawned', function()
TriggerServerEvent('okokChat:onPlayerSpawn')
end)
RegisterNetEvent("okokChat:getAllPlayers")
AddEventHandler("okokChat:getAllPlayers", function()
local coords = GetEntityCoords(PlayerPedId())
local closePlayers = {}
local allPlayers = GetActivePlayers()
local playerCount = 1
local pedID = PlayerPedId()
for i = 1, #allPlayers do
local playerId = allPlayers[i]
local playerPed = GetPlayerPed(playerId)
local playerCoords = GetEntityCoords(playerPed)
table.insert(closePlayers, GetPlayerServerId(playerId))
playerCount += 1
end
TriggerServerEvent("okokChat:SetClosePlayers", closePlayers)
end)
RegisterNetEvent("okokChat:checkDeathStatus")
AddEventHandler("okokChat:checkDeathStatus", function()
local ped = GetPlayerPed(-1)
TriggerServerEvent('okokChat:deathStatus', IsEntityDead(ped))
end)
RegisterNetEvent("okokChat:Notification")
AddEventHandler("okokChat:Notification", function(info, text)
exports['okokNotify']:Alert(info.title, text, info.time, info.type)
end)
Citizen.CreateThread(function()
if Config.JobChat then
TriggerEvent('chat:addSuggestion', '/'..Config.JobCommand, 'JOB message', {
{ name="message", help="message to send" },
})
end
if Config.EnableOOC then
TriggerEvent('chat:addSuggestion', '/'..Config.OOCCommand, 'OOC message', {
{ name="message", help="message to send" },
})
end
if Config.AllowPlayersToClearTheirChat then
TriggerEvent('chat:addSuggestion', '/'..Config.ClearChatCommand, 'Clear chat', {})
end
if Config.EnableHideChat then
TriggerEvent('chat:addSuggestion', '/'..Config.HideChatCommand, 'Hide chat', {})
end
if Config.EnableStaffCommand then
TriggerEvent('chat:addSuggestion', '/'..Config.StaffCommand, 'Send a message as staff', {
{ name="message", help="message to send" },
})
end
if Config.AllowStaffsToClearEveryonesChat then
TriggerEvent('chat:addSuggestion', '/'..Config.ClearEveryonesChatCommand, "Clear everyone's chat", {})
end
if Config.EnableStaffOnlyCommand then
TriggerEvent('chat:addSuggestion', '/'..Config.StaffOnlyCommand, 'Staff only chat', {
{ name="message", help="message to send" },
})
end
if Config.EnableAdvertisementCommand then
TriggerEvent('chat:addSuggestion', '/'..Config.AdvertisementCommand, 'Make an advertisement', {
{ name="ad", help="advertisement message" },
})
end
if Config.EnableAnonymousCommand then
TriggerEvent('chat:addSuggestion', '/'..Config.AnonymousCommand, 'Send an anonymous message', {
{ name="message", help="message to send" },
})
end
if Config.EnableTwitchCommand then
TriggerEvent('chat:addSuggestion', '/'..Config.TwitchCommand, 'Twitch message', {
{ name="message", help="message to send" },
})
end
if Config.EnableYoutubeCommand then
TriggerEvent('chat:addSuggestion', '/'..Config.YoutubeCommand, 'YouTube message', {
{ name="message", help="message to send" },
})
end
if Config.EnableTwitterCommand then
TriggerEvent('chat:addSuggestion', '/'..Config.TwitterCommand, 'Twitter message', {
{ name="message", help="message to send" },
})
end
if Config.EnablePoliceCommand then
TriggerEvent('chat:addSuggestion', '/'..Config.PoliceCommand, 'Police message', {
{ name="message", help="message to send" },
})
end
if Config.EnableAmbulanceCommand then
TriggerEvent('chat:addSuggestion', '/'..Config.AmbulanceCommand, 'Ambulance message', {
{ name="message", help="message to send" },
})
end
if Config.TimeOutPlayers then
TriggerEvent('chat:addSuggestion', '/'..Config.TimeOutCommand, 'Mute player', {
{ name="id", help="id of the player to mute" },
{ name="time", help="time in minutes" }
})
TriggerEvent('chat:addSuggestion', '/'..Config.RemoveTimeOutCommand, 'Unmute player', {
{ name="id", help="id of the player to unmute" }
})
end
if Config.EnableMe then
TriggerEvent('chat:addSuggestion', '/'..Config.MeCommand, 'Send a me message', {
{ name="action", help="me action" }
})
end
if Config.EnableTry then
TriggerEvent('chat:addSuggestion', '/'..Config.TryCommand, 'Send a try message', {
{ name="action", help="try action" }
})
end
if Config.EnableDo then
TriggerEvent('chat:addSuggestion', '/'..Config.DoCommand, 'Send a do message', {
{ name="action", help="do action" }
})
end
if Config.EnableDocCommand then
TriggerEvent('chat:addSuggestion', '/'..Config.DocCommand, 'Send a do message', {
{ name="number", help="number countdown" }
})
end
end)

View file

@ -1,349 +0,0 @@
Config = {}
Config.QBPermissionsUpdate = true -- set it to true if you have the latest Permissions update
--------------------------------
-- [Discord Logs]
Config.EnableDiscordLogs = true
Config.IconURL = ""
Config.ServerName = ""
-- To change a webhook color you need to set the decimal value of a color, you can use this website to do that - https://www.mathsisfun.com/hexadecimal-decimal-colors.html
Config.WebhookColor = "16741888"
--------------------------------
-- [Staff Groups]
Config.StaffGroups = { -- Groups that can access the different staff chats (/staff, /staffo, /sa)
'god',
'admin',
'mod'
}
--------------------------------
-- [General]
Config.AllowPlayersToClearTheirChat = true
Config.ClearChatCommand = 'clear'
Config.EnableHideChat = true
Config.HideChatCommand = 'hide'
Config.ShowIDOnMessage = true -- Shows the player ID on every message that is sent
Config.ShowIDOnMessageForEveryone = false -- true: shows the player ID for everyone | false: shows it only for staffs
Config.ClearChatMessageTitle = 'SYSTEM'
Config.ClearChatMessage = 'Chat ist Sauber!'
-- [Date Format]
Config.DateFormat = '%H:%M' -- To change the date format check this website - https://www.lua.org/pil/22.1.html
--------------------------------
-- [Time Out]
Config.TimeOutPlayers = false
Config.TimeOutCommand = "mute"
Config.RemoveTimeOutCommand = "unmute"
Config.ShowTimeOutMessageForEveryone = false
Config.TimeOutIcon = 'fas fa-gavel'
Config.MessageTitle = 'SERVER'
Config.TimeOutMessages = {
['muted_for'] = '<b>{3}</b> has been muted for <b>{1}</b> minutes',
['you_muted_for'] = 'You muted <b>{3}</b> for <b>{1}</b> minutes',
['been_muted_for'] = 'You have been muted for <b>{0}</b> minutes',
['you_unmuted'] = 'You unmuted <b>{2}</b>',
['been_unmuted'] = 'You have been unmuted',
['muted_message'] = 'You are muted for <b>{0}</b>',
['seconds'] = ' seconds',
['minutes'] = ' minutes',
['hours'] = ' hours',
}
--------------------------------
-- [Job]
Config.JobChat = false
Config.JobCommand = 'jobc'
Config.JobIcon = 'fas fa-briefcase'
--------------------------------
-- [Private Message]
Config.EnablePM = true
Config.PMCommand = 'pm'
Config.PMIcon = 'fas fa-comment pm-icon'
Config.PMMessageTitle = "PM"
--------------------------------
-- [OOC/Me/Do/Try]
Config.Distance = 20.0
--------------------------------
-- [OOC]
Config.EnableOOC = false
Config.OOCCommand = 'ooc'
Config.OOCIcon = 'fas fa-door-open'
Config.OOCMessageTitle = 'OOC'
Config.OOCMessageWithoutCommand = false -- true: sends OOC message without command (/ooc) | false: doesn't send any message without it being a command
--------------------------------
-- [Me]
Config.EnableMeCommand = true
Config.Enable3DMe = true
Config.MeCommand = 'me'
Config.MeIcon = 'fas fa-comment me-icon'
Config.MeMessageTitle = 'ME'
--------------------------------
-- [Do]
Config.EnableDoCommand = false
Config.Enable3DDo = false
Config.DoCommand = 'do'
Config.DoIcon = 'fas fa-comment do-icon'
Config.DoMessageTitle = 'DO'
--------------------------------
-- [Try]
Config.EnableTryCommand = false
Config.TryCommand = 'try'
Config.TryIcon = 'fas fa-comment try-icon'
Config.TryMessageTitle = 'TRY'
--------------------------------
-- [Staff]
Config.EnableStaffCommand = false
Config.StaffCommand = 'staff'
Config.StaffMessageTitle = 'STAFF'
Config.StaffIcon = 'fas fa-shield-alt'
Config.AllowStaffsToClearEveryonesChat = false
Config.ClearEveryonesChatCommand = 'clearall'
Config.StaffSteamName = false
-- [Staff Only]
Config.EnableStaffOnlyCommand = false
Config.StaffOnlyCommand = 'staffo'
Config.StaffOnlyMessageTitle = 'STAFF ONLY'
Config.StaffOnlyIcon = 'fas fa-eye-slash'
Config.StaffOnlySteamName = false
-- [Server Announcement]
Config.EnableServerAnnouncement = true
Config.ServerAnnouncementCommand = 'sa'
Config.AnnouncementIcon = 'fas fa-exclamation-circle'
Config.AnnouncementMessageTitle = 'Regierung'
--------------------------------
-- [Advertisements]
Config.EnableAdvertisementCommand = true
Config.AdvertisementCommand = 'ad'
Config.AdvertisementPrice = 1000
Config.AdvertisementCooldown = 5 -- in minutes
Config.AdvertisementIcon = 'fas fa-ad'
--------------------------------
-- [Anonymous/Dark]
Config.EnableAnonymousCommand = false
Config.AnonymousCommand = 'anon'
Config.AnonymousPrice = 1000
Config.AnonymousCooldown = 5 -- in minutes
Config.WhatJobsCantSeeAnonymousChat = {
'police',
'ambulance',
}
Config.AnonymousIcon = 'fas fa-mask'
--------------------------------
-- [Twitch]
Config.EnableTwitchCommand = false
Config.TwitchCommand = 'twitch'
-- Types of identifiers: steam: | license: | xbl: | live: | discord: | fivem: | ip:
Config.TwitchList = {
'steam:110000118a12j8a', -- Example, change this
}
Config.TwitchIcon = 'fab fa-twitch'
--------------------------------
-- [Youtube]
Config.EnableYoutubeCommand = false
Config.YoutubeCommand = 'youtube'
-- Types of identifiers: steam: | license: | xbl: | live: | discord: | fivem: | ip:
Config.YoutubeList = {
'steam:110000118a12j8a', -- Example, change this
}
Config.YoutubeIcon = 'fab fa-youtube'
--------------------------------
-- [Twitter]
Config.EnableTwitterCommand = false
Config.TwitterCommand = 'twitter'
Config.TwitterIcon = 'fab fa-twitter'
--------------------------------
-- [Police]
Config.EnablePoliceCommand = false
Config.PoliceCommand = 'police'
Config.PoliceJobName = 'police'
Config.PoliceIcon = 'fas fa-bullhorn'
--------------------------------
-- [Ambulance]
Config.EnableAmbulanceCommand = false
Config.AmbulanceCommand = 'ambulance'
Config.AmbulanceJobName = 'ambulance'
Config.AmbulanceIcon = 'fas fa-ambulance'
--------------------------------
-- [DOC Countdown]
Config.EnableDocCommand = false
Config.DocCommand = 'doc'
Config.DocIcon = 'fas fa-clock'
Config.DocMessageTitle = 'DOC'
--------------------------------
-- [Auto Message]
Config.EnableAutoMessage = false
Config.AutoMessageTime = 30 -- (in minutes) will send messages every x minutes
Config.AutoMessages = {
"CLOSED BETA // Bei Fragen oder Problemen die euer RP stören, per /support melden!",
"CLOSED BETA // Allgemeine Bugs unter #ClosedBeta >> Bug Reports"
}
--------------------------------
-- [Notifications]
Config.NotificationsText = {
['disable_chat'] = { title = 'SYSTEM', message = 'You disabled the chat', time = 5000, type = 'info'},
['enable_chat'] = { title = 'SYSTEM', message = 'You enabled the chat', time = 5000, type = 'info'},
['ad_success'] = { title = 'ADVERTISEMENT', message = 'Advertisement successfully made for ${price}€', time = 5000, type = 'success'},
['ad_no_money'] = { title = 'ADVERTISEMENT', message = "You don't have enough money to make an advertisement", time = 5000, type = 'error'},
['ad_too_quick'] = { title = 'ADVERTISEMENT', message = "You can't advertise so quickly", time = 5000, type = 'info'},
['mute_not_adm'] = { title = 'SYSTEM', message = 'You are not an admin', time = 5000, type = 'error'},
['mute_id_inv'] = { title = 'SYSTEM', message = 'The id is invalid', time = 5000, type = 'error'},
['mute_time_inv'] = { title = 'SYSTEM', message = 'The mute time is invalid', time = 5000, type = 'error'},
['alr_muted'] = { title = 'SYSTEM', message = 'This person is already muted', time = 5000, type = 'error'},
['alr_unmuted'] = { title = 'SYSTEM', message = 'This person is already unmuted', time = 5000, type = 'error'},
['an_success'] = { title = 'ANONYMOUS', message = 'Advertisement successfully made for price€', time = 5000, type = 'success'},
['an_no_money'] = { title = 'ANONYMOUS', message = "You don't have enough money to make an advertisement", time = 5000, type = 'error'},
['an_too_quick'] = { title = 'ANONYMOUS', message = "You can't advertise so quickly", time = 5000, type = 'error'},
['an_not_allowed'] = { title = 'ANONYMOUS', message = "You are not allowed to send messages in the anonymous chat", time = 5000, type = 'error'},
['is_muted'] = { title = 'ANONYMOUS', message = "This player is muted", time = 5000, type = 'error'},
}
Config.WebhookText = {
['clear_all'] = 'Cleared all chats',
['staff_msg'] = 'Staff message',
['staff_chat_msg'] = 'Staff chat message',
['sv_an'] = 'Server announcement',
['ad'] = 'Advertisement',
['twitch'] = 'Twitch',
['youtube'] = 'Youtube',
['twitter'] = 'Twitter',
['police'] = 'Police',
['ambulance'] = 'Ambulance',
['job_chat'] = 'Job chat [${job}]',
['pm_chat'] = 'Private Message to ${name} [${id}]',
['ooc'] = 'OOC',
['me'] = 'ME',
['do'] = 'DO',
['try'] = 'TRY',
['muted'] = 'Muted [${id}]',
['muted_for'] = 'For ${muteTime} minutes',
['unmuted'] = 'Unmuted [${id}]',
['p_unmuted'] = 'Player has been unmuted',
['anon'] = 'Anonymous',
}

View file

@ -1,37 +0,0 @@
fx_version 'cerulean'
game 'gta5'
author 'okok#3488'
description 'okokChatV2'
files {
'web/*.*'
}
shared_script 'config.lua'
client_scripts {
'client.lua'
}
server_scripts {
'@oxmysql/lib/MySQL.lua',
'server.lua'
}
chat_theme 'gtao' {
styleSheet = 'web/styles.css',
msgTemplates = {
default = '<b>{0}</b><span>{1}</span>'
}
}
lua54 'yes'
escrow_ignore {
'config.lua',
'client.lua',
'server.lua'
}
dependency '/assetpacks'

File diff suppressed because it is too large Load diff

View file

@ -1,410 +0,0 @@
@import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@200;300;400;500;700;800;900&display=swap');
@import url('https://use.fontawesome.com/releases/v5.15.4/css/all.css');
* {
font-family: 'Tajawal', sans-serif;
}
.chat-window {
position: absolute;
top: 2.5%;
left: 2.055%;
width: 38%;
height: 33.3% !important;
max-width: 27.5%;
background-color: rgba(0, 0, 0, 0.0) !important;
}
.msg {
font-family: 'Tajawal', sans-serif;
color: #fff;
font-size: calc(1.8vh);
filter: url(#svgDropShadowFilter);
line-height: calc(2.7vh * 1.2);
margin-bottom: 0.9%;
}
.chat-messages {
margin: 0;
height: 100%;
}
.chat-message {
display: block !important;
padding: 0.6vw;
padding-top: 0.6vw;
padding-bottom: 0.7vw;
border-radius: 0.625rem;
width: 75.6%;
overflow: hidden;
word-break: break-word;
box-sizing: border-box;
box-shadow: 0rem 0rem 0.625rem -0.3125rem rgba(0, 0, 0, 1);
line-height: 1;
}
.chat-message div {
line-height: 1 !important;
}
.message {
margin-top: 0.9%;
font-weight: 300;
}
.time {
font-size: 0.875rem;
font-size: calc(1.3vh);
color: #e1e1e1;
}
.msg > span > span > b {
font-family: 'Tajawal', sans-serif;
font-weight: normal;
vertical-align: baseline;
padding-right: 0.6875rem;
line-height: 1;
font-size: calc(2.7vh);
}
.msg > span > span > span {
vertical-align: baseline;
}
.msg i:first-of-type {
font-style: normal;
color: #fff;
}
.chat-input {
font-size: 1.65vh;
position: absolute;
top: 37%;
left: 2.055%;
width: 38%;
max-width: 20.8%;
box-sizing: border-box;
}
.chat-input > div.input {
background-color: rgba(27, 29, 32, 0.95);
border-radius: 0.625rem;
}
.chat-input .prefix {
height: 100%;
vertical-align: middle;
padding-left: 0.5vh;
text-transform: uppercase;
font-weight: bold;
display: inline-block;
}
.input {
align-items: center;
}
.prefix {
line-height: 3.80vh !important;
}
.suggestions {
margin-top: 0.9%;
list-style-type: none;
padding: 0.9%;
padding-left: 6.54%;
font-size: calc(1.7vh);
box-sizing: border-box;
color: white;
background-color: rgba(31, 94, 255, 0.9);
width: 100%;
border-radius: 0.625rem;
border: none;
box-shadow: 0rem 0rem 0.625rem -0.3125rem rgba(0, 0, 0, 1);
}
.suggestion {
font-size: calc(1.8vh);
margin-bottom: 0.03125rem;
}
textarea {
resize: none;
font-size: calc(2vh);
color: #fff;
line-height: 1.85vh !important;
padding-top: 3%;
}
.multiline {
margin-left: 0;
text-indent: 0;
}
.fas {
vertical-align: middle;
}
/* START STAFF */
.staff {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(19, 138, 70, 0.9) 100%);
}
.fa-shield-alt {
color: rgba(42, 42, 42, 0.9);
background-color: #1ebc62;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END STAFF */
/* START ONLY STAFF */
.staffonly {
background: rgba(42, 42, 42, 0.9);
}
.fa-eye-slash {
color: rgba(42, 42, 42, 0.9);
background-color: #1ebc62;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END ONLY STAFF */
/* START SERVER ANNOUNCEMENT */
.server-msg {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(204, 61, 61, 0.9) 100%);
}
.fa-exclamation-circle {
color: rgba(42, 42, 42, 0.9);
background-color: #cc3d3d;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END SERVER ANNOUNCEMENT */
/* START TWITCH */
.twitch {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(96, 67, 139, 0.9) 100%);
}
.fa-twitch {
color: rgba(42, 42, 42, 0.9);
background-color: #9c70de;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END TWITCH */
/* START YOUTUBE */
.youtube {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(101, 0, 0, 0.9) 100%);
}
.fa-youtube {
color: rgba(42, 42, 42, 0.9);
background-color: #ff0000;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END YOUTUBE */
/* START TWITTER */
.twitter {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(25, 107, 143, 0.9) 100%);
}
.fa-twitter {
color: rgba(42, 42, 42, 0.9);
background-color: #2aa9e0;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END TWITTER */
/* START SYSTEM */
.system {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(134, 84, 23, 0.9) 100%);
}
.fa-cog {
color: rgba(42, 42, 42, 0.9);
background-color: #df7b00;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END SYSTEM */
/* START ADVERTISEMENT */
.advertisement {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(84, 150, 38, 0.9) 100%);
}
.fa-ad {
color: rgba(42, 42, 42, 0.9);
background-color: #81db44;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END ADVERTISEMENT */
/* START POLICE */
.police {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(40, 55, 116, 0.9) 100%);
}
.fa-bullhorn {
color: rgba(42, 42, 42, 0.9);
background-color: #4a6cfd;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END POLICE */
/* START AMBULANCE */
.ambulance {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(152, 113, 22, 0.9) 100%);
}
.fa-ambulance {
color: rgba(42, 42, 42, 0.9);
background-color: #e3a71b;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END AMBULANCE */
/* START OOC */
.ooc {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(125, 125, 125, 0.9) 100%);
}
.fa-door-open {
color: rgba(42, 42, 42, 0.9);
background-color: #ababab;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END OOC */
/* START ME */
.me {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(121, 184, 250, 0.9) 100%);
}
.me-icon {
background-color: #79b8fa;
}
/* END ME */
/* START DO */
.do {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(121, 250, 164, 0.9) 100%);
}
.do-icon {
background-color: #79faa4;
}
/* END DO */
/* START TRY */
.try {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(243, 73, 113, 0.9) 100%);
}
.try-icon {
background-color: #f34971;
}
/* END TRY */
/* START ANONYMOUS */
.anonymous {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(9, 78, 33, 0.9) 100%);
}
.fa-mask {
color: rgba(42, 42, 42, 0.9);
background-color: #2e874d;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END ANONYMOUS */
/* START JOBS */
.jobchat {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(53, 219, 194, 0.9) 100%);
}
.fa-briefcase {
color: rgba(42, 42, 42, 0.9);
background-color: #35dbc2;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END JOBS */
/* START TIMEOUT */
.muted {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(223, 123, 0, 0.9) 100%);
}
.fa-gavel {
color: rgba(42, 42, 42, 0.9);
background-color: #df7b00;
padding: 0.3125rem;
border-radius: 0.3125rem;
}
/* END TIMEOUT */
/* START PM */
.pm {
background: linear-gradient(90deg, rgba(42, 42, 42, 0.9) 0%, rgba(113, 81, 156, 0.9) 100%);
}
.fa-comment {
color: rgba(42, 42, 42, 0.9);
padding: 0.3125rem;
border-radius: 0.3125rem;
}
.pm-icon {
background-color: #71519c;
}
/* END PM */