Skip to content

Lojas de itens ​

Lojas de compra e venda de itens: departamento, armas, eletrônicos, caça, farmácia, polícia e outras. Abrem por um ped com target, ou por uma máquina do mapa. Cada loja tem a própria lista e o próprio pagamento.

Precisa de: krs, target, hud, bank

Este script usa o krs diretamente. Ele não usa o krs_helper e não roda em outros frameworks.

Instalação ​

cfg
ensure shops

Coloque depois do krs e do target. O script não cria tabela. Veja a ordem no server.cfg.

Os itens das listas precisam existir no krs.

Como usar ​

O jogador mira no ped da loja e escolhe Abrir. A tela mostra os itens, o peso, o que ele já tem e o saldo. Ele monta o carrinho e paga, ou vende.

RegraO que acontece
ProcuradoA loja não abre
Imposto ou multa em aberto no bankA loja não abre. A loja Banned é a exceção
DistânciaAté 5 m de um ponto da loja, se ela tiver ponto em Location
PesoA compra para se o total passar do peso máximo
Limite do itemA compra para com Limite de X atingido.
Item danificadoNão pode ser vendido
Apagão (GlobalState.Blackout)Sem o botão de banco nas lojas Cash

Loja com Permission exige o grupo em serviço. Nela, a arma comprada é limitada a uma de cada por jogador e cada item entra no log Lojas.

Lojas sem ponto em Location, como Coffee, Soda e Donut, abrem pelo target de máquinas do mapa.

Configuração ​

Tudo fica em shared-side/shared.lua.

Pontos ​

lua
{
	Coords = vec3(24.51,-1346.75,29.49),
	Ped = "mp_m_shopkeep_01",
	Heading = 272.13,
	Mode = "Departament"
},
CampoO que é
CoordsPosição
PedModelo do ped. Sem ele, o ponto é só a zona do target
HeadingDireção do ped
ModeChave da loja em List
ExtraSegunda loja no mesmo ponto
CircleRaio da zona. Sem ele, a zona é uma caixa de 0,75 m
RouteRouting bucket do ponto

Lojas ​

lua
Pipas = {
	Name = "Loja de Pipas",
	Description = "Pipas e linhas para soltar no céu.",
	Mode = "Buy",
	Type = "Cash",
	List = {
		pipa_simples = 200,
		linha_seda = 2500
	}
},
CampoO que é
Name, DescriptionTextos da tela
ModeBuy vende ao jogador, Sell compra dele
TypeCash paga no banco ou em dinheiro, Consume paga com o item de Item, Gemstone paga em diamantes
ItemItem usado com Consume
PermissionGrupo em serviço. Aceita cargo mínimo, como Policia-11
RouteRouting bucket exigido
ListItem e preço. Preço 0 é grátis

Gemstone só funciona com Mode = "Buy". Até 100 itens diferentes por pedido.

LojaNomePagamento ou acesso
MecanicoPeças da OficinaGrupo Bennys
BannedBanidosDiamantes, Route = 9999998
AmmunationAmmu-NationCash
DepartamentDepartamentoCash
MegamallMegamallCash
EletronicsEletrônicosCash
PresentesPresentesCash
Coffee, Soda, Donut, Hamburger, Hotdog, Chihuahua, Water, CigaretteMáquinas e lanchesCash
ParamedicoFarmáciaGrupo Paramedico
Hunting, MinersCaça, MineradoresVenda, Cash
Hunting2Caça & EquipamentosCash
PoliciaDepartamento de PolíciaGrupo Policia
PoliciaTaticoArsenal TáticoGrupo Policia-11
PipasLoja de PipasCash

Para programadores ​

O evento local shops:Open abre uma loja, pelo número do ponto em Location ou pela chave em List:

lua
TriggerEvent("shops:Open", "Pipas")

O servidor confere grupo, distância e Route. Loja sem ponto em Location não tem conferência de distância.

O evento de cliente inventory:Close fecha a loja.

Problemas comuns ​

MensagemCausa
Sem saldo no banco ou sem o cartão do banco.Falta saldo ou o cartão
Dinheiro insuficiente.Falta o item dollar
Você não consegue carregar tudo isso.O carrinho passa do peso máximo
Limite de X atingido.Limite do item, ou arma repetida em loja com Permission
Você não possui a quantidade necessária.Venda acima do que o jogador tem
Itens danificados não podem ser vendidos.Item danificado na venda