[M]ister

Members
  • Content Count

    428
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by [M]ister

  1. O seu problema tá pior do que imaginava kkk, não faz sentido o script de outro server conseguir usar o fileRename e você não. Mostre como está as suas permissões na pasta: MTARAIZ/mods/deathmatch/resources. Dentro dela aperte o botão direito do mouse > Propriedades > Segurança (win 7).
  2. Lembro que tú tava com uma pasta do servidor e outra do cliente, você reinstalou qual ? deve ser a do cliente (ou ambas).
  3. Sim, o sistema de arquivos não é tão avançado assim para conseguir identificar a validade do dado com a extensão (só mexe com o nome mesmo kk). O fileExist dele retorna true: https://forum.mtasa.com/topic/115189-ajuda-o-que-está-de-errado-nesse-código/?do=findComment&comment=946407
  4. Não é via de regra possuir extensão, o exemplo que pedi para ele testar também possui e não funciona para ele, deve ser algum problema especifico no servidor dele.
  5. Ei, esqueci de avisar para extrair o arquivo, manipulação de arquivos com o resource zipado não funciona (se bem que é no cliente, não sei se influencia)
  6. Sim, esqueci que eu copiei aquele trecho de seu resource, e nele o debug está com: Unable to rename `cmodels/tent2.txd`
  7. Agora consigo concluir que o seu server tá bem zoado kkkk, eu tentaria reinstalar o MTA. Edit: Cade o arquivo "asd.txt" ?? não modifique o script, apenas tente rodar
  8. @Lord Henry Basicamente o mesmo dele @MatheusCalixto No seu não tem nada de simples, teste com esse: https://sharemods.com/s00xhxybbqhe/file.zip.html Não precisa adicionar na acl, pois na wiki fala que é necessário apenas quando for mudar o arquivo de diretório.
  9. O diretório dele está corrento, o meu pelo menos também é daquela forma. As vezes o problema é com o arquivo em si, pode ser que ele esteja aberto em algum lugar e não foi fechado, teste realmente com outro arquivo, crie um txt qualquer.
  10. Isso não tem nada haver, é só uma informação que o fileRename pertence a uma classe "File", importante saber quando esta trabalhando com orientação objeto. Cara, tenta criar um outro script, faça algo bem simples mesmo, só testando o fileRename (sem usar fileDownload) crie você mesmo o arquivo e tente renomeá-lo.
  11. Certamente. Vai vê é algum problema de permissão, tente conceder privilégios de admin ao resource
  12. Coloque isto no começo da função e me diga o que aparece: print(fileExists(file))
  13. Tente: addEventHandler("onClientFileDownloadComplete", getResourceRootElement(getThisResource()),function(file) print (file) -- Onde coloquei for _,data in ipairs(replace_model) do if file == data[1] then fileRename(data[1],data[4]) engineImportTXD(engineLoadTXD(data[4]),data[3]) end if file == data[2] then fileRename(data[2],data[5]) engineReplaceModel(engineLoadDFF(data[5],0),data[3]) end end end)
  14. Não é muito lógico ele deixar de existir, dei uma olhada aqui e notei que e o source só se “perde” na função do setTimer: function teste (enteringPlayer, seat, jacked, door) -- source = veículo (function() print (getElementModel(source)) -- ok end)() setTimer (function () print (getElementModel(source)) -- fail end, 100, 1) end addEventHandler ("onVehicleStartEnter", getRootElement(), teste) As variáveis globais do addEventHandler: this, client, eventName, etc, também deixam de existir. Meu palpite é que no código fonte do setTimer existe algum método resetando essas variáveis (talvez aqui). No caso do tópico em que não existe a variável predefinida source de um evento, mas sim uma variável que foi declarada com o mesmo nome no parâmetro, acaba por não influenciar: addCommandHandler("oie", function(source) setTimer (function () print(source) -- ok end, 100, 1) end )
  15. Acabei de testar: -- https://www.lua.org/cgi-bin/demo function teste(var) function teste2() print(var) end teste2() end teste("oie") -- output: oie
  16. Não digo que deva abandonar o MySQL, mas dependendo do caso não existe tanta necessidade... Fiz um exemplo simples de como efetuar login no site a partir de uma conta existente no server: <!-- index.html --> <form action="/login.php" method="post"> <input type="text" name="login"> <input type="password" name="senha"> <input type="submit" value="Logar"> </form> <? // login.php include("mta_sdk.php" ); if ($_SERVER["REQUEST_METHOD"] == "POST") { $mtaServer = new mta( "localhost", 22005, "adminlogin", "adminsenha" ); $resource = $mtaServer->getResource ( "site" ); $returns = $resource->call ( "login", $_POST["login"], $_POST["senha"] ); if ($returns[0]) { echo "logado!"; }else{ echo "falha no login!"; } } ?> -- resource "site" function login(user,pass) local acc = getAccount(user, pass) if (acc) then return true return false end <!-- meta.xml --> <export function="login" type="server" http="true" /> * Não testado
  17. Você pode criar funções lua, e puxar esses dados do server para o site (sem usar outra database) ... Mas no caso de trabalhar com os dois, só criar uma boa lógica capaz de manter a correspondência dos dados. Vai ser cadastro pelo site ? Efetue uma call ao server e crie a conta lá também (addAccount) - Bloqueie ou adapte o /chgmypass se não a senha do server será diferente da do site. - Bloqueie ou adapte o /register - Alterou a senha no site ? Atualize no server (setAccountPassword) ... Dessa forma você poderá manipular as contas normalmente (adicionando na acl, setando dados, …) Nem precisaria definir no MySQL quem é staff, mas caso queira, pode ser feito no evento login, verificando e atualizando a coluna “Rank”, pois não existe nenhum evento relacionado com mudanças na ACL Dependendo do caso até acho melhor nem utilizar outra database, dai só trabalha com os dados no MTA e dale calls: server ↔ site
  18. Como a função do timer está dentro de uma função principal as variáveis da principal são acessíveis também nela.
  19. Qual vai se a utilidade de abandonar o sistema de contas do MTA e usar esse?
  20. Troque a linha 3, por: if not getPedOccupiedVehicle(thePlayer) and not Marker_Leites[thePlayer] then
  21. function startJob4 (thePlayer, cmd) if getElementType(thePlayer) == "player" then if not getPedOccupiedVehicle(thePlayer) and not getElementData(thePlayer, "Emprego") == "Leiteiro" then -- Ao usar o comando, só funciona se o jogador estiver no marker e estiver sem veículo. local x, y, z = unpack (leites[1]) -- x, y, z recebem as coordenadas do leites[1]. Marker_Leites[thePlayer] = createMarker (x, y, z -1, "cylinder", 1.6, 0, 255, 0, 255, thePlayer) -- Cria o marker do objetivo do jogador na coordenada 1. setElementData (Marker_Leites[thePlayer], "Marker", thePlayer) -- Seta esse jogador como dono do marker, para que só funcione com ele. setElementData (Marker_Leites[thePlayer], "Leites", 1) -- Seta uma data no marker pra saber a qual coordenada ele pertence. Blip_Leites[thePlayer] = createBlipAttachedTo (Marker_Leites[thePlayer], 19) -- Cria o blip e anexa ao marker. setElementData(thePlayer, "Emprego", "Leiteiro") -- Essa data é para fazer um bloqueo que o jogador não consegue entrar no veiculo antes de pegar os leites removeElementData(thePlayer, "Leiteiro", "Veiculo") addEventHandler ("onMarkerHit", Marker_Leites[thePlayer], fim4) -- Adiciona o evento que faz funcionar o marker do objetivo. end end end addEventHandler("onMarkerHit", Job_Marker, startJob4)
  22. setTimer ou getTickCount -- permitir o uso do comando a cada 8 minutos destroyElement -- destrói o veículo onPlayerQuit -- evento que acionará o destroyElement
  23. Se foi você mesmo que tirou o print no server, você efetuou o download da imagem (talvez o script também) e possivelmente ele ainda está armazenado no seu cache, só saber procurar. Diretório: MTA San Andreas 1.5/mods/deathmatch/resources
  24. Encontrei esses dois na comunidade (tela enquanto está no download): https://community.multitheftauto.com/index.php?p=resources&amp;s=details&amp;id=5874 https://community.multitheftauto.com/index.php?p=resources&amp;s=details&amp;id=7766