Jump to content

[Ajuda] - O que está de errado nesse código?


Recommended Posts

Just now, MatheusCalixto said:

Meio que ele usou alguma outra alternativa, o fileRename ainda não funciona pra mim, é uma outra alternativa pro problema que está meio que dentro do código do fileRename kkkkk

Pelo que entendi se o fileRename padrão falha, internamente essa mesma função executa outra rota e usa a função de copiar. Teste ai, instale essa versão e tente utilizar o fileRename.

Link to comment
2 minutes ago, MaligNos said:

Pelo que entendi se o fileRename padrão falha, internamente essa mesma função executa outra rota e usa a função de copiar. Teste ai, instale essa versão e tente utilizar o fileRename.

Correto, já foi instalada, testei alguns scripts que utiliza a função fileRename e funcionou perfeitamente kk.

15 minutes ago, Lord Henry said:

Traduzindo: Seu bug é tão sinistro que nem o developer do MTA sabe o motivo.

Sinistro é apelido kkkk!

Edited by MatheusCalixto
Link to comment

Cheguei a pensar que esse problema acontecendo só no lado cliente era por motivos de segurança (quando testei a função aqui também tinha dado esse mesmo erro, e depois funcionou).

Bom, pelo menos funciona agora.

36 minutes ago, MaligNos said:

Pelo que entendi se o fileRename padrão falha, internamente essa mesma função executa outra rota e usa a função de copiar. Teste ai, instale essa versão e tente utilizar o fileRename.

Aqui está essa alternativa:

https://github.com/multitheftauto/mtasa-blue/commit/e9ce827def7b4dc5dcd97f3ac4e8fd22c3b234ea

  • Thanks 1
Link to comment
17 minutes ago, MaligNos said:

Sim, já estava olhando aqui... Por isso mesmo ainda não consigo entender, só se o fileCopy dele também funciona agora.

fileCopy não funciona pra mim kkkk, velho deve ser o Windows 10 :D 

Spoiler

cStvPrr.png

 

Spoiler

hLcLFtw.png

Client.lua

addEventHandler("onClientResourceStart", resourceRoot, function(res)
    local filePath = ":"..getResourceName(res).."/test.txt"
    fileCreate(filePath) --create the file in this resource and name it 'test.txt'.
    if fileCopy(filePath,":"..getResourceName(res).."/test1.txt") then
         outputChatBox("File was successfully copied!", 0, 100, 0)
    else
        outputChatBox("File was not successfully copied, probably because it doesn't exist.", 100, 0, 0)
    end
end)

 

Edit: Eu também queria entender como ele conseguiu fazer o fileRename funcionar de outra forma kkk.

Edited by MatheusCalixto
Link to comment
23 minutes ago, MatheusCalixto said:

Edit: Me mande um código com meta.xml e os arquivos certinho de uma função fileCopy, para eu testar.

Use o mesmo da wiki, só que mude a linha 3:

fileClose(fileCreate(filePath))

(adicionando o fileClose)

Edited by MaligNos
Link to comment
1 minute ago, MaligNos said:

Use o mesmo da wiki, só que mude a linha 3:


file = fileCreate(filePath)
fileClose(file)

(adicionando o fileClose)

O fileCreate funciona, queria saber de uma função fileCopy, pq eu não sei como iria o meta.xml dele, se tinha que colocar <file src="arquivo" /> para funcionar a função fileCopy.

Edited by MatheusCalixto
Link to comment

Testa isto:


addEventHandler( "onClientResourceStart", resourceRoot,
    function (res)
        outputChatBox("@onClientResourceStart")
        local fileDir = ":"..getResourceName(res).."/example.txt"
        if fileExists(fileDir) then
            outputChatBox("@fileExists true")
            if fileCopy ( fileDir, ":"..getResourceName(res).."/example2.txt" ) then
                outputChatBox("@fileCopy funciona")
            end
        end
    end
)

meta.xml:

<meta>
	<script src="client.lua" type="client" />
	<file src="example.txt" />
</meta>

Não testei o código pode ter erros.

Edited by DNL291
Link to comment
2 minutes ago, DNL291 said:

Testa isto:


addEventHandler( "onClientResourceStart", resourceRoot,
    function (res)
        outputChatBox("@onClientResourceStart")
        local fileDir = ":"..getResourceName(res).."/example.txt"
        if fileExists(fileDir) then
            outputChatBox("@fileExists true")
            if fileCopy ( fileDir, ":"..getResourceName(res).."/example2.txt" ) then
                outputChatBox("@fileCopy funciona")
            end
        end
    end
)

meta.xml:


<meta>
	<script src="client.lua" />
	<file src="example.txt" />
</meta>

Não testei o código pode ter erros.

Eu preciso criar example.txt e example2.txt ?

Link to comment
1 hour ago, DNL291 said:

Sim, cria o arquivo .txt. E copia o código de novo, eu corrigi umas coisas.

Com seu exemplo funcionou normal.

1 hour ago, MaligNos said:

Aqui o exemplo da Wiki também não funciona, então provavelmente o erro não é com o fileCopy em si, e sim no exemplo que ele testou. Agora tá esclarecido.

O do wiki não funcionou pra mim kk,

Link to comment
  • DNL291 locked this topic
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...