Jump to content

RaceXtreme

Members
  • Posts

    99
  • Joined

  • Last visited

Everything posted by RaceXtreme

  1. Notepad++ já vem com a sintaxe Lua instalada e, na minha opinião, ele é o melhor.
  2. É claro, mas depende do script que você está utilizando. Se você baixou ele no MTA community, provavelmente em alguma parte do arquivo deve ter alguma variável definindo o número de zumbis. Daí é só criar uma função que calcula o número máximo de spawn que pode haver, por exemplo: maxZombieSpawn = 15 function onWorldUpdate () hour,_ = getTime () if hour >= 18 and hour <= 7 then maxZombieSpawn = math.random(1,3) * maxZombieSpawn else maxZombieSpawn = 15 end end
  3. Você vai ter dar atenção a esse script porque o que você está tentando fazer envolve multiplas variáveis. Quando isso acontece, nós temos que usar as tabelas e ao mesmo tempo, manipulá-las da melhor forma possível para economizar o gasto com o processador. Então, a seguir vem o código que você deve usar: teamVehicleList = { 'team2' = { }, 'LEI' = { 598, 596, 597, 599, 497, 490, 528, 599, 523, 425 }, 'Crips' = { 520 }, 'Bloods' = { 450 } } addEventHandler( 'onVehicleStartEnter', root, function( player ) local vModel = getElementModel (source) local pTeam = getTeamName (getPlayerTeam (player)) for kTeam, list in pairs( teamVehicleList ) do if pTeam ~= kTeam then for _,id in pairs ( list ) do if vModel == id then cancelEvent () outputChatBox( '#F08080[ERRO] #FF0000Este veículo pertence a Organização ' .. team .. ' !', player, 255, 255, 255, true ) return end end elseif pTeam == kTeam[1] then return end end end A ideia que eu tive foi fazer uma tabela com os times vinculados a uma "lista" com os carros que devem ser verificados. Quando o jogador entra em um carro, será verificado se ele pertence a algum time. Se no caso ele não pertencer ao time verificado, e o carro que ele entrou estiver vinculado a esse time, o evento será cancelado.
  4. ExtremeSB, de uma vez por todas você deve entender que nós não vamos ajudar cada um partindo do 0, porque, sinceramente, isso é uma perda de tempo se nós não ganharmos nada com isso. Há o MTA Wiki completo em inglês para te auxiliar em sua aprendizagem e há vários outros sites explicando detalhadamente sobre Lua. Quando você chegar aqui com alguma coisa, aí nós podemos conversar.
  5. setPedControlState: esta função abrange todos os botões possíveis que o GTA aceita, como pular(espaço), andar(w), correr(shift + w), atirar (botão esquerdo do mouse) e dentre outros. Por exemplo, quero que o pedestre se agache: setPedControlState ( thePed, crouch, true ) setPedAnalogControlState: imagine que você esteja jogando com um Joystick para PC. Ele tem os analogs esquerdo e direito (acho você sabe o que é). Esta função simula o jogador movendo o analog esquerdo para os lados, fazendo com que o pedestre se mova. Por exemplo, se eu quiser que o pedestre ande para o nordeste, então eu farei da seguinte forma: setPedAnalogControlState ( thePed, forwards, 0.5 ) setPedAnalogControlState ( thePed, left, 0.5 ) Se você quiser que ele pare de se mover, ou em outras palavras, pare de "segurar" o botão, simplesmente não ponha valor nenhum: setPedAnalogControlState ( thePed, forwards ) setPedAnalogControlState ( thePed, left )
  6. Quando você puder por isso em prática vai ver que não é tão complicado. Você pode me mostrar umas fotos de como ficou o resultado. Se você travar em alguma parte, te explico melhor ou até outros usuários. Boa sorte!
  7. Não se esqueça de visitar nosso manual do usuário para ajudar na sua compreensão de como usar a modificação: https://wiki.multitheftauto.com/wiki/PT-BR/Manual_do_Cliente
  8. Vamos tentar tudo de novo. 1. Crie um novo recurso (uma nova pasta) chamado de teleporter, neste diretório: ...\MTA San Andreas 1.3\server\mods\deathmatch\resources\[gamemodes] 2. Abra um editor de textos, como o Notepad++ e cole este código feito por nosso amigo DNL: root = getResourceRootElement() -- aqui se obtém uma lista com todos os elementos (carros, pedestres, sinalizadores) criados pelo nosso recurso local marker = createMarker(2495.4, -1691, 15.3, "arrow", 1.1, 0, 0, 255) -- Sinalizador para se teletransportar para dentro da casa local houseMarker = createMarker(2495.96, -1692.3, 1015.5, "arrow", 1.1, 0, 0, 255) -- Sinalizador para se teletransportar para fora da casa setElementInterior(houseMarker, 3) addEventHandler("onMarkerHit", root, -- esta função é ativada quando algum elemento (qualquer um) atingir um sinalizador criado pelo nosso recurso function (hitElement) -- hitElement representa o elemento que atingiu o sinalizador if getElementType(hitElement) == "player" then -- se este elemento for um jogador, o teleporte para o lugar certo if source == marker then setElementInterior(hitElement, 3, 2496.18, -1693.74, 1014.74) elseif source == houseMarker then setElementInterior(hitElement, 0, 2495.3, -1687.2, 13.5) end end end ) 3. Salve este arquivo como server.lua, lembrando de verificar se o seu programa realmente salvou da maneira correta: Correto: server.lua Errado: server.lua.txt 4. Agora crie um arquivo chamado meta.xml na mesma pasta que criamos: <meta> <info type="script" name="Teleporter" author="UsParent" version="0.1" description="Script de teletransportar jogadores" /> <!-- Script Files --> <script src="server.lua" type="server" /> </meta> 5.O resultado ficará assim: 1. Pasta: Teleporter 1.1 server.lua 1.2 meta.xml 6. Vá em ..\MTA San Andreas 1.3\server e rode o arquivo MTA Server.exe 7. Agora é só iniciar o MTA, clicar em quick connect e depois clicar no servirdor "Default MTA Server". Provavelmente você vai entrar no modo freeroam. É só tentar de alguma forma, chegar na casa do CJ. Notas - O que é um sinalizador pelo o amor de deus? Veja a imagem abaixo:
  9. Muito estranho, você pode me passar o link para eu dar uma olhada? Tenho quase certeza que seja porque você não está logado no MTA Community
  10. O script feito pelo manawydan dá certo sim. [Testado] A imagem abaixo dá uma ideia dos testes que eu fiz
  11. No MTA ainda não é possível colocar animações customizadas.
  12. local isGateOpen = false -- o portão está aberto? local gate = createObject(980, 1548, -1627.3, 15.1, 0, 0, 90) local marker = createMarker(1547.7, -1627.5, 12.1, "cylinder", 8, 255, 255, 255, 0) function moveGate(hitPlayer) if getElementType(hitPlayer) == "player" then -- Por isso devemos verificar se este elemento é o jogador, pois qualquer outro tipo de elemento causará erro nas funções relacionadas à time. local theTeam = getPlayerTeam(hitPlayer) if theTeam and getTeamName(theTeam) == "B.O.P.E" then if isGateOpen then moveObject(gate, 2500, 1548, -1627.3, 15.1) isGateOpen = false else moveObject(gate, 2500, 1548, -1627.3, 9.5) isGateOpen = true end end end end -- Quando você declara estes eventos, qualquer elemento (carro, pedestre, jogador) pode ativá-lo. addEventHandler("onMarkerHit", marker, moveGate) addEventHandler("onMarkerLeave", marker, moveGate) Neste ponto eu tentei reduzir o script excluindo uma função e adicionando uma variável.
  13. Em nosso wiki temos a lista com os acessórios dos carros: https://wiki.multitheftauto.com/wiki/Vehicle_Upgrades E temos mais ID's com os objetos que fazem os veículos se distinguirem um pouco, como caixas de som no porta malas: https://wiki.multitheftauto.com/wiki/Vehicle_Upgrades Se você ainda tiver alguma dúvida, é bom especificar melhor o que você está procurando.
  14. Use o Embed/API do Justin.tv em seu website, por exemplo. O computador/servidor quem estaria fazendo o stream teria que ter uma internet boa para transmitir o vídeo em uma boa qualidade.
  15. Pelo visto, ninguém documentou os ID's dos sons produzidos pelo jogo. Você vai ter que ativar o modo desenvolvedor para usar o comando showsound para encontrar o ID desejado (que você não especificou). 1. Para isso é preciso só criar um recurso simples em que contenha os seguintes arquivos/linhas: Meta.xml client="1.3" /> Script.lua (servidor) setDevelopmentMode ( ture ) 2. E em seguida é só rodar o recurso, abrir o console (F8) e digitar showsound 3. A partir daí, quando um som for produzido ele vai lhe dizer qual é o seu grupo
  16. Na pasta ...\server\mods\deathmatch, edite o arquivo mtaserver.conf com qualquer editor de textos e vá até o final do arquivo. Você deve encontrar esta linha: e várias outras parecidas com esta escritas em baixo. Esta linha define todos os recursos que irão iniciar automaticamente com o servidor. src="admin" --> define qual é o nome do recurso a ser iniciado startup="1" --> Ele deve iniciar automaticamente? (1 - sim; 2 - não) protected="0" --> Ele pode parar de execultar? ( 1- sim; 2 - não) Por enquanto é só isso. Para mais informações, visite nosso Wiki: https://wiki.multitheftauto.com/wiki/PT- ... o_Servidor
  17. You should try the command debugscript 3 to see every error that Lua interface will report you. This going to help us (and you) to find the mistake. I bet that you should write "makeped" exactly how is your function name is (with uppercase in P), because addCommandHandler is case sensitive by default. So the correct is: function makePed() local ped1 = createPed(299, -1629, -167.89999389648, 17.60000038147) setPedAnimation( ped1, "DANCING", "dnce_M_c") end addCommandHandler ( "peds", makePed )
  18. In the second pic you have open the texture map window. Rename both Material #30 and Map #2 to gem then save and export to dff (only) and place it to your resource folder. Now MTA should load your model correctly
  19. Em relação ao WIki, eu não vejo necessidade de traduzir ele todo porque muita gente não vai ler-lo nem em português! É necessário sim, aprender o básico de inglês para programar. Essa é uma linguagem universal e todos tem oportunidade de aprender pela internet. É só querer! É tudo uma questão de interesse
  20. Nice, thank you for the information. You also remember me to update my language Wiki ^^
  21. Ficou muito bom... gostei ^^ Quando o Wiki ficar pronto (e se ele ficar...), ele vai se tornar uma boa opção para tutoriais... isso se todos colaborarem para o texto ficar claro e rico em informações
  22. Realmente parece um ótimo negócio este http://www.onlineshow.com.br/ ! Quem aderir a este servidor, me diga se ele é realmente bom
  23. Existe sim, mas o que vc quer exatamente? O básico de Lua? Se for isso, acesse esta pequena apostila em pdf: http://www.lua.org/doc/jai2009.pdf Aqui vai uma página com mais informações em português: http://www.lua.org/portugues.html E temos também nosso dicionário voltado para o MTA: https://wiki.multitheftauto.com/index.ph ... cial%20%20
  24. Eu tenho certeza que não foi você quem programou isso tudo! É uma extensão baixada no MTA Community, mas eu não sei qual. Se você pudesse me informar o nome, eu poderia dar uma olhada em todos os arquivos e ver se eu consigo integrar este com o modo de jogo Play -- Eu dei uma olhada no server-script que você enviou e percebi que você nem sequer adicionou a função unbindKey para a tecla F3. E mesmo se adicionar, eu acho que não vai desabilitar o F3 para as funções do freeroam, mas e se desabilitar, não teremos como habilitar de novo, pois a função está no recurso freeroam. O "Ninguem" deu uma boa idea. Podemos usar adicionar um evento customizado dentro do recurso freeroam chamado onJail que vai desabilitar os comandos F1, F3 e etc. E por fim, chamar este "onJail" nos eventos "onPlayerJoin" e "onPlayerSpawn" e nas funções "unJailHim" e "JailHim" deste script.
  25. O que você fez até aqui foi só declarar que o arquivo existe e faz parte do seu mapa. Agora pense comigo, qual é o proximo passo? Fazer com que essa imagem apareça na tela do jogador. E ai que vem a parte de fazer seu roteiro (script), para que o MTA faça o que você está pedindo. O que fazer agora? Declarar mais um arquivo para a imagem aparecer. É só criar-lo com um nome decente, mas como nosso pequeno roteiro só vai fazer algumas coisinhas, vamos chama-lo de script.lua. Agora declaremos ele no meta.xml: ="script.lua" type="client" /> Após disso, honda_aa, você vai abrir seu bloco de notas para fazer suas anotações e acessar a nossa página: https://wiki.multitheftauto.com/wiki/PT- ... _Scripting Dê uma olhada pelomenos, leia o que está escrito. Para que possamos prosseguir com as funções de desenhar um elemento (a nossa imagem no caso) na tela, utlizando os seguintes recursos: * Function DxDrawImage() * Event OnClientResouceStart() * Event OnClientRender()
×
×
  • Create New...