Talkaction Player Por Ip

luisfe23
em Scripts
  • 1
  • 2

luisfe23

avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 31/10/08Posts: 871Char no Tibia: Luis Felipe Knight

Fala XTibianos! Beleza?

 

Preciso de uma talkaction para GOD parecida com a /mc, porém um pouco diferente.

Funciona assim:

Quando eu escrever /ip xxx.xxx.xxx.xxx ele irá mostrar todos os jogadores do servidor que possuem o IP xxx.xxx.xxx.xxx

 

Obrigado e abraços.

luisfe23 here

jhon992

Dono JhonBot
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 30/06/11Posts: 631Char no Tibia: Warrior of Mort

Tenho esse script aqui que já tava pronto em um otserv:

function onSay(cid, words, param, channel)
local _ip = nil
   if(param ~= '') then
       _ip = tonumber(param)
       if(not _ip or _ip == 0) then
           local revertIp = doRevertIp(param)
           if(not revertIp) then
               local tid = getPlayerByNameWildcard(param)
               if(not tid) then
                   _ip = nil
               else
                   _ip = getPlayerIp(tid)
               end
           else
               _ip = doConvertIpToInteger(revertIp)
           end
       end
   end
local list, ips = {}, {}
local players = getPlayersOnline()
   for i, pid in ipairs(players) do
       local ip = getPlayerIp(pid)
       local tmp = table.find(ips, ip)
       if(tmp ~= nil and (not _ip or _ip == ip)) then
           if(table.countElements(list, ip) == 0) then
               list[players[tmp]] = ip
           end
           list[pid] = ip
       end
       table.insert(ips, ip)
   end
   if(table.maxn(list) > 0) then
       doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Currently online players with same IP address(es):")
       for pid, ip in pairs(list) do
           doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getCreatureName(pid) .. " (" .. doConvertIntegerToIp(ip) .. ")")
       end
   else
       doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Currently there aren't any players with same IP address(es).")
   end
return TRUE
end

luisfe23

avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 31/10/08Posts: 871Char no Tibia: Luis Felipe Knight

Então, esse ai é o /mc, eu preciso do /ip.

 

Abraços.

luisfe23 here

jhon992

Dono JhonBot
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 30/06/11Posts: 631Char no Tibia: Warrior of Mort

Subwat

GAUCHO MACHO
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 27/07/09Posts: 1516Char no Tibia: Gean Riot

é só voce digitar /mc e a ip que vc quer ver.

ae aparece quem ta online com akela iP

Entrem Server online desde o dia 22/02/2013 Monster 24HORAS dedicado!

IP: monster24h.com

PROTOCOL:8.60

PORT:7171

 

RATES:

Exp: 9999x~10x

Skills:800x

Magic:200x

Loot:2x

Pvp-e Advanced: 1.1x Ao matar players de level semelhante.

 

Accounts Pelo Account Manager!

luisfe23

avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 31/10/08Posts: 871Char no Tibia: Luis Felipe Knight

Já tentei /mc xxx.xxx.xxx.xxx, mas só mostra se o jogador estiver de MC com o ip xxx.xxx.xxx.xxx.

Caso ele não esteja de MC, não mostra nada.

luisfe23 here

Subwat

GAUCHO MACHO
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 27/07/09Posts: 1516Char no Tibia: Gean Riot

claro neh LOL De que outra forma seria o.O'

Entrem Server online desde o dia 22/02/2013 Monster 24HORAS dedicado!

IP: monster24h.com

PROTOCOL:8.60

PORT:7171

 

RATES:

Exp: 9999x~10x

Skills:800x

Magic:200x

Loot:2x

Pvp-e Advanced: 1.1x Ao matar players de level semelhante.

 

Accounts Pelo Account Manager!

luisfe23

avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 31/10/08Posts: 871Char no Tibia: Luis Felipe Knight

Eu quero que mostra os jogadores que tiver o IP x mesmo se não estiver usando MC...

