zThyPvpTK Posted July 9, 2019 Share Posted July 9, 2019 Ola Queria saber se a variavel que eu criei e so pra uma pessoa ou e geral vamos disse quero fazer uma loja e dai compro uma arma e deixar a variavel compra = true blz ne dai vamos disse outra pessoa tenta comprar ele n vai consegui por a variavel esta como true queria saber se e assim ou se e por pessoas Link to comment
Other Languages Moderators Lord Henry Posted July 9, 2019 Other Languages Moderators Share Posted July 9, 2019 Depende. O script é server-side ou é client-side? Poste a parte do código. Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 On 09/07/2019 at 11:42, Lord Henry said: Depende. O script é server-side ou é client-side? Poste a parte do código. nao entendi o server-side ou é client-side? queria saber como coloco uma variavel so pra 1 player n para todos vo pegar o codico --[[ ################################################ # # # Script Criado Por # # FACEBOOK.COM/AIRNEWSCR # # # # # ################################################ --]] -------------------------------------------------------------------------------------------- Comando_Revistar = "vendar" Comando_Revistar2 = "comprar" venda = false function getPlayerFromPartialName ( name ) local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil if name then for _, player in ipairs(getElementsByType("player")) do local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() if name_:find(name, 1, true) then return player end end end end function comprarv (source) if venda then outputChatBox ( "* Erro: So Pode Comprar Uma Venda!", source ) else outputChatBox ( "* Venda Comprada /vendar [Jogador]", source ) venda = true end end addCommandHandler ( Comando_Revistar2, comprarv ) function Revistar ( source, cmd, player ) if venda then local Jogador = getPlayerFromPartialName ( player ) if Jogador then local cx,cy,cz = getElementPosition(Jogador) local x,y,z = getElementPosition(source) local dist = getDistanceBetweenPoints3D(x,y,z,cx,cy,cz) if dist <= 5 then outputChatBox ( "Você Vendou Um Jogador [-1 Venda]", source ) outputChatBox ( "Você Foi Vendado", Jogador ) venda = false end else outputChatBox("#bebebeChegue mais perto do jogador!", source, 255, 255, 255, true) end end end addCommandHandler ( Comando_Revistar, Revistar ) e uma loja que to fazendo de venda soque n sei se a variavel e pra todo mundo ou pra 1 pessoa so queria pra 1 pessoa so a variavel Link to comment
DNL291 Posted July 10, 2019 Share Posted July 10, 2019 No lado server será compartilhada entre os jogadores, então você pode definir um valor numa tabela com o player na chave para evitar conflitos. O código acima é lado server. Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 43 minutes ago, DNL291 said: No lado server será compartilhada entre os jogadores, então você pode definir um valor numa tabela com o player na chave para evitar conflitos. O código acima é lado server. o meu codico e do server ent e pra todo mundo a variavel ? como faço pra colocar so pra uma pessoa Link to comment
DNL291 Posted July 10, 2019 Share Posted July 10, 2019 function comprarv (source, cmd, playerName) if venda[source] and isElement(venda[source]) then outputChatBox ( "* Erro: So Pode Comprar Uma Venda!", source ) else if not playerName then return outputChatBox( "Sintaxe: /"..Comando_Revistar2.." <jogador>", source ) end local thePlayer = getPlayerFromPartialName (playerName ) if isElement(thePlayer) then outputChatBox ( "* Venda Comprada /vendar [Jogador]", source ) venda[source] = thePlayer else outputChatBox( "["..Comando_Revistar2.."] Jogador não encontrado!", source ) end end end addCommandHandler ( Comando_Revistar2, comprarv ) 'venda' passa a ser uma tabela e não uma variável, daí você define como tal no topo do código. Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 (edited) 15 minutes ago, DNL291 said: function comprarv (source, cmd, playerName) if venda[source] and isElement(venda[source]) then outputChatBox ( "* Erro: So Pode Comprar Uma Venda!", source ) else if not playerName then return outputChatBox( "Sintaxe: /"..Comando_Revistar2.." <jogador>", source ) end local thePlayer = getPlayerFromPartialName (playerName ) if isElement(thePlayer) then outputChatBox ( "* Venda Comprada /vendar [Jogador]", source ) venda[source] = thePlayer else outputChatBox( "["..Comando_Revistar2.."] Jogador não encontrado!", source ) end end end addCommandHandler ( Comando_Revistar2, comprarv ) 'venda' passa a ser uma tabela e não uma variável, daí você define como tal no topo do código. ta então pra ver se a variavel esta ativada tenho que colocar isso if venda[source] and isElement(venda[source]) then Edited July 10, 2019 by zThyPvpTK Link to comment
DNL291 Posted July 10, 2019 Share Posted July 10, 2019 No lugar da variável passa a ser a tabela, a qual o jogador-alvo ficará armazenado dentro da chave com o elemento-player como você pode ver no código. 'source' aí na tabela venda se refere ao jogador (que digitou o comando). 1 Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 11 minutes ago, DNL291 said: No lugar da variável passa a ser a tabela, a qual o jogador-alvo ficará armazenado dentro da chave com o elemento-player como você pode ver no código. 'source' aí na tabela venda se refere ao jogador (que digitou o comando). source to ligado que e jogador ta obrigado ai 22 minutes ago, DNL291 said: No lugar da variável passa a ser a tabela, a qual o jogador-alvo ficará armazenado dentro da chave com o elemento-player como você pode ver no código. 'source' aí na tabela venda se refere ao jogador (que digitou o comando). ve se ta tudo certo agr --[[ ################################################ # # # Script Criado Por # # FACEBOOK.COM/AIRNEWSCR # # # # # ################################################ --]] -------------------------------------------------------------------------------------------- Comando_Revistar = "vendar" Comando_Revistar2 = "comprar" venda = false function getPlayerFromPartialName ( name ) local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil if name then for _, player in ipairs(getElementsByType("player")) do local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() if name_:find(name, 1, true) then return player end end end end function comprarv (source, cmd, playerName) if venda[source] and isElement(venda[source]) then outputChatBox ( "* Erro: So Pode Comprar Uma Venda!", source ) else if not playerName then return outputChatBox( "Sintaxe: /"..Comando_Revistar2.." <jogador>", source ) end local thePlayer = getPlayerFromPartialName (playerName ) if isElement(thePlayer) then outputChatBox ( "* Venda Comprada /vendar [Jogador]", source ) venda[source] = thePlayer else outputChatBox( "["..Comando_Revistar2.."] Jogador não encontrado!", source ) end end end addCommandHandler ( Comando_Revistar2, comprarv ) function Revistar ( source, cmd, player ) if venda[source] and isElement(venda[source]) then local Jogador = getPlayerFromPartialName ( player ) if Jogador then local cx,cy,cz = getElementPosition(Jogador) local x,y,z = getElementPosition(source) local dist = getDistanceBetweenPoints3D(x,y,z,cx,cy,cz) if dist <= 5 then outputChatBox ( "Você Vendou Um Jogador [-1 Venda]", source ) outputChatBox ( "Você Foi Vendado", Jogador ) venda[source] = thePlayer end else outputChatBox("#bebebeChegue mais perto do jogador!", source, 255, 255, 255, true) end end end addCommandHandler ( Comando_Revistar, Revistar ) Link to comment
DNL291 Posted July 10, 2019 Share Posted July 10, 2019 Na linha 64 tem um end que irá causar erro, coloque-o depois do outputChatBox abaixo. E também, a variável 'venda' na linha 21 deve ser uma tabela (local venda = {}). Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 14 minutes ago, DNL291 said: Na linha 64 tem um end que irá causar erro, coloque-o depois do outputChatBox abaixo. E também, a variável 'venda' na linha 21 deve ser uma tabela (local venda = {}). --[[ ################################################ # # # Script Criado Por # # FACEBOOK.COM/AIRNEWSCR # # # # # ################################################ --]] -------------------------------------------------------------------------------------------- Comando_Revistar = "vendar" Comando_Revistar2 = "comprar" local venda = {} function getPlayerFromPartialName ( name ) local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil if name then for _, player in ipairs(getElementsByType("player")) do local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() if name_:find(name, 1, true) then return player end end end end function comprarv (source, cmd, playerName) if venda[source] and isElement(venda[source]) then outputChatBox ( "* Erro: So Pode Comprar Uma Venda!", source ) else if not playerName then return outputChatBox( "Sintaxe: /"..Comando_Revistar2.." <jogador>", source ) end local thePlayer = getPlayerFromPartialName (playerName ) if isElement(thePlayer) then outputChatBox ( "* Venda Comprada /vendar [Jogador]", source ) venda[source] = thePlayer else outputChatBox( "["..Comando_Revistar2.."] Jogador não encontrado!", source ) end end end addCommandHandler ( Comando_Revistar2, comprarv ) function Revistar ( source, cmd, player ) if venda[source] and isElement(venda[source]) then local Jogador = getPlayerFromPartialName ( player ) if Jogador then local cx,cy,cz = getElementPosition(Jogador) local x,y,z = getElementPosition(source) local dist = getDistanceBetweenPoints3D(x,y,z,cx,cy,cz) if dist <= 5 then outputChatBox ( "Você Vendou Um Jogador [-1 Venda]", source ) outputChatBox ( "Você Foi Vendado", Jogador ) venda[source] = thePlayer else outputChatBox("#bebebeChegue mais perto do jogador!", source, 255, 255, 255, true) end end end end addCommandHandler ( Comando_Revistar, Revistar ) Link to comment
DNL291 Posted July 10, 2019 Share Posted July 10, 2019 Falta verificar se 'player' existe na função Revistar, coloque está verificação após o primeiro if: if not player then return outputChatBox( "Sintaxe: /"..Comando_Revistar.." <jogador>", source ) end Quanto ao seu código eu ainda não entendi o que você quer fazer. Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 17 minutes ago, DNL291 said: Falta verificar se 'player' existe na função Revistar, coloque está verificação após o primeiro if: if not player then return outputChatBox( "Sintaxe: /"..Comando_Revistar.." <jogador>", source ) end Quanto ao seu código eu ainda não entendi o que você quer fazer. vo fazer pra abrir um painel dx que vai ficar a tela preta ta ligado 19 minutes ago, DNL291 said: Falta verificar se 'player' existe na função Revistar, coloque está verificação após o primeiro if: if not player then return outputChatBox( "Sintaxe: /"..Comando_Revistar.." <jogador>", source ) end Quanto ao seu código eu ainda não entendi o que você quer fazer. function Revistar ( source, cmd, player ) if venda[source] and isElement(venda[source]) then if not player then return outputChatBox( "Sintaxe: /"..Comando_Revistar.." <jogador>", source ) else local Jogador = getPlayerFromPartialName ( player ) if Jogador then local cx,cy,cz = getElementPosition(Jogador) local x,y,z = getElementPosition(source) local dist = getDistanceBetweenPoints3D(x,y,z,cx,cy,cz) if dist <= 5 then outputChatBox ( "Você Vendou Um Jogador [-1 Venda]", source ) outputChatBox ( "Você Foi Vendado", Jogador ) venda[source] = thePlayer else outputChatBox("#bebebeChegue mais perto do jogador!", source, 255, 255, 255, true) end end end end end addCommandHandler ( Comando_Revistar, Revistar ) Link to comment
DNL291 Posted July 10, 2019 Share Posted July 10, 2019 É um script de vendar o jogador? Você pode deixar a tela preta com fadeCamera também. Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 11 minutes ago, DNL291 said: É um script de vendar o jogador? Você pode deixar a tela preta com fadeCamera também. vo usar o painel dx msm e que n sei mecher muito no fedecamera e tmb quero colocar um texto na tela e isso ainda n sei como fazer se poder me mandar os links pra min fazer isso Link to comment
Other Languages Moderators Lord Henry Posted July 10, 2019 Other Languages Moderators Share Posted July 10, 2019 20 minutes ago, zThyPvpTK said: n sei mecher muito no fedecamera Pra isso que existe a Wiki e servidor local. Pra vc testar. Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 10 minutes ago, Lord Henry said: Pra isso que existe a Wiki e servidor local. Pra vc testar. e pra colocar um testo na tela com o fedecamera Link to comment
Other Languages Moderators Lord Henry Posted July 10, 2019 Other Languages Moderators Share Posted July 10, 2019 Dai vc usa dxDrawText. Vc vai precisar dele independente de usar o fade ou não. Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 10 minutes ago, Lord Henry said: Dai vc usa dxDrawText. Vc vai precisar dele independente de usar o fade ou não. ata tendi so pra saber a cor preta no fede qual e o numero e que na wiki n fala se sabe ? Link to comment
Other Languages Moderators Lord Henry Posted July 10, 2019 Other Languages Moderators Share Posted July 10, 2019 (edited) Quando vc usa fadeCamera, vc tem 2 opções. fadeCamera (player, false, 1.5, 255, 100, 150) -- ou fadeCamera (player, true, 1.5) -- player = Jogador cuja camera vai escurecer ou voltar ao normal. -- true/false = Coloque true pra voltar a câmera ao normal, coloque false pra escurecer a tela pra uma cor. -- 1.5 = Segundos de transiçao. Pode ser qualquer número real positivo. Esse parâmetro é opcional, se não for declarado ele fica 1.0 automaticamente. -- 255, 100, 150 = Cor RGB para qual a câmera vai escurecer se o segundo parâmetro for false. Esses parâmetros são opcionais, se não forem declarados, são todos 0, 0, 0. (preto) Edited July 10, 2019 by Lord Henry 1 Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 12 minutes ago, Lord Henry said: Quando vc usa fadeCamera, vc tem 2 opções. fadeCamera (player, false, 1.5, 255, 100, 150)-- player = Jogador cuja camera vai escurecer ou voltar ao normal.-- true/false = Coloque true pra voltar a câmera ao normal, coloque false pra escurecer a tela pra uma cor.-- 1.5 = Segundos de transiçao. Pode ser qualquer número real positivo. Esse parâmetro é opcional, se não for declarado ele fica 1.0 automaticamente.-- 255, 100, 150 = Cor RGB para qual a câmera vai escurecer se o segundo parâmetro for false. Esses parâmetros são opcionais, se não forem declarados, são todos 0, 0, 0. (preto)fadeCamera (player, true, 1.5) tendi obrigado Link to comment
DNL291 Posted July 10, 2019 Share Posted July 10, 2019 A propósito, fadeCamera é bem mais fácil do que um dx, pois você terá que: fazer um trigger, adicionar o "onClientRender" para renderizar o dx; pra remover o mesmo, trigger e removeEventHandler. Enquanto que com fadeCamera seria diretamente na sintaxe da função, sem utilizar triggerClient. fadeCamera( thePlayer, false, 1 ) > escurecer a tela fadeCamera( thePlayer, true, 1 ) > voltar ao normal Você só irá alterar o valor booleano, ali no 1, você pode diminuir se quiser que o fadding gradual seja mais rápido. Obs: O Lord Henry já respondeu antes mas acho conveniente deixar aqui o meu post também Quando ao texto você também pode fazê-lo no lado server, aqui estão as funções: https://wiki.multitheftauto.com/wiki/Server_Scripting_Functions#Text_functions Edit: 20 minutes ago, zThyPvpTK said: ata tendi so pra saber a cor preta no fede qual e o numero e que na wiki n fala se sabe ? A cor preta já será a cor padrão na função, ou seja, se você não definir a cor, ela já será preta (red: 0, green: 0, blue: 0) 1 Link to comment
zThyPvpTK Posted July 10, 2019 Author Share Posted July 10, 2019 (edited) 33 minutes ago, DNL291 said: A propósito, fadeCamera é bem mais fácil do que um dx, pois você terá que: fazer um trigger, adicionar o "onClientRender" para renderizar o dx; pra remover o mesmo, trigger e removeEventHandler. Enquanto que com fadeCamera seria diretamente na sintaxe da função, sem utilizar triggerClient. fadeCamera( thePlayer, false, 1 ) > escurecer a tela fadeCamera( thePlayer, true, 1 ) > voltar ao normal Você só irá alterar o valor booleano, ali no 1, você pode diminuir se quiser que o fadding gradual seja mais rápido. Obs: O Lord Henry já respondeu antes mas acho conveniente deixar aqui o meu post também Quando ao texto você também pode fazê-lo no lado server, aqui estão as funções: https://wiki.multitheftauto.com/wiki/Server_Scripting_Functions#Text_functions Edit: A cor preta já será a cor padrão na função, ou seja, se você não definir a cor, ela já será preta (red: 0, green: 0, blue: 0) como pego a cordenada pra colocar no texto ? e como coloco pra aparecer e o codico pra desaparecer e que n to entendendo mt na wiki Edited July 11, 2019 by zThyPvpTK Link to comment
zThyPvpTK Posted July 11, 2019 Author Share Posted July 11, 2019 bom fui testar o script e não esta indo do /comprar ele fala pra dar /comprar player era pra dar so /comprar e comprar a venda e deixar a variavel como true so pro player dai tentei tirar function comprarv (source, cmd, playerName) if venda[source] and isElement(venda[source]) then outputChatBox ( "* Erro: So Pode Comprar Uma Venda!", source ) else if not playerName then return outputChatBox( "Sintaxe: /"..Comando_Revistar2.." <jogador>", source ) end local thePlayer = getPlayerFromPartialName (playerName ) if isElement(thePlayer) then outputChatBox ( "* Venda Comprada /vendar [Jogador]", source ) venda[source] = thePlayer else outputChatBox( "["..Comando_Revistar2.."] Jogador não encontrado!", source ) end end end addCommandHandler ( Comando_Revistar2, comprarv ) e deixei assim function comprarv (source, cmd, playerName) if venda[source] and isElement(venda[source]) then outputChatBox ( "* Erro: So Pode Comprar Uma Venda!", source ) else local thePlayer = getPlayerFromPartialName (playerName ) outputChatBox ( "* Venda Comprada /vendar [Jogador]", source ) venda[source] = thePlayer end end addCommandHandler ( Comando_Revistar2, comprarv ) e não esta deixando a variavel venda como true so para o player pode me ajudar novamente ? Link to comment
DNL291 Posted July 11, 2019 Share Posted July 11, 2019 Tem o isElement ali acima, se você mudar pra uma boolean vai precisar revisar essa linha. Remova também o "local thePlayer = getPlayerFromPartialName (playerName )" do código já que esse não será usado. Tente: function comprarv (source, cmd) if venda[source] then outputChatBox ( "* Erro: So Pode Comprar Uma Venda!", source ) else if getPlayerMoney(source) >= 1000 then -- verifique o dinheiro já que se trata de uma compra outputChatBox ( "* Venda Comprada /vendar [Jogador]", source ) venda[source] = true takePlayerMoney( source, 1000 ) else outputChatBox( "["..Comando_Revistar2.."] Dinheiro insuficiente!", source, 230, 30, 30 ) end end end addCommandHandler ( Comando_Revistar2, comprarv ) Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now