SOZ-FiveM-Server
SOZ-FiveM-Server copied to clipboard
[Fight For Style] Ajout d'un Show Room et la création de vetement sous forme d'item.
Coucou, ce PR fait suite à l'issue https://github.com/SOZ-Faut-etre-Sub/SOZ-FiveM-Server/issues/73
Voici ce que cela la feature ajoute:
- Show room disponible pour FFS en service au Ponsonbys du centre de l'ile
- Spawn d'un ped féminin/masculin afin de composer des tenues
- Toutes les tenues/accessoire sont disponible (possible d'ajoute un filtre au besoin)
- Seul les masques/bras/pantalon/chaussure/accessoire/undershoort/haut sont disponible en Component
- Une fois la tenue créer, une sélection des composant peut être fait pour crafter l'item.
- Le craft d'item peut être restreint par une permission entreprise
- Le coup de l'item est de 20 fibre naturel par composant sélectionner (si la tenue comporte 1 haut et un pantalon, le craft sera de 40 fibre)
- Le bouton de craft peut être cliquer plusieurs fois d'affiler afin d'en craft plusieurs d'affiler sans que cela ferme le menu
- Deux items sont créer, les tenues custom pour homme et pour femme. Ces derniers dépendent du ped utilisé.
- Les tenues femme sont uniquement utilisable par les femmes et vis versa
- Un temps de chargement est déclencher en utilisant l'item pour se changer
- Les items stack par metadata. Toutes les tenues d'un même type stack donc ensemble
- Lors de l’utilisation d'une tenue, seul les composant associé sont changer. On peut par exemple associer seulement un pul à la tenue, ou bien un masque et un pantalon.. etc
- Pas d'option de dé-craft, cela fera du RP avec Bluebird
J'ai fait également quelque amélioration pour éviter de dupliquer le code, que je vais commenter par la suite.
Je reste dispo pour toute modification que vous pensez nécéssaire 🙏 En espérant que la feature vous plaira!
Voici un lien avec la démo final (feature complète): https://drive.google.com/file/d/1JO_VpWme5-k-lNb0uHTv11rpzesVL3PO/view
Je viens de push les changement demander, voici la vidéo qui va avec: https://drive.google.com/file/d/1c-9EWCBFAL25oP_mIH0Xvk42neyI_oNz/view
Le dernier commit fix les soucis avec les actions github (eslint)
Branch rebased, conflict fixed. Action failed are from the base branch
Just to mention, I will open another PR tonight to prepare potential clothes exclusion from the Show Room (in case there is some police/undesirable hat/clothes in the remaining categories), so I will just need to add them to the list based on report. I did not go through all the list by myself yet, but as the crafting can be limited with FFS's rank configuration, it should not be a problem
Pour la liste des vetements il faudrait faire une liste qu'on autorise et pas en mode exclusion, éviter les problèmes a chaque nouveau dlc.
Fix ce qui a été demander. Le dernier commit retire les textures vides via la gestion dynamique du nombre maximum de texture.
Il se fait tard, je m'occuperai demain du système d'inclusion ✅
Progress du filtrage:
Components: Masque: Homme ✔️ Femme ✔️ Torse: Homme ✔️ Femme ✔️ Pantalon: Homme ✔️ Femme ✔️ Sac: Homme ✔️ Femme ✔️ Chaussure: Homme ✔️ Femme ✔️ Accessoire: Homme ✔️ Femme ✔️ Undershirt: Homme ✔️ Femme ✔️ Haut: Homme ✔️ Femme ✔️
Props:
Chapeau: Homme ✔️ Femme ✔️
Lunettes: Homme ✔️ Femme ✔️
Accessoires oreilles: Homme ✔️ Femme ✔️
Bras gauche: Homme ✔️ Femme ✔️
Bras droit: Homme ✔️ Femme ✔️
Je vais mettre à jour ce commentaire avec ma progression, et j'en posterai un autre quand tout sera dans le code et également pour dire ce qui a été retiré. J'inclurai ma doc et tout ce qu'il faut pour le modifier dans le future au besoin. Je pense que cela sera fini en fin de semaine ✔️
Résumé de ce qui est filtré: Masque: Masque à gaz/Masque avec radio/Emplacement vide Torse: Main coupée Pantalon: Damier ou vide Sac: Parachute ou vide Chaussure: Damier ou vide Accessoire: Plaque LSPD/BCSO/FBI/Paramedic, tube, sacoche/radio Undershirt: Damier, Radio/Hostler, GPB, Armure, Tube de respiration Haut: Damier, T shirt du Zevent, Tenue LSPD/BSCO/Stonk/LSCS, Armure, Vide, GPB
Chapeau: Damier, vide, casque d'avion de chasse, Casquette securoserv, casque avec douille, lunette infrarouge, casquette paramedit, casque de demineur, casque de pompier, casquette de céréminie (FDO), chapeau FDO/service publique Lunette: Damier, vide, masque de plongéen lunette trop grande (27) Oreille: Vide Bras gauche: Damier Bras droit: Damier
Tri terminé, jolie GDOC de 4074 ligne. Je reprend le dev à partir de demain ✔️
Changement effectué! Tout est bon pour la re-review.
Ici les changements apportées:
- Changement de l'autorisation de craft pour donner l'accès au ShowRoom même hors service. Il faut maintenant être en service ET avoir l'autorisation dans les paramètres de grade pour crafter.
- Ajout d'une liste de permission sous forme de CSV.
- Le format est simple, une ligne par Drawable, avec les Texture.
-
UseDrawable
: Si le drawable doit être dans le ShowRoom: True/False -
Texture{X}
: Si la texture doit être utiliser dans le ShowRoom: True/False => Si le Drawable n'a pas de texture, laissé vide -
Free
: Si le Drawable est gratuit (par exemple Drawable vide ou Torse sans gant) -
Note
: Juste pour ajouter une note. - Ce fichier est facilement importer sous G-sheet pour être modifier (exemple: https://docs.google.com/spreadsheets/d/1_HEm9vTAu65z9V8Oko23JlQEzEsaTVxfevVBO9_yh6U/view ) - Document fait à la main par mes soins
- Un script pour convertir le fichier CSV en fichier TSX directement utilisable par le code.
- Ce fichier contient deux Exportable, un Object contenant les Drawable gratuit, un autre comprenant les Drawable et Texture autoriser (les
UseDrawable: False
etTexture{X}: False
ne sont pas présent dans ce fichier!) - Maintient facile dans le temps.
- Correction des tenues par défaut (pas présent pour le ped femme sur la vidéo, mais fix dans le dernier commit), réfactor de certain menu, impossibilité de Fix des Drawable pas présent dans les listes
Voici une petit vidéo avec les changements: https://drive.google.com/file/d/14u1zpjP9bY5Jf2oeVi5drhT6Avmg_lnA/view
Rebased and squashed
Changement effectuer, ajout d'une commande dans le package.json, modification de l'emplacement du script et du fichier CSV dans un dossier data 🙏 En esperant avoir bien compris ta demande
Pour les images, j'ai fait les demandes sur le discord Midjourney, elles pourront au besoin être ajouter plus tard ✔️
J'ai également rebase à nouveau pour régler les conflits
Je rajoute les images dans la nuit, on a pu m'en générer! Et j'ajouterai le nom discord de la personne directement dans l'objet. Je rajouterai un commentaire quand ce sera fait
Ca devrait être bon pour une re-review. Tout ce qui a été demandé a été ajouter/modifier 🙏
Rebase et squash les changement demander en un commit (le deuxième)
Rebase fait à nouveau ce matin après les ajout de la nuit :checkered_flag:
Heu.. erreur de manip. Je push ça à nouveau rapidement
C'est bon, réouvert avec rebase 🙏
Je vais rebase d'ici ce week end avec les gros changement qu'il y a eu et fix au besoin certaine partie
Rebase à ce jour, pas de conflit.
Le fail des test auto ne viennent pas de la PR, du coup toujours good à rereview
Bonjour.
J'ai pour projet de reprendre cette PR, si elle intéresse toujours. Mais vu le taff qu'il y a à faire au niveau du rebase, je voulais m'assurer que cela intéressait toujours dans un premier temps?
Merci bien 🙏
Oui tu peux !
Parfait, j'essaye d'avoir le rebase fait d'ici deux semaines
La PR a totalement été rebase (enfin, je suis repartie de 0 et j'ai tout réintégré dans le code mise à jour). Tout est toujours fonctionnel 👌