View Single Post
  #1  
Old 07-02-2003, 10:47 PM
killspree
Dragon
 
Join Date: Jun 2002
Posts: 776
Default Code for STR/STA/AGI/DEX/INT/WIS/CHA Luclin AAs

The following is code that enables the Innate Strength, Stamina, etc AAs, as well as raises the caps of the stats to their PoP levels.

client.cpp line ~224 change:

Code:
sint16 Client::GetMaxSTR()
{
    // todo: PoP AA abilities
    return 255;
}
sint16 Client::GetMaxSTA()
{
    // todo: PoP AA abilities
    return 255;
}
sint16 Client::GetMaxDEX()
{
    // todo: PoP AA abilities
    return 255;
}
sint16 Client::GetMaxAGI()
{
    // todo: PoP AA abilities
    return 255;
}
sint16 Client::GetMaxINT()
{
    // todo: PoP AA abilities
    return 255;
}
sint16 Client::GetMaxWIS()
{
    // todo: PoP AA abilities
    return 255;
}
sint16 Client::GetMaxCHA()
{
    // todo: PoP AA abilities
    return 255;
}
To:

Code:
sint16 Client::GetMaxSTR()

{

    // todo: PoP AA abilities
	if (GetLevel() == 65) {
		return 280;
	}
	else if (GetLevel() == 64) {
		return 275;
	}
	else if (GetLevel() == 63) {
		return 270;
	}
	else if (GetLevel() == 62) {
		return 265;
	}
	else if (GetLevel() == 61) {
		return 260;
	}
	else {
    return 255;
	}
}

sint16 Client::GetMaxSTA()

{

    // todo: PoP AA abilities

	if (GetLevel() == 65) {
		return 280;
	}
	else if (GetLevel() == 64) {
		return 275;
	}
	else if (GetLevel() == 63) {
		return 270;
	}
	else if (GetLevel() == 62) {
		return 265;
	}
	else if (GetLevel() == 61) {
		return 260;
	}
	else {
    return 255;
	}

}

sint16 Client::GetMaxDEX()

{

    // todo: PoP AA abilities

	if (GetLevel() == 65) {
		return 280;
	}
	else if (GetLevel() == 64) {
		return 275;
	}
	else if (GetLevel() == 63) {
		return 270;
	}
	else if (GetLevel() == 62) {
		return 265;
	}
	else if (GetLevel() == 61) {
		return 260;
	}
	else {
    return 255;
	}

}

sint16 Client::GetMaxAGI()

{

    // todo: PoP AA abilities

	if (GetLevel() == 65) {
		return 280;
	}
	else if (GetLevel() == 64) {
		return 275;
	}
	else if (GetLevel() == 63) {
		return 270;
	}
	else if (GetLevel() == 62) {
		return 265;
	}
	else if (GetLevel() == 61) {
		return 260;
	}
	else {
    return 255;
	}

}

sint16 Client::GetMaxINT()

{

    // todo: PoP AA abilities

	if (GetLevel() == 65) {
		return 280;
	}
	else if (GetLevel() == 64) {
		return 275;
	}
	else if (GetLevel() == 63) {
		return 270;
	}
	else if (GetLevel() == 62) {
		return 265;
	}
	else if (GetLevel() == 61) {
		return 260;
	}
	else {
    return 255;
	}

}

sint16 Client::GetMaxWIS()

{

    // todo: PoP AA abilities

	if (GetLevel() == 65) {
		return 280;
	}
	else if (GetLevel() == 64) {
		return 275;
	}
	else if (GetLevel() == 63) {
		return 270;
	}
	else if (GetLevel() == 62) {
		return 265;
	}
	else if (GetLevel() == 61) {
		return 260;
	}
	else {
    return 255;
	}

}

sint16 Client::GetMaxCHA()

{

    // todo: PoP AA abilities

	if (GetLevel() == 65) {
		return 280;
	}
	else if (GetLevel() == 64) {
		return 275;
	}
	else if (GetLevel() == 63) {
		return 270;
	}
	else if (GetLevel() == 62) {
		return 265;
	}
	else if (GetLevel() == 61) {
		return 260;
	}
	else {
    return 255;
	}

}
client.h line ~154 change:

