
[Action] ID=Sa_heal; 
	name=Heal;
	icon=icon_Sa_heal;
	mpCost=7;
	tooltip=Fill a small area with life magic to heal <math=5 + c:MagAtk + c:skill_Life><adjX=-4><icon=HP>.;
	rankUpTooltip=Each rank adds +1 range.;
	harmful=false;
	
	XPCost=140;
	XPCost=340;
	XPCost=700;
	
	
	casterAnimation=spellcast;
	maxRank=3;
	
	FXOnTarget=chargeSpiralFast;
	FXOnTargetColor=DeepPink;
	FXOnTarget=sfx_lowAura;
	FXOnTarget=pink_major;
[ActionAoE] 
	ID=Sa_heal;
	needsLoS = false;
	needsLoE = false;
	minRange = 0;
	maxRange = 2;
	airborne=true;
	arc=true;
	maxRangeBonus=c:rank;
	bypassAll=true;
	occupyAll=true;
[AvAffecter]
	ID=Sa_heal; 
	actorValue=HP;
	harmful=false;
	magnitude=5 + c:MagAtk + c:skill_Life + t:skill_Life;
	duration=-2;
	chance=100;
	element=magic;
	element=life;
	FXOnTile=charge;
	FXOnTileColor=DeepPink;
	FXOnHit=sparkles;
	FXOnHitColor=DeepPink;
	FXOnHit=briefAuraSound;
[AvAffecterAoE]
	ID=Sa_heal;
	cloneFrom=adjacentAndSelf;
	

[Action] ID=Sa_revive; 
	name=Revive;
	icon=icon_Sa_revive;
	
	mpCost=8;
	chargeTime=10;
	
	tooltip=Revive a fallen ally and restore <math=c:MagAtk * c:rank + c:skill_Life * c:rank + c:rank><adjX=-4><icon=HP>.;
	rankUpTooltip=Each rank greatly increases restored HP<icon=HP>.;
	harmful=false;
	
	special=requiresCasting;
	
	XPCost=350;
	XPCost=500;
	XPCost=700;
	
	maxRank=3;
	casterAnimation=spellcast;
	FXOnCaster=charge;
	FXOnCasterColor=SkyBlue;
	FXOnTarget=darken_minor;
	FXOnTarget=tallLight;
[ActionAoE] 
	ID=Sa_revive;
	needsLoS = false;
	needsLoE = false;
	minRange = 1;
	maxRange = 4;
	airborne=true;
	arc=true;
	bypassAll=true;
	occupyAll=true;
[AvAffecter]
	ID=Sa_revive;
	harmful=false;
	actorValue=revive;
	magnitude=c:MagAtk * c:rank + c:skill_Life * c:rank + c:rank;
	duration=-2;
	chance=d:reviveAcc;
	element=magic;
	element=life;
	FXOnTile=chargeSpiralFast;
	FXOnTile=chargeSpiralFast_big;
	FXOnTile=sfx_longGoodAura;
	FXOnTile=actor_reviveGhost;
	FXOnHit=sparkles;
	FXOnHit=upwardLinesQuick;
	FXOnHit=Powerup_longerEchoBloop;
	FXOnHit=whiten;
	FXOnMiss=hitDustQuiet;
[AvAffecterAoE]
	ID=Sa_revive;
	cloneFrom=oneTile;
	
	

[Action] ID=Sa_growth; 
	name=Growth;
	icon=icon_Sa_growth;
	icon_paletteB=NES_Orange;
	icon_paletteG=NES_Green;
	mpCost=6;
	chargeTime=8;
	tooltip=Cause regeneration for <icon=time><math=40+d:lifeDurMax(2)+20 * c:rank> in a small area, and encourage plant growth.;
	rankUpTooltip=Each rank increases duration by <icon=time>20.;
	harmful=false;
	
	special=requiresCasting;
	
	XPCost=180;
	XPCost=350;
	XPCost=400;
	XPCost=600;
	XPCost=800;
	
	special=requiresCasting;
	casterAnimation=spellcast;
	maxRank=5;
	
	FXOnTarget=sfx_lowestAura;
[ActionAoE] 
	ID=Sa_growth; shape=0; 
	needsLoS = false;
	needsLoE = false;
	minRange = 0;
	maxRange = 3;
	airborne=true;
	arc=true;
	bypassAll=true;
	occupyAll=true;
[AvAffecter]
	ID=Sa_growth; 
	actorValue=regen;
	harmful=false;
	magnitude=1;
	duration=40 + d:lifeDurMax(2) + 20 * c:rank;
	chance=100;
	element=magic;
	element=life;
	element=growth;
	FXOnTile=upwardLines;
	FXOnTileColor=Green;
	FXOnHit=sparkles;
	FXOnHitColor=Green;
	FXOnHit=sfx_risingBipLow;
[AvAffecterAoE]
	ID=Sa_growth;
	cloneFrom=adjacentAndSelf;
	
	

[Action] ID=Sa_cure; 
	name=Cure;
	icon=icon_Sa_cure;
	mpCost=4;
	tooltip=Remove negative status effects in a small area.;
	rankUpTooltip=Each rank adds +1 range.;
	harmful=false;
	
	
	XPCost=90;
	XPCost=200;
	XPCost=400;
	
	special=requiresCasting;
	casterAnimation=spellcast;
	maxRank=3;
	
	FXOnTarget=sfx_highAura;
	FXOnTarget=sfx_risingSwishHigh;
