Ir para conteúdo

Anti push em area pz


leandrozera

Posts Recomendados

ola galerinha vi um sistema em um ot que achei bem útil e um anti push em area pz.

 

ex; se o player tiver em area pz outros players n conseguir puxar eles

 

pode ser via lua ou source ficarei grato quem poder ajudar.

Link para o comentário
Compartilhar em outros sites

@leandrozera: Amigo isso é bem característico de um source code onde está apenas implementado no distro do OT que você viu. Mas creio que é possível sim fazer um script .LUA que se adapte ao seu pedido, vou ver oque posso fazer a respeito.

Link para o comentário
Compartilhar em outros sites

Não sei se esta versão tem o creatureevent onPush, mas enfim, tente:

function onPush(cid, target)
    if getTileInfo(getThingPos(cid)).protection or getTileInfo(getThingPos(target)).protection then
        return false
    end
    return true
end
Tag:
<event type="push" name="antiPush" event="script" value="nome_do_arquivo.lua"/>
Não se esqueça de registrar o evento em login.lua.
Editado por zipter98
Link para o comentário
Compartilhar em outros sites

 

Não sei se esta versão tem o creatureevent onPush, mas enfim, tente:

function onPush(cid, target)
    if getTileInfo(getThingPos(cid)).protection or getTileInfo(getThingPos(target)).protection then
        return false
    end
    return true
end
Tag:
<event type="push" name="antiPush" event="script" value="nome_do_arquivo.lua"/>
Não se esqueça de registrar o evento em login.lua.

 

deu certo n amigo ;/ da para puxar normal na minha source tem função onpush normal..

		case CREATURE_EVENT_PUSH:
			return "onPush";
Editado por leandrozera
Link para o comentário
Compartilhar em outros sites

Deu erro no console? Se não, então já há tal função em seu servidor. Caso contrário, a procurarei aqui e lhe enviarei.

Qualquer coisa, faço direto em C++.

Link para o comentário
Compartilhar em outros sites

Deu erro no console? Se não, então já há tal função em seu servidor. Caso contrário, a procurarei aqui e lhe enviarei.

Qualquer coisa, faço direto em C++.

não deu nem um erro no console n se quiser fazer em c++ eu copilo e testo se for fazer coloca um doPlayerSendCancel(cid, "voce nao pode empurrar players em protection zone ")

 

obg amigo

Link para o comentário
Compartilhar em outros sites

Em game.cpp, abaixo de:

	if(!toTile)
	{
		player->sendCancelMessage(RET_NOTPOSSIBLE);
		return false;
	}

adicione:

    if(movingCreature->getTile()->hasFlag(TILESTATE_PROTECTIONZONE))
    {
        player->sendCancelMessage("voce nao pode empurrar players em protection zone");
        return false;
    }
Editado por zipter98
Link para o comentário
Compartilhar em outros sites

  • 1 month later...

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

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...