From c41bab9696276b813c1b0e7e4af99c1c5bf87ab6 Mon Sep 17 00:00:00 2001 From: xolatile Date: Thu, 2 May 2024 20:43:31 -0400 Subject: [PATCH] Added prototype magics... --- source/magic.ads | 106 +++++------------------------------- sprite/magic/air/arrow_storm.png | Bin 0 -> 934 bytes sprite/magic/air/base.png | Bin 0 -> 753 bytes sprite/magic/dark/base.png | Bin 0 -> 761 bytes sprite/magic/dark/torment.png | Bin 0 -> 1266 bytes sprite/magic/earth/base.png | Bin 0 -> 756 bytes sprite/magic/earth/stone_armour.png | Bin 0 -> 931 bytes sprite/magic/fire/base.png | Bin 0 -> 760 bytes sprite/magic/fire/fireball.png | Bin 0 -> 1632 bytes sprite/magic/light/base.png | Bin 0 -> 753 bytes sprite/magic/light/heal.png | Bin 0 -> 1444 bytes sprite/magic/test.png | Bin 458 -> 0 bytes sprite/magic/water/base.png | Bin 0 -> 756 bytes sprite/magic/water/ice_armour.png | Bin 0 -> 978 bytes 14 files changed, 13 insertions(+), 93 deletions(-) create mode 100644 sprite/magic/air/arrow_storm.png create mode 100644 sprite/magic/air/base.png create mode 100644 sprite/magic/dark/base.png create mode 100644 sprite/magic/dark/torment.png create mode 100644 sprite/magic/earth/base.png create mode 100644 sprite/magic/earth/stone_armour.png create mode 100644 sprite/magic/fire/base.png create mode 100644 sprite/magic/fire/fireball.png create mode 100644 sprite/magic/light/base.png create mode 100644 sprite/magic/light/heal.png delete mode 100644 sprite/magic/test.png create mode 100644 sprite/magic/water/base.png create mode 100644 sprite/magic/water/ice_armour.png diff --git a/source/magic.ads b/source/magic.ads index a5dc2e9..13b1377 100644 --- a/source/magic.ads +++ b/source/magic.ads @@ -9,34 +9,22 @@ package magic is ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ type school is ( - neutral, air, dark, earth, fire, light, - prime, water + air, dark, earth, fire, light, water ); type enumeration is ( - -- Neutral - magic_arrow, chain_magic_arrow, -- Air - blow_away, chain_lightning, grounded, lightning, storm_arrows, storm_winds, - summon_air_elemental, thunderclap, + arrow_storm, -- Dark - agony_mass, agony, despair_mass, despair, life_drain_mass, life_drain, - purge, summon_dark_elemental, terror, weakness_mass, weakness, + torment, -- Earth - earthquake, erosion, petrification, poison_cloud, regeneration_mass, regeneration, - rockwalls, stone_skin_mass, stone_skin, summon_earth_elemental, + stone_armour, -- Fire - determination_mass, determination, fireball, fire_bolt, fire_shield, fire_storm, - frenzy, immolation, inner_fire_mass, inner_fire, summon_fire_elemental, + fireball, -- Light - blindness, celestial_armor_mass, celestial_armor, heal_mass, heal, purify, - retribution_heal, retribution_mana, retribution_shot, summon_light_elemental, sunburst, - -- Prime - dispel_magic_mass, dispel_magic, disruption, haste_mass, haste, implosion, - mana_drain, slow_mass, slow, teleport, time_statis, + heal, -- Water - blizzard, eternal_winter, frozen_ground, ice_armor_mass, ice_armor, ice_bolt, - ice_breaker, ice_wall, summon_water_elemental, winter_circle + ice_armour ); ------------------------------------------------------------------------------------------ @@ -56,80 +44,12 @@ package magic is count : constant natural := enumeration'pos (enumeration'last) + 1; trait : constant array (enumeration) of information := ( - ("Magic Arrow ", neutral, 0, effect.none, "Primary spell that channels mana through the air in order to do damage. "), - ("Chain Magic Arrow ", neutral, 0, effect.none, "Advanced primary spell that chains mana to damage multiple foes. "), - ("Blow Away ", air, 0, effect.none, "Weak spell that creates a strong gust of wind to knock back enemies. "), - ("Chain Lightning ", air, 0, effect.none, "A spell that sends a bolt of lightning jumping from target to target. "), - ("Grounded ", air, 0, effect.none, "A protective spell that renders the target immune to electrical attacks."), - ("Lightning ", air, 0, effect.none, "This spell releases a bolt of lightning to strike a single target. "), - ("Storm Arrows ", air, 0, effect.none, "Enchants arrows with the power of a storm, enhancing their range. "), - ("Storm Winds ", air, 0, effect.none, "A spell that summons powerful winds to hinder enemies projectiles. "), - ("Summon Air Elemental ", air, 0, effect.none, "This spell calls forth a powerful elemental creature of magic winds. "), - ("Thunderclap ", air, 0, effect.none, "A spell that creates a sudden, deafening clap of thunder to disorient. "), - ("Agony Mass ", dark, 0, effect.none, "A spell that inflicts excruciating pain on multiple targets. "), - ("Agony ", dark, 0, effect.none, "This spell causes intense suffering and torment to a target. "), - ("Despair Mass ", dark, 0, effect.none, "Ordinary spell that spreads feelings of hopelessness and despair. "), - ("Despair ", dark, 0, effect.none, "A spell that overwhelms a target with feelings of profound sadness. "), - ("Life Drain Mass ", dark, 0, effect.none, "A spell that drains life force from multiple targets to heal the caster."), - ("Life Drain ", dark, 0, effect.none, "This spell allows the caster to drain the life essence of a foe. "), - ("Purge ", dark, 0, effect.none, "A spell that cleanses a target from curses, diseases, and negativity. "), - ("Summon Dark Elemental ", dark, 0, effect.none, "This spell summons a sinister creature of darkness to serve the caster. "), - ("Terror ", dark, 0, effect.none, "A spell that instills intense fear in the target, causing them to flee. "), - ("Weakness Mass ", dark, 0, effect.none, "A spell that reduces the strength and abilities of multiple targets. "), - ("Weakness ", dark, 0, effect.none, "This spell weakens the target, reducing their physical prowess. "), - ("Earthquake ", earth, 0, effect.none, "This spell causes the ground to shake violently, damaging the area. "), - ("Erosion ", earth, 0, effect.none, "A spell that gradually wears away and weakens the defenses of the foes. "), - ("Petrification ", earth, 0, effect.none, "A powerful spell that turns the target to stone, rendering them useless."), - ("Poison Cloud ", earth, 0, effect.none, "This spell creates a toxic cloud that poisons and harms all in it. "), - ("Regeneration Mass ", earth, 0, effect.none, "A spell that rapidly heals and rejuvenates multiple enemies. "), - ("Regeneration ", earth, 0, effect.none, "This spell accelerates the natural healing process of a single target. "), - ("Rockwalls ", earth, 0, effect.none, "A spell that summons sturdy walls of rock for defense or to block paths."), - ("Stone Skin Mass ", earth, 0, effect.none, "A spell that hardens the skin of multiple friends, increasing defense. "), - ("Stone Skin ", earth, 0, effect.none, "This spell encases one unit in tough stone armor, reducing damage taken."), - ("Summon Earth Elemental ", earth, 0, effect.none, "This spell summons a elemental creature of earth to aid the caster. "), - ("Determination Mass ", fire, 0, effect.none, "A spell that boosts the resolve and strength of multiple targets. "), - ("Determination ", fire, 0, effect.none, "This spell enhances the determination and willpower of a single target. "), - ("Fireball ", fire, 0, effect.none, "A powerful projectile of fiery energy that explodes on impact. "), - ("Fire Bolt ", fire, 0, effect.none, "A quick and focused bolt of fire that can be launched at a target. "), - ("Fire Shield ", fire, 0, effect.none, "This spell creates a protective barrier of flames around the caster. "), - ("Fire Storm ", fire, 0, effect.none, "A spell that unleashes a fierce rain of fire upon all foes in the area. "), - ("Frenzy ", fire, 0, effect.none, "This spell increases the speed and aggression of a target in combat. "), - ("Immolation ", fire, 0, effect.none, "A spell that engulfs the target in flames, causing continuous burning. "), - ("Inner Fire Mass ", fire, 0, effect.none, "A spell that ignites the inner fire of multiple targets. "), - ("Inner Fire ", fire, 0, effect.none, "This spell increases the inner strength and power of a single target. "), - ("Summon Fire Elemental ", fire, 0, effect.none, "A spell that calls forth a formidable elemental creature of flames. "), - ("Blindness ", light, 0, effect.none, "A spell that causes the target to be temporarily blinded. "), - ("Celestial Armor Mass ", light, 0, effect.none, "This spell grants multiple targets celestial protection. "), - ("Celestial Armor ", light, 0, effect.none, "A spell that bestows celestial armor upon a single target. "), - ("Heal Mass ", light, 0, effect.none, "A spell that heals multiple targets simultaneously. "), - ("Heal ", light, 0, effect.none, "This spell restores health to a single friendly target. "), - ("Purify ", light, 0, effect.none, "A spell that removes curse or misfortune from a single target. "), - ("Retribution Heal ", light, 0, effect.none, "A healing spell that also inflicts damage to attackers of a unit. "), - ("Retribution Mana ", light, 0, effect.none, "This spell damages enemies and replenishes the caster's mana. "), - ("Retribution Shot ", light, 0, effect.none, "A spell that deals damage to foes and heals the caster. "), - ("Summon Light Elemental ", light, 0, effect.none, "This spell summons a radiant elemental being to aid the caster. "), - ("Sunburst ", light, 0, effect.none, "A powerful spell that releases a blinding burst of light. "), - ("Dispel Magic Mass ", prime, 0, effect.none, "A spell that removes magical effects from multiple targets at once. "), - ("Dispel Magic ", prime, 0, effect.none, "This spell cancels out magical buffs and effects on a single target. "), - ("Disruption ", prime, 0, effect.none, "A spell that disrupts the flow of magic, causing chaos and instability. "), - ("Haste Mass ", prime, 0, effect.none, "This spell accelerates the movement and actions of multiple targets. "), - ("Haste ", prime, 0, effect.none, "A spell that boosts the speed and agility of a single target. "), - ("Implosion ", prime, 0, effect.none, "A powerful spell that collapses the target in on itself, dealing damage."), - ("Mana Drain ", prime, 0, effect.none, "This spell siphons mana from the target, depleting their magical energy."), - ("Slow Mass ", prime, 0, effect.none, "This spell reduces the speed and reaction time of multiple targets. "), - ("Slow ", prime, 0, effect.none, "A spell that decreases the speed and movement of a single target. "), - ("Teleport ", prime, 0, effect.none, "A spell that instantly transports the caster to another location. "), - ("Time Statis ", prime, 0, effect.none, "A spell that suspends a foe, rendering them temporarily unable to act. "), - ("Blizzard ", water, 0, effect.none, "A spell that conjures a fierce snowstorm, dealing cold damage. "), - ("Eternal Winter ", water, 0, effect.none, "This spell creates a perpetual winter environment in the targeted area. "), - ("Frozen Ground ", water, 0, effect.none, "A spell that freezes the ground, creating ice that hinders movement. "), - ("Ice Armor Mass ", water, 0, effect.none, "This spell envelops multiple targets in protective ice armor. "), - ("Ice Armor ", water, 0, effect.none, "A spell that forms a protective ice shield around a single target. "), - ("Ice Bolt ", water, 0, effect.none, "A basic spell that launches a bolt of ice towards a target. "), - ("Ice Breaker ", water, 0, effect.none, "A spell that shatters ice-based defenses and immunities on a target. "), - ("Ice Wall ", water, 0, effect.none, "This spell creates a barrier of solid ice, blocking movement and arrows."), - ("Summon Water Elemental ", water, 0, effect.none, "A spell that summons a powerful water elemental ally to aid in combat. "), - ("Winter Circle ", water, 0, effect.none, "This spell creates a magical circle that enhances ice-based spells. ") + ("Arrow Storm ", air, 1, effect.none, "- "), + ("Torment ", dark, 1, effect.none, "- "), + ("Stone Armour ", earth, 1, effect.none, "- "), + ("Fireball ", fire, 1, effect.none, "- "), + ("Heal ", light, 1, effect.none, "- "), + ("Ice Armour ", water, 1, effect.none, "- ") ); ------------------------------------------------------------------------------------------ diff --git a/sprite/magic/air/arrow_storm.png b/sprite/magic/air/arrow_storm.png new file mode 100644 index 0000000000000000000000000000000000000000..55c7b72e445fea99787b3780c0ab9024c6bd3fa6 GIT binary patch literal 934 zcmV;X16lluP)hDEXT6@;nPg)?=Sm2$L8*&hS}CO-&h6X^R%`W001?|`mE5;&Pkp{`+g{Uf3lYGs zlKoNPLYP zy3I4G&xbHSuNSJ^ZJybA=HcA#w-e)eE{g`{g8-@Up}_mlSYV1ESQ}DpKbPgeJYfwe zH4NZV(5c9Qc5?Qt*6N%H(P8lC^?IvA341Jf7}gZ%Tzw_m!tMZkz%_+^1#ZH^rwons zV`@Un3IgB#?u&^8KL>myLErmac+WG^!(1{lD7J<e8&}`irA`)GeK#1NOV2nxgt!`2K4s2 z$RjZ+@1F&p5(Vb!4@FS|)OcTN;?rtWFw|8Zc8qU1_H&*mq~-HlX8{Zs^|@_>F+PYEXroT7Xl%%JIHb)R>X*XBagMC&YTfx1LxHSq;{DKDGAXTvKl_3ViE45{-b^ zvvaATuoXOENw3LW;Qtg-#8|1Z9#c>3eL<5hfbl#PzUSyLwXB>2k}K0f7?W5^qVvEv zJou=7D2mAgt-VjVu>HT;JYXce*hDDo2An96zBt*x^k&G6GW0BKf~GG=d&6^Hjus=J zWmk|~=y2fQ0#NtoN{Y}s>-&*?hyd!|nlmKD6g+l|%s~Lo2BTULM(-5+$N?in7zzI& zz;ju2jR-x2fOfd>{#M|_V#xmiM4;@!_4e+uYgJ2js7_X;0YgZ_aDjtDU!y!%ZB7RrAY7%I{T5C z>=U8fp(%_Ap@C;UH1$#Fs>kM{p1S10$y|Zoe028j@buNMfBL_@PakEc*8l(j07*qo IM6N<$f_)Od7XSbN literal 0 HcmV?d00001 diff --git a/sprite/magic/air/base.png b/sprite/magic/air/base.png new file mode 100644 index 0000000000000000000000000000000000000000..f42f7635da807674b3254022fc2ebd3154a538c9 GIT binary patch literal 753 zcmV|XJLi1N@rjdSfR7r2&};UIU{58 zVJGwmV5F1ii4Z?;Y$t$Y%*_vLj4|(NnsaZ^J7J`eD2%TG{I526DniQspaAp&pMs_E?`fJje|wAIV}pK{9MC&wU&AnuU1y;IJ~zgg zXWNQmp2GZmKCE`nw$08n?`fKGKR%wZ>nt#@1PHm01Rg_kfhB@)Z3y)}cHN5k!8IV& zF@Wy{9r7ILCuUFYoQ;X#od$nCpG6&s+jGIGTT7s0_ep^1$F5<$64E4mZ zG@(TWf!{cMIi7%Xz$OXe(a(iPBeVB37xWB?tuzNTzNsPy{@J$BZg+SPw0Calhk8S7 z`s|&vxD95t6et(|8_+3_2-v~09j6hR0B^%tVAKj<;t6ox zW0v{8B`zS14R@Md|3kS{$)?NiZSA<4iiCt*)bG+d89>5adOrtNI6&mSN-WiYB zxkE6^RS1&>i{1O7v`rO)P1xeP&gSyHA z(%PC@L?|hdSqYF+V05$yrIlivS>Q|}>;bAx69^WXJ z$0Dp2La7}iM{k&rf`{O7sEc-tq&xu|RQr}0dIWO-br+5Z)WDiIO>G+8b=#bGq;9!! jGS=YATW59i^xcnNmaO@hSnD%K00000NkvXXu0mjfRKE3Ocl5OMpdek5zKVvrk>$@$Ba`yoLy5SI+*Z za1ti=0R62tcqu~8e#!g^fp5I=!Xxkp=$@|cc=lJ^irro-+?@J}BW6EmBaV*%9ooP_ z0f1ivfE8W>f8(us?uuKnAS42n7|#ojK+FRHQto4c=g?YUiy&GXQf-qb5c5TAK(1i| zUkWUSJssLGB|>x<h z{;heSIePr(@_>hc3*Z8{04{(F-~zY+E&!WC2I~Uj9!hFaBHwuB$#t(6L`po4Q^z5s#^GE8o00000NkvXXu0mjfjaN>Z literal 0 HcmV?d00001 diff --git a/sprite/magic/dark/torment.png b/sprite/magic/dark/torment.png new file mode 100644 index 0000000000000000000000000000000000000000..f2d6c6ba34a9af52bf462ffb0ec054f0b47dc482 GIT binary patch literal 1266 zcmVov79)-FK-h7>~X$CFL1zSdL@7%eYY<1iQ^@={fXnH=f;m9 zf%{eKze$`1W1YbNy&HHoX3k{}LPH zxDjx`W|BYwKyCv-D|ij~8{|6g11U@hlfccw^M&2SnC}S4$)^Rp1nmXfLWs8yxqGt` z81v%oK<&m1d=%)Ma`--_{v5EGN+g)Wp!9$i*?WO&S+{^LU9Z+RoetUq7M&~7EIiEmxNL6ly==D%$@?n175I@C86Z}p8fJTJ~pZZ-d-ZL zH|P8VYMy%fT$QGku%%;D5yqJ3*0R!-^Ts}JbZZgMT|+COrUKIhz2H4*Pe%N@ z&Bt1!g#3SG_LtIN!IPUM+m(VcCa8^agldKnP#Y0iI)6J(t4%3Qt0+Rq63+h?a&$BW zS*?-OBwD5n04MmW!=)wv-NlawP)DJZC5?UN`g7}ea59G@TBz0krZ$fKyK%w5JavTpFFAZDcZ~OWz|ta1&m*r?81C*SGJ>q0 z2P0G{v|j1~YQd3pkXp6I(gAeRcBH@4C8R91i9REU7T5zxB$`KE-%_kN^al+?U{ z>V|-nQj_Zo!Y+3TXkA+~VrcB~2kwpa=-a!v^NxVX0;3uUR1F|y=LptxI4NJ*8j){Z z>ogmH-cAY0Fw_y?R|I@vH}#N^Bf`6g!ZU(waqa@2T`4MeL`kR-(Nkwg;JuNTSXV1W zd1r(Ki-FOaGwc2Cwr^^<}et&`9JaT c^lxr|09b^8rzhKnU;qFB07*qoM6N<$f~j0qI{*Lx literal 0 HcmV?d00001 diff --git a/sprite/magic/earth/base.png b/sprite/magic/earth/base.png new file mode 100644 index 0000000000000000000000000000000000000000..5d09de5eae0fdf09b328ee1b79a9d2f052491927 GIT binary patch literal 756 zcmV7a7+U9gY!TE zz`F(jH9QA?f6Jb`UCRYQ5wOH~9xsQ?z5prr(ZEw^DX>NmsST;N(Gxz*7qJ1kh7o)z z=#=MRJ9GB*gPRp0ItI@g(eFLe9F);jy7>iq&QIK2nR1lUvWD@TP+{g$`KGBYo*5HJCb7XQjT z&>cShGkL&5zyvS>OaK$W1TXrA)R`GaStW2D3bSpzbWMYfMZ{dECfsdp#VqA z1J#S7d&>jD__q)M`!Zx6U>`??6}K-!0sIsK+Re|cjS7ma?{%t|1C)Dfnh~LNvs91- z3pN;SE<){2v0xO~lL!mIhXOoau1bXe5CYpNg{NDAJpt%HN<~;x2nt@?^MuvkE>90k zpa`0c$S4FF?EhX59IIFHq7%SJHiTaS_*hQJi4Zf8-)p^MjqUPO1aBggJ2A5Lfe9^m z3ZA;Z>cmLS6R1J0ADLk#oddYLNJQWUwtQ$R2!WFxn~NKEqJxw1^#FcekSmy*Cu{+q ma{JT>7lc4*ImF@V6PI8A-K(*G#1u3D0000vO;I@3K=0;p|f;^u8{AK zFKR#tgFwQ#DR;e#(}49JPd~81m^W|M7-P)$$D?|Ld9j-!5V4&a3 zya<>V8vr%N1fPvDZ15QH=T}+30tMh0Pz(MwGty};tqhK>C5Dv1NVtJB zJ8e>Gb6Xe=f2wXEMu4FI<1!fcksyZ~2V8Iehu=_Z0jL{Pa(*HXxSrA05|766 z3iw|_?oS%jqjD`5$VK{*Q=}V8rWMO-ol20g!(z+8S4{58qw%s*7~(+Uxd2|6XwG`k z_=Wy2x)$(_lJt3PV%6RZb(eW+_A_sWCNpU3wSG{4Il5`?Z+w*m(Q z`2VOSL6Zm{c#AC+UZx_`D!yFjpsR0X`-BRECROptk*r!_#lv{sCVxLLD|idD{R0002ovPDHLk FV1nWOlEeT2 literal 0 HcmV?d00001 diff --git a/sprite/magic/fire/base.png b/sprite/magic/fire/base.png new file mode 100644 index 0000000000000000000000000000000000000000..52d83c1c19e0e8d666b3886deccaff8f862852a3 GIT binary patch literal 760 zcmVT_9PyyiLr2+u>`GO&~f~Nb_aa7sFc2^~RJ6+?)eG5ZM!+StLyF&Im z!ErIJ8}M3g;yHwn{ao`H0`G5t=WBB3zJ&qL@wjhcc--UNUJ5Rye$?TzpK3!LBY>ux zZbDl07yv*ko(q0|%kF#J0WQrsE`H8!RM2F7+NrY~pj}&&3xwFk zQi~)Qv%u(R2&pT@7NbB(5VjD%0PuW4l>*^EKwvwu;^|W0836i2EQCElP~oXPPqogL z%hL@L2tl(D89|`I?Eh-Pu6i{OI$XSKLHLb}cjbf-1ebyQT%j*+7` zOlXDs#8dZI?HCDp0yQZ2Ei=4$a{zZ22?TCn&YPwdA#l}gb56sqv~kk;K7eORPB1i2 qI6}P7?R_KMA_QU^KgH(hE0v5QB&Tsc) z`2GAQpKEUX3=-6?mi?4C1jA0yW8V!tlF+grG0!1z`4D;kbC>h^O+IyBzn|aa^YA(@ z`zUd1uCF+l{T7?zmIeMR(J-dAKaKsjx1A1g11&*@r0bRRZ%Qg%L z%mFVLD>hj~ze-!-Tbv{>i zS>$xRgE!|En}Yv+xb5qC`lr`rN~u+sU6zfWhYns4&?|ccuLd%}3QFV#@^oG9DfBw&@>_GEhxy!9xPw~hJ8W=X`*(Ce=u zffBIB^VXxf@5Q+SvJ&@{Vad=>d%s7Ju#GerE$~d{r|TUc1FFBV=NL5w60GH+S{QVN0FxOzriN=pknDq|VUv6tj{6eil*SWz7Xc`D zTLx=@7Jya$K*&tkJA^@k>yVtW%VpmX-Cla)KRUW|<2f4-TUF$;Nt%zp-@R;m2u+d- zo|VlhwP%*LJ@JntG*-`94ae9nWS*AiDQK2Zt>m#%)V%NIfuRtvBw!M=a$bP=@^(Q) zF85JAj0D#Fj5I^teSqEsKSNsvz-d_;YbwEnd(=ste)i6YW*N=O{Tug56mIx7; zFN9YJ4HdQTbZxig!vy@gl*y1yebq=Qz%ep1D1q%iaO(~Mmi-y)r~)sJDG4%FNx;FA z{odpK;T(W1D60-Mi)Ys4Ol-Qs&l8O;O!S)JFv|g6f8b7hWCB(ka*{v6675(Yk_0_6 zYKez-gyGh8=k^Vrw>1$yoB(`eg>A9@9h>YZN@4OmJ_T|_Nrb(}Dh05)b8Im&2iPY# zT8`GmCnI9&?o~)jzv))MR|{Fq0kt~6=mo0fY$Ew!;^7dSxQRR-AD$DeHAC*K@OzDf zoddM(d369ADnEq)3;~=F@n(e=V}h}1SgIa6>|R5Fmj`MyF}4cmAPM_`*+AR-=SKEt z-%~kG2n^}z!=LcuFg7dfHAF~KHTm_bA(ySQ5@3@uv3)Z%Ari^9j0jAURT8pkfeWus zJU2Mtd$;Dor`lsN%Q!2KEJ^Bf0XE_bdEd0gxX_~4`>PaS8MkwCwNTI@>^$|A0#YXv zC^o5%41vQ6h~@&;fgu^#t(O>J)E%bfWax3v7hd&(pUYtH z;%Ds+@rg`rOyGgma*0#ti@&@qcc_AB*N0A>6%bi{*;*yyc^ws^4^UgRoAwXFABs43 zH5Yd-)(T%f)~^$agaK=zEg>y(a2eeQc#Cy|z@9|{0%OXk^%jxAPLJ)yQdyDvO3~is zr*_1MA%P2=mlO==g=D?EhSik zzWXaP)xl8hrKt!BXyA8#X{rc;pZeMyHS8z7I7#OOF;gOg(RH~0C3sKvUWF?{VD#qy e#LLq^dHW0HqZ``KIQdTi0000|XJLi1N@rjdSfR7r2&};UIU{58 zVJGwmV5F1ii4Z?;Y$t$Y%*_vLj4{*no^x;DTyKvA*u{3=O@`q$ht7xLHJ5b!4H3Yu zl>J`eD2%TG{I526DniQspaAp&pMs_E)AXJ>e|wAIV}pK{9N=7Uhv7AM-Dsf!J~zgg zwtb3Xp2B=SKdg3b`^?TW)AXKkKR%wW8!a%e1PHm01Rg_kfhB@)Z3y+oWp!8IV& zF@Wy{9r7ILCuWaxy^V?Bod!RjpG6&s+jGIGTT7s0_ep^1$F5<$64E4mZ zG@(TWf!{cMIi7%Xz$OXe(a(iPBeVB37xWB?tuzNTzNsPyzHOh-Zg+SP)VY4?hk8S7 z`gE?hxD95t6et(|8_+3_2-v~09j6hR0B^%tVAKj<;t6ox zW0v{8B`zS14R@Md|3kS{$)?NiZSA<4iiCt*)bG+d89>5adOrtNI6&mSN-WiYB zxkE6^RS1&>i{1O7v`rO)P1xeP&gSyHA z(%PC@L?|hdSqYF+V05$yrIlivS>Q|}>;bAx69^WXJ z$0Dp2La7}iM{k&rf`{O7sEc-tq&xu|RQr}0dIWO-br+5Z)WDiIO>G+8b=#bGq;9!! jGS=YATW59i^xcnN+yMEQIb0S*00000NkvXXu0mjf5NJ?n literal 0 HcmV?d00001 diff --git a/sprite/magic/light/heal.png b/sprite/magic/light/heal.png new file mode 100644 index 0000000000000000000000000000000000000000..cb1c4ee3239a31762dfb225f710f49233f4953cd GIT binary patch literal 1444 zcmV;V1zY-wP)Td!lB0KkxVfcJX z--qGzxu@e-kN|SUOH90viU$aa!21sC_DMs@4|J+Vf(vQF8!% zfUBmq0)I*cF9}Kk_x)q}K21ND51e~{Tpj26tP%p}*nCqo0sDZB6U3vR3m%P(^Zw|Z zbI$wY@}UH9;JM@1S0`$QMONwq4qT|n0Uv^QA$WH>^$U1B!uUu@Ng)BA3;j@S(86ca z+$wwz#(JRfF&BK(+}!EZZ-mEckAdTsN`m*trJr09Xp}qTsuBf{g~TI^8$Ac`&N+9z zhSfO-9zS;v2`mAnz{f^<9H$jXEPU5}IOm+}x(^mSer_oes+cF$z@JXN=*79P=l#)L zuRqlA*7xlaHR#9#K+Zu5gQH?v!k~3Z8-jP2%c$BajtE#QQX5C26g5t#o+Tk=Dtxe} zl_7Z7_m9oU(Bm}yTm%Zio4`|_06@WfBoZ)TF;jq6TftM7HDLH!Dgl^4N+#7X>KEGf z?uOxWkr7DHG`x1k#)UTtoORTx_s8ZFf@k~6A$c&Go_qG5ehyaetl4bs_`5XS{Zmd-t4DO*N3t9>S1hF2AeRR3t;Cc{k;idbauR7$rWHk^8t^-X z+!R4e&d73Oz4RL_u4dN*Qkd7yU**-Q`AI|+cY<2+@lSz|skl}_G83Tfuz0oYTa&Al zTIBAcD6HFILb%e`-mJ_*09QMNwFAp4(IID)tc6bN6xBi!mI2ldEKSq^Y6g%1!FjAo zv&T%N97CFk;%n6V#}-NJoYALST`V5ldz;hK=KLjmkxGE11(xE2R>rpafmlDZ2AHzF zFKJnvTPEXndZqXbyxJQpwR58@X+RG6MFV0hs9aRQ4o90CNOe0+z56RO>Rdp3X)1*TD&RZ6 yG_|?uyS_HZj?}k&aZQfsVUfXE44!P0-sSgx<4)-DU~#-~>d{2; z--^Gc%53M~v;Mlr;j0yK{t9<4my}9vE@?S7f7F@P!X! z?YD7wRB|-#JuALAQFFp8p2odrz8mSWCbk}kdsZ!N&-{?F(RkMPmIIMzs~sPld1kAS zbM2^y$mjp9+a=DYzJ23vTrbW!N#jA}nP|nFEjucf-Q4bS@ROhd(}c`#Tm4&oe@~kp zICb6j#}k+s3?lz!zdm4A{crm#22dEl!GjGgPmC5`TUd#S6|+*}w0rzAuG>J)^mO%eS?83{1OTUGzFz7a7+RWz4Jf; zz`F(jH9QCYe#@S_-pU0*5wOH~UJr-Nz5prr(ZEw^DX>NmsST;N(Gxz*7qJ1kh7o)z z=#=MRJ9G97y_*#wItI@g(eFLe9F);jy7>iq&QIK2nR1lUvWD@TP+{g$`KGBYo*5HJCb7XQjT z&>cShGkL&5zyvS>OaK$W1TXrA)R`GaStW2D3bSpzbWMYfMZ{dECfsdp#VqA z1J#S7d&>jD__q)M`!Zx6U>`??6}K-!0sIsK+Re|cjS7ma?{%t|1C)Dfnh~LNvs91- z3pN;SE<){2v0xO~lL!mIhXTAFu1bXe5CYpNg{NDAJpt%HN<~;x2nt@?^MuvkE>90k zpa`0c$S4FF?EhX59IIFHq7%SJHiTaS_*hQJi4Zf8-)p^MjqUPO1aBggJ2A5Lfe9^m z3ZA;Z>cmLS6R1J0ADLk#oddYLNJQWUwtQ$R2!WFxn~NKEqJxw1^#FcekSmy*Cu{+q ma{JT>7lc4*ImF@V6PI7}9jmcU8_%i$0000}{Rs2n0^eW8JQo{ufba16vF+w|ZZ)p$AG`TX#H;Yc0zyzXem6;#RBG#fSi0d;C;|kz#KxTHst08CA=_CWCLmw z18^zOIpx4SC41J{7D-5^K|cm?WKRW-Wz7Ly8n0#>b_Wy#rpQDzvKoIabOx{G<$HblQIY{%KG-FxFO5o77Wdz!m0mXRJEq z8R;#xdK#3D52MsHB}zyuT@8|7X=%31OVYXm{*{oI+YeNUOuZ`Cc7YbZrS{P(r6(UdTYx^%QPk(Ux3o&?b%*^JD!~g&Q07*qoM6N<$g2fcM Ay8r+H literal 0 HcmV?d00001