-
Posts
3,875 -
Joined
-
Days Won
67
Everything posted by DNL291
-
onVehicleExit; setTimer; destroyElement (if I understood correctly what you meant). Type /debugscript 3 to see if it shows any erros. @dener189
-
Sincroniza o interior do object com o mesmo do player; ou seta o interior do object quando o jogador mudar de interior.
-
onClientClick é um evento do lado client apenas. Obs: quando for postar seu código, utilize o botão <>, cole o código e selecione a linguagem. Leia este tópico por favor. @ODutii
-
poderiam me ajudar a fazer dois scripts
DNL291 replied to serjaoberranteiro's topic in Programação em Lua
Se você quer encontrar o resource você pode pesquisar pela community ou procurar por códigos pelo fórum. Se você quer aprender em como fazê-los, o primeiro passo é estudar programação, aqui está um tópico que irá te ajudar nisso: -
Como fasso pra editar o local após o Player fazer o Longin ?
DNL291 replied to NeoGM's topic in Programação em Lua
Movido para Portuguese / Português > Programação em Lua Lembre-se de postar no local correto @NeoGM -
Movido para Portuguese / Português > Programação em Lua @LucasDSNL
-
Se você testar clicando em você mesmo tenho certeza que não vai mostrar false. Testei este código e o clickedElement funciona: function DeltaAbrir(button, state, absoluteX, absoluteY, worldX, worldY, worldZ, clickedElement) if button == "left" and state == "down" then outputChatBox("clickedElement: "..tostring(clickedElement)) if clickedElement then if (getElementType(clickedElement) == "player") then local x, y, z = getElementPosition(localPlayer) local px, py, pz = getElementPosition(clickedElement) --local distance = getDistanceBetweenPoints3D(x, y, z, px, py, pz) --if not isEventHandlerAdded("onClientRender", root, DeltaDX) then --if (distance <= 3) then playerName = getPlayerName(clickedElement):gsub("#%x%x%x%x%x%x", "") outputChatBox("playerName: "..tostring(playerName)) --addEventHandler("onClientRender", root, DeltaDX) --DX = true --end -- end end end end addEventHandler("onClientClick", root, DeltaAbrir) addCommandHandler("cur", function() showCursor(true) end)
-
como fazer para o painel dx abrir no marker ?
DNL291 replied to MatheusWW's topic in Programação em Lua
Percebi que ambas as contas pertencem ao mesmo IP, Por que usar outra conta pra mesma pergunta sendo que já foi respondido no outro tópico? -
dxDrawText( getElementData(localPlayer, "banco:Saldo") or 0 ) Postar Portuguese / Português > Programação em Lua da próxima vez @EduardoMega
-
como faço para abrir este painel neste marker ?
DNL291 replied to wilborn's topic in Programação em Lua
onClientMarkerHit addEventHandler onClientRender showCursor @wilborn -
getPedOccupiedVehicle você está usando source nessa função, e source já é o veículo. Só trocar vehp por source.
-
Se não tiver funcionando corretamente, baixe um sistema de ID funcional ou apenas use a função mencionada acima.
-
Qual a dificuldade em fazer uma depuração no código: if clickedElement then outputChatBox("clickedElement " .. tostring(clickedElement)) if (getElementType(clickedElement) == "player") then for i = 1, 12 do local playerWeapon = getPedWeapon(clickedElement, i) outputChatBox( "playerWeapon (" .. tostring(i) .. ") : " .. tostring(playerWeapon) ) if i and i ~= 0 then theRow = guiGridListAddRow(gridWeapons) guiGridListSetItemText(gridWeapons, theRow, 1, playerWeapon, false, false) outputChatBox("theRow " .. tostring(theRow) .."; gridWeapons ".. tostring(gridWeapons)) end end end else outputChatBox("clickedElement = false") end guiSetVisible(gridWeapons, true)
-
accountAdded é a conta a ser registrada, dai essa variável retorna ela. O if account then já era outra coisa, uma verificação pra saber se uma conta com o mesmo nome já existe. P.S: Lê o meu edit no post acima se ainda não viu.
-
Normal kk, ninguém nasceu sabendo Isto deve funcionar: function registerPlayer(username,password,email) if username == "" then return triggerClientEvent(source,"login_text",source,"error","Digite o nome de usuário!") end if password == "" then return triggerClientEvent(source,"login_text",source,"error","Digite sua senha!") end if email == "" then return triggerClientEvent(source,"login_text",source,"error","Digite seu email!") end local account = getAccount (username,password) if account then return triggerClientEvent(source,"login_text",source,"error","Nome de usuário, senha ou email está errada!") end local accountAdded = addAccount(tostring(username),tostring(password)) if not accountAdded then return triggerClientEvent(source,"login_text",source,"error","Erro! Tente novamente com um novo nome de usuário ou senha!") end outputChatBox ("[User: #FFFFFF" .. username .. " #FF0000| Senha: #FFFFFF" .. password .. " | Email: " .. email .. "#00FF00 ]",source,255,255,255,true) setAccountData(accountAdded, "e-mail", tostring(email)) triggerClientEvent(source,"onRegister",source) triggerClientEvent(source,"login_text",source,"sucess","A conta foi criada com sucesso!") end addEvent("onRequestRegister",true) addEventHandler("onRequestRegister",getRootElement(),registerPlayer) Edit: te recomendo deixar true no terceiro argumento de addAccount, senão vai ter conflitos de contas mesmo se tiver com letras maiúsculas/minúsculas. Ou seja uma conta chamada "BOB" se existir, não poderá ter outra chamada "bob". Mas se optar por não ativar o case sensitive só deixar como está.
-
Você tem que colocar isso dentro do if account then Mostre como está seu código.
-
Tente isto: local acls = { "Admin", "RPC", "Console" } local allFrozen = false addCommandHandler("a", function(player) if isPlayerInACL(player, "Admin") or isPlayerInACL(player, "SuperModerator") or isPlayerInACL(player, "Moderator") then for i, v in ipairs(getElementsByType("player")) do if canFreezePlayer( v ) then setFrozen( v ) end end allFrozen = not allFrozen outputChatBox("[WARNING]: #FFFFFFTᴏᴅᴏs ᴏs ᴊᴏɢᴀᴅᴏʀᴇs ғᴏʀᴀᴍ ".. (allFrozen and "ᴄᴏɴɢᴇʟᴀᴅᴏs" or "ᴅᴇsᴄᴏɴɢᴇʟᴀᴅᴏs") .." ᴘᴏʀ: "..getPlayerName(player).."!",root,255,0,0,true) else outputChatBox("[WARNING]: #FFFFFFDesculpe,você não tem permisssão para congelar todos os jogadores!",player,255,0,0,true) end end ) function setFrozen( v ) if not isPedInVehicle(v) then if getElementData(v,"frozenped") == "false" or not getElementData(v,"frozenped") then setElementFrozen(v,true) toggleAllControls(v,false) setElementData(v,"frozenped","true") else setElementFrozen(v,false) toggleAllControls(v,true) setElementData(v,"frozenped","false") end else if getElementData(v,"frozenveh") == "false" or not getElementData(v,"frozenveh") then setElementFrozen(getPedOccupiedVehicle(v),true) setElementData(v,"frozenveh","true") elseif getElementData(v,"frozenveh") == "true" then setElementFrozen(getPedOccupiedVehicle(v),false) setElementData(v,"frozenveh","false") end end end addEventHandler( "onResourceStop", resourceRoot, function() for i, v in ipairs(getElementsByType("player")) do if getElementData(v,"frozenped") == "true" then setElementFrozen(v,false) toggleAllControls(v,true) setElementData(v,"frozenped","false") end if getElementData(v,"frozenveh") == "true" then setElementFrozen(getPedOccupiedVehicle(v),false) setElementData(v,"frozenveh","false") end end end ) function canFreezePlayer( player ) for i, group in ipairs(acls) do if isPlayerInACL(player, group) then return false end end return true end function isPlayerInACL(player, acl) if isElement(player) and getElementType(player) == "player" and aclGetGroup(acl or "") and not isGuestAccount(getPlayerAccount(player)) then local account = getPlayerAccount(player) return isObjectInACLGroup( "user.".. getAccountName(account), aclGetGroup(acl) ) end return false end
-
Não é assim, você continua usando o 3º argumento em addAccount, e isso não faz sentido: local setAccountData = math.random(1, 5) Apenas use setAccountData(account, "e-mail", tostring(email))
-
Não existe suporte para email em add/getAccount. E o 3º argumento deve ser uma boolean por isso você está tendo esse aviso. Use setAccountData para salvar o email.
-
Sim, porém essa função não faz parte do MTA e você precisa copiar ela dentro do seu script. Tente: local acls = { "Admin", "RPC", "Console" } addCommandHandler("a", function(playerSource) if hasObjectPermissionTo(playerSource,"command.run",true) then for i, v in ipairs(getElementsByType("player")) do if canFreezePlayer( v ) then setFrozen( v, playerSource ) end end elseif hasObjectPermissionTo(playerSource,"command.run",false) then outputChatBox("[WARNING]: #FFFFFFDesculpe,você não tem permisssão para congelar todos os jogadores!",playerSource,255,0,0,true) end end ) function setFrozen( v, playerSource ) if not isPedInVehicle(v) then if getElementData(v,"frozenped") == "false" or not getElementData(v,"frozenped") then setElementFrozen(v,true) toggleAllControls(v,false) setElementData(v,"frozenped","true") outputChatBox("[WARNING]: #FFFFFFTᴏᴅᴏs ᴏs ᴊᴏɢᴀᴅᴏʀᴇs ғᴏʀᴀᴍ ᴄᴏɴɢᴇʟᴀᴅᴏs ᴘᴏʀ: "..getPlayerName(playerSource).."!",v,255,0,0,true) else setElementFrozen(v,false) toggleAllControls(v,true) setElementData(v,"frozenped","false") outputChatBox("[WARNING]: #FFFFFFTᴏᴅᴏs ᴏs ᴘʟᴀʏᴇʀs ғᴏʀᴀᴍ ᴅᴇsᴄᴏɴɢᴇʟᴀᴅᴏs ᴘᴏʀ: "..getPlayerName(playerSource).."!",v,0,255,0,true) end else if getElementData(v,"frozenveh") == "false" or not getElementData(v,"frozenveh") then setElementFrozen(getPedOccupiedVehicle(v),true) setElementData(v,"frozenveh","true") outputChatBox("[WARNING]: #FFFFFFTᴏᴅᴏs ᴏs ᴊᴏɢᴀᴅᴏʀᴇs ғᴏʀᴀᴍ ᴄᴏɴɢᴇʟᴀᴅᴏs ᴘᴏʀ: "..getPlayerName(playerSource).."!",v,255,0,0,true) elseif getElementData(v,"frozenveh") == "true" then setElementFrozen(getPedOccupiedVehicle(v),false) setElementData(v,"frozenveh","false") outputChatBox("[WARNING]: #FFFFFFTᴏᴅᴏs ᴏs ᴘʟᴀʏᴇʀs ғᴏʀᴀᴍ ᴅᴇsᴄᴏɴɢᴇʟᴀᴅᴏs ᴘᴏʀ: "..getPlayerName(playerSource).."!",v,0,255,0,true) end end end function canFreezePlayer( player ) for i, group in ipairs(acls) do if isPlayerInACL(player, group) then return false end end return true end function isPlayerInACL(player, acl) if isElement(player) and getElementType(player) == "player" and aclGetGroup(acl or "") and not isGuestAccount(getPlayerAccount(player)) then local account = getPlayerAccount(player) return isObjectInACLGroup( "user.".. getAccountName(account), aclGetGroup(acl) ) end return false end
-
Preciso de ajuda urgente
DNL291 replied to Pedro mayeer's topic in Ajudas relacionadas ao MTA:SA (Cliente/Servidor)
Leia: https://wiki.multitheftauto.com/wiki/PT-BR/Manual_do_Servidor https://wiki.multitheftauto.com/wiki/PT-BR/Recursos @Pedro mayeer- 1 reply
-
- 1
-
By finding this text in the script and changing it's text? Show here your code if you have problems with that.
-
Você precisa fazer um loop em todos os slots das armas com a função getPedWeapon Posts que irão responder sua dúvida melhor (te dando código): https://forum.multitheftauto.com/topic/117788-mudar-getplayerfrompartialname-para-id/?do=findComment&comment=957934 https://forum.multitheftauto.com/topic/113551-me-ajuda-aqui/?do=findComment&comment=939346
-
É por causa da linha 17. Aqui está o código corrigido: