Skip to content

Commit a8c1fad

Browse files
committed
docs: adiciona MANUAL.md
Publica o manual na documentacao (docs.mriqbox.com.br) via repo-dispatch.
1 parent 25ec94b commit a8c1fad

1 file changed

Lines changed: 212 additions & 0 deletions

File tree

MANUAL.md

Lines changed: 212 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,212 @@
1+
# mri_Qhud - Manual Funcional
2+
3+
HUD moderno para Qbox Framework com indicadores de status do jogador, veículo, bússola, minimap quadrado e sistema de stress.
4+
5+
## O que o recurso faz
6+
7+
O mri_Qhud exibe uma interface heads-up display (HUD) persistente durante o gameplay, mostrando indicadores circulares de status do jogador (vida, colete, fome, sede, stress, oxigênio), HUD do veículo (velocímetro, combustível, altitude, saúde do motor, NOS, cruise control), bússola completa com direções cardinais e nomes de ruas, além de minimap quadrado com texturas customizadas.
8+
9+
## Funcionalidades principais
10+
11+
- **Status do jogador**: Indicadores circulares para vida, colete, fome, sede, stress, oxigênio
12+
- **HUD do veículo**: Velocímetro, combustível, altitude, saúde do motor, NOS, cruise control
13+
- **Bússola completa**: Direções cardinais, nomes de ruas, indicador de graus
14+
- **Minimap quadrado**: Texturas customizadas para minimap square (80 arquivos no stream/)
15+
- **Money HUD**: Display de cash/bank com animações de mudança (+/-)
16+
- **Sistema de stress**: Blur de tela, ragdoll/fall em níveis altos
17+
- **Modo cinematográfico**: Barras pretas com animação suave
18+
- **Settings menu**: Painel NUI com toggles para todos os elementos
19+
- **PS-Buffs integration**: Display de buffs/enhancements externos
20+
- **Alerta de combustível baixo**: Som + notificação em 20%
21+
22+
## Como funciona
23+
24+
1. Ao carregar o jogador (`QBCore:Client:OnPlayerLoaded`), o HUD inicializa e carrega settings persistidos
25+
2. Loop contínuo atualiza indicadores baseados no estado do jogador/veículo
26+
3. Eventos recebidos atualizam fome, sede, stress, NOS, etc.
27+
4. Settings são persistidos via KVP (`GetResourceKvpString`/`SetResourceKvp`) + `localStorage`
28+
5. NUI Vue.js apps gerenciam display de cada componente (money, player, vehicle, compass)
29+
30+
## Configurações disponíveis (config.lua)
31+
32+
### Opções gerais
33+
| Opção | Padrão | Descrição |
34+
|-------|---------|-----------|
35+
| `Config.OpenMenu` | `'I'` | Tecla para abrir settings menu |
36+
| `Config.StressChance` | `0.1` | 10% chance de stress por tiro |
37+
| `Config.UseMPH` | `false` | MPH (true) ou KPH (false) |
38+
| `Config.MinimumStress` | `50` | Stress mínimo para screen shaking |
39+
| `Config.MinimumSpeedUnbuckled` | `50` | Velocidade causando stress sem cinto |
40+
| `Config.MinimumSpeed` | `100` | Velocidade causando stress com cinto |
41+
| `Config.DisablePoliceStress` | `true` | Desabilitar stress para LEO |
42+
| `Config.DisableStress` | `false` | Desabilitar stress completamente |
43+
| `Config.Buffs` | `'ps-buffs'` | Nome do resource de buffs |
44+
45+
### Settings Menu (Config.Menu)
46+
Todos os toggles abaixo são configuráveis pelo jogador via tecla I:
47+
48+
| Setting | Padrão | Descrição |
49+
|---------|---------|-----------|
50+
| `isOutMapChecked` | `false` | Minimap a pé |
51+
| `isOutCompassChecked` | `false` | Bússola a pé |
52+
| `isCompassFollowChecked` | `true` | Bússola segue câmera |
53+
| `isOpenMenuSoundsChecked` | `true` | Sons do menu |
54+
| `isResetSoundsChecked` | `true` | Sons de reset |
55+
| `isListSoundsChecked` | `true` | Sons de checklist |
56+
| `isMapNotifChecked` | `true` | Notificações do mapa |
57+
| `isLowFuelChecked` | `true` | Alerta combustível baixo |
58+
| `isCinematicNotifChecked` | `true` | Notificações modo cinematic |
59+
| `isDynamicHealthChecked` | `true` | Vida dinâmica |
60+
| `isDynamicArmorChecked` | `true` | Colete dinâmico |
61+
| `isDynamicHungerChecked` | `true` | Fome dinâmica |
62+
| `isDynamicThirstChecked` | `true` | Sede dinâmica |
63+
| `isDynamicStressChecked` | `true` | Stress dinâmico |
64+
| `isDynamicOxygenChecked` | `true` | Oxigênio dinâmico |
65+
| `isDynamicEngineChecked` | `true` | Motor dinâmico |
66+
| `isDynamicNitroChecked` | `true` | Nitro dinâmico |
67+
| `isChangeFPSChecked` | `true` | Modo FPS do velocímetro |
68+
| `isHideMapChecked` | `false` | Esconder minimap |
69+
| `isCompassShowChecked` | `true` | Mostrar bússola |
70+
| `isShowStreetsChecked` | `true` | Nomes de ruas |
71+
| `isPointerShowChecked` | `true` | Indicador da bússola |
72+
| `isDegreesShowChecked` | `true` | Graus da bússola |
73+
| `isCineamticModeChecked` | `false` | Modo cinematográfico |
74+
75+
## Controles
76+
77+
| Tecla | Ação |
78+
|-------|------|
79+
| **I** | Abrir settings menu |
80+
81+
## Comandos
82+
83+
| Comando | Restrito | Descrição |
84+
|---------|----------|-----------|
85+
| `/cash` | Não | Mostrar saldo cash |
86+
| `/bank` | Não | Mostrar saldo bank |
87+
| `/dev` | Admin | Toggle dev mode |
88+
89+
## Eventos
90+
91+
### Client (recebidos)
92+
| Evento | Descrição |
93+
|--------|-----------|
94+
| `QBCore:Client:OnPlayerLoaded` | Carregar HUD, settings, buff data |
95+
| `QBCore:Client:OnPlayerUnload` | Limpar dados do jogador |
96+
| `hud:client:UpdateNeeds` | Atualizar fome/sede |
97+
| `hud:client:UpdateStress` | Atualizar stress |
98+
| `hud:client:ToggleShowSeatbelt` | Toggle seatbelt display |
99+
| `hud:client:UpdateNitrous` | Atualizar NOS |
100+
| `hud:client:UpdateHarness` | Atualizar HP do harness |
101+
| `hud:client:EngineHealth` | Atualizar saúde do motor |
102+
| `hud:client:BuffEffect` | Display buff progress |
103+
| `hud:client:EnhancementEffect` | Display enhancement icon |
104+
| `hud:client:ShowAccounts` | Popup cash/bank |
105+
| `hud:client:OnMoneyChange` | Animação de mudança de dinheiro |
106+
| `hud:client:ToggleHealth` | Toggle dynamic health |
107+
| `qb-admin:client:ToggleDevmode` | Toggle dev mode |
108+
109+
### Server (recebidos)
110+
| Evento | Descrição |
111+
|--------|-----------|
112+
| `hud:server:GainStress` | Aumentar stress do jogador |
113+
| `hud:server:RelieveStress` | Diminuir stress do jogador |
114+
115+
## NUI Callbacks
116+
117+
| Callback | Descrição |
118+
|----------|-----------|
119+
| `closeMenu` | Fechar settings menu |
120+
| `restartHud` | Restartar HUD |
121+
| `resetStorage` | Resetar settings para padrão |
122+
| `openMenuSounds` | Toggle sons do menu |
123+
| `dynamicHealth` | Toggle vida dinâmica |
124+
| `dynamicArmor` | Toggle colete dinâmico |
125+
| `dynamicHunger` | Toggle fome dinâmica |
126+
| `dynamicThirst` | Toggle sede dinâmica |
127+
| `dynamicStress` | Toggle stress dinâmico |
128+
| `dynamicOxygen` | Toggle oxigênio dinâmico |
129+
| `dynamicEngine` | Toggle motor dinâmico |
130+
| `dynamicNitro` | Toggle nitro dinâmico |
131+
| `changeFPS` | Toggle FPS do velocímetro |
132+
| `HideMap` | Toggle visibilidade do minimap |
133+
| `showCompassBase` | Toggle base da bússola |
134+
| `showStreetsNames` | Toggle nomes de ruas |
135+
| `showPointerIndex` | Toggle indicador da bússola |
136+
| `showDegreesNum` | Toggle graus |
137+
| `cinematicMode` | Toggle modo cinematográfico |
138+
139+
## Indicadores de Status
140+
141+
| Indicador | Ícone | Descrição |
142+
|-----------|-------|-----------|
143+
| Health | `heart-pulse` | Vida do jogador |
144+
| Armor | `shield` | Colete |
145+
| Hunger | `bowl-food` | Fome |
146+
| Thirst | `bottle-water` | Sede |
147+
| Stress | `brain` | Stress |
148+
| Oxygen | `lungs` | Oxigênio (submerso) |
149+
| Armed | `stream` | Indicador de armado |
150+
| Parachute | `parachute-box` | Paraquedas |
151+
| Harness | `user-slash` | Harness |
152+
| Cruise | `tachometer-alt` | Cruise control |
153+
| NOS | `rocket` | Nitrous |
154+
| Dev | `terminal` | Dev mode |
155+
156+
## NUI Components (Vue.js + Quasar)
157+
158+
4 Vue apps independentes:
159+
1. **`app`** (`#menu`) — Settings menu com tabs, checkboxes, toggles
160+
2. **`moneyHud`** (`#money-container`) — Cash/bank com slide-fade animations
161+
3. **`playerHud`** (`#ui-container`) — Status radials com show/hide dinâmico
162+
4. **`vehHud`** (`#veh-container`) — Velocidade, combustível, altitude, motor
163+
5. **`baseplateHud`** (`#baseplate-container`) — Bússola SVG com direções cardinais
164+
165+
### Stack
166+
- **Vue.js 3** (CDN)
167+
- **Quasar 2** (CDN)
168+
- **jQuery 3.7** (CDN)
169+
- **FontAwesome 6.6** (CDN + local)
170+
- **Google Fonts** — Robbery + Material Icons
171+
172+
## Integração com outros recursos MRI
173+
174+
### Obrigatórias
175+
- `ox_lib` — Locale system, comandos, callbacks
176+
- `qbx_core` — Player data, notificações
177+
- `InteractSound` — Sons do menu
178+
179+
### Opcionais
180+
- `ps-buffs` — Integração de buffs/enhancements (configurável em `Config.Buffs`)
181+
182+
## Exemplos práticos
183+
184+
### Atualizar fome/sede via evento
185+
```lua
186+
TriggerEvent('hud:client:UpdateNeeds', hunger, thirst)
187+
```
188+
189+
### Adicionar stress via servidor
190+
```lua
191+
TriggerEvent('hud:server:GainStress', source, 10) -- adiciona 10 de stress
192+
```
193+
194+
### Atualizar NOS via evento
195+
```lua
196+
TriggerEvent('hud:client:UpdateNitrous', true, 100) -- NOS ativo com 100%
197+
```
198+
199+
### Mostrar mudança de dinheiro
200+
```lua
201+
TriggerEvent('hud:client:OnMoneyChange', 'cash', 500, 'add')
202+
```
203+
204+
## Solução de problemas
205+
206+
- **HUD não aparece**: Verifique se o jogador carregou completamente (`OnPlayerLoaded`)
207+
- **Settings não persistem**: O sistema usa KVP + localStorage como backup
208+
- **Stress não aumenta**: Stress por tiro/velocidade está comentado; use evento `hud:server:GainStress`
209+
- **Combustível baixo não alerta**: Verificação em ≤20% a cada 60 segundos; veículos elétricos são ignorados
210+
- **Minimap não é quadrado**: Confirme que os 80 arquivos de textura estão no `stream/`
211+
- **Comando /engine não funciona**: Está comentado no código (tecla G)
212+
- **Alerta de combustível em veículo elétrico**: 19 veículos elétricos estão na blacklist

0 commit comments

Comments
 (0)