[7.6] Skill Up Animado

buster287
em Linguagens de Programação

buster287

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 11/12/05Posts: 27

[update] coloquei como dexa a cor sorteada

Bom essa foi a primeira vez q fiz uma coisa sozinha no dev-cpp e to postando aqui.

Por enquanto só testei no neverland 4.2 [7.6], mais tarde testo nos outros e edito.

O code é bem simples, peço para q não roubem esse code e coloque seus créditos.

CRÉDITOS: 100% meu

Em game.cpp

No lugar do:

 

	if (player->isRemoved == true){  player->sendTextMessage(MSG_ADVANCE, "You are dead.");	}}

 

Substitua por:

 

	if (player->isRemoved == true){  player->sendTextMessage(MSG_ADVANCE, "You are dead.");  SpectatorVec list;SpectatorVec::iterator it;getSpectators(Range(creature->pos), list);for(it = list.begin(); it != list.end(); ++it) {  Player* spec = dynamic_cast<Player*>(*it);  if(spec)   {    int deathcor = (long)g_config.getGlobalNumber("deathcor", 84);    spec->sendAnimatedText(player->pos, deathcor, "Ow3ed");   }}	}}

 

No player.cpp

Substitua:

 

advMsg << "You advanced in " << getSkillName(skill) << ".";  client->sendTextMessage(MSG_ADVANCE, advMsg.str().c_str());  client->sendSkills();	}

 

Por:

 

advMsg << "You advanced in " << getSkillName(skill) << ".";  client->sendTextMessage(MSG_ADVANCE, advMsg.str().c_str());  client->sendSkills();SpectatorVec list;SpectatorVec::iterator it;g_game.getSpectators(Range(pos), list);(Range(pos), list);for(it = list.begin(); it != list.end(); ++it) {  Player* spec = dynamic_cast<Player*>(*it);  if(spec)   {    int skillcor = (long)g_config.getGlobalNumber("skillcor", 70);    spec->sendAnimatedText(pos, skillcor, g_config.getGlobalString("skilltext", "Skill Up!").c_str());   }}}

 

Substitua:

 

  MaglvMsg << "You advanced to magic level " << this->maglevel << ".";  this->sendTextMessage(MSG_ADVANCE, MaglvMsg.str().c_str());  this->sendStats();	}

 

por:

 

  MaglvMsg << "You advanced to magic level " << this->maglevel << ".";  this->sendTextMessage(MSG_ADVANCE, MaglvMsg.str().c_str());  this->sendStats();SpectatorVec list;SpectatorVec::iterator it;g_game.getSpectators(Range(pos), list);(Range(pos), list);for(it = list.begin(); it != list.end(); ++it) {  Player* spec = dynamic_cast<Player*>(*it);  if(spec)   {   int mlcor = (long)g_config.getGlobalNumber("mlcor", 84);    spec->sendAnimatedText(pos, mlcor, g_config.getGlobalString("mltext", "Ml Up!").c_str());   }}}

 

subtitua:

 

  lvMsg << "You advanced from level " << lastLv << " to level " << level << ".";  this->sendTextMessage(MSG_ADVANCE,lvMsg.str().c_str());  this->sendStats();   this->speed = this->getNormalSpeed();	}}

 

por:

 

  lvMsg << "You advanced from level " << lastLv << " to level " << level << ".";  this->sendTextMessage(MSG_ADVANCE, lvMsg.str().c_str());  this->sendStats();SpectatorVec list;SpectatorVec::iterator it;g_game.getSpectators(Range(pos), list);(Range(pos), list);for(it = list.begin(); it != list.end(); ++it) {  Player* spec = dynamic_cast<Player*>(*it);  if(spec)   {    int lvlcor = (long)g_config.getGlobalNumber("lvlcor", 84);    spec->sendAnimatedText(pos, lvlcor, g_config.getGlobalString("lvltext", "Lvl Up!").c_str());   }}}}

 

Não precisa de muita explicação, vou falar pra qm tiver dúvida:

 

    int lvlcor = (long)g_config.getGlobalNumber("lvlcor", 84);

 

Ta vendo o 84 é o número da cor da menssagem, não sei bem os numeros de qual é qual. Eles vão de 1 a 999.

E se quiser q cada vez seja uma cor (sorteada) substitua o 84 por:

 

(int)random_range(1, 999)

 

 

    spec->sendAnimatedText(pos, lvlcor, g_config.getGlobalString("lvltext", "Lvl Up!").c_str());

 

Ta vendo o Lvl Up! é a menssagem q vai aparece.

Uma SS pra ve como fica:

imagem.jpg

É só isso, vlw gente!

:bye:

Retired.

Nostradamus

Serviços Prestados ao XTibia.com
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 10/06/06Posts: 338Char no Tibia: Setyte Berseker

Muito bom código, é bom ver que ainda tem pessoas que não copiam e colam e sim fazem seus próprios códigos.

[twitter]ThomazYuji[/twitter]

BrielZinhu

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 10/11/06Posts: 21

Grande..mas ae..

aki num deu certo

e vc esqueceu de faze pra skills up.

= )

ja tentei imita o comando de quando gm da exp

pra um char, mas tb deu errado..

//BrielZinhu

buster287

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 11/12/05Posts: 27

Vlw Nostradamus, tbm bem axo bom isso.

 

BrielZinhu -> no seu caso era pq ñ era a versão 4.2 e sim 1.2

E vc tem razão, esqueci do skill up, mas ja coloquei.

Retired.

BrielZinhu

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 10/11/06Posts: 21

vo baixa a versão 4.2

= )

e vo por isso e outras coisas q num pegava na minha

versão..

 

//BrielZinhu

tibiaa4e

Ex amante de Tibia
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 18/12/05Posts: 912Gênero: MasculinoChar no Tibia: Kohzete

bom code

+

EU ODEIO ISSO!!!

 

por isso num coloco no meu ot

+ tem pessoas q amam

podem colocar é um otimo script

 

flws :hi:

Aposentado de OTserver e Tibia

Meus melhores tutoriais
Enciclopédia Pasta Data
Tutorial de quest

buster287

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 11/12/05Posts: 27

Realmente eu tbm não gosto muito.

 

Mas tem sempre um ou outro que ta procurando isso.

Retired.

marllon

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 08/07/06Posts: 5

simmmmmmmmmmmmmmmmmmmmmmmmmmm euuuu so um nussssssa

como eu estava procurando me ensina melhor eu tenho q ter programa?

quero bota issu no meu ot de todo jeito poderia me ensina melhor tenho q ter programa pra bota issu nu meu ot?

Shin Hisoka

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/01/07Posts: 73

Belo code mano.

=]

GuiZin here. =]

user posted imageuser posted imageuser posted image

 

Meus Ídolos:

 

user posted imageuser posted imageuser posted imageuser posted image

Dendriel Rozsantares

avatar
Campones
Campones

INFOS

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

xD

meu ot jah veio com isso.

eu acho muito lega, mas eu estou procurando mesmo esse game.cpp

nao faço ideia de onde acha-lo.

julio1falcao

avatar
Campones
Campones

INFOS

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

nunca pensei q dava pra fazer isso nossa q massa xD

F@bio

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/03/07Posts: 18

Como adiciona isso no FORGOTTEN????? pq n achei esse

 

	if (player->isRemoved == true){
player->sendTextMessage(MSG_ADVANCE, "You are dead.");
}
}

ankaros

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 15/12/07Posts: 45Char no Tibia: Knight Kromax

Interessante o código...mas vc só sabe o de 7.6? não tem um pra 8.1?

MaryGirl13

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 18/05/13Posts: 70

Funciona para versão 8.6?