forked from Simnation/Main
ed
This commit is contained in:
parent
369af59fc9
commit
664fa04d1a
40 changed files with 0 additions and 7379 deletions
Binary file not shown.
|
@ -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
|
|
@ -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)
|
|
@ -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',
|
||||
}
|
|
@ -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
|
@ -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 */
|
Loading…
Add table
Add a link
Reference in a new issue