Ir al contenido

Instalación

Cinco minutos. Sin SQL ni archivo de ítems que importar: lo que necesitas es lb-phone, una línea en config.lua y drogas en tu inventario que la app pueda vender.


NecesitasPor qué
lb-phoneLa app vive en él, y todas las notificaciones pasan por él
ESX, QBCore o QBoxInventario, dinero, trabajos y la identidad del jugador
Ítems de droga en tu inventarioLa app vende lo que llevan los jugadores; no crea ítems

Pon mic_drugdealer en tus recursos, por ejemplo resources/[mic]/mic_drugdealer.


2. Arráncalo después de lb-phone y de tu framework

Sección titulada «2. Arráncalo después de lb-phone y de tu framework»

En server.cfg, añade ensure mic_drugdealer en una línea debajo de tu framework y debajo de lb-phone.

La app espera a lb-phone y se vuelve a añadir cada vez que lb-phone se reinicia, así que el orden es flexible, pero el framework tiene que estar en marcha antes: el lado del servidor lo pide en cuanto arranca.


Los niveles y el número de ventas se guardan en player_data.json, en la carpeta del recurso. El recurso lo crea si no existe. Tu servidor tiene que poder escribir en esa carpeta.


Este no se detecta. Abre config.lua y configura Config.Framework:

Tu frameworkValor
ESX"ESX"
QBCore"QB"
QBox"QB"

Las mayúsculas importan. Si el recurso de tu framework tiene un nombre personalizado, cambia Config.esxResourceName o Config.qbResourceName para que coincida; si no, déjalos como están.

En QBox, usa "QB" y deja Config.qbResourceName en "qb-core": QBox ejecuta los recursos de QBCore mediante su capa de compatibilidad, y qbx_core proporciona qb-core.


El recurso no incluye definiciones de ítems: vende ítems que tu inventario ya conoce. La config de serie espera estos nombres:

ÍtemSe vende comoZonasNivel
mariaWeedGrove1
cocaCokeMuelle, Paleto3
lsdLSDGrove, Muelle, Vinewood2
metaMethSandy, Paleto4
mushMushroomGrove, Sandy2
opiumOpiumPaleto1
crackCrackGrove, Sandy3
heroinHeroinSandy, Paleto5
xtcEcstasyMuelle, Vinewood2
oxyOxycontinVinewood, Sandy3
leanLeanGrove, Muelle1
hashHashGrove, Vinewood2

Lo más probable es que tus drogas se llamen de otra forma. Cambia el campo item de cada entrada de Config.drugs para que coincida con tu inventario, en lugar de crear ítems nuevos: consulta Personalización.

Los ítems de dinero también importan:

  • ESX con Config.MoneyAsItem = true paga black_money (o Config.MoneyItem cuando el dinero negro está desactivado) como ítem, que es lo correcto para ox_inventory.
  • QBCore paga el dinero negro como un ítem llamado blackmoney. Asegúrate de que ese ítem existe, o desactiva Config.BlackMoney.

Las imágenes de ui/img/ son los iconos de droga de la propia app. Son PNG normales, así que puedes copiarlas a la carpeta de imágenes de tu inventario si quieres el mismo aspecto allí.


  1. Pon Config.MinimumPolice = 0 para la prueba: el valor de serie es 1, y nadie compra sin policía conectada.
  2. Entra con un trabajo que no esté en Config.BlockedAppJobs (police, sheriff, ambulance y mechanic sí lo están).
  3. Abre lb-phone, busca Drug Dealer en la App Store e instálala.
  4. Date unas cuantas maria, abre la app, toca DRUGS, luego Weed y luego SELL.

Ha funcionado si aparece una ruta roja en el mapa con una cuenta atrás en la app. Conduce hasta allí, acércate al marcador de la puerta y pulsa E: el jugador llama, sale un comprador y el móvil te dice qué has vendido y por cuánto. PROFILE muestra ahora una venta.


  • Vuelve a poner Config.MinimumPolice en el valor que quiera tu ciudad.
  • Borra el progreso de prueba. player_data.json viene con entradas de ejemplo y conserva las tuyas de las pruebas. Borra el archivo; el recurso crea uno vacío en el siguiente arranque.
  • Haz que cada nombre de item de Config.drugs coincida con tu inventario. Una droga que nadie puede llevar es un botón que solo dice “No tienes suficiente”.
  • Comprueba el ítem de dinero de tu framework, más arriba.
  • Comprueba que Config.BlockedAppJobs y Config.PoliceJobs usan tus nombres de trabajo.