Postado Outubro 23, 2017 7 anos @luangop @Way20 Olá, desculpa estar revivendo o tópico, mas estou com uma dúvida, teria como adaptar para que dentro do log.txt aparecesse também o ip/nome do item que a pessoa digitou? Exemplo 1: se o god digitar "/i 2160" aparecesse no log que ele digitou "/i 2160" Exemplo 2: se o god digitar "/i gold coin" aparecesse no log que ele giditou "/i gold coin" ou melhor dizendo: teria como adaptar esse script para escrever no log.txt absolutamente os comandos COMPLETOS que a pessoa digitou? Essa seria a pergunta correta Editado Outubro 23, 2017 7 anos por DiigooMix (veja o histórico de edições)
Postado Outubro 23, 2017 7 anos 18 minutos atrás, DiigooMix disse: @luangop @Way20 Olá, desculpa estar revivendo o tópico, mas estou com uma dúvida, teria como adaptar para que dentro do log.txt aparecesse também o ip/nome do item que a pessoa digitou? Exemplo 1: se o god digitar "/i 2160" aparecesse no log que ele digitou "/i 2160" Exemplo 2: se o god digitar "/i gold coin" aparecesse no log que ele giditou "/i gold coin" ou melhor dizendo: teria como adaptar esse script para escrever no log.txt absolutamente os comandos COMPLETOS que a pessoa digitou? Essa seria a pergunta correta O correto seria você ter criado um novo tópico fazendo seu pedido, mas vamos lá. Tente assim: function onSay(cid, words, param, channel) local pname = getPlayerNameByGUID(getPlayerGUID(cid)) local pip = getPlayerIp(cid) local file = io.open('data/logs/'.. pname ..'.txt','a') file:write("Dia: "..os.date("%d").."/"..os.date("%m").."/"..os.date("%Y").." Hora: "..os.date("%X").." Ip: ".. pip .." usou o comando >> ".. words .." ".. param .."\n") file:close() if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.") return true end local t = string.explode(param, ",") local ret = RETURNVALUE_NOERROR local pos = getCreaturePosition(cid) local id = tonumber(t[1]) if(not id) then id = getItemIdByName(t[1], false) if(not id) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Item wich such name does not exists.") return true end end local amount = 100 if(t[2]) then amount = t[2] end local item = doCreateItemEx(id, amount) if(t[3] and getBooleanFromString(t[3])) then if(t[4] and getBooleanFromString(t[4])) then pos = getCreatureLookPosition(cid) end ret = doTileAddItemEx(pos, item) else ret = doPlayerAddItemEx(cid, item, true) end if(ret ~= RETURNVALUE_NOERROR) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Couldn't add item: " .. t[1]) return true end doDecayItem(item) if(not isPlayerGhost(cid)) then doSendMagicEffect(pos, 87) end return true end Obs: Neste código fiz com que na pasta logs seja criado um .txt com o nome de quem digitou o comando, para separar os comandos de cada staff em arquivo diferente. Te ajudei? Clique em Gostei ! ²²²d¬¬b²²² "She's got a smile that it seems to me...." ♪♪
Postado Outubro 23, 2017 7 anos 14 minutos atrás, luangop disse: O correto seria você ter criado um novo tópico fazendo seu pedido, mas vamos lá. Tente assim: function onSay(cid, words, param, channel) local pname = getPlayerNameByGUID(getPlayerGUID(cid)) local pip = getPlayerIp(cid) local file = io.open('data/logs/'.. pname ..'.txt','a') file:write("Dia: "..os.date("%d").."/"..os.date("%m").."/"..os.date("%Y").." Hora: "..os.date("%X").." Ip: ".. pip .." usou o comando >> ".. words .." ".. param .."\n") file:close() if(param == '') then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.") return true end local t = string.explode(param, ",") local ret = RETURNVALUE_NOERROR local pos = getCreaturePosition(cid) local id = tonumber(t[1]) if(not id) then id = getItemIdByName(t[1], false) if(not id) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Item wich such name does not exists.") return true end end local amount = 100 if(t[2]) then amount = t[2] end local item = doCreateItemEx(id, amount) if(t[3] and getBooleanFromString(t[3])) then if(t[4] and getBooleanFromString(t[4])) then pos = getCreatureLookPosition(cid) end ret = doTileAddItemEx(pos, item) else ret = doPlayerAddItemEx(cid, item, true) end if(ret ~= RETURNVALUE_NOERROR) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Couldn't add item: " .. t[1]) return true end doDecayItem(item) if(not isPlayerGhost(cid)) then doSendMagicEffect(pos, 87) end return true end Obs: Neste código fiz com que na pasta logs seja criado um .txt com o nome de quem digitou o comando, para separar os comandos de cada staff em arquivo diferente. nesse caso posso usar essa linha de comando para todos os scripts de comandos que eu quero que gere o log? ele vai pegar o comando e os parametros de qualquer talkaction? por exemplo o comando /a 20?
Postado Outubro 23, 2017 7 anos 21 minutos atrás, DiigooMix disse: nesse caso posso usar essa linha de comando para todos os scripts de comandos que eu quero que gere o log? ele vai pegar o comando e os parametros de qualquer talkaction? por exemplo o comando /a 20? Sim! Te ajudei? Clique em Gostei ! ²²²d¬¬b²²² "She's got a smile that it seems to me...." ♪♪
Postado Outubro 23, 2017 7 anos 11 horas atrás, luangop disse: Sim! o ip ta aparecendo diferente e sem os pontos, é normal? teria como fazer aparecer o ip normal?
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.