#spellList ! Information pertaining to PC for each spell ! spellKnown['spellname'] = 1 if the spell is known by the player ! spellLearn['spellname'] = 0-100, percentage of study that has occured to learn this spell. 100+ will learn it. ! ! MetaData for Each Spell ! spellMana['spellname'] = Mana cost to cast this spell ! spellTime['spellname'] = How much time will pass in the casting of the spell ! spellDiff['spellname'] = Difficulty to learn and cast this spell ! $spellName['spellname'] = Pretty name for the spell ! $psellDesc['spellname'] = Description of what the spell does. ! $spellReq['spellname'] = Prerequisite Spell needed to learn this spell ! $spellOptDesc['spellname'] = name of an array of Option Descriptions for this spell ! $spellOptVal['spellname'] = name of an array of values to pass for Spell Options ! ! There are also defined lists of spells grouped together ! $combatSpells = Spells that can be used in Combat ! $nonComSpells = Non-Combat Spells, ones that can be executed in any location. ! --- ! $basicSpells = basic spells that are taught by Tatiana ! $healSpells = Healing Spells ! $beautySpells = Beauty Spells ! $librarySpells = Spelsl Researchable in the Library ! $fireSpells = Fire-based spells ! $electSpells = Electricity based spells ! $earthSpells = Earth magic spells ! $airSpells = Air based spells ! $waterSpells = Water based spells ! ! To create a new spell... ! 1) fill out the meta-data as listed above, this describes stats abotu the spell, cost, difficulty, desc, etc. ! 2) Typically, a spell will be in one of $combatSpells or $nonComSpells (this picks how the spell is executed ! by the user), andcalso in one other of the lists ($basicSpells, $fireSpells, etc.), which picks where you ! learn the spells. ! 3) Then create a matching section in the "spell" location for it. This function in "spell" describes what the ! spell actually does in game mechanics !teleport spellMana['teleport'] = 1000 spellTime['teleport'] = 20 spellDiff['teleport'] = 20 $spellName['teleport'] = "Teleport" $spellDesc['teleport'] = "You can move from one Fairy Circle to another." !regenerate spellMana['regenerate'] = 500 spellTime['regenerate'] = 1 spellDiff['regenerate'] = 5 $spellName['regenerate'] = "Regenerate" $spellDesc['regenerate'] = "Slowly regain health over time." !curedisease spellMana['curedisease'] = 10000 spellTime['curedisease'] = 30 spellDiff['curedisease'] = 25 $spellName['curedisease'] = "Cure Disease" $spellDesc['curedisease'] = "Your body will burn itself free of any diseases you may have." !curewounds spellMana['curewounds'] = 10000 spellTime['curewounds'] = 30 spellDiff['curewounds'] = 25 $spellName['curewounds'] = "Cure Wounds" $spellDesc['curewounds'] = "You feel your bodys wounds begin to heal." !curewounds2 spellMana['curewounds2'] = 100000 spellTime['curewounds2'] = 60 spellDiff['curewounds2'] = 75 $spellName['curewounds2'] = "Greater Cure Wounds" $spellDesc['curewounds2'] = "You feel your body heal to perfection." $spellReq['curewounds2'] = 'curewounds' !painblock spellMana['painblock'] = 1000 spellTime['painblock'] = 1 spellDiff['painblock'] = 8 $spellName['painblock'] = "Pain Block" $spellDesc['painblock'] = "Block your pain for some time." !berserk spellMana['berserk'] = 5000 spellTime['berserk'] = 1 spellDiff['berserk'] = 30 $spellName['berserk'] = "Berserker Rage" $spellDesc['berserk'] = "Enrage yourself with supernatural strength, speed, and endurance." !shower spellMana['shower'] = 500 spellTime['shower'] = 1 spellDiff['shower'] = 1 $spellName['shower'] = "Shower" $spellDesc['shower'] = "Clean and refresh yourself as if you have taken a shower." !makeup spellMana['makeup'] = 100 spellTime['makeup'] = 5 spellDiff['makeup'] = 15 $spellName['makeup'] = "Makeup" $spellDesc['makeup'] = "Apply Makeup to yourself magically." $spellOptDesc['makeup'] = '$MakeupSet' $spellOptVal['makeup'] = '$MakeupSetVal' if $routine1+$routine2+$routine3+$routine4 = '': killvar '$MakeupSet' killvar '$MakeupSetVal' $MakeupSet[0] = 'No Makeup' $MakeupSetVal[0] = '000' $MakeupSet[1] = 'Light Makeup' $makeupSetVal[1] = '110' $MakeupSet[2] = 'Vibrant Makeup' $makeupSetVal[2] = '210' $MakeupSet[3] = 'Heavy Makeup' $makeupSetVal[3] = '310' else killvar '$MakeupSet' killvar '$MakeupSetVal' $MakeupSet[0] = 'No Makeup' $MakeupSetVal[0] = '000' i=1 if $routine1 ! '': $MakeupSet[i] = $routine1custname $MakeupSetVal[i] = $routine1 i += 1 end if $routine2 ! '': $MakeupSet[i] = $routine2custname $MakeupSetVal[i] = $routine2 i += 1 end if $routine3 ! '': $MakeupSet[i] = $routine3custname $MakeupSetVal[i] = $routine3 i += 1 end if $routine4 ! '': $MakeupSet[i] = $routine4custname $MakeupSetVal[i] = $routine4 i += 1 end killvar 'i' end !cosmetica spellMana['cosmetica'] = 10000 spellTime['cosmetica'] = 5 spellDiff['cosmetica'] = 50 $spellName['cosmetica'] = "Cosmetica" $spellDesc['cosmetica'] = "Clean and tidy yourself, completely beautifying yourself; hair, makeup, grooming of all kinds." $spellReq['cosmetica'] = 'makeup' !glamour spellMana['glamour'] = 500 spellTime['glamour'] = 1 spellDiff['glamour'] = 30 $spellName['glamour'] = "Glamour" $spellDesc['glamour'] = "Change your appearance." !bodymod spellMana['bodymod'] = 40 spellTime['bodymod'] = 30 spellDiff['bodymod'] = 0 $spellName['bodymod'] = "Body Modification" $spellDesc['bodymod'] = "Change your appearance." !fog spellMana['fog'] = 10 spellTime['fog'] = 0 spellDiff['fog'] = 1 $spellName['fog'] = "Fog" $spellDesc['fog'] = "Create a fog on the battlefield, obscuring the view of the enemy." !clone spellMana['clone'] = 15 spellTime['clone'] = 0 spellDiff['clone'] = 1 $spellName['clone'] = "Create Clone" $spellDesc['clone'] = "You can create an exact clone of yourself, and slip out of sight of the enemy." !stun spellMana['stun'] = 20 spellTime['stun'] = 0 spellDiff['stun'] = 2 $spellName['stun'] = "Stun" $spellDesc['stun'] = "Paralyze the enemy with a touch." !weapon spellMana['weapon'] = 20 spellTime['weapon'] = 0 spellDiff['weapon'] = 0 $spellName['weapon'] = "Empower Weapon" $spellDesc['weapon'] = "Magically power a weapon causing greater damage." !wind spellMana['wind'] = 40 spellTime['wind'] = 0 spellDiff['wind'] = 2 $spellName['wind'] = "Gust of Wind" $spellDesc['wind'] = "Summon a gust of wind that will clear away fog." !multiclone spellMana['multiclone'] = 45 spellTime['multiclone'] = 0 spellDiff['multiclone'] = 2 $spellName['multiclone'] = "Multi-Clone" $spellDesc['multiclone'] = "Summon three clones of yourself and slip out of the enemys sight." $spellReq['multiclone'] = 'clone' !energo spellMana['energo'] = 50 spellTime['energo'] = 0 spellDiff['energo'] = 3 $spellName['energo'] = "Energy Shield" $spellDesc['energo'] = "Create an energy shield to absorb incoming damage. You gain 100 defense." !haste spellMana['haste'] = 60 spellTime['haste'] = 0 spellDiff['haste'] = 3 $spellName['haste'] = "Haste" $spellDesc['haste'] = "Hasten your passage through time to gain reaction speed to seize the initiative." !heal spellMana['heal'] = 400 spellTime['heal'] = 0 spellDiff['heal'] = 4 $spellName['heal'] = "Heal" $spellDesc['heal'] = "Exchange mana for health, healing your wounds and fortifying your body." !hand spellMana['hand'] = 100 spellTime['hand'] = 0 spellDiff['hand'] = 0 $spellName['hand'] = "Quivering Palm" $spellDesc['hand'] = "Add energy from your mana to your hand for a devistating strike." !scaldingtouch spellMana['scaldingtouch'] = 10 spellTime['scaldingtouch'] = 0 spellDiff['scaldingtouch'] = 6 $spellName['scaldingtouch'] = "Scalding Touch" $spellDesc['scaldingtouch'] = "Flames spring from your hands." !burninghands spellMana['burninghands'] = 100 spellTime['burninghands'] = 0 spellDiff['burninghands'] = 7 $spellName['burninghands'] = "Burning Hands" $spellDesc['burninghands'] = "A torrent of flames jets from your hands." $spellReq['burninghands'] = 'scaldingtouch' !firebarrier spellMana['firebarrier'] = 150 spellTime['firebarrier'] = 0 spellDiff['firebarrier'] = 8 $spellName['firebarrier'] = "Fire Barrier" $spellDesc['firebarrier'] = "You are shielded by a wall of flames. Adds 750 defense." !firestorm spellMana['firestorm'] = 250 spellTime['firestorm'] = 0 spellDiff['firestorm'] = 9 $spellName['firestorm'] = "Fire Storm" $spellDesc['firestorm'] = "Super heated embers rain down upon your enemies." !flameshield spellMana['flameshield'] = 500 spellTime['flameshield'] = 0 spellDiff['flameshield'] = 10 $spellName['flameshield'] = "Flame Shield" $spellDesc['flameshield'] = "A Shield made of Flames interposes itself between you and your enemy, absorbing 2500 damage to defend you." !shock spellMana['shock'] = 10 spellTime['shock'] = 0 spellDiff['shock'] = 6 $spellName['shock'] = "Electric Shock" $spellDesc['shock'] = "An electric spark shoots from your hand." !lightning spellMana['lightning'] = 100 spellTime['lightning'] = 0 spellDiff['lightning'] = 7 $spellName['lightning'] = "Lightning" $spellDesc['lightning'] = "A lightning bolt shoots from your hand." !electricbarrier spellMana['electricbarrier'] = 150 spellTime['electricbarrier'] = 0 spellDiff['electricbarrier'] = 8 $spellName['electricbarrier'] = "Electric Barrier" $spellDesc['electricbarrier'] = "A static electric field blocks incoming attacks from reaching you." !1000birds spellMana['1000birds'] = 250 spellTime['1000birds'] = 0 spellDiff['1000birds'] = 9 $spellName['1000birds'] = "Dance of a Thousand Birds" $spellDesc['1000birds'] = "The air is filled with small lightning bolts leaping through the air with shrieks." $spellReq['1000birds'] = 'lightning' !dancingsphere spellMana['dancingsphere'] = 500 spellTime['dancingsphere'] = 0 spellDiff['dancingsphere'] = 10 $spellName['dancingsphere'] = "Dancing Sphere" $spellDesc['dancingsphere'] = "Lightning dances around you blocking attacks coming toward you." !quicksand spellMana['quicksand'] = 10 spellTime['quicksand'] = 0 spellDiff['quicksand'] = 6 $spellName['quicksand'] = "Quicksand" $spellDesc['quicksand'] = "Opponent is caught in a quicksand trap." !earthshield spellMana['earthshield'] = 100 spellTime['earthshield'] = 0 spellDiff['earthshield'] = 7 $spellName['earthshield'] = "Earth Shield" $spellDesc['earthshield'] = "Tendrils of earth reach up to defend you. Some of the damage it absorbs is captured as mana and given to you." !abyss spellMana['abyss'] = 150 spellTime['abyss'] = 0 spellDiff['abyss'] = 8 $spellName['abyss'] = "Abyss" $spellDesc['abyss'] = "The Earth opens up beneath your opponents feet, slamming shut damaging him and depriving him of the ability to move." !earthguardian spellMana['earthguardian'] = 250 spellTime['earthguardian'] = 0 spellDiff['earthguardian'] = 9 $spellName['earthguardian'] = "Earth Guardian" $spellDesc['earthguardian'] = "The Earth itself comes alive defending you from attacks. It draws from the power of the land to regenerate itself every round." !sando spellMana['sando'] = 500 spellTime['sando'] = 0 spellDiff['sando'] = 10 $spellName['sando'] = "Sando" $spellDesc['sando'] = "Two huge plates of earth colapse together crushing the enemy and depriving him of the ability to move." !windgust spellMana['windgust'] = 10 spellTime['windgust'] = 0 spellDiff['windgust'] = 6 $spellName['windgust'] = "Wind Gust" $spellDesc['windgust'] = "a huge gust of wind rips past you killing clones and removing fog." !pressure spellMana['pressure'] = 100 spellTime['pressure'] = 0 spellDiff['pressure'] = 7 $spellName['pressure'] = "Horrific Pressure" $spellDesc['pressure'] = "Enormous air pressure surrounds your enemy causing damage as well as killing clones and removing fog." !vacuum spellMana['vacuum'] = 150 spellTime['vacuum'] = 0 spellDiff['vacuum'] = 8 $spellName['vacuum'] = "Vacuum Sphere" $spellDesc['vacuum'] = "A turbulent sphere of vacuum surrounds you blocking incoming attacks." !vacuumshells spellMana['vacuumshells'] = 250 spellTime['vacuumshells'] = 0 spellDiff['vacuumshells'] = 9 $spellName['vacuumshells'] = "Vacuum Shells" $spellDesc['vacuumshells'] = "Turbulent spheres of vacuum bombard your enemy destroying clones and removing fog." !devouringvacuum spellMana['devouringvacuum'] = 500 spellTime['devouringvacuum'] = 0 spellDiff['devouringvacuum'] = 10 $spellName['devouringvacuum'] = "Devouring Vacuum" $spellDesc['devouringvacuum'] = "A devouring vacuum sucks away your enemys defensive shields." !leechmana spellMana['leechmana'] = 10 spellTime['leechmana'] = 0 spellDiff['leechmana'] = 6 $spellName['leechmana'] = "Leech Mana" $spellDesc['leechmana'] = "Inflict 100 damage and absorb 100 mana from your foe." !flood spellMana['flood'] = 100 spellTime['flood'] = 0 spellDiff['flood'] = 7 $spellName['flood'] = "Flood" $spellDesc['flood'] = "Inflict 1000 damage and absorb 500 mana from your foe." !blister spellMana['blister'] = 150 spellTime['blister'] = 0 spellDiff['blister'] = 8 $spellName['blister'] = "Blister" $spellDesc['blister'] = "Create a protective sphere of water. Some of the damage absorbed is converted into mana for you." !sharkrockets spellMana['sharkrockets'] = 250 spellTime['sharkrockets'] = 0 spellDiff['sharkrockets'] = 9 $spellName['sharkrockets'] = "Shark Rockets" $spellDesc['sharkrockets'] = "Blobs of Water shaped like sharks fly towards your enemy stiking them for 1500 damage and abosorbing 2500 mana for you. Clones are destroyed" !greatflood spellMana['greatflood'] = 500 spellTime['greatflood'] = 0 spellDiff['greatflood'] = 10 $spellName['greatflood'] = "Great Flood" $spellDesc['greatflood'] = "A huge flood of water fills the area absorbing mana from the enemy and giving you additional protection." ! List Combat Spells for use in fight scenerios $combatSpells[0] = 'fog' $combatSpells[1] = 'clone' $combatSpells[2] = 'stun' $combatSpells[3] = 'weapon' $combatSpells[4] = 'wind' $combatSpells[5] = 'multiclone' $combatSpells[6] = 'energo' $combatSpells[7] = 'haste' $combatSpells[8] = 'heal' $combatSpells[9] = 'hand' $combatSpells[10] = 'scaldingtouch' $combatSpells[11] = 'burninghands' $combatSpells[12] = 'firebarrier' $combatSpells[13] = 'firestorm' $combatSpells[14] = 'flameshield' $combatSpells[15] = 'shock' $combatSpells[16] = 'lightning' $combatSpells[17] = 'electricbarrier' $combatSpells[18] = '1000birds' $combatSpells[19] = 'dancingsphere' $combatSpells[20] = 'quicksand' $combatSpells[21] = 'earthshield' $combatSpells[22] = 'abyss' $combatSpells[23] = 'earthguardian' $combatSpells[24] = 'sando' $combatSpells[25] = 'windgust' $combatSpells[26] = 'pressure' $combatSpells[27] = 'vacuum' $combatSpells[28] = 'vacuumshells' $combatSpells[29] = 'devouringvacuum' $combatSpells[30] = 'leechmana' $combatSpells[31] = 'flood' $combatSpells[32] = 'blister' $combatSpells[33] = 'sharkrockets' $combatSpells[34] = 'greatflood' ! List of Non-Combat Spells for use in Menu $nonComSpells[0] = 'heal' $nonComSpells[1] = 'regenerate' $nonComSpells[2] = 'curedisease' $nonComSpells[3] = 'curewounds' $nonComSpells[4] = 'curewounds2' $nonComSpells[5] = 'painblock' $nonComSpells[6] = 'berserk' $nonComSpells[7] = 'shower' $nonComSpells[8] = 'makeup' $nonComSpells[9] = 'cosmetica' ! Basic Spells $basicSpells[0] = 'fog' $basicSpells[1] = 'clone' $basicSpells[2] = 'stun' $basicSpells[3] = 'wind' $basicSpells[4] = 'multiclone' $basicSpells[5] = 'energo' $basicSpells[6] = 'haste' $basicSpells[7] = 'berserk' !Healing Spells $healSpells[0] = 'painblock' $healSpells[1] = 'curewounds' $healSpells[2] = 'curewounds2' $healSpells[3] = 'curedisease' $healSpells[4] = 'heal' $healSpells[5] = 'regenerate' ! Beauty Spells $beautySpells[0] = 'shower' $beautySpells[1] = 'makeup' $beautySpells[2] = 'cosmetica' ! Researchable Spells $librarySpells[0] = 'painblock' $librarySpells[1] = 'shower' $librarySpells[2] = 'makeup' $librarySpells[3] = 'cosmetica' ! Elemental Spell Groups $fireSpells[0] = 'scaldingtouch' $fireSpells[1] = 'burninghands' $fireSpells[2] = 'firebarrier' $fireSpells[3] = 'firestorm' $fireSpells[4] = 'flameshield' $electSpells[0] = 'shock' $electSpells[1] = 'lightning' $electSpells[2] = 'electricbarrier' $electSpells[3] = '1000birds' $electSpells[4] = 'dancingsphere' $earthSpells[0] = 'quicksand' $earthSpells[1] = 'earthshield' $earthSpells[2] = 'abyss' $earthSpells[3] = 'earthguardian' $earthSpells[4] = 'sando' $airSpells[0] = 'windgust' $airSpells[1] = 'pressure' $airSpells[2] = 'vacuum' $airSpells[3] = 'vacuumshells' $airSpells[4] = 'devouringvacuum' $waterSpells[0] = 'leechmana' $waterSpells[1] = 'flood' $waterSpells[2] = 'blister' $waterSpells[3] = 'sharkrockets' $waterSpells[4] = 'greatflood' if $ARGS[0] = 'teacherActions': ! Make Actions for learning spells ! $ARGS[1] = the name of the array of spells ! $ARGS[2] = Exit Location ! $ARGS[3] = Arg for exit location ! Example: ! gs 'spellList', 'teacherActions', '$fireSpells', 'kakuzu', 'mansion1' $ThisArrayName = $ARGS[1] $ExitLocation = $ARGS[2] $ExitLocation2 = $ARGS[3] ThisArraySize = dyneval("result=arrsize('<<$ThisArrayName>>')") i = 0 :LearnSpellLoop $ThisSpellName = dyneval("$result = <<$ThisArrayName>>[<>]") spellDifficulty = $spellDiff[$ThisSpellName] if spellDifficulty = 0: spellDifficulty = 1 if i < ThisArraySize: if pcs_magik >= spellDifficulty and spellKnown[$ThisSpellName] = 0 and ($spellReq[$ThisSpellName] = '' or spellKnown[$spellReq[$ThisSpellName]]): dynamic "act 'Learn <<$spellName[$ThisSpellName]>> (1:00)': cla if pcs_mana >= 1000: pcs_mana -= 1000 minut += 60 spellLearn['<<$ThisSpellName>>'] += rand(1, 100/<>) if spellLearn['<<$ThisSpellName>>'] < 100: 'You diligently study the spell for an hour, but could not grasp it.' else spellKnown['<<$ThisSpellName>>'] = 1 'Finally you are able to grasp and learn the spell.' *nl '<<$spellName[$ThisSpellName]>>: <<$spellDesc[$ThisSpellName]>>' end else *pl ""You don't have enough mana to learn this spell."" end act 'Move away':gt '<<$ExitLocation>>', '<<$ExitLocation2>>' end" end i += 1 jump 'LearnSpellLoop' end killvar 'i' killvar '$ThisSpellName' killvar 'ThisArraySize' killvar '$ThisArrayName' killvar '$ExitLocation' killvar '$ExitLocation2' killvar 'spellDifficulty' end --- spellList ---------------------------------