Jonas^
Members-
Posts
1,016 -
Joined
-
Last visited
-
Days Won
9
Everything posted by Jonas^
-
Como coloco pack de som de armas em servidor de MTA?
Jonas^ replied to DouglaS666's topic in Programação em Lua
Use uma dessas 2 resources que o @malignos citou e use a função: setWorldSoundEnabled ( 5, false ) Isso ira remover o som do GTA e ira deixar somente o som da resource modificada ! -
Tmj ajudou bastante !
-
Oi, mas como irei adicionar essa função do lord no comando? gate1 = createObject(2121,2138.8000488281,1454,13.5,0,0,0) local gates1 = false function moveGate1() if gates1 then moveObject(gate1,1000,2138.8000488281,1454,13.5) gates1 = false else moveObject(gate1,1000,2138.8000488281,1454,4) gates1 = true end end addCommandHandler("123",moveGate1) Pode me citar um exemplo?
-
Entendi, irei tentar!
-
Obrigado funcionou perfeitamente, tem como eu mudar essa função de mostrar o nick de login e colocar pra mostrar o nick da pessoal atual no servidor sem o uso de #hex ?
-
Deu erro: print do erro: http://prntscr.com/jos6xt Como ficou o Server size - function recebeKills () local data = getAccounts () local accTable = {} local killsTable = {} local deathsTable = {} local killDeath = {} local kill = 0 local death = 0 if not data[1] then triggerClientEvent (client, "showScores", client) return end for i, acc in ipairs (data) do table.insert (accTable, getAccountName (data[i])) if not getAccountData (data[i], "kills") then table.insert (killsTable, "0") kill = 0 else table.insert (killsTable, tostring (getAccountData (data[i], "kills"))) kill = tonumber (getAccountData (data[i], "kills")) end if not getAccountData (data[i], "deaths") then table.insert (deathsTable, "0") death = 0 else table.insert (deathsTable, tostring (getAccountData (data[i], "deaths"))) death = tonumber (getAccountData (data[i], "deaths")) end local ratio = kill / death if death == 0 and kill == 0 then -- Se ambos os valores forem 0, deixa o ratio em 0 também. table.insert (killDeath, 0) elseif kill ~= 0 and death == 0 then -- Se death for 0 mas kill não, deixa o ratio como desconhecido, pois não é possível dividir algo por 0. table.insert (killDeath, "?") else -- Se nenhum valor for 0, faz a divisão normalmente e aplica o REDUTOR DECIMAL. table.insert (killDeath, math.round (ratio, 2)) end end triggerClientEvent (client, "showRank", client, accTable, killsTable, deathsTable, killDeath) end addEvent ("getRank", true) addEventHandler ("getRank", getRootElement(), recebeKills) Lembrando removi a função math round la do começo do script e coloquei no começo do script do client ficando assim: Client size --//-- REDUZIR CASAS DECIMAIS ! function math.round(number, decimals, method) decimals = decimals or 0 local factor = 10 ^ decimals if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor else return tonumber(("%."..decimals.."f"):format(number)) end end --/-- scoreWindow = guiCreateWindow (167, 144, 666, 499, "Rank System Legend Mercy Tactics v1.4", false) scoreGrid = guiCreateGridList (9, 26, 646, 420, false, scoreWindow) guiWindowSetSizable (scoreWindow, false) guiGridListAddColumn (scoreGrid, "Account", 0.2) guiGridListAddColumn (scoreGrid, "Kills", 0.2) guiGridListAddColumn (scoreGrid, "Deaths", 0.2) guiGridListAddColumn (scoreGrid, "K/D", 0.2) closeGrid = guiCreateButton (68, 456, 500, 29, "Fechar Painel", false, scoreWindow) guiSetVisible (scoreWindow, false) function scoreInfo (accounts, kills, deaths, ratio) guiSetVisible (scoreWindow, true) guiSetVisible (closeGrid, true) showCursor (true) if accounts then for i, v in ipairs (accounts) do guiGridListAddRow (scoreGrid, accounts[i], kills[i], deaths[i], ratio[i]) end end end addEvent ("showRank", true) addEventHandler ("showRank", getRootElement(), scoreInfo) function clickOptions (button, state, absoluteX, absoluteY) if button == "left" then if source == closeGrid then guiSetVisible (scoreWindow, false) showCursor (false) guiGridListClear (scoreGrid) end end end addEventHandler ("onClientGUIClick", getRootElement(), clickOptions) function sendScores () if not guiGetVisible (scoreWindow) then triggerServerEvent ("getRank", localPlayer) end end addCommandHandler ("rank", sendScores)
-
Deixar todo o script do lado client? nem 1 server?
-
Tactics é um GM criado em 2012, com proposito de fazer que jogadores treine sua mira , mas não só nos modo, DM,ARENA tem vários outros modos como derby etc ! Oi DNL, aproveitando o mesmo tópico, acho que a função match.round esta com falha , eu adicionei a função que você me mandou aquele dia no tópico, mas ele reduz as casas só de alguns jogadores. TOPO DO SCRIPT: function math.round(number, decimals, method) decimals = decimals or 0 local factor = 10 ^ decimals if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor else return tonumber(("%."..decimals.."f"):format(number)) end end PARTE DA REDUÇÃO QUE DEVERIA REDUZIR DE TODOS: function recebeKills () local data = getAccounts () local accTable = {} local killsTable = {} local deathsTable = {} local killDeath = {} local kill = 0 local death = 0 if not data[1] then triggerClientEvent (client, "showScores", client) return end for i, acc in ipairs (data) do table.insert (accTable, getAccountName (data[i])) if not getAccountData (data[i], "kills") then table.insert (killsTable, "0") kill = 0 else table.insert (killsTable, tostring (getAccountData (data[i], "kills"))) kill = tonumber (getAccountData (data[i], "kills")) end if not getAccountData (data[i], "deaths") then table.insert (deathsTable, "0") death = 0 else table.insert (deathsTable, tostring (getAccountData (data[i], "deaths"))) death = tonumber (getAccountData (data[i], "deaths")) end local ratio = kill / death if death == 0 and kill == 0 then -- Se ambos os valores forem 0, deixa o ratio em 0 também. table.insert (killDeath, 0) elseif kill ~= 0 and death == 0 then -- Se death for 0 mas kill não, deixa o ratio como desconhecido, pois não é possível dividir algo por 0. table.insert (killDeath, "?") else -- Se nenhum valor for 0, faz a divisão normalmente e aplica o REDUTOR DECIMAL. table.insert (killDeath, math.round (ratio, 2)) end end triggerClientEvent (client, "showRank", client, accTable, killsTable, deathsTable, killDeath) end addEvent ("getRank", true) addEventHandler ("getRank", getRootElement(), recebeKills) Consegue me auxiliar a corrigir? não sei como ele só diminui as casas de alguns jogadores, poucos mesmo, dependendo de quantas kills x ele tem no rank e deaths volta a bugar novamente com as casas gigantes por exemplo 0.011111111
-
Vou deixar com os erros, pois o GM é compilado, não da para resolver, mas estão funcionando perfeitamente! Obrigado por sanar minhas dúvidas, mas não tem cmo eu resolver os erros, e os scripts estao funcionando perfeitamente, só queria entender os erros!
-
Mas os scripts estão funcionando perfeitamente, inclusive as funções que estão apresentando erros, sera que pode deixar assim? ou sera que isso pode ser conflito , pois eu criei um client e um arquivo server para mim colocar os scripts dentro da pasta do gamemode, isso pode causar algum conflito com o gamemode?
-
Boa noite pessoal, meu servidor esta apresentando alguns erros eu gostaria de saber apenas o que significa cada um, http://prntscr.com/jobj2v Se alguem souber me ajude por favor !
-
Obrigado amigo !
-
Estava testando e esta dando um pequeno problema, [2018-05-28 19:19:02] ADMCHAT: wLoocKyzeraaa^OnE : pai joga mt [2018-05-28 19:19:02] ADMCHAT: wLoocKyzeraaa^OnE : pai joga mt [2018-05-28 19:19:02] ADMCHAT: wLoocKyzeraaa^OnE : pai joga mt [2018-05-28 19:19:02] ADMCHAT: wLoocKyzeraaa^OnE : pai joga mt [2018-05-28 19:19:02] ADMCHAT: wLoocKyzeraaa^OnE : pai joga mt Esta repetindo no console Como esta o código atualmente : function chatadminbyjonas ( thePlayer, _, ... ) local message = table.concat ( { ... }, " " ) if ( isPlayerOnGroup ( thePlayer ) ) then for _, player in ipairs ( getElementsByType ( "player" ) ) do outputChatBox ( "#FF0000[ADM] #FFFFFF".. getPlayerName ( thePlayer ) .." : #FF0000".. message, player, 255, 255, 255, true ) outputServerLog("ADMCHAT: " .. getPlayerName(thePlayer) .. " : " .. message) -- ENVIA LOG'S PARA O CONSOLE E NOS ARQUIVOS DE TEXTO ! end else outputChatBox ( "#FF0000[ERRO] - #FFFFFFVocê não é um administrador !", thePlayer, 255, 255, 255, true ) end end addCommandHandler("adminchat", chatadminbyjonas) Tem algo errado, eu particularmente não achei !
-
Mas eu não entendi por que da erro no name outputServerLog("ADMCHAT: " .. name .. " : " .. message) Mesmo erro ! já tentei por player mas mesmo assim continua
-
Verdade, obrigado é message Mas eu não entendi por que da erro no name outputServerLog("ADMCHAT: " .. name .. " : " .. message) Mesmo erro ! já tentei por player mas mesmo assim continua
-
Lado server function adminjonnas ( thePlayer, _, ... ) local message = table.concat ( { ... }, " " ) if ( isPlayerOnGroup ( thePlayer ) ) then for _, player in ipairs ( getElementsByType ( "player" ) ) do outputChatBox ( "#FF0000[ADM] #FFFFFF".. getPlayerName ( thePlayer ) .." : #FF0000".. message, player, 255, 255, 255, true ) outputServerLog("ADMCHAT: " .. name .. " : " .. text) end else outputChatBox ( "#FF0000[ERRO] - #FFFFFFVocê não é um administrador !", thePlayer, 255, 255, 255, true ) end end addCommandHandler("adminchat", adminjonnas) ERRO: attempt to concatenate global text < a nill value >
-
Vlw funcionou ! Só mais uma coisinha eu tentei adicionar essa função em baixo do output outputServerLog("ADMCHAT: " .. name .. " : " .. text) Para mostrar no console do servidor e nas logs, só que deu erro, tem algo errado sera?
-
Sim, mas se eu remover , só o adm vai poder continuar utilizando o chat ne?
-
Cara no fórum tem tudo explicado https://wiki.multitheftauto.com/wiki/AddEventHandler como por exemplo o addeventhandler é só você procurar pelas funções que você quer entender !
-
Oi, estou com um pequeno problema no meu chat admin, ele manda mensagem , mas só os admins conseguem ver, codigo no lado server function adminjonnas ( thePlayer, _, ... ) local message = table.concat ( { ... }, " " ) if ( isPlayerOnGroup ( thePlayer ) ) then for _, player in ipairs ( getElementsByType ( "player" ) ) do if ( isPlayerOnGroup ( player ) ) then outputChatBox ( "#FF0000[ADM] #FFFFFF".. getPlayerName ( thePlayer ) .." : #FF0000".. message, player, 255, 255, 255, true ) end end else outputChatBox ( "#FF0000[ERRO] - #FFFFFFVocê não é um administrador !", thePlayer, 255, 255, 255, true ) end end addCommandHandler("ChatADM", adminjonnas) -- addCommandHandler ( "ac", adminchat ) -- PARA COLOCAR POR COMANDO DE NOVO COLOQUE adminchat no lugar de adminjonnas function isPlayerOnGroup ( thePlayer ) local account = getPlayerAccount ( thePlayer ) local inGroup = false for _, group in ipairs ( { "Console", "Admin", "SuperModerator", "Moderator" } ) do if isObjectInACLGroup ( "user.".. getAccountName ( account ), aclGetGroup ( group ) ) then inGroup = true break end end return inGroup end Codigo no lado client bindKey("i", "down", "chatbox", "ChatADM") Queria uma ajuda para colocar para todos verem se alguém poder me ajudar obg !
-
Mesmo se o cara tiver com cor no nick? o nick continuara branco?
-
Quero que a mensagem fique colorida na cor q eu definir com #hex e somente o nick ficar branco independente da cor que o cara tiver posto no /nick #HEXnick
-
Ñão tipo, voce não entendeu, eu quero que por exemplo, mesmo se o jogador tiver com nome com cor e digitar no chat, a tal '' mensagem '' vai colocar o nick dele branco, o nick da cor não ira funcionar do nick dele entendeu?