What's new

-Tibia 7.60 [7.6] Maksymalny magic level dla danej profesji

Status
Not open for further replies.

Thorge D

Advanced User
Joined
Jul 24, 2014
Messages
300
Reaction score
29
1. Autor: Baabuseek, pierwotne wykonanie: Crea
2. Link do oryginalnego tematu:
3. Opis: "Na niekt?rych serwerach ludzie u?ywaj? manarunek by nabi? jak najwy?szy magic level - i tu pojawia si? problem. Gdy gracz przekroczy pewn? liczb? "zu?ytej" many, magic lvl zaczyna szale? i rosn?? co 1 wypowiedziany czar o 1 poziom magiczny, dlatego teraz mo?esz ustali? jaki najwi?kszy magic level mo?e dana profesja osi?gn??."

4. Kod:

w luascript.cpp pod:
[CPP]#ifdef YUR_PREMIUM_PROMOTION
FREE_PREMMY = getGlobalString("freepremmy", "no") == "yes";
QUEUE_PREMMY = getGlobalString("queuepremmy", "no") == "yes";
#endif //YUR_PREMIUM_PROMOTION[/CPP]
dodaj:
[CPP]#ifdef _BBK_MAX_VOC_MAGIC_LEVEL_
MAX_SORCERER_MAGIC_LEVEL = getGlobalNumber("MAX_SORCERER_MAGIC_LEVEL", 200);
MAX_DRUID_MAGIC_LEVEL = getGlobalNumber("MAX_DRUID_MAGIC_LEVEL", 220);
MAX_PALADIN_MAGIC_LEVEL = getGlobalNumber("MAX_PALADIN_MAGIC_LEVEL", 45);
MAX_KNIGHT_MAGIC_LEVEL = getGlobalNumber("MAX_KNIGHT_MAGIC_LEVEL", 15);
MAX_MASTER_SORCERER_MAGIC_LEVEL = getGlobalNumber("MAX_MASTER_SORCERER_MAGIC_LEVEL", 230);
MAX_ELDER_DRUID_MAGIC_LEVEL = getGlobalNumber("MAX_ELDER_DRUID_MAGIC_LEVEL", 250);
MAX_ROYAL_PALADIN_MAGIC_LEVEL = getGlobalNumber("MAX_ROYAL_PALADIN_MAGIC_LEVEL", 75);
MAX_ELITE_KNIGHT_MAGIC_LEVEL = getGlobalNumber("MAX_ELITE_KNIGHT_MAGIC_LEVEL", 45);
#endif //_BBK_MAX_VOC_MAGIC_LEVEL_[/cpp]
w luascript.h pod:
[CPP]#ifdef YUR_PREMIUM_PROMOTION
bool FREE_PREMMY;
bool QUEUE_PREMMY;
#endif //YUR_PREMIUM_PROMOTION [/CPP]
dodaj:
[CPP]#ifdef _BBK_MAX_VOC_MAGIC_LEVEL_
int MAX_SORCERER_MAGIC_LEVEL;
int MAX_DRUID_MAGIC_LEVEL;
int MAX_PALADIN_MAGIC_LEVEL;
int MAX_KNIGHT_MAGIC_LEVEL;
int MAX_MASTER_SORCERER_MAGIC_LEVEL;
int MAX_ELDER_DRUID_MAGIC_LEVEL;
int MAX_ROYAL_PALADIN_MAGIC_LEVEL;
int MAX_ELITE_KNIGHT_MAGIC_LEVEL;
#endif //_BBK_MAX_VOC_MAGIC_LEVEL_ [/CPP]
w player.cpp pod:
[CPP]void Player::addManaSpent(unsigned long spent)
{
if(spent == 0)
return;

spent *= g_config.MANA_MUL[vocation]; [/CPP]
dodaj:
[CPP]#ifdef _BBK_MAX_VOC_MAGIC_LEVEL_
if(this->access < g_config.ACCESS_PROTECT)
{
bool downgraded = FALSE;
int mlvl;
int prevmlvl;
switch(this->vocation)
{
case 1:
mlvl = g_config.MAX_SORCERER_MAGIC_LEVEL; // max magic level for sorcerer
break;
case 2:
mlvl = g_config.MAX_DRUID_MAGIC_LEVEL; // max magic level for druid
break;
case 3:
mlvl = g_config.MAX_PALADIN_MAGIC_LEVEL; // max magic level for paladin
break;
case 4:
mlvl = g_config.MAX_KNIGHT_MAGIC_LEVEL; // max magic level for knight
break;
case 5:
mlvl = g_config.MAX_MASTER_SORCERER_MAGIC_LEVEL; // max magic level for master sorcerer
break;
case 6:
mlvl = g_config.MAX_ELDER_DRUID_MAGIC_LEVEL; // max magic level for elder druid
break;
case 7:
mlvl = g_config.MAX_ROYAL_PALADIN_MAGIC_LEVEL; // max magic level for royal paladin
break;
default:
// max magic level for the other vocation?
mlvl = g_config.MAX_ELITE_KNIGHT_MAGIC_LEVEL; // max magic level for elite knight
break;
}

if(this->maglevel <= mlvl)
this->manaspent += spent;
else
{
if(this->manaspent != 0)
this->manaspent = 0;
if (this->maglevel > mlvl)
{
prevmlvl = this->maglevel;
this->maglevel = mlvl;
downgraded = TRUE;
}
}

//Downgraded Magic Level Message
if (downgraded == TRUE)
{
std::stringstream MaglvMsg;
MaglvMsg << "You were downgraded from magic level " << prevmlvl << " to magic level " << mlvl << ".";
this->sendTextMessage(MSG_ADVANCE, MaglvMsg.str().c_str());
}
}
#endif //_BBK_MAX_VOC_MAGIC_LEVEL_ [/CPP]
dodaj do projektu:
Code:
-D_BBK_MAX_VOC_MAGIC_LEVEL_

na koniec dopisz konfiguracje do config.lua:
[LUA]-- Maximum magic level for the each vocation
MAX_SORCERER_MAGIC_LEVEL = 200;
MAX_DRUID_MAGIC_LEVEL = 220;
MAX_PALADIN_MAGIC_LEVEL = 45;
MAX_KNIGHT_MAGIC_LEVEL = 15;
MAX_MASTER_SORCERER_MAGIC_LEVEL = 230;
MAX_ELDER_DRUID_MAGIC_LEVEL = 250;
MAX_ROYAL_PALADIN_MAGIC_LEVEL = 75;
MAX_ELITE_KNIGHT_MAGIC_LEVEL = 45; [/LUA]
 
Status
Not open for further replies.
Top