Documentação do Pulse Phone
Frameworks
3. Passo a passo para o seu framework
O telemóvel encontra o seu framework sozinho: es_extended, qb-core, qbx_core, ox_core, ND_Core, vrp ou o core do TMC. Só precisa de Config.Framework em config/config.lua se estiver a correr mais do que um, ou para um framework personalizado.
O seu framework num relance
| Framework | Detetado por | Itens | Banco e dinheiro | Bom saber |
|---|---|---|---|---|
| ESX Legacy | es_extended |
O Pulse adiciona sozinho os seus itens à tabela items do ESX (inventário padrão). No ox_inventory, cole o bloco que a verificação de arranque mostra |
Contas do ESX | Contas de empresa através do seu script de sociedade |
| QBCore | qb-core |
O Pulse adiciona sozinho os seus itens aos shared items do QBCore (qb-, ps-, lj-inventory) | Dinheiro do QBCore | Os postos isboss gerem a empresa |
| Qbox | qbx_core (o seu substituto qb-core conta como Qbox, não como um segundo framework) |
Cole o bloco de ox_inventory mostrado | Dinheiro do Qbox | Usa o adapter do Qbox, nunca o do QBCore |
| ox_core | ox_core |
Cole o bloco de ox_inventory mostrado | A conta ox_core da personagem; o dinheiro vivo é o money do ox_inventory |
Sem indicador de serviço: todos contam como de serviço |
| ND Core | ND_Core |
Cole o bloco de ox_inventory mostrado | O bank e o cash do ND |
Sem indicador de serviço; sem contas de empresa |
| TMC | o seu resource core, reconhecido pelo próprio objeto core do TMC |
Todos os itens têm de estar na lista de itens do TMC: a verificação de arranque mostra-os | Dinheiro do TMC | Funciona através da bridge personalizada, nada a configurar |
| vRP 2 | vrp |
Veja a secção vRP | Carteira e banco do vRP | O vRP 1 e os forks não são suportados |
| Standalone | nenhum dos acima a correr | Não são precisos | O banco do próprio telemóvel | Para servidores de testes ou servidores sem framework |
| Personalizado | Config.Framework = 'custom' |
Através da sua bridge | Através da sua bridge | Veja "Framework personalizado ou feito internamente" |
Forçar o framework
A maioria dos servidores nunca precisa disto. Force o framework quando a linha de arranque indicar o errado, ou quando estiverem instalados e iniciados dois cores de framework. Adicione uma linha ao server.cfg:
setr phone_framework qb| Valor | Framework |
|---|---|
esx |
ESX Legacy (es_extended) |
qb |
QBCore (qb-core) |
qbox |
Qbox (qbx_core) |
ox |
ox_core |
nd |
ND Core (ND_Core) |
vrp |
vRP 2 (vrp) |
tmc |
TMC (core) |
standalone |
Sem framework: o telemóvel tem a sua própria identidade e banco |
custom |
A sua própria bridge (veja "Framework personalizado ou feito internamente" abaixo) |
auto |
O mesmo que não pôr a linha: decide o Config.Framework |
- Tem prioridade sobre o
Config.Framework. Reinicie o telemóvel depois de o alterar. - Os nomes dos resources também funcionam:
qbcore,qb-core,qbx_core,es_extended,ox_core. Uma palavra que não conhece é recusada: a verificação de arranque indica-o e as funcionalidades de dinheiro ficam desligadas. qbnum servidor que correqbx_coreusa o adapter do Qbox. O Qbox também responde como QBCore.- Se o framework que forçar não estiver iniciado, os telemóveis ficam no ecrã "not ready" até estar. O telemóvel nunca muda sozinho para outro framework.
O multipersonagem funciona em todos os frameworks. Config.IdentityScope = 'character' (o padrão) dá a cada personagem o seu próprio telemóvel. 'player' dá um telemóvel por conta. Escolha de uma vez: mudá-lo num servidor em funcionamento deixa para trás todos os telemóveis existentes.
A gestão de empresas (serviço, funcionários, contratações, a conta da empresa na app Services) usa as empresas em Config.Services em config/apps.lua. Se os nomes dos seus empregos forem diferentes dos padrão (police, ambulance, mechanic, taxi, fire ...), adicione os seus à lista job dessa empresa. Para escolher os postos de chefe, adicione bossGrade = <n> à empresa.
ESX Legacy
ensure oxmysql
ensure es_extended
# ... your ESX scripts, inventory, banking ...
ensure pma-voice
ensure screenshot-basic
ensure phone- Itens: com o inventário padrão do ESX não há nada a fazer. O telemóvel adiciona os seus itens à tabela
itemsdo ESX no arranque, e a consola diz quais adicionou. Oconfig/items/esx.sqlexiste se preferir adicioná-los à mão. Com outro inventário, veja a secção 4. - Dinheiro: o banco é a conta
bankdo ESX, o dinheiro vivo é a contamoney. - Personagem: o telemóvel segue o
identifierdo jogador no ESX, por isso o esx_multicharacter funciona. - Chefe: o posto chamado
bossgere a empresa, salvo se definirbossGrade. - Contas de empresa: esx_addonaccount / esx_society, ou um script de banca da secção 7.
QBCore
ensure oxmysql
ensure qb-core
# ... qb-inventory and your other qb scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone- Itens: nada a colar. O telemóvel adiciona os itens de que precisa aos shared items do QBCore no arranque, e a consola diz quais adicionou. Copie as imagens de
config/items/images/paraqb-inventory/html/images/; a verificação de arranque indica as que faltarem. - Dinheiro:
bankecash. - Personagem: o
citizenid, por isso o qb-multicharacter funciona. - Chefe: os postos com
isboss = truenos seus empregos, salvo se definirbossGrade. - Contas de empresa: Renewed-Banking, qb-banking, ou o antigo qb-management.
- Multijob: com o ps-multijob a correr, os outros empregos do jogador aparecem em Services e um toque torna um emprego ativo.
Qbox
ensure oxmysql
ensure qbx_core
ensure ox_inventory
# ... your other Qbox scripts, in Qbox's own order ...
ensure pma-voice
ensure screenshot-basic
ensure phone- Itens: o Qbox usa o ox_inventory, que não aceita itens de outro script. Inicie o servidor uma vez: a verificação de arranque mostra as entradas em falta, prontas a colar em
ox_inventory/data/items.lua(secção 4). As imagens vão paraox_inventory/web/images/. - Dinheiro:
bankecash, através do qbx_core. - Personagem: o
citizenid. - Chefe: os postos com
isboss = true, salvo se definirbossGrade. - Multijob: incluído. Os outros empregos de um jogador aparecem em Services.
- O qbx_core também responde como
qb-core. É normal: o telemóvel trata os dois como um só framework.
ox_core
ensure oxmysql
ensure ox_core
ensure ox_inventory
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone- Itens: inicie o servidor uma vez: a verificação de arranque mostra as entradas em falta, prontas a colar em
ox_inventory/data/items.lua(secção 4). As imagens vão paraox_inventory/web/images/. - Dinheiro: o banco é a conta ox_core da personagem. O dinheiro vivo é o item
moneyno ox_inventory. - Personagem: o
charId. - Empregos: os grupos do ox_core não têm indicador de serviço, por isso é o telemóvel que gere o serviço. A gestão de empresas (funcionários, contratações, postos) e o valet não estão disponíveis no ox_core.
ND Core
ensure oxmysql
ensure ox_lib
ensure ND_Core
ensure ox_inventory
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone- Detetado sozinho quando o
ND_Coreestá iniciado. Para o forçar:setr phone_framework nd. - Itens: o ND usa o ox_inventory. Inicie o servidor uma vez: a verificação de arranque mostra as entradas em falta, prontas a colar em
ox_inventory/data/items.lua(secção 4). - Dinheiro: o
bankda personagem no ND, e ocashdo ND (o ox_inventory mantém o itemmoneysincronizado). - Personagem: o id da personagem no ND. O número de telemóvel mostrado é o do próprio ND quando a personagem tem um.
- Empregos: o emprego e a patente da personagem no ND. O ND não tem indicador de serviço, por isso todos contam como de serviço. A gestão de empresas, as contas de empresa e o valet não estão disponíveis no ND Core.
- Garagem: os carros próprios vêm da tabela
nd_vehiclesdo ND.
vRP
Só o vRP 2 é suportado (não o vRP 1 nem forks da comunidade). O telemóvel carrega uma pequena extensão no vRP a partir de bridge/frameworks/vrp/. Nada para copiar.
ensure oxmysql
ensure vrp
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone- Itens: não há ficheiro de itens para o vRP, e o vRP 2 não consegue tornar itens utilizáveis para o telemóvel. Mantenha
Config.Item.required = false(o padrão) e definaConfig.Store.box = falsepara que a loja entregue os telemóveis diretamente. Os jogadores usam os itens de carregamento com/phonepacke/phonecable; com um inventário vRP, isso exige que o jogador tenhapulse_magpackepulse_cable, por isso adicione os dois itens à sua lista de itens do vRP, ou definaConfig.Charging.enabled = false. - Dinheiro: o banco e a carteira do vRP.
- Personagem: o id da personagem no vRP.
- Empregos: a gestão de empresas e o valet não estão disponíveis no vRP. A app Garage fica vazia a menos que ligue um script de garagem.
TMC
O TMC vem incluído. O telemóvel reconhece sozinho o core do TMC: nenhum resource extra e nenhuma alteração a config/config.lua (auto, tmc e custom funcionam todos).
ensure oxmysql
ensure core
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phoneA verificação de arranque mostra Framework: TMC.
- Itens: adicione os itens do Pulse à lista de itens do TMC da mesma forma que adiciona qualquer item. Os nomes são
phone,pulse_magpack,pulse_magpack_max,pulse_cable,pulse_router,pulse_burner,pulse_buds,pulse_ringlight,pulse_wallet(oconfig/items/tmc.luatem as entradas) e, para as caixas da loja,pulse_phone_boxmais uma por acabamento (pulse_phone_box_black...). As etiquetas, pesos e descrições estão emconfig/items/qb-core.lua, e as imagens emconfig/items/images/. Um item que não esteja na lista é recusado, e o jogador vê "inventory full": a consola indica então o item. Uma caixa em falta na lista não impede a venda: a loja entrega esse telemóvel sem a caixa e indica-o na consola. Se não quiser caixas de todo, definaConfig.Store.box = false. - Dinheiro: o dinheiro vivo da personagem e o seu banco: o resource
bankingdo TMC quando está a correr (a sua conta pessoal), caso contrário o dinheiro bancário do core. Se os seus números de conta não tiverem o formatoBNK123456, indique o campo que guarda o número de conta emconfig/config.lua:Config.Providers.tmcBankAccount = 'charinfo.account'(use o seu próprio campo). A Wallet mostra um traço, nunca um valor inventado, quando o banco não pode ser lido. - Personagem: o citizen id do TMC.
- Empregos: o emprego de serviço (ou o primeiro), com o posto e o estado de serviço.
- Tinha o conector temporário
pulse_tmc? Removaensure pulse_tmce apague essa pasta. A consola lembra-o enquanto ainda estiver a correr.
Standalone (sem framework)
ensure oxmysql
ensure pma-voice
ensure screenshot-basic
ensure phone- Itens: não são precisos. Todos os jogadores têm um telemóvel, um Reserve e um cabo.
- Dinheiro: o telemóvel tem o seu próprio banco. Um jogador novo começa com 5000 (
startingBalanceemconfig/apps.lua). - Personagem: a licença Rockstar do jogador.
- Empregos, carros e casas: o telemóvel gere os seus. Preencha-os com os comandos de teste da secção 9.
Framework personalizado ou feito internamente
- Defina
Config.Framework = 'custom'emconfig/config.lua. - Dê ao telemóvel uma tabela de bridge com o formato de
optional-developer-kit/custom_framework_bridge.lua: seja comoConfig.Providers.customemconfig/config.lua, seja a partir do seu próprio resource comexports.phone:RegisterFrameworkBridge(MyBridge). - Só o
GetCharacterIdé obrigatório. Se deixar de fora uma função de nome, emprego, licença ou lista de veículos/casas, o telemóvel age como se o seu servidor não tivesse esses dados. Se deixar de fora uma função de dinheiro ou de itens, essa ação é recusada: o telemóvel nunca paga a partir de um banco próprio. A app Bank só aparece quando a sua bridge temGetBankBalance. - Se o seu core reiniciar enquanto o telemóvel continua a correr, chame
exports.phone:FrameworkRestarted()assim que o core estiver pronto.
O bridge/frameworks/custom.lua mostra como o telemóvel usa a sua tabela. Para ligar outros scripts feitos internamente (um script de banca ou de garagem), veja optional-developer-kit/custom_provider_template.lua e Exports. Os dois modelos vêm no kit de programador opcional, zerodevscripts.com/downloads/PulsePhone-developer-kit.zip, e não na pasta do telemóvel.