SK
pedido

Kikar todos de MC

Por SkyDarkyes, 29 de set. de 2013 em Scripts

resolvido
12
1.4k
29 de setembro de 2013 às 20:45

Uma talkaction que kikasse todos que estavam usando MC

AlphaLoveA
29 de setembro de 2013 às 21:59

Aqui amigo,

não sei se ajuda, mas com esse sistema, ele verifica todos que estão de mc:

 

 

Em talkactions/scripts, crie um arquivo chamado "multicheck.lua" e adicione isso dentro:

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

em talkactions.xml adicione essa linha:

<talkaction log="yes" words="/mc" access="3" event="script" value="multicheck.lua"/>

Abraço.

Editado Setembro 29 por N4K4MUR4

29 de setembro de 2013 às 22:01

Man isso ai ja vem em todos os ots

AlphaLoveA
29 de setembro de 2013 às 22:11

Primeiro vai em creaturescripts/scripts copie e cole qualquer arquivo .lua e renomei para "Anti-MC"
abra o arquivo delete tudo e coloque isso:

local maximo = 1 -- Maximo de IP's iguais permitidos.

function remove®
if #getPlayersByIp(getPlayerIp(r.pid)) >= r.maximo then
addEvent(doRemoveCreature, 100, r.pid)
end
return TRUE
end

function onLogin(cid)
if getPlayerGroupId(cid) <= 1 then
if isInArray(getPlayerIp(cid)) == FALSE then
addEvent(remove, 500, {pid = cid, maximo = maximo+1})
addEvent(doPlayerSendTextMessage, 2*1000, cid, 23, "Remember, Multi-Clients is not permited!")
end
end
return TRUE
end

ai salve e abra creaturescripts.xml e coloque essa linha:

<event type="login" name="Anti-MC" event="script" value="Anti-MC.lua"/>

e não esqueça de adicionar no login.lua a seguinte linha:

registerCreatureEvent(cid, "Anti-MC")

Créditos: FamilaLM

Editado Setembro 29 por N4K4MUR4

LumusL
29 de setembro de 2013 às 22:12

*Achei aqui na internet*

 

Adicione uma tag em data > creaturescripts > creaturescripts.xml:

<event type="login" name="AntiMC" event="script" value="antimc.lua"/>

Crie um arquivo chamado antimc.lua em data > creaturescripts > scripts:

local config = {
        max = 1,     -- Número de players permitido com o mesmo IP.
        group_id = 1 -- Kikar apenas player com o group id 1.
}

local accepted_ip_list = {} -- Lista dos players permitidos a usar MC, exemplo: {"200.85.3.60", "201.36.5.222"}

local function antiMC(p)
        if #getPlayersByIp(getPlayerIp(p.pid)) >= p.max then
                doRemoveCreature(p.pid)
        end
        return true
end

function onLogin(cid)
        if getPlayerGroupId(cid) <= config.group_id then
                if isInArray(accepted_ip_list,doConvertIntegerToIp(getPlayerIp(cid))) == false then
                        addEvent(antiMC, 1000, {pid = cid, max = config.max+1})
                end
        end
        return true
end

O script automaticamente checa quantos jogadores tem online com o mesmo IP.

 

Créditos: Matheus.

29 de setembro de 2013 às 22:24

Sim mas no caso,ele tem o MAX,não tem como kikar todos que tiver de MC

AlphaLoveA
29 de setembro de 2013 às 22:27

ta se referindo a qual dos scripts amigo ? ao meu segundo ou o do Fawz ?

29 de setembro de 2013 às 22:29

Os 2

AlphaLoveA
29 de setembro de 2013 às 22:37

Bom, eu não sou scripter, mas vou tentar explicar..

 

Aquele "max" é apenas o numero de ip's que poderão ser conectador simultaneamente, entende ? Ou seja, já que tu não quer MC's no server, o numero de IP's tem que ser 1, para que uma mesma pessoa não consiga conectar 2 acc's do mesmo pc ao seu servidor.

29 de setembro de 2013 às 22:38

Ah,achei que 1 poderia logar 2 mcs

AlphaLoveA
29 de setembro de 2013 às 22:53

Não não, testa aí, se tiver com algum problema avisa.

3 meses depois...
OmegaO
05 de dezembro de 2013 às 22:45

Tópico movido para a seção de dúvidas e pedidos resolvidos.

O tópico foi fechado e movido para lixeira por estar inativo a mais de 30 dias. Caso seja preciso reabrir o mesmo, favor entrar em contato com a equipe.