-
Posts
72 -
Joined
-
Last visited
Everything posted by miiguelz
-
Como dar dinheiro para todos os membros de uma equipe?
miiguelz replied to Maaster's topic in Programação em Lua
Vou tentar lhe explicar a lógica. function givePlayersOfTeam(thePlayer, cmd, teamName) -- Verifica se existe no servidor a equipe especificada. local theTeam = getTeamFromName(teamName) -- Caso existir a equipe: if (theTeam) then -- Pega todos jogadores que fazem parte da equipe. local players = getPlayersInTeam(theTeam) -- Fazemos um loop pra pegar todos os jogadores da equipe. for i, p in ipairs(players) do -- Aqui ele irá dar o dinheiro para todos jogadores do time. -- A quantia que será depositada será o dinheiro dele atual + 1000. setPlayerMoney(p, givePlayerMoney(p) + 1000) end else outputChatBox("Não existe essa equipe.") end end addCommandHandler ("moneygang", givePlayersOfTeam) Vê se isso resolve o seu caso, não testei e não sei se irá funcionar. -
Verdade, não havia visto isso. Obrigado!
-
@andr0xy sim, isso relativamente está certo, mas como eu poderia pegar o nome do player que levou dano?
-
@Cristtkvocê não acha melhor setar 100 diretamente?
-
@Joaovit13o onClientPlayerDamage tem um parâmetro que especifica a causa do dano, mas como eu poderia dar HP pra quem perdeu o dano?
-
@Joaovit13como eu havia falado no post, eu já utilizei esse evento mas ele não se apropria ao que eu quero.
-
Estava fazendo alguns testes e queria pegar o nome do jogador caso ele perca HP pulando de um lugar muito alto ou algo do tipo, pensei em utilizar o onPlayerDamage mas ele só é ativado quando o dano é dado por algum jogador pelo o que eu vi. Quais seria as outras alternativas?
-
Acredito que o evento onPlayerDamage possa atender suas necessidades.
-
Valeu cara, vou ajustar o meu vsc (prefiro pra programar). Em relação a tabulação vou colocar 4, é porque eu me acostumei com 2. server-side
-
@FonsecaBFmostra-me o código.
-
local screenW, screenH = guiGetScreenSize() local showPainel = false function renderStuff() dxDrawRectangle((screenW - 340) / 2, (screenH - 326) / 2, 340, 326, tocolor(0, 0, 0, 165), false) dxDrawRectangle((screenW - 283) / 2, (screenH - 118) / 2, 283, 118, tocolor(0, 0, 0, 150), false) dxDrawText("SKIN", 432, 354, 644, 433, tocolor(255, 255, 255, 255), 2.00, "bankgothic", "left", "top", false, false, false, false, false) end function painelControl(button, state) if showPainel == false then addEventHandler("onClientRender", root, renderStuff) showCursor(true) showPainel = true else removeEventHandler("onClientRender", root, renderStuff) showCursor(false) showPainel = false end end addCommandHandler("painel", painelControl) function clickControl(button, state) if button == "left" and state == "up" then if showPainel == true then if isMouseInPosition((screenW - 283) / 2, (screenH - 118) / 2, 283, 118) then triggerServerEvent ("addSkinPlayer", root, source) outputChatBox("Skin alterada com sucesso.") end end end end addEventHandler("onClientClick", root, clickControl) function isMouseInPosition ( x, y, width, height ) if ( not isCursorShowing( ) ) then return false end local sx, sy = guiGetScreenSize ( ) local cx, cy = getCursorPosition ( ) local cx, cy = ( cx * sx ), ( cy * sy ) return ( ( cx >= x and cx <= x + width ) and ( cy >= y and cy <= y + height ) ) end Este é meu primeiro script, mas queria pela perspectiva de pessoas mais experientes, o que eu poderia melhorá-lo. Aceito críticas construtivas e afins!
-
Já resolvi, achei na wiki rs.
-
Estou a fazer um script que iria enviar uma mensagem ao jogador, mostrando qual é a durabilidade (uso) do carro dele em porcentagem. Para isso, quais elementos teria que ter?
-
Você precisa verificar o marker, quando o player passar em cima, destruir o elemento.
-
De nada, qualquer dúvida, pode perguntar.
-
Você não definiu o getAccountName, ou seja, não definiu seu parâmetro. ~ O exemplo do @OverKILL deve servir.
-
Não tem como você por um texto encima do marker.
-
Primeiro, você vai ver aulas ou vídeos sobre a lógica da programação, e as funções básicas de um script, após isso, você vai tentar ler códigos, assim vai começar a ler os seus próprios códigos e criando.
-
É outra conta?
-
Oque apareceu?
-
function playersProcurados (me) local acc = getPlayerAccount (me) if isObjectInACLGroup ( "user." ..getAccountName(acc), aclGetGroup ( "ACL_NOME" ) ) then local everybody = getElementsByType ("player") outputChatBox ("Players procurados: #FFFFFF", me, 255, 150, 0, true) for i, thePlayer in ipairs (everybody) do local wantedLevel = getPlayerWantedLevel (thePlayer) if (wantedLevel > 0) then outputChatBox ("-> #FFFFFF"..getPlayerName(thePlayer).." #FF0000("..wantedLevel..") #FFFFFFEstrelas", me, 255, 0, 0, true) else outputChatBox ( "Nenhum procurado foi encontrado !", me, 0, 255, 0) end end else outputChatBox ( "Você não é da profissão ACL_NOME !", me, 255, 0, 0) end end addCommandHandler ("procurados", playersProcurados) ~ Caso acontecer algum erro, deve ter sido na hora de copiar, para ajeitar, deve-se refazer a linha. ~ Não fiz comentários, deixei pra você ler. Cara, não vai adiantar eu explicar, se você não sabe a lógica da programação. Para você criar um script, deve ter uma lógica, no caso uma sequência de comandos que vai segundo uma lógica. O Cria Jogos, é um canal que ensinou este assunto. Dê uma procurada lá.
-
De cara, seu script não anexado a nenhuma função. Não está seguindo nenhuma lógica e a indentação de código está errado.
-
Queria saber, se existe alguma forma de inverter a arma na mão, ou seja, normalmente usada à arma na direita, o player poder usar na esquerda. Haveria alguma forma de fazer isto?
-
Pelo o que eu joguei, vi alguns que não vi no mta, então não tenho total certeza se fizeram ou não, vi um de celular, pode mandar sms, atender ligações, tinha também um próprio rg, entre outros. Concordo também, mas, minha dúvida era sobre essa questão, e vi que até então, você poderia também variar com outras linguagens como foi dito, assim fazendo coisas que venha simular bastante a vida real.