Le menu patron
Une application pour quiconque dirige une entreprise : qui y travaille, qui est embauchĂ©, qui est renvoyĂ©, qui monte en grade, ce qui se trouve sur le compte en banque, et qui doit de lâargent Ă lâentreprise.
Rien Ă lâintĂ©rieur ne rĂ©implĂ©mente votre framework. Les embauches, renvois et grades sont les opĂ©rations propres au framework, sollicitĂ©es Ă travers le bridge et revĂ©rifiĂ©es Ă lâarrivĂ©e â ESX, QBCore et QBox, chacun avec ses propres mĂ©canismes.
Lâapplication ne sâaffiche pas sur lâĂ©cran dâaccueil de quelquâun qui ne dirige rien. Elle apparaĂźt dâelle-mĂȘme la prochaine fois quâun nouveau patron ouvre son tĂ©lĂ©phone, et repart de la mĂȘme maniĂšre.
Qui est aux commandes
Section intitulĂ©e « Qui est aux commandes »La plupart des serveurs lâindiquent dĂ©jĂ : ESX marque un grade avec is_boss, QB marque un job avec isboss. Si le vĂŽtre le fait, ce fichier ne nĂ©cessite rien.
Config.Apps.Boss.Bosses dans shared/config/boss.lua sâadresse Ă ceux qui ne le font pas â et Ă ceux pour qui ĂȘtre aux commandes ne correspond pas Ă un rang unique mais Ă plusieurs Ă©chelons, chacun ayant un peu plus de pouvoirs que le prĂ©cĂ©dent :
Bosses = { mechanic = 4, -- grade 4 and above, everything
police = { -- a ladder, where each rung adds to the ones below it [3] = { 'Hire', 'Promote' }, -- a Sergeant may hire and promote, and nothing else [4] = { 'Account', 'Invoice' }, -- a Lieutenant may also see the account and bill people [5] = true, -- a Captain may do everything left in Actions },}Les Ă©chelons se cumulent, câest ce qui fait quâune hiĂ©rarchie se comporte comme telle : un rang peut faire tout ce que le rang en dessous peut faire, plus ce qui est Ă©crit sur sa propre ligne. Personne ne rĂ©pĂšte une liste complĂšte Ă chaque grade, et personne ne perd de pouvoir en recevant une promotion.
Un grade associĂ© Ă une liste vide reste un grade aux commandes : il ouvre lâapplication et voit qui travaille dans lâentreprise, ce qui est la dĂ©finition minimale de diriger.
Ce que quiconque a le droit de faire
Section intitulĂ©e « Ce que quiconque a le droit de faire »Config.Apps.Boss.Actions constitue le plafond pour toute la ville â aucun paramĂštre dans Bosses ne peut accorder un pouvoir qui y est dĂ©sactivĂ©. Câest le moyen le plus direct de retirer un pouvoir Ă toutes les entreprises simultanĂ©ment.
Actions = { Hire = true, Fire = true, Promote = true, Account = true, Deposit = true, Withdraw = true, Invoice = true },Un pouvoir dĂ©sactivĂ© nâest ni affichĂ© Ă lâĂ©cran, ni acceptĂ© par le serveur, dans cet ordre. Un bouton qui est simplement absent visuellement nâest pas dĂ©sactivĂ©.
Les rĂšgles avec lesquelles lâĂ©cran ne peut pas nĂ©gocier
Section intitulĂ©e « Les rĂšgles avec lesquelles lâĂ©cran ne peut pas nĂ©gocier »- Lâembauche se fait Ă proximitĂ© directe dâune personne. La liste regroupe quiconque se trouve Ă quelques mĂštres, et cette mĂȘme distance est vĂ©rifiĂ©e Ă nouveau lorsque le nom est envoyĂ© ; un nom prĂ©sent dans cette liste est donc un nom qui sera encore acceptĂ© un instant plus tard. Un menu capable dâembaucher nâimporte qui dans la ville en devinant un ID serveur est un menu qui sera dĂ©tournĂ© pour faire exactement cela.
- Personne ne peut modifier son propre statut ni celui de quiconque Ă son rang ou au-dessus. Ces deux cas sont explicitĂ©s sur lâĂ©cran plutĂŽt que dâĂȘtre des boutons qui Ă©chouent silencieusement.
- Le grade est choisi dans la hiérarchie envoyée par le serveur, jamais saisi manuellement.
- Les identifiants ne transitent jamais sur le rĂ©seau. Chaque membre de lâeffectif est reprĂ©sentĂ© par un ticket qui nâa de sens que pour cette session.
- Lâargent se dĂ©place sous un verrou, par entreprise, et est restituĂ© si lâautre volet de la transaction Ă©choue.