[7.9x] Comando /pum

suboras
em Linguagens de Programação

suboras

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 28/10/05Posts: 91

Depois de ter pedido o Code ao frerety, e nao ter recebido :getlost: .. Resolvi por a "mão na massa" e deu certo... xO

 

PRIMEIRAMENTE, CREDITOS:

- frerety (Fez o code para CVS [7.6]) Tópico Original: http://www.xtibia.com/forum/index.php?showtopic=20680

- Suboras (me, code para SVN [7.9x], e algumas alterações... Dei um pouco mais de "criatividade" ao Code ;P..)

 

PS: pode ser q funfe em 7.8x, testem xD~

 

Vamos ao Code:

 

Em commands.cpp, procure por:

{"/kick",&Commands::kickPlayer},

 

Adicione abaixo:

{"/pum",&Commands::pum},

 

No final de commands.cpp, adicione:

bool Commands::pum(Creature* c, const std::string &cmd, const std::string& param)
{
Creature* creature = game->getCreatureByName(param);
Player* player = dynamic_cast<Player*>(creature);
bool canrun = false;

if(player && (player->gmInvisible == false))
{ 
	std::stringstream strPei;
	strPei << "FuumM!";

	game->addAnimatedText(player->getPosition(), TEXTCOLOR_LIGHTGREEN, strPei.str());
	game->internalCreatureSay(creature, SPEAK_MONSTER_YELL, "Fum!");
	canrun = true;
}

if(canrun)
{
 SpectatorVec list;
 SpectatorVec::iterator it;
 game->getSpectators(list, creature->getPosition(), true);
 for(it = list.begin(); it != list.end(); ++it) {
  Player* p = dynamic_cast<Player*>(*it);
		if(p)
		{
			p->sendMagicEffect(player->getPosition(), 20);
if((p->getName() != player->getName()) && (p->gmInvisible == false))
			{
				std::ostringstream msg;
				msg << "You lose 20 hitpoints due to a peido by " << player->getNameDescription() << ".";
				p->sendTextMessage(MSG_EVENT_DEFAULT, msg.str().c_str());
				std::ostringstream msgEca;
				msgEca << "Eca! " << player->getNameDescription() << ".. Seu Porco!";
				game->internalCreatureSay((*it), SPEAK_MONSTER_YELL, msgEca.str().c_str());
						(*it)->changeHealth(-20);
			}
  }
	}
}

return true;
}

 

 

Em commands.h, procure por:

bool kickPlayer(Creature* creature, const std::string& cmd, const std::string& param);

 

Adicione abaixo:

bool pum(Creature* c, const std::string &cmd, const std::string &param);

 

REDBUILD ALL (Ctrl+F11)

 

PS:Nao se esqueçam de adicionar em commands.xml (Pasta Data)

<command cmd="/pum" access="3" />

PS2: Ali em access="3", Mude o "3" para o numero de access desejado =)

Para usar, apenas digite:

/pum NOME DO PLAYER

 

Esperem que gostem ;)

Duvidas? Criticas!

Postem!! xP

 

Abraços, Suboras

~~ SµßØ®åS 7H3 3RVA5 ~~

§···x···§ -~> :þ Open Tibia Server :þ <-~ §···x···§

:.?¿.:Duvidas:.¿?.: {&} :.!¡.:Contatos:.!¡.:
>·>·>·> suboras@hotmail.com <·<·<·<
_-¯_-¯_-¯_-¯_-¯ [ou] ¯-_¯-_¯-_¯-_¯-_
¥ õ Msn: suboras@hotmail.com õ ¥
¯-_-¯-_-¯-_-¯-_ [»«] _-¯-_-¯-_-¯-_-¯


§···x···§ -~> I remember u ... <-~ §···x···§

Open Tibia Serve Tutos & Codes ««»» Trabalhos ««»»
Comando, "!premium" -> http://www.xtibia.com/forum/index.php?showtopic=45395

Comando, "/pum" -> http://www.xtibia.com/forum/index.php?showtopic=45539


<- ACTION DO DADO (DICE), IGUAL TIBIA GLOBAL (PERFEITA) ->
http://www.xtibia.com/forum/index.php?showtopic=46671


Atenciosamente :
________________________
~-> SµßØ®åS <-~
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

frerety

DVNO
avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 08/04/06Posts: 133

HiHo!

 

num te mandei o code pq não estou tendo tempo pra nada, estou ocupado ateh o pescoço e não deu tempo de fazer o exhausted... bom, se você quizer o code sem exhausted mais simplificado taí:

