Jump to content

Angelo Pereira

Members
  • Posts

    251
  • Joined

  • Last visited

  • Days Won

    7

Everything posted by Angelo Pereira

  1. Lembrando, você está criando no lado client-side, então seu arquivo config, deve ser para o lado client-side. EXEMPLO / Lado : client-side : -- #Nome arquivo : config.Lua / lado : client-side. config = { id_skin = 280, } -- # Nome arquivo : ped.Lua / lado : client-side. addEventHandler ( "onClientResourceStart", resourceRoot, function() policePed = createPed(config.id_skin, 1317.6199951172, -1174.9327392578, 23.716522216797) end)
  2. Suponhamos, que no seu resource de identidade, salva em elementData. Então, o que você precisará fazer ? Em cada resource, normalmente é usado getPlayerName, para pegar o ninkname do player, então basicamente, você deverá trocar usando getElementData. EXEMPLO : --[[ EXEMPLO : # Meu Nickname no "ESC/ OPÇÕES/ APELIDO" ESTÁ COMO : MAD_Scripting Então Fiz a digitação, e o cadastramento do meus dados na identidade com meu nome, e sobrenome, onde será setado 2 elementos em mim. --]] setElementData(source, "Nome", "Ângelo") setElementData(source, "Sobrenome", "Pereira") -- Na linha abaixo é uma suposição, de como estará na sua linha do outputChatBox(), outputChatBox("Jogador "..getPlayerName(source).." Informou um Exemplo.", root, 255,255,255, true) --/> # RESULTADO no CHAT : Jogador MAD_Scripting Informou um Exemplo. -- Então, para eu puxar meu nome e sobrenome da identidade, terei que fazer o Seguinte : (removendo getPlayerName) outputChatBox("Jogador "..getElementData(source, "Nome").." "..getElementData(source, "Sobrenome").." Informou um Exemplo.", root, 255,255,255, true) --/> # RESULTADO no CHAT : Jogador Ângelo Pereira Informou um Exemplo. Não é um dos melhores exemplo, mas, espero que consiga compreende !
  3. Ah, notei meu erro, acabei nem percebendo, desculpe-me.
  4. Opa, para você receber esse evento no server-side (no caso), você precisar utilizar as seguintes funções. addEvent("Nome do seu Evento", true) addEventHandler("Nome do seu Evento", getRootElement(), nome da sua função ) --/> Exemplo : -- client-side function select () local row = guiGridListGetSelectedItem(gridlist) if row == 1 then cMoney = getPlayerMoney() if (cMoney < 1500) then outputChatBox("Yes") triggerServerEvent("habilitacao.tipob", resourceRoot, localPlayer) --/> AQUI else outputChatBox("Você não tem dinheiro suficiente para adquirir essa habilitação!", 255, 0, 0) end end end -- server-side function tipo_b ( player ) local carro = createVehicle( 555, -2064.5, -83, 35 ) setVehicleColor( carro, 255, 255, 255) warpPedIntoVehicle( player, carro ) end addEvent("habilitacao.tipob", true) --/> AQUI addEventHandler("habilitacao.tipob", getRootElement(), tipo_b) --/> AQUI
  5. Quase isso, ele faz um salvamento do serial do jogador na tabela. Sendo assim, a verificação, será verificando a tabela, com o serial do jogador. Então, o tempo apenas removerá o serial do jogador da tabela, quando o tempo encerrar.
  6. Fiz algumas correções, e adicione o blip apenas no local. local tiro = true --/> Alterado local Acl = "Console" function tiro_localizar ( ) local x, y, z = getElementPosition(source) local loc = getZoneName ( x, y, z ) local city = getZoneName ( x, y, z, true ) for i, player in ipairs (getElementsByType ("player")) do if isObjectInACLGroup ("user."..getAccountName (getPlayerAccount (player)), aclGetGroup (Acl)) then if tiro == true then tiro = false --/> Movido exports.Res_dxmessages:outputDx(player, "Denuncia de Tiros Em "..loc.." ("..city..")", "info") local blip = createBlip( x, y, z, 30, 1, 255, 255, 255, 255, 0, 65535, player) setTimer ( function( ) destroyElement(blip) tiro = true --/> Movido end, 60000, 1) end end end end addEventHandler ("onPlayerWeaponFire", root, tiro_localizar )
  7. Deixarei uma parte que será útil para você agregar em seu código. local tempo = { } addCommandHandler("armas", function( player ) if tempo[getPlayerSerial(player)] then return outputChatBox("Aguarde 30 Min Para Executar o Comando Novamente!", player, 255,255,255, true) end giveWeapon (player, 31, 50, true) tempo[getPlayerSerial(player)] = setTimer ( function ( serial ) tempo[serial] = nil end, 60000*30, 1, getPlayerSerial(player) ) end)
  8. Explique um pouco mais de como você quer dizer em "colocar tag num chat".
  9. Deixarei o código aqui, que lhe enviei privado com as correções (Que acabei deixando passar). local screenW,screenH = guiGetScreenSize() local x, y = (screenW/1366), (screenH/768) --# Simples. local aba_painel_principal = 0 local aba_painel_menus = "Nenhum" --/> Falto isso. addEventHandler("onClientRender", getRootElement(), function () if aba_painel_principal == 0 then dxDrawRectangle(x*1366/2, y*(768/2), x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Admin else dxDrawRectangle(x*1366/2, y*(768/2), x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Admin end if aba_painel_principal == 1 then dxDrawRectangle(x*1366/2, y*(768/2)+35, x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Policia else dxDrawRectangle(x*1366/2, y*(768/2)+35, x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Policia end if aba_painel_principal == 2 then dxDrawRectangle(x*1366/2, y*(768/2)+35*2, x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Inventário else dxDrawRectangle(x*1366/2, y*(768/2)+35*2, x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Inventário end if aba_painel_principal == 3 then dxDrawRectangle(x*1366/2, y*(768/2)+35*3, x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Animação else dxDrawRectangle(x*1366/2, y*(768/2)+35*3, x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Animação end if aba_painel_principal == 4 then dxDrawRectangle(x*1366/2, y*(768/2)+35*4, x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Ações else dxDrawRectangle(x*1366/2, y*(768/2)+35*4, x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Ações end if aba_painel_principal == 5 then dxDrawRectangle(x*1366/2, y*(768/2)+35*5, x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Veiculo else dxDrawRectangle(x*1366/2, y*(768/2)+35*5, x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Veiculo end if aba_painel_menus == "Admin" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(100, 100, 0, 100), false) elseif aba_painel_menus == "Policia" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(255, 0, 0, 100), false) elseif aba_painel_menus == "Inventário" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(100, 100, 100, 100), false) elseif aba_painel_menus == "Animação" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(0, 100, 0, 100), false) elseif aba_painel_menus == "Ações" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(0, 0, 100, 100), false) elseif aba_painel_menus == "Veiculo" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(0, 0, 255, 100), false) end end) --/> Subir Botão (arrow_u). function subir_tecla () if aba_painel_principal >= 1 then aba_painel_principal = aba_painel_principal - 1 else outputChatBox("Você Subiu no Limite!") end end bindKey("arrow_u", "down", subir_tecla) --/> Descer Botão (arrow_d) function descer_tecla () if aba_painel_principal <= 4 then aba_painel_principal = aba_painel_principal + 1 else outputChatBox("Você Desceu no Limite!") end end bindKey("arrow_d", "down", descer_tecla) --/> Acessa Painel (Enter). function confirmar_tecla () if aba_painel_principal == 0 then outputChatBox("Admin") aba_painel_menus = "Admin" elseif aba_painel_principal == 1 then outputChatBox("Policia") aba_painel_menus = "Policia" elseif aba_painel_principal == 2 then outputChatBox("Inventário") aba_painel_menus = "Inventário" elseif aba_painel_principal == 3 then outputChatBox("Animação") aba_painel_menus = "Animação" elseif aba_painel_principal == 4 then outputChatBox("Ações") aba_painel_menus = "Ações" elseif aba_painel_principal == 5 then outputChatBox("Veiculo") aba_painel_menus = "Veiculo" end end bindKey("enter", "down", confirmar_tecla) --/> Retorna (backspace) function voltar_tecla () if aba_painel_menus ~= "Nenhum" then aba_painel_menus = "Nenhum" end end bindKey("backspace", "down", voltar_tecla)
  10. Você me enviou MP, mas, responderei aqui também ! Opa, tem sim ! função se chama setWeaponProperty. Ex: setWeaponProperty("m4", "pro", "weapon_range", 50.0) setWeaponProperty("m4", "std", "weapon_range", 50.0) setWeaponProperty("m4", "poor", "weapon_range", 50.0)
  11. Fiz algo bem simples, de uma maneira bem fácil(leiga), espero que te ajude na suas dúvidas. Lembrando, isso é apenas um exemplo de como você pode fazer. (Não testado). local screenW,screenH = guiGetScreenSize() local x, y = (screenW/1366), (screenH/768) --# Simples. local aba_painel = 0 addEventHandler("onClientRender", getRootElement(), function () if aba_painel == 0 then dxDrawRectangle(x*1366/2, y*(768/2), x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Admin else dxDrawRectangle(x*1366/2, y*(768/2), x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Admin end if aba_painel == 1 then dxDrawRectangle(x*1366/2, y*(768/2)+35, x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Policia else dxDrawRectangle(x*1366/2, y*(768/2)+35, x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Policia end if aba_painel == 2 then dxDrawRectangle(x*1366/2, y*(768/2)+35*2, x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Inventário else dxDrawRectangle(x*1366/2, y*(768/2)+35*2, x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Inventário end if aba_painel == 3 then dxDrawRectangle(x*1366/2, y*(768/2)+35*3, x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Animação else dxDrawRectangle(x*1366/2, y*(768/2)+35*3, x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Animação end if aba_painel == 4 then dxDrawRectangle(x*1366/2, y*(768/2)+35*4, x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Ações else dxDrawRectangle(x*1366/2, y*(768/2)+35*4, x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Ações end if aba_painel == 5 then dxDrawRectangle(x*1366/2, y*(768/2)+35*5, x*200, y*30, tocolor(100, 0, 0, 100), false) --/> Veiculo else dxDrawRectangle(x*1366/2, y*(768/2)+35*5, x*200, y*30, tocolor(0, 0, 0, 100), false) --/> Veiculo end if aba_painel_menus == "Admin" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(100, 100, 0, 100), false) elseif aba_painel_menus == "Policia" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(255, 0, 0, 100), false) elseif aba_painel_menus == "Inventário" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(100, 100, 100, 100), false) elseif aba_painel_menus == "Animação" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(0, 100, 0, 100), false) elseif aba_painel_menus == "Ações" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(0, 0, 100, 100), false) elseif aba_painel_menus == "Veiculo" then dxDrawRectangle(x*(1366/2)-200, y*(768/2)+35*5, x*200, y*100, tocolor(0, 0, 255, 100), false) end end) function subir_tecla () if aba_painel_principal >= 1 then aba_painel_principal = aba_painel_principal - 1 else outputChatBox("Você Subiu no Limite!") end end bindKey("arrow_u", "down", subir_tecla) function descer_tecla () if aba_painel_principal <= 4 then aba_painel_principal = aba_painel_principal + 1 else outputChatBox("Você Desceu no Limite!") end end bindKey("arrow_d", "down", descer_tecla) function confirmar_tecla () if aba_painel_principal == 0 then outputChatBox("Admin") aba_painel_menus = "Admin" elseif aba_painel_principal == 1 then outputChatBox("Policia") aba_painel_menus = "Policia" elseif aba_painel_principal == 2 then outputChatBox("Inventário") aba_painel_menus = "Inventário" elseif aba_painel_principal == 3 then outputChatBox("Animação") aba_painel_menus = "Animação" elseif aba_painel_principal == 4 then outputChatBox("Ações") aba_painel_menus = "Ações" elseif aba_painel_principal == 5 then outputChatBox("Veiculo") aba_painel_menus = "Veiculo" end end bindKey("enter", "down", confirmar_tecla) function voltar_tecla () if aba_painel_menus ~= "Nenhum" then aba_painel_menus = "Nenhum" end end bindKey("backspace", "down", voltar_tecla)
  12. Opa, desculpe, eu lhe informo o erro sim, o erro estava na seguinte linha : if (source == binco1m and getElementType(player) == "player") then Está certo, mas, o que esta de errado ai? Nesse caso, o source é o marker que você atingiu, certo? Então nesse caso, está tentando fazendo o seguinte : if (source == binco1m) then --# "source" o MARKER que você colidiu. --# "binco1m" o MARKER que você quer colidir. --# Então essa verificação, vai verificar se o marker que você quer colidir, é o que você colidiu. Só que o seguinte, o marker que você denominou na criação do seu marker foi "bincoB". bincoB = createMarker(217.5, -98, 1006, "arrow", 1.5, 255, 0, 0) Então, você precisaria trocar o nome na verificação de "binco1m" para "bincoB" na sua verificação, assim : if (source == bincoB and getElementType(player) == "player") then Entende? Espero que sim, o erro só foi esse aparentemente.
  13. Teste : local GUIEditor = { button = {}, gridlist = {}, } function BuySkin() --/> Criar Marker & Ped bincoB = createMarker(217.5, -98, 1006, "arrow", 1.5, 255, 0, 0) setElementInterior(bincoB, 15) vendedora = createPed(12, 209, -99, 1005, 180) setElementInterior(vendedora, 15) addEventHandler("onClientMarkerHit", bincoB, ShowSkins) --/> Movido --/> Painel GUI Painel = guiCreateWindow(838, 320, 375, 331, "PAGUE MENOS", false) guiWindowSetSizable(Painel, false) guiSetAlpha(Painel, 0.92) guiSetProperty(Painel, "CaptionColour", "FFFEEB16") guiSetVisible(Painel, false) sair = guiCreateButton(269, 288, 92, 33, "Sair", false, Painel) guiSetProperty(sair, "NormalTextColour", "FF39EB3D") GUIEditor.button[4] = guiCreateButton(9, 288, 97, 33, "Comprar", false, Painel) guiSetProperty(GUIEditor.button[4], "NormalTextColour", "FF39EB3D") addEventHandler("onClientGUIClick", sair, exibir) --/> Movido GUIEditor.gridlist[3] = guiCreateGridList(9, 27, 352, 257, false, Painel) guiGridListAddColumn(GUIEditor.gridlist[3], "Skins", 0.3) guiGridListAddColumn(GUIEditor.gridlist[3], "ID", 0.3) guiGridListAddColumn(GUIEditor.gridlist[3], "Preço", 0.3) for i = 1, 2 do guiGridListAddRow(GUIEditor.gridlist[3]) end guiGridListSetItemText(GUIEditor.gridlist[3], 0, 1, "skin1", false, false) guiGridListSetItemText(GUIEditor.gridlist[3], 0, 2, "-", false, false) guiGridListSetItemText(GUIEditor.gridlist[3], 0, 3, "-", false, false) guiGridListSetItemText(GUIEditor.gridlist[3], 1, 1, "-", false, false) guiGridListSetItemText(GUIEditor.gridlist[3], 1, 2, "-", false, false) guiGridListSetItemText(GUIEditor.gridlist[3], 1, 3, "-", false, false) end addEventHandler("onClientResourceStart", resourceRoot, BuySkin) function ShowSkins ( player, Dimensao ) if isElement(player) and getElementType(player) == "player" then exibir( ) end end function exibir ( ) guiSetVisible(Painel, not guiGetVisible(Painel)) showCursor(guiGetVisible(Painel)) end
  14. Pelo que notei, e noto pessoas com o mesmo problemas diariamente, é o seguinte : Se abrir o wiki no dxCreateFont, diz o seguinte : "Successful font creation is not guaranteed, and may fail due to hardware or memory limitations." Ou seja, no que eu entendo desses casos, o problema esta relativamente no client, e não no servidor, por algum motivo não está criando a fonte, e fica invisível o dxDrawText, porquê vai da erro no argumento 8, na fonte, pois, ela não foi criada. O servidor pode até corrigir isso para o client conseguir jogar, porem, não é somente no dxCreateFont que vai encontra o problema, vai encontrar o problema em outras funções como a função dxCreateTexture por exemplo.
  15. Fiz um básico para você saber as funções, com algumas implementações para não bugarem. Aviso, não testei. local adicione_acl_dos_recruta = "RECRUTA MAFIA" --/> Exemplo de ACL. addCommandHandler("dartagmafia", function (thePlayer, _, jogador) if isObjectInACLGroup ("user."..getAccountName ( getPlayerAccount ( thePlayer ) ), aclGetGroup ( "MAFIA" )) then local player = getPlayerFromPartialName(jogador) if player then if isGuestAccount(getPlayerAccount(player)) then return outputChatBox("Jogador Não Esta Logado no Momento!", thePlayer, 255,255,255, true) end local conta_do_player = getAccountName(getPlayerAccount(player)) if isObjectInACLGroup("user."..conta_do_player, aclGetGroup(adicione_acl_dos_recruta)) == false then aclGroupAddObject(aclGetGroup(adicione_acl_dos_recruta), "user."..conta_do_player) outputChatBox("Você Enviou a TAG Para "..getPlayerName(player)..".", thePlayer, 255,255,255, true) outputChatBox("Você Recebeu a TAG do "..getPlayerName(thePlayer)..".", player, 255,255,255, true) else outputChatBox("Jogador Já Esta Utilizando a TAG.", thePlayer, 255,255,255, true) end else outputChatBox("Jogador Não Encontrado!", thePlayer, 255,255,255, true) end else outputChatBox("Sem Permissão!", thePlayer, 255,255,255, true) end end) 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
  16. givePlayerMoney(source, tonumber(Sujo/2) ) --/> Receberá Metade do Dinheiro Sujo. setElementData(source, "moneysujo", 0) -- Setará seu Dinheiro Sujo a 0.
  17. Pelo que eu consegui compreende, você quer adicionar o veiculo apenas para um jogador só entrar no P1. Para isto, você precisar adicionar um elemento no veiculo, com o LOGIN ou SERIAL ou IDAccount do player no veiculo, e fazer uma verificação. Fiz um mini exemplo, utilizando o ID Account, ao entrar, setará um elemento ID Account do Player no veiculo, caso o veiculo não tenha nenhum elemento, setará um elemento com o ID da Conta do Player, e então, caso outra pessoa tente entrar no veiculo, e seja ID Account diferente, não conseguirá entrar no veiculo no P1. addEventHandler("onVehicleStartEnter", root, function ( player, seat ) if seat == 0 then local veh = getPedOccupiedVehicle(player) local account_id = getAccountID(getPlayerAccount(player)) if account_id ~= false then --/> Verificar se o Player Está Logado. local dono_do_veiculo = getElementData(veh, "Dono:Veiculo") or setElementData(veh, "Dono:Veiculo", account_id) --/> Verificar o Elemento do seu Veiculo, Caso não tiver, Então Adicionar. if getElementData(veh, "Dono:Veiculo") ~= account_id then --/> Verificará o Elemento do Veiculo, com o ID da Sua Conta. cancelEvent(true) --/> Caso não ser o Dono Do Veiculo, Então Bloquear. end else cancelEvent(true) --/> Se não tiver Logado, Então Cancelará, sua Entrada. end end end) Espero ter ajudado, e tirado sua dúvida.
  18. Vou lhe ajudar, antes que você faça vários postagens com o mesmo problema, você precisa aguardar alguém lhe responder, lembre-se, ninguém é obrigado a dar-lê códigos prontos. Altere a função "BuscaPlayerplayermoney" que você já tem, por essa, adicionei o código que apenas permitirá número. function BuscaPlayerplayermoney() if source == transplr then local text = guiGetText(transplr) if text == "" then for id, player in ipairs(getElementsByType("player")) do guiSetText(oplb3,"") end else for id, player in ipairs(getElementsByType("player")) do if string.find(string.upper(getPlayerName(player)), string.upper(text), 1, true) then guiSetText(oplb3,"Recomendado:\n"..getPlayerName(player)) veryname = getPlayerName(player) else guiSetText(oplb3,"") veryname = nil end end end end if isElement(atmfundo) and guiGetVisible(atmfundo) == true then local elemento = false if isElement(transmoney) then elemento = transmoney elseif isElement(saquemoneyedit) then elemento = saquemoneyedit elseif isElement(moneyedit) then elemento = moneyedit end if elemento ~= false then local text = guiGetText(elemento) local new_text = string.gsub( text, "[^0-9]", "" ) if new_text ~= text then guiSetText(elemento, new_text) end end end end addEventHandler("onClientGUIChanged", root, BuscaPlayerplayermoney)
  19. Basicamente, seu erro diz o seguinte : Foi enviado um trigger do server-side para o client-side , porem, quando foi chamado esse evento, não foi encontrado no seu client-side, porquê? está dentro de uma função. Modo Errado (O que você fez). function fechar_painel () if painel == true then painel = false removeEventHandler("onClientRender", getRootElement(), dx_Painel) addEvent("Event:Fechar_Painel", true) --/> O ERRO ESTA AQUI ! addEventHandler("Event:Fechar_Painel", getRootElement(), fechar_painel) --/> O ERRO ESTA AQUI ! end end Modo Correto. function fechar_painel () if painel == true then painel = false removeEventHandler("onClientRender", getRootElement(), dx_Painel) end end addEvent("Event:Fechar_Painel", true) addEventHandler("Event:Fechar_Painel", getRootElement(), fechar_painel)
  20. Você criou outro tópico com o mesmo problema deste. Aguarde alguém para lhe ajudar no seu problema em vez de criar outro tópico igual. Então cuidado com o SPAM, para não levar nenhuma advertência desnecessária. Sobre o seu problema, você quer deixar o chat padrão do "T", ficar, um Chat Local. O Problema no seu caso, é a falta do elemento "ID" no jogador, e retorna boleano. (Foi o único erro até agora que encontrei). Tente isto (Não testei): addEventHandler("onPlayerChat", root, function(mensagem, msgtype) if (msgtype == 0) then cancelEvent() local x,y,z = getElementPosition(source) local int_source = getElementInterior(source) local dim_source = getElementDimension(source) local ID = getElementData(source, "ID") or "Não Encontrado" for _, players in ipairs(getElementsByType("player")) do local x2,y2,z2 = getElementPosition(players) if getDistanceBetweenPoints3D ( x, y, z, x2, y2, z2 ) <= 50 then local int_player = getElementInterior (players) local dim_player = getElementDimension (players) if (int_source == int_player) and (dim_source == dim_player) then local conta = getAccountName ( getPlayerAccount ( source ) ) if isObjectInACLGroup ("user."..conta, aclGetGroup ( "Console" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #00ff8cPresidente #00FF00● #00ff8c"..getPlayerName(source).. "#00FA9A » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Admin" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #ff6600Vice Presidente #00FF00● #ff6600"..getPlayerName(source).."#A914F9 » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Humanos" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #00ffedAdm Corp/Gang #00FF00● #00ffed"..getPlayerName(source).."#A914F9 » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "SuperModerator" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #00ffedDeputado Estadual #00FF00● #00ffed"..getPlayerName(source).."#A914F9 » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Moderator" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #00ffed Vereador #00FF00● #00ffed"..getPlayerName(source).."#ffffff » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "BOPE" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #000000 BOPE #00FF00● #000000"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "CHOQUE" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #635f5f C O E #00FF00● #635f5f"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "COE" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #228B22 #00FF00● #228B22"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "ROTA" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #838B83 ROTA #00FF00● #838B83"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "BAEP" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #838B83 BAEP #00FF00● #838B83"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "PF" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #E47833 Policia Federal #00FF00● #E47833"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "PETO" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #000000 PETO #00FF00● #000000"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "ROCAM" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #Ff0000 ROCAM #00FF00● #Ff0000"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "CBV" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #Ff0000 Comando Bala Voa #00FF00● #Ff0000"..getPlayerName(source).."#ffffff » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "CV" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #Ff0000 Comando Vermelho #00FF00● #Ff0000"..getPlayerName(source).."#ffffff » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "TCP" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #FFFF00Terceiro Comando Puro #00FF00● #FFFF00"..getPlayerName(source).."#ffffff » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "ANS" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #000000 Anonymous #00FF00● #000000"..getPlayerName(source).."#ffffff » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "OG" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #8A2BE2 Os Guri #00FF00● #8A2BE2"..getPlayerName(source).."#ffffff » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Designer" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #0000FF● Designer ● #FFFFFF"..getPlayerName(source).."#ffffff » :#ffffff "..mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Moderador" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #FFFFFF● Vereador ● #FFFFFF"..getPlayerName(source).."#ffffff » :#ffffff "..mensagem, players, 255, 255, 255, true) ---------------------------------------------------------------------------------------- elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Omega" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #00FF00 VIP OMEGA #00FF00● #00FF00"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Sigma" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #00FF00 VIP SIGMA #00FF00● #00FF00"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Epsylon" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #00FF00 VIP EPSYLON #00FF00● #00FF00"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Alpha" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #00FF00 VIP ALPHA #00FF00● #00FF00"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) ---------------------------------------------------------------------------------------- elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "VIP" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #00FF00 VIP #00FF00● #00FF00"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "UBER" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #838B83 UBER #00FF00● #838B83"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Mecanico" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #228B22 Mecanico #00FF00● #228B22".. getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "SAMU" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #Ff0000 SAMU #00FF00● #Ff0000"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "GIRL" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #FF00F6 Garotas De Programa #00FF00● #FF00F6"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Ajudante" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #FFEE00 Ajudante #00FF00● #FFEE00"..getPlayerName(source).."#ffffff » :#ffffff ".. mensagem, players, 255, 255, 255, true) elseif isObjectInACLGroup ("user."..conta, aclGetGroup ( "Everyone" ) ) then outputChatBox("#ffffff[ #FFEE00Local #ffffff] ["..ID.."] #00FF00● #05FF00 Cidadão #00FF00● #05FF00"..getPlayerName(source).."#ffffff » :#FFFFFF "..mensagem, players, 255, 255, 255, true) end end end end end end)
  21. Envie o seu código, para podermos te ajudar.
  22. Fiz para você como ficará, diante as dicas do Lord --/> SALVAR ROUBAS AI SAIR. function save_player_quit ( ) local texture = {} local model = {} for i=0, 17 do local clothesTexture, clothesModel = getPedClothes(source, i) if ( clothesTexture ~= false ) then table.insert(texture, clothesTexture) table.insert(model, clothesModel) else table.insert(texture, " ") table.insert(model, " ") end end local setTextures = table.concat(texture, ",") local setModels = table.concat(model, ",") local account = getPlayerAccount(source) setAccountData(account, "setexture", setTextures) setAccountData(account, "setmodel", setModels) texture = {} model = {} end addEventHandler("onPlayerQuit", getRootElement(), save_player_quit ) --/> CARREGAR ROUPAS AO LOGAR. function load_player_login ( ) local textures = {} local models = {} local account = getPlayerAccount(source) local textureLoad = getAccountData(account, "setexture") local modelLoad = getAccountData(account, "setmodel") if not textureLoad and not modelLoad then --/> Adicionado ! return --/> Adicionado ! end --/> Adicionado ! local textures = split(textureLoad, 44) local models = split(modelLoad, 44) setElementModel(source,0) for i=0, 17 do if ( textures[i+1] ~= " " ) then addPedClothes(source, textures[i+1], models[i+1], i) end end textures = {} models = {} end addEventHandler( "onPlayerLogin", getRootElement(), load_player_login )
  23. Fiz algo básico para você, quando o veiculo for danificado, e quando estiver com life abaixo de 255.5, será redefinido o life do veiculo, e o motor desligará. addEventHandler("onVehicleDamage", getRootElement(), function ( ) --/> Evento Para Quando o Veiculo for Danificado. if isElement(source) and getElementType(source) == "vehicle" and getElementHealth(source) <= 255.5 then setElementHealth(source, 255.5) --/> Setará a LIFE do Veiculo, Para não explodir. setVehicleEngineState(source, false) --/> Desligará o Motor. end end) --/> OBS : Fiz por evento quando da dano ao veiculo, mas, você pode fazer, disparando um timer. --/> Próximo Evento, Para Quando o Jogador Entrar no Veiculo, o Veiculo Desligar caso, a life do veiculo for igual ou abaixo de 255.5. addEventHandler ( "onPlayerVehicleEnter", getRootElement(), function ( veiculo, seat ) if seat == 0 and getElementHealth(veiculo) <= 255.5 then --/> Ao entrar P1, e se o Veiculo tiver com LIFE igual ou abaixo de 255.5, então : setVehicleEngineState(veiculo, false) --/> Desligar o Motor. end end)
  24. Olha, eu já tive problemas de, executa o launcher, e só sumia, essa tela de loading, e não executava. Eu tive que instalar as atualizações do Windows Update, pois, estava faltando alguns drivers importantes.
×
×
  • Create New...