[ActionAoE] 
	ID=Sa_cure; shape=0; 
	needsLoS = false;
	needsLoE = false;
	minRange = 0;
	maxRange = 2;
	airborne=true;
	arc=true;
	maxRangeBonus=c:rank * 1;
	bypassAll=true;
	occupyAll=true;
[AvAffecter]
	ID=Sa_cure; 
	actorValue=cure;
	harmful=false;
	magnitude=1;
	duration=-2;
	chance=100 * m:tCurable;
	element=magic;
	element=life;
	FXOnTile=chargeBurst;
	FXOnTileColor=Aqua;
	FXOnHit=chargeSpiralFast_big;
	FXOnHitColor=Aqua;
	FXOnHit=sidewardLines;
	FXOnHitColor=Aqua;
	FXOnHit=ping;
	FXOnHitColor=Aqua;
	FXOnHit=sfx_lowTingQuiet;
[AvAffecterAoE]
	ID=Sa_cure;
	cloneFrom=adjacentAndSelf;
	
	

[Action] ID=Sa_ward; 
	name=Ward;
	icon=icon_Sa_ward;
	icon_paletteG=NES_Green;
	mpCost=7;
	chargeTime=8;
	tooltip=Halve incoming magic damage to a small group for <icon=time><math=70 + 20 * c:rank>.;
	rankUpTooltip=Each rank increases duration by <icon=time>20.;
	harmful=false;
	
	XPCost=200;
	XPCost=300;
	XPCost=500;
	
	special=requiresCasting;
	casterAnimation=spellcast;
	maxRank=3;
	
	FXOnCaster=chargeFast;
	FXOnCasterColor=Turquoise;
	FXOnTarget=sfx_highAura;
[ActionAoE] 
	ID=Sa_ward; shape=0; 
	needsLoS = false;
	needsLoE = false;
	minRange = 0;
	maxRange = 3;
	airborne=true;
	arc=true;
	bypassAll=true;
	occupyAll=true;
[AvAffecter]
	ID=Sa_ward; 
	actorValue=ward;
	harmful=false;
	magnitude=1;
	duration=70 + c:rank * 20;
	chance=100;
	element=magic;
	element=life;
	FXOnTile=castingFast;
	FXOnTileColor=ForestGreen;
	FXOnHit=ward;
	FXOnHitColor=ForestGreen;
	FXOnHit=sfx_powerup3;
[AvAffecterAoE]
	ID=Sa_ward;
	cloneFrom=adjacentAndSelf;
	
	

[Action] ID=Sa_barrier; 
	name=Barrier;
	icon=icon_Sa_barrier;
	mpCost=9;
	tooltip=Create <math=c:rank + 2> contiguous magical barriers that block movement and last <icon=time>80.;
	rankUpTooltip=Each rank increases number of barriers by 1.;
	harmful=false;
	
	XPCost=200;
	XPCost=500;
	XPCost=900;
	
	AIRatingBias=-999;
	
	numTargets=c:rank+2;
	maxDistanceBetweenTargets=1;
	
	casterAnimation=spellcast;
	maxRank=3;
	
[ActionAoE] 
	ID=Sa_barrier; shape=0; 
	needsLoS = false;
	needsLoE = false;
	minRange = 1;
	maxRange = 4;
	airborne=true;
	arc=true;
	bypassAll=true;
	occupyAll=false;
	canSelectActors=false;
[AvAffecter]
	ID=Sa_barrier; 
	actorValue=summonItem;
	harmful=false;
	magnitude=barrier_item;
	duration=1;
	chance=100;
	element=magic;
	element=life;
	FXOnTile=barrier;
	FXOnTileColor=SkyBlue;
	FXOnTile=castingFast;
	FXOnTileColor=SkyBlue;
[AvAffecterAoE]
	ID=Sa_barrier;
	cloneFrom=oneTile;
	
	
[Action] ID=Sa_dispel; 
	name=Dispel;
	icon=icon_Sa_dispel;
	mpCost=3;
	chargeTime=8;
	tooltip=Remove all status effects (positive or negative) and cancel magic in a small area.;
	rankUpTooltip=Each rank adds +1 range.;
	
	XPCost=150;
	XPCost=350;
	XPCost=500;
	
	special=requiresCasting;
	casterAnimation=spellcast;
	maxRank=3;
	
	FXOnCaster=chargeFast;
	FXOnCasterColor=SkyBlue;
	FXOnCaster=sfx_risingBipLow;
[ActionAoE] 
	ID=Sa_dispel; 
	needsLoS = false;
	needsLoE = false;
	minRange = 0;
	maxRange = 3;
	maxRangeBonus = c:rank;
	airborne=true;
	arc=true;
	bypassAll=true;
	occupyAll=true;
[AvAffecter]
	ID=Sa_dispel; 
	actorValue=dispel;
	magnitude=100;
	duration=-2;
	chance=100;
	element=magic;
	element=dispel;
	FXOnTile=vertLines;
	FXOnTileColor=SkyBlue;
	FXOnTile=bipFlutter;
	FXOnHit=ping;
	FXOnHitColor=SkyBlue;
	FXOnHit=briefAuraSound_wahwah;
[AvAffecterAoE]
	ID=Sa_dispel;
	cloneFrom=adjacentAndSelf;