Temp Fix for MGB, far from perfect but it casts AE buffs and doubles manacost, also tries to affect NPCS, i know theres really no need for this on EMU servers due to the low population but /shrug.
zone\client.cpp replace exsisting with--
Code:
case 35: //MGB---AE cast group spell in slot 1
{
targ=ct;
int cur_level=CastToClient()->GetAAStruct()->class_skills.named.mass_group_buff;
if(cur_level == 1)
{
CastToClient()->Message(0,"Casting Spell in Slot 1 as an Area Effect");
int spell=m_pp.mem_spells[0];
if((IsGroupSpell(spell))&&(!IsEffectInSpell(spell,SE_Gate))&&
(!IsEffectInSpell(spell, SE_Translocate))&&(!IsEffectInSpell(spell, SE_Teleport))
&&(!IsEffectInSpell(spell, SE_Succor)))
{
int mana;
mana = spells[spell].mana;
mana = (GetActSpellCost(spell, mana))*2;
if(c->GetMana() >= mana)
{
int newmana=(c->GetMana() - mana);
entity_list.AESpell(c,c,100,spell);
c->CastSpell(spell,ct,9,0,0,0,0);
c->SetMana(newmana);
}
else
{
c->Message(13,"Insufficient Mana to cast this Spell.");
break;
}
}
else
{
c->Message(0,"MGB only works with Group Buffs!");
break;
}
int usemod=CastToClient()->GetAAStruct()->god_ability.named.quick_mass_group_buff;
int time;
if(usemod == 1){time=3888;}
else if(usemod == 2){time=3456;}
else if(usemod == 3){time=3024;}
else{time=4320;}
timermod=time;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
and heres something else i did while messing around, could be a fun way to remove extra plat from a server while beg doesnt work, its just a throw command inspired by the final fantasy games of course.
zone\client_process.cpp replace exsisting with----
Code:
case OP_Begging: //Throw command final fantasy style--
{
int p=m_pp.platinum;
int g=m_pp.gold;
int s=m_pp.silver;
int c=m_pp.copper;
Mob* target=CastToClient()->GetTarget();
int toss=(p*10)+(g*1)+(s*0.1)+(c*0.01);
if(toss>0)
{
if(target->IsAttackAllowed(target)&&(target->GetLevel()<=50))
{
int mana=CastToClient()->GetMana();
CastToClient()->DoAnim(5);
entity_list.MessageClose(this,true,50,0,"%s throws loose change at %s!", this->GetName(), target->GetCleanName());
CastToClient()->Message(0,"You Throw loose change at %s!", target->GetCleanName());
target->Damage(CastToClient(), toss, 0xFFFF, 0);
CastToClient()->SetMana(mana);
AddMoneyToPP(-c,-s,-g,-p,true);
}
else
{
CastToClient()->Message(0,"You don't think %s would be affected by coins, do you?", target->GetCleanName());
}
}
else
{
CastToClient()->Message(0,"To Throw change you must have change!");
}
break;
}