Frameworks y compatibilidad
ZAIDERS Appearance encuentra tu framework solo y guarda la apariencia en las tablas que tu servidor ya usa. Además contesta los exports y eventos de los menús de ropa más conocidos, así los scripts hechos para ellos siguen funcionando sin cambios.
Frameworks soportados
| QBCore | Qbox | ESX | |
|---|---|---|---|
| Se detecta como | qb | qbx | esx |
| La apariencia se guarda en | playerskins | playerskins | users.skin |
| El modelo se guarda como | su número | su nombre | el formato de skinchanger, con la cara exacta adentro |
| Dinero | efectivo y banco | efectivo y banco | money y bank |
| Uniformes y prendas solo para un trabajo | Sí | Sí | Sí |
| Uniformes y prendas solo para una banda | Sí | Sí | No (ESX no tiene bandas) |
| Tienda de peds | Sí | Los peds que el servidor conoce por nombre | No con skinchanger prendido |
Config.Framework = 'auto' busca Qbox, después QBCore y después ESX. La consola dice cuál encontró (framework: qb). Sin framework el menú abre, pero no se cobra ni se guarda nada.
ZAIDERS Appearance lee tal cual la apariencia guardada por illenium-appearance, fivem-appearance, qb-clothing y esx_skin. Nadie tiene que rehacer su personaje.
QBCore y Qbox
- Personajes nuevos: el multichar dispara el evento de personaje nuevo de qb-clothing y se abre el creador. Ver Creador de personaje.
- Qbox: la pantalla de personajes carga el modelo por su nombre, así que solo se guardan los peds que el servidor conoce por nombre: los del juego y tus peds addon del panel. Al arrancar, la apariencia guardada con el modelo como número se pasa a su nombre, y la consola dice cuántas.
ESX
- Con esx_multicharacter: deja corriendo
esx_skinyskinchanger, porque esx_multicharacter los necesita para arrancar. Los personajes nuevos se hacen con el menú de esx_skin, y las tiendas, la barbería, los tatuajes y el guardarropa son de este menú. La apariencia se guarda en el formato de skinchanger, que leen la pantalla de personajes y esx_skin, con la cara exacta adentro. Al entrar con un personaje, este menú le pone la cara exacta y los tatuajes. - Sin multichar: puedes apagar
esx_skinyskinchanger. Este menú contesta en su lugar, con su creador para los personajes nuevos. - Peds: no se venden mientras corre skinchanger, porque skinchanger solo guarda el hombre y la mujer freemode.
esx_skin:save: los armarios y vestuarios que guardan la ropa así no guardan de fábrica, porque cualquier jugador puede mandar ese evento con cualquier ropa, sin pagar.Config.Compat.esxSkinSave = truelo permite. Ver Lo que revisa el servidor.
Scripts hechos para otros menús de ropa
Mientras estos recursos no están prendidos, ZAIDERS Appearance contesta con sus nombres. Los scripts que los llaman funcionan tal cual. Config.Compat.exports = false lo apaga.
| Lo que llaman otros scripts | Lo usan |
|---|---|
exports['illenium-appearance'] y exports['fivem-appearance']: getPedAppearance, setPedAppearance, setPlayerAppearance, setPlayerModel, startPlayerCustomization y el resto de esa API | Qbox y muchos multichars |
Los eventos de qb-clothing: qb-clothing:client:openMenu, openOutfitMenu (armarios de casas) y loadOutfit (uniformes de trabajos), y exports['qb-clothing']:reloadSkin() | Scripts de QBCore, casas, trabajos |
Los eventos de illenium-appearance: abrir las tiendas, los outfits y los uniformes, changeOutfit y reloadSkin | Scripts hechos para illenium-appearance |
En ESX, los exports y eventos de skinchanger y esx_skin: GetSkin, LoadSkin, LoadClothes, esx_skin:openSaveableMenu… | Scripts de ESX |
Los eventos de carga de siempre: qb-clothing:client:loadPlayerClothing, qb-clothes:loadPlayerSkin | Vistas previas de multichars, scripts de revivir |
Lo que ponen otros scripts no se guarda
Lo que otro script pone con estos exports y eventos no se guarda. Lo que un jugador se queda siempre pasa por las tiendas, donde el servidor revisa el precio.
Config.Compat.loadSkin vuelve a poner la ropa guardada al entrar con un personaje y cada vez que otro script la recarga (al revivir, en la vista previa de un multichar). Si está prendido otro recurso de ropa que atiende esos eventos, no interfiere.
HUD
Con un menú o el panel abiertos, el HUD se esconde, y vuelve como estaba al cerrar:
- El HUD del juego siempre se esconde. Muchos HUD de servidor lo siguen solos.
- El HUD de otro recurso va en
Config.HideHud.resources, con su export o su evento. - Cualquier otro HUD puede usar
Config.HideHud.custom, o escuchar el eventozaiders_appearance:hud.
Si un script vuelve a prender el HUD con un menú abierto, como un multichar que lo devuelve unos segundos después de aparecer mientras el creador ya está abierto, se esconde de nuevo. Ver la Referencia de la config y Exports, eventos y hooks.
Recursos de tatuajes
Si está prendido un recurso de Config.Tattoos.owners, la tienda de tatuajes de ZAIDERS Appearance se apaga sola: sus tiendas salen del mapa, no vende y no pone los tatuajes guardados. Config.Tattoos.enabled = false la apaga a mano. Ver Tienda de tatuajes.
Abrir los menús desde tus scripts
Los armarios de casas, los vestuarios de trabajos y las zonas de ox_target pueden abrir cualquier menú:
exports.zaiders_appearance:openShop('clothing') -- 'barber', 'tattoo' o 'wardrobe'