uhh whoops seems there some limit as to how much one post can display so heres the rest of the stuff from case 212 down
Code:
case 212: //fading memories
{
int cur_level=CastToClient()->GetAAStruct()->pop_ability.named.fading_memories;
if(cur_level >= 1)
{
if(target>0){targ=target->GetID();}
else if(target==0)
{
CastToClient()->Message(0,"Skill requires a target");
break;
}
CastToClient()->Message(0,"Sorry Fading Memories not working YET");
CastSpell(5243,targ,9,0,0,0,0);
timermod=1;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 217: //project illusion
{
int cur_level=CastToClient()->GetAAStruct()->pop_ability.named.project_illusion;
if(cur_level == 1)
{
if(target>0){targ=target->GetID();}
else if(target==0)
{
CastToClient()->Message(0,"Skill requires a target");
break;
}
CastToClient()->Message(0,"Sorry, Project Illusion not working YET");
timermod=1;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 219: //entrap
{
int cur_level=CastToClient()->GetAAStruct()->pop_ability.named.entrap;
if(cur_level == 1)
{
if(target>0){targ=target->GetID();}
else if(target==0)
{
CastToClient()->Message(0,"Skill requires a target");
break;
}
CastSpell(3614,targ,9,1750,0,0,0);
timermod=5;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 226: //manaburn
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.mana_burn;
if(cur_level == 1)
{
if(target>0){targ=target->GetID();}
else if(target==0)
{
CastToClient()->Message(0,"Skill requires a target");
break;
}
CastSpell(2751,targ,9,6000,0,0,0);
timermod=8640;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 245: //bestial allignment
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.bestial_alignment;
if(cur_level >= 1)
{
CastToClient()->Message(0,"Sorry Bestial Alignment not working YET");
targ=ct;
int crace=CastToClient()->GetBaseRace();
int spell;
if((cur_level==1)&&(crace==2)){spell=4521;}
else if((cur_level==2)&&(crace==2)){spell=4522;}
else if((cur_level==3)&&(crace==2)){spell=4523;}
else if((cur_level==1)&&(crace==9)){spell=4524;}
else if((cur_level==2)&&(crace==9)){spell=4525;}
else if((cur_level==3)&&(crace==9)){spell=4526;}
else if((cur_level==1)&&(crace==10)){spell=4527;}
else if((cur_level==2)&&(crace==10)){spell=4528;}
else if((cur_level==3)&&(crace==10)){spell=4529;}
else if((cur_level==1)&&(crace==128)){spell=4530;}
else if((cur_level==2)&&(crace==128)){spell=4531;}
else if((cur_level==3)&&(crace==128)){spell=4532;}
else if((cur_level==1)&&(crace==130)){spell=4533;}
else if((cur_level==2)&&(crace==130)){spell=4534;}
else if((cur_level==3)&&(crace==130)){spell=4535;}
CastSpell(spell,targ,9,0,0,0,0);
timermod=4320;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 247: //feral swipe
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.feral_swipe;
if(cur_level == 1)
{
if(target>0){targ=target->GetID();}
else if(target==0)
{
CastToClient()->Message(0,"Skill requires a target");
break;
}
CastToClient()->Message(0,"Sorry, Feral Swipe not working YET");
CastSpell(4788,targ,9,0,0,0,0);
timermod=60;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 254: //divine avatar
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.divine_avatar;
if(cur_level >= 1)
{
targ=ct;
int spell;
CastToClient()->Message(0,"Sorry, Divine Avatar not working YET");
if(cur_level==1){spell=4549;}
else if(cur_level==2){spell=4550;}
else if(cur_level==3){spell=4551;}
CastSpell(spell,targ,9,3000,0,0,0);
timermod=7200;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 255: //equisite benadiction
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.exquisite_benediction;
if(cur_level >= 1)
{
targ=ct;
int spell;
CastToClient()->Message(0,"Sorry Equisite Benediction not working YET");
if(cur_level==1){spell=4790;}
else if(cur_level==2){spell=4791;}
else if(cur_level==3){spell=4792;}
else if(cur_level==4){spell=4793;}
else if(cur_level==5){spell=4794;}
CastSpell(spell,targ,9,0,0,0,0);
timermod=1800;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 257: //natures boon
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.natures_boon;
if(cur_level >= 1)
{
targ=ct;
int spell;
CastToClient()->Message(0,"Sorry Natures Boon not working YET");
if(cur_level==1){spell=4796;}
else if(cur_level==2){spell=4797;}
else if(cur_level==3){spell=4798;}
else if(cur_level==4){spell=4799;}
else if(cur_level==5){spell=4800;}
CastSpell(spell,targ,9,0,0,0,0);
timermod=1800;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 261: //doppelganger
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.doppelganger;
if(cur_level >= 1)
{
targ=ct;
int spell;
CastToClient()->Message(0,"Sorry Doppelganer not working YET");
if(cur_level==1){spell=4552;}
else if(cur_level==2){spell=4553;}
else if(cur_level==3){spell=4554;}
CastSpell(spell,targ,9,0,0,0,0);
timermod=4320;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 265: //shared health
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.shared_health;
if(cur_level >= 1)
{
targ=ct;
CastToClient()->Message(0,"Sorry Shared Health not working YET");
timermod=900;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 276: //destructive force 3 levs
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.destructive_force;
if(cur_level >= 1)
{
targ=ct;
CastToClient()->Message(0,"Sorry Destructive Force not working YET");
timermod=3600;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 277: //swarm of decay
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.swarm_of_decay;
if(cur_level >= 1)
{
if(target>0){targ=target->GetID();}
else if(target==0)
{
CastToClient()->Message(0,"Skill requires a target");
break;
}
int spell;
CastToClient()->Message(0,"Sorry Swarm of Decay not working YET");
if(cur_level==1){spell=4564;}
else if(cur_level==2){spell=4565;}
else if(cur_level==3){spell=4566;}
CastSpell(spell,targ,9,0,0,0,0);
timermod=1800;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 285: //radiant cure 2?????
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.radiant_cure;
int mod=CastToClient()->GetAAStruct()->god_ability.named.quickened_curing;
if(cur_level >= 1)
{
targ=ct;
int spell;
if(cur_level==1){spell=3297;}
else if(cur_level==2){spell=3298;}
else if(cur_level==3){spell=3299;}
int time;
if(mod==0){time=180;}
else if(mod==1){time=162;}
else if(mod==2){time=144;}
else if(mod==3){time=126;}
CastSpell(spell,targ,9,3500,0,0,0);
timermod=time;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 286: //purification---made it a self only purify soul
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.purification;
if(cur_level >= 1)
{
targ=ct;
CastToClient()->Message(0,"Sorry, Purification not working, enjoy your self only purify soul");
CastSpell(2742,targ,9,0,0,0,0);
timermod=4320;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 289: //flaming arrows
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.flaming_arrows;;
if(cur_level >= 1)
{
targ=ct;
CastToClient()->Message(0,"Sorry Flaming Arrows not working YET");
timermod=4320;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 290: //frost arrows
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.frost_arrows;;
if(cur_level >= 1)
{
targ=ct;
CastToClient()->Message(0,"Sorry Frost Arrows not working YET");
timermod=4320;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 298: //call of the ancients
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.call_of_the_ancients;
if(cur_level >= 1)
{
if(target>0){targ=target->GetID();}
else if(target==0)
{
CastToClient()->Message(0,"Skill requires a target");
break;
}
int spell;
CastToClient()->Message(0,"Sorry Call of the Ancients not working YET");
if(cur_level==1){spell=4828;}
else if(cur_level==2){spell=4829;}
else if(cur_level==3){spell=4830;}
else if(cur_level==4){spell=4831;}
else if(cur_level==5){spell=4832;}
CastSpell(spell,targ,9,0,0,0,0);
timermod=1800;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 300: //warlords tenacity
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.warlords_tenacity;
if(cur_level >= 1)
{
targ=ct;
int spell;
if(cur_level==1){spell=4925;}
else if(cur_level==2){spell=4926;}
else if(cur_level==3){spell=4927;}
CastSpell(spell,targ,9,0,0,0,0);
timermod=3600;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 303: //ro's flaming familiar
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.ros_flaming_familiar;
if(cur_level == 1)
{
targ=ct;
CastToClient()->Message(0,"Sorry Ro's Flaming Familiar not working YET");
CastSpell(4833,targ,9,0,0,0,0);
timermod=60;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 304: //eci's icy familiar
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.ecis_icy_familiar;
if(cur_level == 1)
{
targ=ct;
CastToClient()->Message(0,"Sorry Eci's Icy Familiar not working YET");
CastSpell(4834,targ,9,0,0,0,0);
timermod=60;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 305: //druzzils familiar
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.druzzils_mystical_familiar;
if(cur_level == 1)
{
targ=ct;
CastToClient()->Message(0,"Sorry Druzzil's Mystical Familiar not working YET");
CastSpell(4835,targ,9,0,0,0,0);
timermod=60;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 307: //ward of destruction
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.call_of_the_ancients;
if(cur_level >= 1)
{
targ=ct;
int spell;
CastToClient()->Message(0,"Sorry Ward of Destruction not working YET");
if(cur_level==1){spell=4836;}
else if(cur_level==2){spell=4837;}
else if(cur_level==3){spell=4838;}
else if(cur_level==4){spell=4839;}
else if(cur_level==5){spell=4840;}
CastSpell(spell,targ,9,0,0,0,0);
timermod=1800;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
case 308: //frenzied devastation
{
int cur_level=CastToClient()->GetAAStruct()->god_ability.named.frenzied_devastation;
if(cur_level >= 1)
{
targ=ct;
int spell;
CastToClient()->Message(0,"Sorry Frenzied Devastation not working YET");
if(cur_level==1){spell=5245;}
else if(cur_level==2){spell=5246;}
else if(cur_level==3){spell=5247;}
CastSpell(spell,targ,9,0,0,0,0);
timermod=4320;
break;
}
else
CastToClient()->Message(0,"You have not learned this skill");
}
break;
}
time_t timestamp=time(NULL);
APPLAYER* outapp = new APPLAYER(OP_AAAction,sizeof(UseAA_Struct));
UseAA_Struct* uaa = (UseAA_Struct*)outapp->pBuffer;
uaa->ability=activate;
uaa->begin=timestamp;
uaa->end=timestamp;
database.UpdateAATimers(this->CharacterID(),timestamp+timermod,timestamp,activate);
AbilityTimer=true;
QueuePacket(outapp);
safe_delete(outapp);
}
anyway um i think i did that correctly if not ill try to fix it, sorry ive never done this before, also let me state again im just learning so please feel free to explain how i maybe did something wrong or suggestions on how to make this better, also does anyone know how to make an if statement for things such as manaburn were it would need values not included in the spell? ive tried thigns like
if(SpellFinished == TRUE) and the result is always that the damage happens the instant the button is pushed, anyone know of a way to make it interuptable and wait untill casting is complete? anyway questions, comments, suggestons appreciated.
|