- Sobre o Projeto
- DiferenΓ§as em relaΓ§Γ£o ao dpEmotes
- Arquitetura do Sistema
- Funcionalidades
- Interface NUI
- Fluxo de ComunicaΓ§Γ£o NUI β Lua
- FrontierPreview
- Sistema de Favoritos
- Categorias de Emotes
- Comandos & Keybinds
- InstalaΓ§Γ£o
- ConfiguraΓ§Γ£o (config.lua)
- Estrutura de Arquivos
- Compatibilidade com Frameworks
- CrΓ©ditos & AnimaΓ§Γ΅es Customizadas
DOIZZP EMOTES V1 Γ© um sistema completo de animaΓ§Γ΅es e emotes para servidores FiveM baseado no amplamente utilizado dpEmotes, com uma diferenΓ§a fundamental: a interface do usuΓ‘rio foi completamente reescrita do zero utilizando tecnologias web modernas (HTML5, CSS3 e JavaScript ES2020+), eliminando a dependΓͺncia do NativeUI.
O resultado Γ© um painel premium com visual dark-glass, neon vermelho e estΓ©tica gamer, com suporte a virtual scroll para listas de centenas de animaΓ§Γ΅es sem perda de performance, preview em tempo real do personagem e persistΓͺncia de favoritos via ResourceKvp.
| Aspecto | dpEmotes (original) | DOIZZP EMOTES V1 |
|---|---|---|
| Interface | NativeUI (menu nativo GTA) | HTML/CSS/JS β NUI personalizado |
| Visual | PadrΓ£o do jogo | Dark Glass Β· Red Neon Β· Gamer premium |
| Performance na lista | Renderiza todos os itens | Virtual Scroll (apenas itens visΓveis) |
| Preview de emote | β | β FrontierPreview (cΓ’mera dedicada) |
| Busca | Limitada | Busca em tempo real com debounce (120ms) |
| Favoritos | KVP bΓ‘sico | Lista persistida via ResourceKvp + keybind |
| Arquivo EmoteMenu.lua | Presente | β SubstituΓdo por client/NUI.lua |
| Arquivo NativeUI.lua | ObrigatΓ³rio | β Removido completamente |
| Fonte de dados | Interna ao menu | Serializada como JSON via SendNUIMessage |
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β DOIZZP EMOTES V1 β
β β
β ββββββββββββββββ SendNUIMessage ββββββββββββββββββββ β
β β NUI.lua β βββββββββββββββββββΊ β html/script.js β β
β β (client) β β (NUI / browser) β β
β β β βββββββββββββββββββ β β β
β β β fetch() callbacks β html/style.css β β
β ββββββββ¬ββββββββ ββββββββββββββββββββ β
β β β
β βΌ β
β ββββββββββββββββ TriggerServerEvent ββββββββββββββββββ β
β β Emote.lua β βββββββββββββββββββΊ β Server.lua β β
β β Syncing.lua β βββββββββββββββββββ β β (sincronismo) β β
β β Walk.lua β ββββββββββββββββββ β
β ββββββββ¬ββββββββ β
β β β
β βΌ β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β AnimationList.lua + AnimationListCustom.lua β β
β β (RP.Emotes, RP.Dances, RP.PropEmotes, RP.Walks, β β
β β RP.Expressions, RP.Shared, RP.AnimalEmotes, ...) β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
| Arquivo | Responsabilidade |
|---|---|
fxmanifest.lua |
Manifesto do recurso, scripts, ui_page e data_files |
config.lua |
Todas as configuraΓ§Γ΅es do servidor |
client/NUI.lua |
Bridge principal β substitui EmoteMenu.lua + NativeUI.lua |
client/Emote.lua |
LΓ³gica de execuΓ§Γ£o das animaΓ§Γ΅es |
client/FrontierPreview.lua |
Sistema de preview com cΓ’mera dedicada |
client/Syncing.lua |
Sincronismo de emotes entre jogadores |
client/AnimationList.lua |
Tabela completa de animaΓ§Γ΅es nativas (28 000+ linhas) |
client/AnimationListCustom.lua |
AnimaΓ§Γ΅es customizadas adicionais |
client/Walk.lua |
Estilos de caminhada persistentes |
client/Expressions.lua |
ExpressΓ΅es faciais persistentes |
client/Keybinds.lua |
Keybinds numΓ©ricos opcionais (SQL) |
html/index.html |
Estrutura da interface NUI |
html/style.css |
Tema Dark Glass Β· Red Neon |
html/script.js |
LΓ³gica da UI, virtual scroll e comunicaΓ§Γ£o com Lua |
server/Server.lua |
Eventos de sincronismo e keybinds SQL |
- Menu NUI premium aberto com
F5(configurΓ‘vel), sem NativeUI - 8 categorias de animaΓ§Γ΅es: Emotes, DanΓ§as, Props, Walks, ExpressΓ΅es, Shared, Animals e Favoritos
- Busca em tempo real com debounce de 120ms β busca por nome ou comando
- Virtual Scroll β renderiza apenas os cards visΓveis para suportar centenas de emotes sem lag de UI
- FrontierPreview β cΓ’mera dedicada que prΓ©-visualiza a animaΓ§Γ£o no personagem antes de executar
- Sistema de Favoritos β marque emotes favoritos, persistidos localmente via
ResourceKvp; um favorito pode ser associado ao keybind rΓ‘pido (CAPS LOCKpor padrΓ£o) - Shared Emotes β envie convite para jogadores prΓ³ximos (< 3 m) com
Ypara aceitar /Npara recusar - Estilos de caminhada persistentes β aplica automaticamente ao reconectar (polling a cada 60s)
- ExpressΓ΅es faciais persistentes β salvas no client, reaplicadas no login
- Emotes em veΓculos β por padrΓ£o apenas upper body quando dentro de um veΓculo
- Cancelamento automΓ‘tico β cancela emote ao morrer, nadar (se
AllowInWater = false) ou ao pressionarF6 - Desarme opcional β configura
DisarmPlayer = truepara remover a arma ao emoting - Suporte QBCore β integraΓ§Γ£o nativa opcional
- 1 100+ animaΓ§Γ΅es customizadas streamadas localmente (
.ycd) - Props customizados de mΓΊltiplos criadores (
.ydr/.ytyp) - Binoculars e News Camera como comandos (
/binoculars,/newscam) - Ragdoll, Crouch e Crawl toggles configurΓ‘veis
- Finger Pointing configurΓ‘vel
- Suporte a SQL Keybinding (6 slots numΓ©ricos opcionais)
- NotificaΓ§Γ΅es via GTA nativo ou chat (configurΓ‘vel)
- Suporte a Lua 5.4,
fxmanifest cerulean, OneSync obrigatΓ³rio
A interface Γ© construΓda inteiramente em HTML5/CSS3/JS sem qualquer framework ou biblioteca externa.
/* Paleta principal */
--bg-panel: rgba(10, 10, 14, 0.97) /* painel escuro com vidro */
--red: #e8001c /* accent primΓ‘rio */
--red-bright: #ff1a35 /* hover / glow */
--text-white: #f4f4f8
/* Tipografia */
--font-title: 'Rajdhani' (700) /* tΓtulos e brand */
--font-body: 'DM Sans' (400/500) /* labels e listas */
/* DimensΓ΅es do painel */
--panel-w: 440px
--header-h: 62px
--search-h: 60px
--footer-h: 66px
--cat-w: 68px /* largura da coluna de categorias */
--card-h: 70px /* altura de cada card de emote */βββββββββββββββββββββββββββββββββββββββββββββββ
β HEADER β Brand Β· Contador Β· BotΓ£o fechar β
βββββββββββββββββββββββββββββββββββββββββββββββ€
β SEARCH BAR β Input com clear + resultado β
ββββββββββββ¬βββββββββββββββββββββββββββββββββββ€
β β CONTENT HEADER β
β CATEGORYβ βββββββββββββββββββββββββββββββ β
β NAV β EMOTE LIST (Virtual Scroll) β
β (Γcones)β β
β π β βββββββββββββββββββββββββββββββ β
β π β β Card: Γcone Β· nome Β· cmd β β
β π§Έ β β β fav Β· βΆ preview β β
β π β βββββββββββββββββββββββββββββββ β
β π β ... (sΓ³ itens visΓveis) β
β π€ β β
β πΎ β β
β β β β
ββββββββββββ΄βββββββββββββββββββββββββββββββββββ€
β FOOTER β Emote selecionado Β· Btn Cancelar β
βββββββββββββββββββββββββββββββββββββββββββββββ
O script implementa virtual scrolling prΓ³prio (sem biblioteca) que mantΓ©m no DOM apenas os cards dentro da viewport mais um buffer de VIRTUAL_BUFFER = 8 itens acima e abaixo. Isso garante que mesmo com 800+ emotes numa categoria a performance de renderizaΓ§Γ£o seja constante.
CARD_HEIGHT = 74px (--card-h + gap, deve coincidir com CSS)
VIRTUAL_BUFFER = 8 (itens extras alΓ©m da viewport)
MAX_VISIBLE = 800 (cap suave por categoria; use busca para mais)
SEARCH_DEBOUNCE = 120ms (delay da busca em tempo real)
PREVIEW_DEBOUNCE = 120ms (delay do preview ao hover)
ANIM_STAGGER_MAX = 14 (mΓ‘x de cards com animaΓ§Γ£o de entrada staggered)
-- NUI.lua: OpenEmoteMenu()
SendNUIMessage({
action = "openMenu",
resourceName = "DOIZZP_EMOTES_V1",
favorites = { "cheer", "wave" },
favoriteEmote = "cheer",
categories = {
emotes = { { name, label, type, cmd }, ... },
dances = { ... },
props = { { name, label, type, cmd, variant }, ... },
walks = { ... },
expressions = { ... },
shared = { ... },
animals = { ... },
}
})| Callback NUI | Payload enviado | AΓ§Γ£o em Lua |
|---|---|---|
playEmote |
{ name, type, variant } |
Executa EmoteMenuStart(), WalkMenuStart() ou shared |
previewEmote |
{ name, type, variant } |
FrontierPreviewPlay() na cΓ’mera dedicada |
cancelEmote |
{} |
EmoteCancel() + DestroyAllProps() |
addFavorite |
{ name } |
AddFavorite() + salva no KVP |
removeFavorite |
{ name } |
RemoveFavorite() + salva no KVP |
setKeyFav |
{ name } |
Define FavoriteEmote global para o keybind |
closeMenu |
{} |
SetNuiFocus(false, false) |
// Exemplo em script.js β executar emote
async function playEmote(emote) {
await fetch(`https://${State.resourceName}/playEmote`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ name: emote.name, type: emote.type, variant: emote.variant ?? 0 })
});
}O FrontierPreview Γ© um sistema de preview em tempo real que cria um ped clone do jogador em posiΓ§Γ£o de cΓ’mera lateral para demonstrar a animaΓ§Γ£o antes de executΓ‘-la no personagem principal.
-- ConfiguraΓ§Γ£o (config.lua)
FrontierPreview = {
Enabled = true,
Interval = 250, -- ms entre frames de preview
CameraDistance = 4.8, -- distΓ’ncia da cΓ’mera ao ped
CameraRight = 0.85, -- offset lateral da cΓ’mera
CameraHeight = -0.45, -- offset vertical da cΓ’mera
}Funcionamento:
- Ao abrir o menu β
FrontierPreviewStart()cria o ped clone e posiciona cΓ’mera - Ao hover em um card (debounce 120ms) β
previewEmotecallback βFrontierPreviewPlay(type, name, variant) - O preview resolve a animaΓ§Γ£o nas tabelas
RP.*conforme o tipo (emotes,dances,whitecustom, etc.) - Props customizados sΓ£o criados e attachados ao ped de preview
- Ao fechar o menu β
FrontierPreviewStop()destrΓ³i o ped, props e cΓ’mera
Os favoritos sΓ£o armazenados localmente no client via ResourceKvp (persistΓͺncia nativa do FiveM, sem banco de dados).
-- Chave KVP usada
local FAV_KVP_KEY = "nui_favorites_list"
-- Estrutura salva (JSON)
-- ["cheer", "wave", "sit"]- Adicionar favorito β botΓ£o β no card ou
addFavoritecallback - Remover favorito β segundo toque no β ou
removeFavoritecallback - Emote favorito do keybind β botΓ£o de pin no card β
setKeyFavβ salva emFavoriteEmoteglobal - Carregamento β
LoadFavorites()Γ© chamado uma vez noAddEventHandler('onClientResourceStart', ...) - A aba Favoritos (β) no menu exibe apenas os emotes marcados como favorito, com busca funcional
| Categoria | Γcone | Tabela Lua | Comando | DescriΓ§Γ£o |
|---|---|---|---|---|
| Emotes | π | RP.Emotes + RP.White* |
/e <nome> |
Emotes base + packs customizados |
| Dances | π | RP.Dances |
/e <nome> |
DanΓ§as sincronizΓ‘veis |
| Props | π§Έ | RP.PropEmotes |
/e <nome> |
Emotes com objetos 3D attachados |
| Walks | π | RP.Walks |
/walk <nome> |
Estilos de caminhada persistentes |
| Mood | π | RP.Expressions |
/expr <nome> |
ExpressΓ΅es faciais persistentes |
| Shared | π€ | RP.Shared |
/p <nome> |
Emotes para dois jogadores |
| Animals | πΎ | RP.AnimalEmotes |
/e <nome> |
AnimaΓ§Γ΅es de animais |
| Favoritos | β | (KVP local) | β | Emotes marcados pelo jogador |
| Comando | DescriΓ§Γ£o |
|---|---|
/e <nome> |
Executa um emote pelo nome |
/e c |
Cancela o emote atual |
/walk <nome> |
Aplica um estilo de caminhada |
/walk reset |
Restaura a caminhada padrΓ£o |
/expr <nome> |
Aplica uma expressΓ£o facial |
/p <nome> |
Inicia emote compartilhado com jogador prΓ³ximo |
/nearby |
Lista jogadores prΓ³ximos (alias de /p) |
/binoculars |
Ativa binΓ³culos (se habilitado no config) |
/newscam |
Ativa cΓ’mera de notΓcias (se habilitado no config) |
| Tecla | AΓ§Γ£o | ConfigurΓ‘vel via |
|---|---|---|
F5 |
Abrir / Fechar o menu NUI | Config.MenuKeybind |
F6 |
Cancelar emote atual | Config.CancelEmoteKey |
CAPS LOCK |
Executar emote favorito do keybind | Config.FavKeybind |
X |
Cancelar emote (alternativo) | Config.EnableXtoCancel |
Y |
Aceitar convite de emote compartilhado | Hardcoded (input 246) |
N |
Recusar convite de emote compartilhado | Hardcoded (input 182) |
U |
Ragdoll toggle (se habilitado) | Config.RagdollKeybind |
B |
Finger pointing (se habilitado) | Config.PointingKeybind |
RCTRL |
Crawl toggle (se habilitado) | Config.CrawlKeybind |
- Servidor FiveM com build 5848 ou superior
- OneSync habilitado (obrigatΓ³rio β declarado no manifesto)
- Lua 5.4 habilitado no servidor
1. FaΓ§a o download e copie para o servidor
# Copie a pasta para o diretΓ³rio de recursos
cp -r DOIZZP_EMOTES_V1/ server-data/resources/[local]/2. Adicione ao server.cfg
ensure DOIZZP_EMOTES_V13. (Opcional) Configure o config.lua
Edite config.lua de acordo com as necessidades do seu servidor (ver seΓ§Γ£o abaixo).
4. (Opcional) SQL Keybinding
Se desejar keybinds SQL (Config.SqlKeybinding = true), importe o schema necessΓ‘rio e habilite a opΓ§Γ£o no config. O script criarΓ‘ entradas automaticamente no primeiro login do jogador.
5. Reinicie o servidor ou use refresh + start DOIZZP_EMOTES_V1
Todas as opΓ§Γ΅es estΓ£o no arquivo config.lua na raiz do recurso.
Config = {
-- ββ Idioma βββββββββββββββββββββββββββββββββββββββββββββββββ
MenuLanguage = 'pt', -- 'pt', 'en', 'es', etc.
-- ββ Debug ββββββββββββββββββββββββββββββββββββββββββββββββββ
DebugDisplay = false, -- prints extras no console
-- ββ Cancelamento βββββββββββββββββββββββββββββββββββββββββββ
EnableXtoCancel = true, -- X cancela emote
CancelEmoteKey = 'f6', -- tecla de cancelar
-- ββ Comportamento ββββββββββββββββββββββββββββββββββββββββββ
DisarmPlayer = false, -- desarmar ao emoting
AllowedInCars = true, -- emotes em veΓculos (upper body)
CancelPreviousEmote = false, -- cancela emote anterior ao iniciar novo
AllowInWater = true, -- permite emotes na Γ‘gua
-- ββ Menu βββββββββββββββββββββββββββββββββββββββββββββββββββ
MenuKeybindEnabled = true,
MenuKeybind = 'f5',
MenuTitle = "FRONTIER",
MenuPosition = "right", -- "left" ou "right"
MenuImage = "URL_DO_BANNER", -- 512x128px recomendado
CustomMenuEnabled = true,
-- ββ Favorito (keybind) βββββββββββββββββββββββββββββββββββββ
FavKeybindEnabled = true,
FavKeybind = 'capital', -- CAPS LOCK
-- ββ FrontierPreview ββββββββββββββββββββββββββββββββββββββββ
FrontierPreview = {
Enabled = true,
Interval = 250,
CameraDistance = 4.8,
CameraRight = 0.85,
CameraHeight = -0.45,
},
-- ββ Funcionalidades opcionais ββββββββββββββββββββββββββββββ
RagdollEnabled = false,
RagdollKeybind = 'u',
RagdollAsToggle = true,
ExpressionsEnabled = true,
PersistentExpression = true,
WalkingStylesEnabled = true,
PersistentWalk = true,
PersistencePollPeriod = 60000, -- ms
SharedEmotesEnabled = true,
AdultEmotesDisabled = false,
AnimalEmotesEnabled = true,
Search = true,
HandsupEnabled = false,
PointingEnabled = false,
CrouchEnabled = false,
CrawlEnabled = true,
CrawlKeybind = 'rcontrol',
BinocularsEnabled = true,
NewscamEnabled = true,
-- ββ Framework ββββββββββββββββββββββββββββββββββββββββββββββ
Framework = false, -- false ou "qb-core"
SqlKeybinding = false,
-- ββ NotificaΓ§Γ΅es βββββββββββββββββββββββββββββββββββββββββββ
NotificationsAsChatMessage = false, -- true = mensagem no chat
-- ββ Updates ββββββββββββββββββββββββββββββββββββββββββββββββ
CheckForUpdates = false,
}DOIZZP_EMOTES_V1/
β
βββ fxmanifest.lua # Manifesto do recurso
βββ config.lua # ConfiguraΓ§Γ΅es centrais
βββ animals.lua # Tabela de emotes de animais
βββ printer.lua # UtilitΓ‘rio de impressΓ£o
β
βββ html/ # Interface NUI (sem NativeUI)
β βββ index.html # Estrutura da UI
β βββ style.css # Tema Dark Glass Β· Red Neon (27KB)
β βββ script.js # LΓ³gica, virtual scroll, callbacks (31KB)
β
βββ client/
β βββ NUI.lua # β
Bridge NUI β substitui EmoteMenu + NativeUI
β βββ Emote.lua # ExecuΓ§Γ£o de animaΓ§Γ΅es
β βββ FrontierPreview.lua # Preview com cΓ’mera dedicada
β βββ AnimationList.lua # Lista completa de animaΓ§Γ΅es (28 452 linhas)
β βββ AnimationListCustom.lua # AnimaΓ§Γ΅es customizadas extras
β βββ Syncing.lua # Sincronismo multiplayer
β βββ Walk.lua # Estilos de caminhada
β βββ Expressions.lua # ExpressΓ΅es faciais
β βββ Keybinds.lua # Keybinds SQL opcionais
β βββ Binoculars.lua # Comando /binoculars
β βββ NewsCam.lua # Comando /newscam
β βββ Crouch.lua # Sistema de agachar
β βββ Pointing.lua # Apontar o dedo
β βββ Ragdoll.lua # Toggle ragdoll
β βββ NoIdleCam.lua # Desativa cΓ’mera idle
β βββ Utils.lua # FunΓ§Γ΅es utilitΓ‘rias compartilhadas
β βββ frameworks/
β βββ qb-core.lua # IntegraΓ§Γ£o QBCore (client)
β
βββ server/
β βββ Server.lua # Eventos de sincronismo
β βββ frameworks/
β βββ qb-core.lua # IntegraΓ§Γ£o QBCore (server)
β
βββ stream/
βββ divined@drpack@new.ycd # AnimaΓ§Γ£o customizada
βββ [Custom Emotes]/ # Packs de criadores (24 creators)
β βββ Amnilka/
β βββ BoringNeptune/
β βββ BzZziEmotes/
β βββ ChocoholicAnimations/
β βββ CMGMods/
β βββ CrunchyCat Poses/
β βββ DarkAnimations/
β βββ DestinyCustoms/
β βββ Dollie_Mods/
β βββ EnchantedBrwny/
β βββ GenesisMods/
β βββ LittleSpoon/
β βββ Mads/
β βββ MissSnowieEmotes/
β βββ MollyEmotes/
β βββ Prue/
β βββ Pupppy/
β βββ QueenSistersAnimations/
β βββ SapphireMods/
β βββ Struggleville/
β βββ ultrahacx/
β βββ WhiskerValeMods/
β βββ Whitecustom/
β βββ WolfSquareEmotes/
βββ [Props]/ # Props 3D customizados (.ydr / .ytyp)
βββ Brummiee/
βββ BzzziProps/
βββ CandyApple/
βββ KayKayMods/
βββ KnjghPizzaSlices/
βββ NattyLollipops/
βββ PataMods/
βββ TayMcKenzieNZ/
βββ UltraRingCase/
Config.Framework = falseO recurso funciona de forma independente, sem necessidade de framework.
Config.Framework = "qb-core"Os arquivos client/frameworks/qb-core.lua e server/frameworks/qb-core.lua sΓ£o carregados automaticamente e fornecem integraΓ§Γ£o com permissΓ΅es, jobs e eventos do QBCore.
O recurso inclui +1 100 arquivos .ycd de animaΓ§Γ΅es customizadas streamadas localmente, provenientes de 24 criadores da comunidade FiveM, todos incluΓdos com permissΓ£o expressa dos autores originais.
Inclui props 3D de 9 criadores diferentes, streamados via DLC_ITYP_REQUEST, cobrindo itens como milkshakes, coraΓ§Γ΅es, skates, instrumentos musicais, joias, comidas temΓ‘ticas, lanternas, bandeiras e muito mais.
Este recurso Γ© baseado no dpEmotes, com todas as suas funcionalidades originais preservadas e a interface completamente substituΓda.
| Criador | Tipo de conteΓΊdo |
|---|---|
| Amnilka | Poses fotogrΓ‘ficas, casais |
| BoringNeptune | DanΓ§as (MJ Thriller, Wave) |
| BzZziEmotes | Give Love |
| ChocoholicAnimations | Singles, couples, skate |
| CMGMods | Couple poses, skate |
| CrunchyCat Poses | Poses tΓ‘ticas e policiais |
| DarkAnimations | Piano, saxofone, pool, estudo |
| DestinyCustoms | Smoking weapon |
| Dollie_Mods | Follow me |
| EnchantedBrwny | Casamentos |
| GenesisMods | Beijos (mΓΊltiplas variaΓ§Γ΅es) |
| LittleSpoon | Selfies, amizade, sexy |
| Mads | Poses policiais |
| MissSnowieEmotes | Variados |
| MollyEmotes | Variados |
| Prue | Variados |
| Pupppy | Variados |
| QueenSistersAnimations | Variados |
| SapphireMods | Variados |
| Struggleville | Variados |
| ultrahacx | Variados |
| WhiskerValeMods | Variados |
| Whitecustom | Props, comidas, eventos |
| WolfSquareEmotes | Variados |
Nota: Nenhuma animaΓ§Γ£o paga foi incluΓda neste recurso. Todas as animaΓ§Γ΅es customizadas foram adicionadas com permissΓ£o expressa de seus respectivos criadores.
Este recurso Γ© de uso privado e distribuΓdo sob licenΓ§a customizada do autor DoizzP (github: poolshev). A reutilizaΓ§Γ£o, redistribuiΓ§Γ£o ou venda do cΓ³digo-fonte ou dos assets Γ© proibida sem autorizaΓ§Γ£o explΓcita.
As animaΓ§Γ΅es customizadas pertencem a seus respectivos criadores e estΓ£o sujeitas Γ s licenΓ§as individuais de cada um.
Desenvolvido por DoizzP Β· GitHub
Interface NUI desenvolvida do zero β sem NativeUI, sem frameworks externos.
