Skip to main content

cold_chat

cold_chat es un chat NUI para FiveM que sustituye el chat base, añade un HUD propio y cubre el flujo diario de texto, /me, /do, menciones, mensajes privados, anuncios de trabajo y moderacion ligera.

Mapa rapido

Lo que hace de verdad el script

  • Detecta framework en este orden cuando Config.Framework = 'auto': qbx, qb, esx.
  • Reemplaza el chat por defecto con una NUI propia y oculta el HUD base del recurso chat.
  • Abre el panel con T por defecto y tambien con el comando interno coldchat.
  • Soporta mensajes normales, /me, /do, /ooc, /pm, /reply, /id y /clear.
  • Genera texto 3D para /me y /do si Config.Show3D = true.
  • Incluye menciones por @id y por nombre, con ping opcional y roster para autocompletado.
  • Tiene anuncios de police, ems y mechanic por trabajo o por ACE segun config.
  • Aplica cooldown base, anti-spam con auto mute y comandos de moderacion.

Puntos importantes antes de usarlo

  • Config.Framework solo soporta valores directos: auto, qbx, qb, esx.
  • El adaptador qb busca el recurso qb-core por nombre exacto.
  • No hay exports cliente o servidor en esta version.
  • Los mute manuales, el estado anti-spam y el ultimo objetivo de /reply viven en memoria y se limpian al reiniciar el recurso.
  • Si Config.EnableOOC = true, escribir texto sin slash lo manda como ooc; si lo desactivas, el mismo texto pasa a ic.

Componentes principales

  • shared/config.lua: configuracion publica, locales activas y sugerencias.
  • shared/locales/*.lua: textos para es y en.
  • client/main.lua: apertura de NUI, HUD, menciones, 3D text y compatibilidad con el recurso chat.
  • server/main.lua: parseo de mensajes, anuncios, PM, anti-spam y moderacion.
  • server/adapters/*.lua: adaptadores para qbx_core, qb-core y es_extended.
  • html/: interfaz NUI del chat y del HUD.

Resumen operativo

  1. El cliente desactiva el chat por defecto y registra la tecla T.
  2. Al abrir el chat, la NUI carga layout, preferencias locales y la lista de jugadores para menciones.
  3. El texto enviado viaja al evento cold_chat:server:send.
  4. El servidor recorta longitud, comprueba mute, anti-spam, permisos y tipo de comando.
  5. El recurso reenvia el payload a toda la sesion, a proximidad o a jugadores concretos segun el caso.
  6. La NUI muestra el historial, las previews de PM, las menciones y el estado del HUD.