-
Posts
4,005 -
Joined
-
Last visited
-
Days Won
184
Everything posted by Lord Henry
-
Isso só irá matar o jogador com 1 soco. Mas o super soco tbm chuta a vítima pra longe.
-
Seria mais seguro vc fazer com banco de dados em vez de XML. Ainda mais pq, como vc mesmo disse, não tem experiência alguma com XML.
- 12 replies
-
- 1
-
-
É possível remover isto ?
Lord Henry replied to [C]arlos_.'s topic in Ajudas relacionadas ao MTA:SA (Cliente/Servidor)
Pois é... Se ele é apenas um jogador e quer tirar o Blur, não vai ter como. Só com resource instalado no servidor mesmo. -
É possível remover isto ?
Lord Henry replied to [C]arlos_.'s topic in Ajudas relacionadas ao MTA:SA (Cliente/Servidor)
Então mano, essa função é shared, isso significa que ela funciona tanto server-side como client-side. Se você quer que só funcione em você, basta fazer ela client-side. -
É possível remover isto ?
Lord Henry replied to [C]arlos_.'s topic in Ajudas relacionadas ao MTA:SA (Cliente/Servidor)
Se refere ao efeito Blur (desfoque) que ocorre na câmera ao atingir alta velocidade? Já tentou usar isso? https://wiki.multitheftauto.com/wiki/SetPlayerBlurLevel -
Hello everyone. I have a vehicle compatible with the mod "Improved Vehicle Features". It contains arrow lights, rear lights, fog headlight and so on. How can I "activate" the other vehicle textures? (the other lights texture) By default, the vehicles have headlight texture and brake light textures only. Images below: (I don't need just a light, I need the texture)
-
onclientrender Ficou certo isso? Ou pesado demais?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Fiz exatamente a mesma coisa. Usando outputChatBox pra testar. Mas não detectou o veículo criado em mim. Mas detectou quando eu coloquei o "onClientVehicleEnter". -
onclientrender Ficou certo isso? Ou pesado demais?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Sim, também testei e ele detecta. Só não detectou quando criei o veículo pelo painel Admin. Por isso que usei o "onClientVehicleEnter". Mas se trocar por root dai vai ativar em todas as zonas de colisão do servidor, não é? -
onclientrender Ficou certo isso? Ou pesado demais?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Já me ocorreu diversas vezes de eu criar uma variável local client-side, e ela ser compartilhada com todos os clientes, quando na verdade era pra ser única ao jogador local. Por isso prefiro usar tabela para obrigar a ocorrer separadamente. -
onclientrender Ficou certo isso? Ou pesado demais?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Então fiz assim, usando também o "onClientVehicleEnter": ghostZone = createColSphere (2490, -1668, 12.5, 25) -- Cria uma esfera de colisão no CJ. allVehicles = {} allPlayers = {} theVehicle = {} function ghostChecker (theElement, matchingDimension) theVehicle[localPlayer] = getPedOccupiedVehicle (localPlayer) -- O veículo em que o jogador está. (será nulo se o jogador estiver a pé.) allVehicles[localPlayer] = getElementsWithinColShape (ghostZone, "vehicle") -- Todos os elementos do tipo 'vehicle' que estão dentro da zona. allPlayers[localPlayer] = getElementsWithinColShape (ghostZone, "player") -- Todos os elementos do tipo 'player' que estão dentro da zona. if isElementWithinColShape (localPlayer, ghostZone) then outputChatBox ("O novo objeto não está colidindo em você.") -- Use só pra testes. if allVehicles[localPlayer][1] then -- Se existir algum elemento do tipo 'vehicle' dentro da zona, então: for i,vehicle in ipairs (allVehicles[localPlayer]) do -- Para cada veículo dentro da zona, faça isso: setElementCollidableWith (vehicle, localPlayer, false) -- Faz aquele veículo não colidir com o jogador local. end if theVehicle[localPlayer] then -- Se o jogador local está em um veículo, então: for i,vehicle in ipairs (allVehicles[localPlayer]) do -- Para cada veículo dentro da zona, faça isso: setElementCollidableWith (vehicle, theVehicle[localPlayer], false) -- Faz aquele veículo não colidir com o veículo que o jogador local está. end end end if allPlayers[localPlayer][1] then -- Se existir algum elemento do tipo 'player' dentro da zona, então: for i,player in ipairs (allPlayers[localPlayer]) do -- Para cada jogador dentro da zona, faça isso: setElementCollidableWith (player, localPlayer, false) -- Faz aquele jogador não colidir com o jogador local. end if theVehicle[localPlayer] then -- Se o jogador local está em um veículo, então: for i,player in ipairs (allPlayers[localPlayer]) do -- Para cada veículo dentro da zona, faça isso: setElementCollidableWith (player, theVehicle[localPlayer], false) -- Faz aquele jogador não colidir com o veículo que o jogador local está. end end end else outputChatBox ("O novo objeto está colidindo em você.") -- Use só pra testes. if allVehicles[localPlayer][1] then for i,vehicle in ipairs (allVehicles[localPlayer]) do setElementCollidableWith (vehicle, localPlayer, true) end if theVehicle[localPlayer] then for i,vehicle in ipairs (allVehicles[localPlayer]) do setElementCollidableWith (vehicle, theVehicle[localPlayer], true) end end end if allPlayers[localPlayer][1] then for i,player in ipairs (allPlayers[localPlayer]) do setElementCollidableWith (player, localPlayer, true) end if theVehicle[localPlayer] then for i,player in ipairs (allPlayers[localPlayer]) do setElementCollidableWith (player, theVehicle[localPlayer], true) end end end if theVehicle[localPlayer] then setElementCollidableWith (localPlayer, theVehicle[localPlayer], true) end end end addEventHandler ("onClientColShapeHit", ghostZone, ghostChecker) addEventHandler ("onClientColShapeLeave", ghostZone, ghostChecker) addEventHandler ("onClientVehicleEnter", getRootElement(), function (thePlayer, seat) -- Para casos de veículos criados no jogador. outputChatBox ("Entrou em algum veículo.") -- Use só para testes. ghostChecker () -- Executa aquela função acima. end) Parece funcionar, mas precisa testar com mais de um jogador ao mesmo tempo. -
onclientrender Ficou certo isso? Ou pesado demais?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Não funciona para veículos criados no jogador. Por exemplo os veículos do painel Admin. -
Se não houver médicos online dai o jogador não joga mais? Não acho uma boa ideia. Em vez disso você poderia spawnar o jogador no hospital com pouca vida e pra recuperar a vida ele precisaria pagar alguma coisa.
-
me ajudem por favor!!!
Lord Henry replied to Rodrigo3458's topic in Ajudas relacionadas ao MTA:SA (Cliente/Servidor)
Você poderia perguntar isso lá nos comentários do resource (supondo que você baixou do community.multitheftauto.com), dai o desenvolvedor dele pode te responder. Se não receber resposta ou então não conseguir resolver seu problema, sugiro que baixe outro que não seja em MySQL. Por exemplo este sistema de casas universal que é feito em SQLite e os problemas dele já estão respondidos nos comentários. -
Delete: https://community.multitheftauto.com/index.php?p=resources&s=details&id=14467 Reason: I need to change the resource name, because is not only VIP anymore. DONE
-
onclientrender Ficou certo isso? Ou pesado demais?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Pensei em usar timer, só que como a verificação deve acontecer em curtíssimo período de tempo, não achei que valeria a pena. Até porque cada jogador dentro da zona criaria seu próprio timer. Por isso que eu cancelo o "onClientRender" do jogador quando ele sai da zona, para que ele pare de consumir esse processamento por frame. E sim, realmente um "onVehicleSpawn" seria perfeito para essa ocasião, dai não precisaria de nenhum timer nem render. -
onclientrender Ficou certo isso? Ou pesado demais?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Como eu detectaria um elemento que acabou de ser criado dentro da zona se os elementos criados dentro de uma zona de colisão só são detectados após uma nova verificação? -
onclientrender Ficou certo isso? Ou pesado demais?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Vou colocar isso. No caso das tabelas ali é pq eu pretendo depois usar com mais de uma zona ao mesmo tempo, dai os elementos de uma serão diferentes de outra. -
Galera, fiz esse script para resolver um problema solicitado por um usuário aqui do fórum. O objetivo é fazer com que os jogadores e veículos que estiverem dentro de uma zona de colisão fiquem no "modo ghost" (sem colisão) para que os veículos e jogadores que estiverem dentro da zona não colidam entre si e voltem ao normal quando saírem da zona. O esquema é simples de se fazer usando setElementCollidableWith e onClientColShapeHit. O problema é que os veículos criados dentro da zona não eram afetados, pois ainda não existiam quando o jogador entrou na zona, sendo necessário o jogador sair da zona e entrar de novo nela para que este novo veículo fosse afetado também. Para contornar esse problema fiz tudo usando onClientRender, porém não sei se essa é a melhor maneira, levando em conta que consome maior processamento e existem muitos verificadores dentro dele. O script ficou assim: (client-side) Alguém tem alguma ideia de fazer esse script "mais leve"? Ou esse jeito é o único possível para evitar o problema?
-
Can someone check if it's the same resource? The second was compiled, so I don't know if it was stolen or not. https://community.multitheftauto.com/index.php?p=resources&s=details&id=9552 https://community.multitheftauto.com/index.php?p=resources&s=details&id=14829 DONE (turns out it was based upon the original you linked)
-
Vc poderia fazer como todos os demais e aprender por conta própria lendo a Wiki e estudando os mods que vc baixa da internet. Depois vc vai tentando programar algumas coisas básicas e evoluindo com o tempo para coisas mais complexas. Eu por exemplo comecei tentando corrigir os resources bugados que eu baixava da internet, estudei a Wiki pra saber como funcionam as funções que estavam sendo usadas nele e fui testando as coisas até aprender como funciona o resource.
-
Olá, seja bem-vindo. Quaisquer dúvidas ou problemas que vc encontre durante o desenvolvimento dos seus resources, não deixe de perguntar aqui e faremos o possível para lhe ajudar. Abraço.
- 5 replies
-
- apresentacao
- aprendendo-lua
-
(and 1 more)
Tagged with:
-
getvehicleoccupant Porque o erro só ocorre em host?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Esqueci de avisar que deu certo. Obrigado a todos. Ficou assim: [CLOSED] -
getvehicleoccupant Porque o erro só ocorre em host?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Assim? local me = getLocalPlayer() local scX, scY = guiGetScreenSize() --[...] addEventHandler ("onClientResourceStart", resourceRoot, function(me) theMarker = createMarker (-2091.6, 2313.7, 25, "cylinder", 2, 0, 0, 0, 150) createBlipAttachedTo (theMarker, 0, 1, 0, 0, 0, 255, 0, 200) closeButton = guiCreateButton (scX-40, scY-45, 30, 30, "X", false) guiSetVisible (closeButton, false) addEventHandler ("onClientMarkerHit", theMarker, function (hitElement) if hitElement == me and getElementType (hitElement) == "player" and not getPedOccupiedVehicle (hitElement) then --[...] end end) end) -
getvehicleoccupant Porque o erro só ocorre em host?
Lord Henry replied to Lord Henry's topic in Programação em Lua
Bom, de qualquer forma obrigado. Resolveu o problema do script. Tome este REP+ Estou com outro resource com um problema parecido, ele não gera erro nenhum só que ele deveria funcionar somente no jogador que colidiu no marker, só que está funcionando com todos os jogadores. O resource movimenta a câmera do jogador por lugares pré definidos enquanto mostra textos dos créditos do servidor na tela. Só que ele faz isso com todos os jogadores, só que deveria fazer somente com o player que colidiu no marker. O script inteiro é client-side. O script não tem erros e funciona perfeitamente tanto no server local como na host, só que na host ele ocorre com todos os jogadores, mas deveria acontecer somente com o jogador que colidiu no marker preto.