bool Commands::pum(Creature* creature, const std::string &cmd, const std::string& param)
{
Creature* c = g_game.getCreatureByName(param);

if(c && c->getPlayer())
{
	if(creature->getPlayer() && c->getPlayer()->getAccessLevel() > creature->getPlayer()->getAccessLevel())
	{
		creature->getPlayer()->sendCancel("You can not use this command in this player.");
		return false;
	}

	g_game.internalCreatureSay(c, SPEAK_MONSTER_SAY, "Fum!");
	g_game.combatChangeHealth(COMBAT_UNDEFINEDDAMAGE, NULL, c, -20);

	SpectatorVec list;
	SpectatorVec::iterator it;
	g_game.getSpectators(list, c->getPosition());

	Player* tmpPlayer;
	for(it = list.begin(); it != list.end(); ++it)
	{
		tmpPlayer = NULL;
		if(tmpPlayer = (*it)->getPlayer())
		{
			tmpPlayer->sendMagicEffect(c->getPosition(), 20);
			if(tmpPlayer->getName() != c->getName())
			{
				g_game.internalCreatureSay((*it), SPEAK_MONSTER_SAY, "Eca seu porco!");
			}
		}
	}
}

return true;
}

PS .: deixe

bool Commands::pum(Creature* creature, const std::string &cmd, const std::string& param)
e não
bool Commands::pum(Creature* c, const std::string &cmd, const std::string& param)
Se quizer ajuda pra alterar alguma coisa pm me...

Flw :]

It's the hunger; the hunger for an alternative and the refusal to accept a life of unhappiness.


suboras

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 28/10/05Posts: 91

Blz pow, mais o code ta ai, e ta funfando certin.. depois eu vejo como q ta o seu.. tb to sem tempo pra nada, ainda

mais com essa discada feia.. ahuahua ;)

Vlws ai.. fuiz

~~ SµßØ®åS 7H3 3RVA5 ~~

§···x···§ -~> :þ Open Tibia Server :þ <-~ §···x···§

:.?¿.:Duvidas:.¿?.: {&} :.!¡.:Contatos:.!¡.:
>·>·>·> suboras@hotmail.com <·<·<·<
_-¯_-¯_-¯_-¯_-¯ [ou] ¯-_¯-_¯-_¯-_¯-_
¥ õ Msn: suboras@hotmail.com õ ¥
¯-_-¯-_-¯-_-¯-_ [»«] _-¯-_-¯-_-¯-_-¯


§···x···§ -~> I remember u ... <-~ §···x···§

Open Tibia Serve Tutos & Codes ««»» Trabalhos ««»»
Comando, "!premium" -> http://www.xtibia.com/forum/index.php?showtopic=45395

Comando, "/pum" -> http://www.xtibia.com/forum/index.php?showtopic=45539


<- ACTION DO DADO (DICE), IGUAL TIBIA GLOBAL (PERFEITA) ->
http://www.xtibia.com/forum/index.php?showtopic=46671


Atenciosamente :
________________________
~-> SµßØ®åS <-~
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

hrn

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 11/04/07Posts: 2

Oque que ele faz? faz o gm soltar um pum?

xD

Mustorze

Banido
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 28/04/06Posts: 46

uhsauheauheuhauehauehueh Rox!! meio tosco mais rox!

[Banido por Ripping]

Felipe Moraes

Java Developer
avatar
Grão-Duque
Grão-Duque

INFOS

Grupo: Grão-DuqueRegistrado: 02/10/06Posts: 3285Gênero: Masculino

so axei meio zuado isso kra...

isso ai nao fica nada legal para ot rpg...

mas de qualquer jeito,parabens aos criadores do code...bem interessante isso...

~A nossa maior glória não reside no fato de nunca cairmos, mas sim em levantarmo-nos sempre depois de cada queda.~

 

 

 

 

Clique aqui para ver meus tutoriais !

 

 

 

Gamertag: cpmoraes

 

 

julio1falcao

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 28/11/07Posts: 14

da pra coloca uma imagem de como fica pondo em pratica se ñ for pedir muito

Dendriel Rozsantares

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 14/01/07Posts: 90

valew o codigo ai ;]

é dificil por no ot se nao for de soucer.. ou sei la kspoakospakspoasa

tem que td compilar depois neh?

os ots que uso nao tem comando.cpp e tals..

mas td bem, otra hora aprendo ksopakopsakpsa

:withstupidsmiley:

luan12

XTibiano
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 02/01/07Posts: 412

Valeu Pelo Post,

Nao testei mais deve ser massa.

 

Att,

Luan12

Atenciosamente,
Luan Henrique.



E-mail: Luan@XTibia.com

projetodesign01.png

 

XTibia.com - Conteúdo de qualidade você só encontra aqui!