Ir al contenido

Solución de problemas

Lo que de verdad falla, y dónde mirar.


Un simple reinicio no vuelve a leer fxmanifest.lua. Si has añadido o renombrado un archivo, escribe primero refresh en la consola del servidor y luego restart mic_pawnshop. Los cambios en config.lua solo necesitan el reinicio.

La app se añade en cuanto lb-phone está en marcha, instalada por defecto. Si no aparece:

  • ¿Está iniciado lb-phone? Compruébalo con ensure lb-phone por encima de ensure mic_pawnshop en server.cfg.
  • ¿Se ha iniciado mic_pawnshop? Un error en consola al arrancar suele significar que oxmysql o el framework aún no estaban en marcha: mueve la línea más abajo.

No se ha importado pawnshop.sql, o se importó en una base de datos distinta de la que usa tu servidor. Impórtalo una vez en la correcta; el recurso no crea las tablas por sí solo.

La consola da errores al arrancar sobre getSharedObject o GetCoreObject

Sección titulada «La consola da errores al arrancar sobre getSharedObject o GetCoreObject»

Config.Framework no coincide con tu servidor. Usa "esx" o "qb", en minúsculas.

En QBox, el valor es "qb" —QBox ejecuta los recursos de QBCore a través de su capa de compatibilidad— y qbx_core tiene que iniciarse antes que mic_pawnshop.

Se ha renombrado la carpeta. Las pantallas de la app se comunican con el recurso por el nombre mic_pawnshop; devuélvele su nombre a la carpeta.

Todos los ítems muestran la misma imagen (patatas fritas)

Sección titulada «Todos los ítems muestran la misma imagen (patatas fritas)»

Es la imagen de reserva cuando falta una imagen. Config.InventoryImagePath debe apuntar a la carpeta donde tu inventario guarda las imágenes de sus ítems, escrita como resource/folder/ —ox_inventory/web/images/ o qb-inventory/html/images/— y la imagen debe llamarse exactamente igual que el ítem.

El ítem está en Config.BlackList. Los ítems de la lista negra tampoco aparecen en el selector de ítems.

El jugador no lleva tantas unidades como la cantidad que ha introducido.

“Must buy full quantity for total price”

Sección titulada «“Must buy full quantity for total price”»

La oferta se publicó con precio Total, así que se vende como un único lote. El comprador tiene que llevarse la cantidad completa. Para ofertas que los compradores puedan dividir, publica con precio Unit.

“Insufficient funds in bank” / “Insufficient cash”

Sección titulada «“Insufficient funds in bank” / “Insufficient cash”»

Con Config.Bank = true, el precio sale del banco del comprador. Con Config.Bank = false, sale del ítem indicado en Config.Money, lo que solo funciona donde el dinero es un ítem del inventario, como en ox_inventory. En el inventario propio de ESX y en QBCore, deja Config.Bank = true.

En ox_inventory, el comprador no podía cargar con los ítems, así que la compra se canceló y se le devolvió el dinero. La misma respuesta cuando un vendedor elimina una oferta significa que no tiene espacio para recuperar los ítems; la oferta sigue publicada.

Está esperando. Las ventas van al saldo Pending del vendedor, en la parte superior de la app, y nada llega a su banco hasta que lo pulse y lo transfiera.

Las ofertas se eliminan cuando caducan —tras Config.Expire días, 7 por defecto— o cuando su ítem se añade a Config.BlackList. En ambos casos los ítems se van con ellas; no se devuelven. Cambiar el precio de una oferta reinicia su caducidad, así que un vendedor puede mantener viva una publicación.

Con Config.RequireLocation activado, el marcador solo aparece mientras el jugador tiene una oferta por publicar o una compra por completar, y solo a menos de 20 metros. Tiene que estar dentro de Config.InteractionDistance —un metro por defecto— para pulsar E. Súbelo un poco si a los jugadores les cuesta encontrar el punto.