luisfe23 here

Guiizeerarush

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/07/12Posts: 18Char no Tibia: Mr Guii

pqp cara se os cara tao com mesmo ip tao usando mc, o0, vc quer um comando que mostre se a pessoa tah de mc ou esta em 2 pc? kkkk

Newtonnotwen

Só quero saber o porque, o resto são detalhes.
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 04/08/12Posts: 762

Cara me diz pra que tu quer o script, que vou tentar fazer de outra forma.

b5feb15da83eca8bd379039567f3992860f398f765aea98c57dcd2a1ffb0d35ca20603caaf7d9f03da39a3ee5e6b4b0d3255bfef95601890afd807098c4de7dfec2a3351efcdaa9ed8451e6c.gif

luisfe23

avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 31/10/08Posts: 871Char no Tibia: Luis Felipe Knight

Galera, ta tão difícil de entender? Esquece totalmente o MC, pois foi só um exemplo, não tem nada a ver com o que eu quero...

 

Eu quero uma talkaction assim, quando eu (GOD) digitar /ip xxx.xxx.xxxx.xx

 

Aparecerá o jogador (ou os jogadores) que possuir este ip.

 

Entenderam?

luisfe23 here

jhon992

Dono JhonBot
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 30/06/11Posts: 631Char no Tibia: Warrior of Mort

caotic

Afinal de contas,sou um mordomo e tanto
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 04/03/11Posts: 1599Char no Tibia: No Have

Não e culpa sua luisfelipe e que confundiram mais enfim

 

Eu fiz o script

 

function onSay(cid, words, param, channel)

str = "Ip:\n\n"

for _, pid in ipairs(getPlayersOnline()) do

if getPlayerIp(pid) == param then

str = str .. getPlayerIp(pid) .. " - Nome do Player [(".. getPlayerName(pid) ..")] Level ["..getPlayerLevel(pid).."]\n"

end

end

doShowTextDialog(cid, 1397, str)

return true

end

 

 

<talkaction words="!ip" script="ip.lua" />

A tag

 

<talkaction words=r" script="NomeDoArquivo.lua" />

luisfe23

avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 31/10/08Posts: 871Char no Tibia: Luis Felipe Knight

Que bom que alguém entendeu o que eu quero, porém eu testei o script aqui e não funcionou.

 

 

Não sei se vai servir pra alguma coisa, mas vou postar o meu /mc que funciona.

function onSay(cid, words, param, channel)
local _ip = nil
if(param ~= '') then
	_ip = tonumber(param)
	if(not _ip or _ip == 0) then
		local revertIp = doRevertIp(param)
		if(not revertIp) then
			local tid = getPlayerByNameWildcard(param)
			if(not tid) then
				_ip = nil
			else
				_ip = getPlayerIp(tid)
			end
		else
			_ip = doConvertIpToInteger(revertIp)
		end
	end
end

local list, ips = {}, {}
local players = getPlayersOnline()
for i, pid in ipairs(players) do
	local ip = getPlayerIp(pid)
	local tmp = table.find(ips, ip)
	if(tmp ~= nil and (not _ip or _ip == ip)) then
		if(table.countElements(list, ip) == 0) then
			list[players[tmp]] = ip
		end

		list[pid] = ip
	end

	table.insert(ips, ip)
end

if(table.maxn(list) > 0) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Currently online players with same IP address(es):")
	for pid, ip in pairs(list) do
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, getCreatureName(pid) .. " (" .. doConvertIntegerToIp(ip) .. ")")
	end
else
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Currently there aren't any players with same IP address(es).")
end

return true
end

 

 

Desde já agradeço por estar tentando ajudar.

Abraços.

luisfe23 here

caotic

Afinal de contas,sou um mordomo e tanto
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 04/03/11Posts: 1599Char no Tibia: No Have

qual foi o erro?

  • 1
  • 2