Cómo funcionan las integraciones#
Miner Job se comunica con otros recursos mediante pequeños archivos puente — client/framework/ y server/framework/ para el framework y el inventario, client/target.lua para el target. Esos archivos se dejan abiertos para que puedas adaptarlos; todo lo demás se detecta al iniciar o se cambia en config.lua.
Capa | Compatibles | Sin él |
|---|---|---|
Framework |
| Obligatorio — el dinero, los trabajos y las identidades salen de él. |
Inventario |
| Usa el inventario del framework. |
Target |
| Pulsaciones de tecla con avisos en pantalla. |
Text UI |
| El texto 3D y el cuadro de pistas propios del script. |
Atuendos | ESX | Pon |
Grupo |
| Los equipos se forman con las invitaciones del propio panel. |
Dinero del trabajo |
| El pago de las misiones va directo al efectivo del jugador. |
Quests |
| Desactivado salvo que |
Base de datos |
| Obligatoria. |
Frameworks#
Config.Framework se rellena automáticamente: esx cuando es_extended está iniciado, qb para qb-core y qbx_core. Deja la línea como está. Si tu core tiene otro nombre de recurso, adapta los archivos puente de client/framework/ y server/framework/ — contienen todas las llamadas que el trabajo hace al framework: identificador, nombre del trabajo, dinero, ítems e ítems usables.
Tema | ESX | QBCore / Qbox |
|---|---|---|
Identificador |
|
|
Dinero pagado y cobrado |
|
|
Registro del trabajo | Automático, en | A mano, en |
Cambio de trabajo |
|
|
Inventarios#
Cada lectura y escritura de un ítem va al inventario que realmente está en ejecución, no al que nombre un texto de la configuración. Esto importa en ESX con qs-inventory: las llamadas de ítems del propio framework escriben en una tabla que qs-inventory nunca lee, así que el trabajo habla directamente con qs-inventory.
Inventario | Durabilidad del pico |
|---|---|
| Se guarda en los metadatos del ítem y se ve en la casilla. |
| La guarda el trabajo. El pico se sigue desgastando, se rompe y se elimina. |
Config.InventoryPickaxe = true -- false = the pickaxe is a prop, no item at all
Config.InventoryPickaxeScript = "qs" -- "ox" or "qs"; only breaks the tie if both run
Config.QuasarInventory = false -- true on qs-inventory: locks it during the outfit changeLos picos se registran como ítems usables al iniciar, así que usar uno desde el inventario lo saca o lo guarda. Las listas de ítems están en Ítems de inventario.
Target y avisos#
Con un recurso de target, el encargado, las rocas, la cinta transportadora y el horno tienen opciones de third-eye — Mine Ore, Deposit Ore, Open Furnace, etc.
Config.Target = true
Config.TargetScript = "ox" -- "ox" for ox_target, "qb" for qb-targetCon Config.Target = false (por defecto) todo se hace pulsando una tecla cerca del objeto. Config.Drawtext = true muestra etiquetas flotantes "Press E" — dibujadas por qs-textui cuando está en ejecución — y false usa en su lugar un cuadro de pistas.
Config.Target = false
Config.Drawtext = true
Config.DrawOutline = false -- outline the ore rocks so they stand outNotificaciones#
Por defecto, el trabajo muestra sus propias notificaciones, con el estilo de su panel. Para usar el recurso de notificaciones de tu servidor, pon Config.DefaultNotifications = false y completa SendTextMessage en config.lua — recibe el texto y info, error o success:
Config.DefaultNotifications = false
function SendTextMessage(msg, type)
lib.notify({ description = msg, type = type })
endLas pistas de teclas como "Put pickaxe in belt" siempre usan el cuadro de pistas propio del script.
El atuendo de minero#
Con Config.Clothing = true el jugador se pone el atuendo definido al principio de config/clothing.lua cuando empieza una misión y vuelve a su propia ropa cuando termina o la abandona. Un atuendo por sexo, con los nombres de componentes de skinchanger:
male = {
["arms"] = 65,
["tshirt_1"] = 59, ["tshirt_2"] = 1,
["torso_1"] = 5, ["torso_2"] = 2,
["pants_1"] = 9, ["pants_2"] = 4,
["shoes_1"] = 0, ["shoes_2"] = 0,
["helmet_1"] = 145, ["helmet_2"] = 1,
},En ESX se carga mediante skinchanger y se restaura mediante esx_skin; en QBCore, mediante qb-clothing. Para otro recurso de ropa, edita ToggleJobClothes en el mismo archivo — ya hay una línea comentada illenium-appearance.
Recursos de Quasar#
qs-party — equipos a partir de un grupo real
Cuando qs-party está iniciado, todos los del grupo del líder se unen al equipo de la misión, hasta Config.MaxPartyMembers, junto con cualquiera invitado desde el panel. No hay nada que configurar.
qs-job-management — pago de misiones a través del trabajo
Cuando qs-job-management está iniciado, el dinero de las misiones se paga mediante su AddJobMoney para el trabajo miner en lugar de ir directo al efectivo del jugador. Las ventas de la tienda y los premios se siguen pagando en efectivo.
qs-inventory — quests y bloqueo de ropa
Config.QuasarInventoryQuests = true crea dos quests de qs-inventory cuando un jugador carga — Mining Progress (avanza con cada subida de nivel) y Mining Crew. Config.QuasarInventory = true bloquea la ropa del inventario mientras cambia el atuendo.
qs-textui — avisos 3D
Cuando qs-textui está iniciado, él dibuja las etiquetas flotantes "Press E", así que combinan con el resto de tus recursos de Quasar.
Un gestor de NPC — tienda y clasificación
El trabajo tiene un solo ped, el encargado. Si quieres un vendedor aparte o un tablón de clasificación en otro lugar, créalo con tu gestor de NPC y llama a exports['qs-minerjob']:openSellMenu() o exports['qs-minerjob']:openLeaderboard() desde él.
Logs de Discord#
Desactivado por defecto. Pega una URL de webhook, activa Enabled y elige los eventos. Cada evento admite true (la URL compartida), false (desactivado) o una URL propia — así el dinero puede ir a un canal del staff y las misiones a uno público. Un envío fallido nunca bloquea un pago.
Config.Webhooks = {
Enabled = true,
Url = 'https://discord.com/api/webhooks/...',
Name = 'qs-minerjob',
Avatar = '',
Timestamp = true,
Events = {
MissionStarted = true,
MissionFinished = true,
MissionAbandoned = true,
MoneyPaid = 'https://discord.com/api/webhooks/staff-channel',
ExperienceGiven = true,
RichVein = true,
Tournament = true,
ConfigChanged = true, -- who changed what in /mineradmin
},
}Idiomas#
Se incluyen diez idiomas en config/translations.lua: en, es, fr, de, pt, it, ru, tr, nl y cn. Todos los textos del juego y del panel salen de ahí, incluida la guía, los nombres de los logros y el símbolo de la moneda.
Config.Language = "es"Para cambiar un texto, edita solo lo que está entre comillas. Para añadir un idioma, copia el bloque ['en'] completo, dale una clave nueva, tradúcelo y selecciónalo con Config.Language. Una clave que falte en tu idioma muestra la propia clave, así que copia el bloque completo y no solo una parte.