Code:
	inline sint16	GetSTR()		{ int16 str = GetBaseSTR() + itembonuses->STR + spellbonuses->STR; if(str>255)return 255; else return str  /*+ aa.general_skills.named.innate_strength * 2*/; }//might be screwing up
	inline sint16	GetSTA()		{ int16 sta = GetBaseSTA() + itembonuses->STA + spellbonuses->STA; if(sta>255)return 255; else return sta/*+ aa.general_skills.named.innate_stamina * 2*/; }
	inline sint16	GetDEX()		{ int16 dex = GetBaseDEX() + itembonuses->DEX + spellbonuses->DEX; if(dex>255)return 255; else return dex/*+ aa.general_skills.named.innate_dexterity * 2*/; }
	inline sint16	GetAGI()		{ int16 agi = GetBaseAGI() + itembonuses->AGI + spellbonuses->AGI; if(agi>255)return 255; else return agi/*+ aa.general_skills.named.innate_agility * 2*/; }
	inline sint16	GetINT()		{ int16 int_ = GetBaseINT() + itembonuses->INT + spellbonuses->INT; if(int_>255)return 255; else return int_/*+ aa.general_skills.named.innate_intelligence * 2*/; }
	inline sint16	GetWIS()		{ int16 wis = GetBaseWIS() + itembonuses->WIS + spellbonuses->WIS; if(wis>255)return 255; else return wis/*+ aa.general_skills.named.innate_wisdom * 2*/; }
	inline sint16	GetCHA()		{ int16 cha = GetBaseCHA() + itembonuses->CHA + spellbonuses->CHA; if(cha>255)return 255; else return cha/*+ aa.general_skills.named.innate_charisma * 2*/; }
To:

Code:
	inline sint16	GetSTR()		{ int16 str = GetBaseSTR() + itembonuses->STR + spellbonuses->STR; uint8 *aa_item = &(((uint8 *)&aa)[1]); if(str>255)return str+*aa_item*2; else return str+*aa_item*2; }
	inline sint16	GetSTA()		{ int16 sta = GetBaseSTA() + itembonuses->STA + spellbonuses->STA; uint8 *aa_item = &(((uint8 *)&aa)[2]); if(sta>255)return sta+*aa_item*2; else return sta+*aa_item*2; }
	inline sint16	GetDEX()		{ int16 dex = GetBaseDEX() + itembonuses->DEX + spellbonuses->DEX; uint8 *aa_item = &(((uint8 *)&aa)[4]); if(dex>255)return dex+*aa_item*2; else return dex+*aa_item*2; }
	inline sint16	GetAGI()		{ int16 agi = GetBaseAGI() + itembonuses->AGI + spellbonuses->AGI; uint8 *aa_item = &(((uint8 *)&aa)[3]); if(agi>255)return agi+*aa_item*2; else return agi+*aa_item*2; }
	inline sint16	GetINT()		{ int16 int_ = GetBaseINT() + itembonuses->INT + spellbonuses->INT; uint8 *aa_item = &(((uint8 *)&aa)[5]); if(int_>255)return int_+*aa_item*2; else return int_+*aa_item*2; }
	inline sint16	GetWIS()		{ int16 wis = GetBaseWIS() + itembonuses->WIS + spellbonuses->WIS; uint8 *aa_item = &(((uint8 *)&aa)[6]); if(wis>255)return wis+*aa_item*2; else return wis+*aa_item*2; }
	inline sint16	GetCHA()		{ int16 cha = GetBaseCHA() + itembonuses->CHA + spellbonuses->CHA; uint8 *aa_item = &(((uint8 *)&aa)[7]); if(cha>255)return cha+*aa_item*2; else return cha+*aa_item*2; }
__________________
Xeldan
Lead Content Designer
Shards of Dalaya
Reply With Quote