Skip to content

Instantly share code, notes, and snippets.

@turbo
Created December 18, 2015 00:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save turbo/e0dfab0d75bf8dbd8c7a to your computer and use it in GitHub Desktop.
Save turbo/e0dfab0d75bf8dbd8c7a to your computer and use it in GitHub Desktop.
' ****COMBAT ARENA****
' ***Version 1.51***
' **By: Jeff Copperthite**
'
'
' **This game may be distributed freely among friends or whomever, as long as
' ****this file remains UNCHANGED!!!!! Please enjoy the game****
'
' **Please email any comments or suggestions to:**
' *****JRC80@aol.com*****
'
' ***I distribute all of my versions to AOL's file systems. You can find them
' **at file search: Copperthite or you can join my mailing list.**
'
' *****IF YOU WANT TO BE ON MY MAILING PLEASE LEAVE ME FEEDBACK*****
'
' ***Online help is provided***
'
DECLARE SUB help ()
DECLARE SUB deathfight ()
DECLARE SUB endgame ()
DECLARE SUB dragon ()
DECLARE SUB beginquest ()
DECLARE SUB reward ()
DECLARE SUB skillattack ()
DECLARE SUB quest1 ()
DECLARE SUB town ()
DECLARE SUB playerfight ()
DECLARE SUB skillprint ()
DECLARE SUB save ()
DECLARE SUB load ()
DECLARE SUB levelraise ()
DECLARE SUB fight1 ()
DECLARE SUB title ()
DECLARE SUB startload ()
DECLARE SUB dostat ()
DECLARE SUB stat ()
DECLARE SUB menu ()
DECLARE SUB verify ()
COMMON SHARED str, con, dex, in, wis, cha, chp, mhp, mmp, cmp, up, mpheal, heal, hit, attack, defense, weapon, armor, armor$, weapon$, name$, pass, message, choice, gold, bank, cxp, lxp, quest, ski, cod, leave, fr, trek, rewad, level, ehp, qhp, ele, attack1, defense1
DEF fnrnd (a) = INT(RND * a) + 1
RANDOMIZE TIMER
ON ERROR GOTO 350
CALL title
SCREEN 0
CALL startload
IF level <> 0 THEN GOTO 12345
CALL dostat
CALL help
12345
CALL menu
CALL verify
GOTO 12345
350
COLOR 15, 0
COLOR 20: PRINT "An error has occured in the program"
COLOR 15
PRINT "If you were loading a file was not found or the file is too small for"
PRINT "the input required"
PRINT "If you tried to visit the hall of honor there is no one in the hall of"
PRINT "honor."
SLEEP 1
PRINT "you are now returning to the main menu"
GOTO 12345
SUB beginquest
IF level = 10 THEN
quest = 1
up = 6
PRINT "The village people have called you!"
SLEEP 1
PRINT "We need you to kill a bone golem that is threating our village"
SLEEP 2
PRINT "We will restore your HP's!"
chp = mhp
SLEEP 2
PRINT "Good luck!"
SLEEP 1: CLS
CALL quest1
END IF
IF level = 20 THEN
quest = 2
up = 17
PRINT "The village people have called you again!"
SLEEP 1
PRINT "Our prized family statue has been stolen by an evil wyvern"
PRINT "We need you to retrieve the statue and kill the wyvern"
SLEEP 2
PRINT "Let me give you a boost."
chp = mhp
SLEEP 2
PRINT "Best of luck to you"
SLEEP 1: CLS
CALL quest1
END IF
IF level = 30 THEN
quest = 3
up = 28
PRINT "A cry for help has been let out in the village!"
SLEEP 1
PRINT "You rush to the scene after the battles in the arena"
SLEEP 1
PRINT " A vampire has come and killed 5 people and taken the king"
PRINT "Can you please save him! You are the strongest in the land "
PRINT "and you can save the king for us."
DO: LOOP WHILE INKEY$ = ""
PRINT "You can do one of two things: you can partake tomorrow morning"
PRINT "during the daylight and surprise the vampire, however alot of guards"
PRINT "will be up if you do, or you can go at night, where there are fewer "
PRINT "guards but the vampire will be out."
DO: LOOP WHILE INKEY$ = ""
DO
INPUT "(1) Leave tomorrow or (2) go now", leave
IF leave = 1 THEN PRINT "Stay at the inn and recover your HP's"
IF leave = 2 THEN PRINT "Take this quick heal"
LOOP UNTIL leave = 1 OR leave = 2
chp = mhp
PRINT "HP RESTORED!"
SLEEP 1
CLS
IF leave = 1 THEN fr = 2
IF leave = 2 THEN fr = 5
CALL quest1
END IF
IF level = 40 THEN
quest = 4
PRINT "Worthy "; name$; "! We are being severly threatened by a VERY tough"
PRINT "monster named a tarrasque. He is threatening to kill this village"
PRINT "and he constantly says your name in bitter anger. I think for your"
PRINT "good and ours that you should go to the mountainside cave and find"
PRINT "him before we are lost and our only hope for killing the dragon is"
PRINT "lost as well!"
DO: LOOP WHILE INKEY$ = ""
PRINT "You will definitly need this.."
chp = mhp
SLEEP 1
PRINT "HP restored!"
SLEEP 2
PRINT "Best of luck to you, oh mighty "; name$; "!"
SLEEP 2
CLS
up = 39
trek = 0
CALL quest1
END IF
IF level = 60 THEN
PRINT name$; "! You have finally reached level 60! You must speak"
PRINT "to the king. Follow me"
SLEEP 2
PRINT "You are lead to the kings room"
DO: LOOP UNTIL INKEY$ <> ""
PRINT "KING:You have shown that you are very worthy of defeating and"
PRINT "ridding the land of this dragon."
DO: LOOP UNTIL INKEY$ <> ""
PRINT "QUEEN:If you don't think that you are strong enough to face"
PRINT "the dragon now you can get stronger at the arena and face the "
PRINT "dragon when you think you are strong enough."
DO: LOOP UNTIL INKEY$ <> ""
PRINT "Good luck when you decide to fight the dragon."
PRINT "Until then take this 2000000 gold"
gold = gold + 2000000
SLEEP 3
END IF
END SUB
SUB deathfight
DO
dmg = attack + fnrnd(10) - defense1
IF dmg <= 0 THEN dmg = 0
PRINT "You hit for"; dmg; "damage"
ehp = ehp - dmg
IF ehp < 1 THEN EXIT DO
dmg = attack1 + fnrnd(10) - defense
IF dmg <= 0 THEN dmg = 0
PRINT "You are hit for"; dmg; "damage"
chp = chp - dmg
LOOP WHILE ehp > 0 AND chp > 0
IF ehp < 1 THEN EXIT SUB
IF chp < 1 THEN
IF quest <> 0 THEN
PRINT "You have lost the deathfight"
PRINT "TEN PERCENT OF XP WAS";
COLOR 4: PRINT " LOST"
COLOR 15: PRINT "HALF OF GOLD WAS";
COLOR 4: PRINT " LOST"
COLOR 15
cxp = INT(cxp - (cxp * .1))
gold = gold \ 2
EXIT SUB
END IF
PRINT "You fall to the ground..."
SLEEP 1
PRINT "You look up at your adversary, who reaches for a long sword. He brings"
PRINT "it up and into your chest, you actually feel your lungs bleed as everything"
PRINT "goes black......"
SLEEP 3
PRINT "YOU HAVE LOST THE DEATHFIGHT!"
PRINT "TEN PERCENT OF XP WAS";
COLOR 4: PRINT " LOST"
COLOR 15: PRINT "HALF OF GOLD WAS";
COLOR 4: PRINT " LOST"
COLOR 15
chp = mhp
cxp = INT(cxp - (cxp * .1))
gold = gold \ 2
CALL save
SYSTEM
END IF
END SUB
SUB dostat
IF level > 0 THEN EXIT SUB
INPUT "Tell me your name....", name$
54321
PRINT "Now you will enter your password....ALL PASSWORDS HAVE TO BE NUMBERS!"
COLOR 3, 3: INPUT pass
COLOR 15, 0: PRINT "Now type it again for confirmation"
COLOR 3, 3: INPUT pass2
COLOR 15, 0
IF pass <> pass2 THEN PRINT "The passwords are different!": GOTO 54321
PRINT "Now ability scores will be generated"
hp = fnrnd(10) + 10
mp = fnrnd(4)
str = 3
dex = 3
con = 3
wis = 3
in = 3
cha = 3
dis = 55
heal = 5
mpheal = 1
lxp = 200
1
CLS
level = 1
PRINT "You have"; dis; "ability points left to distribute"
PRINT "Current status: Str:"; str; " Dex:"; dex; " Con:"; con; " Wis:"; wis; " int:"; in; "Cha:"; cha
INPUT "What ability?(1,str,2,dex,3,con,4,wis,5,int,6,cha)", raise
IF raise = 1 THEN
INPUT "How much do you want to put into this ability?", raise
IF raise > dis THEN PRINT "You don't have that much ability points": GOTO 1
IF (str + raise) > 18 THEN PRINT "You can only have 18 points in one ability!": GOTO 1
str = str + raise
dis = dis - raise
END IF
IF raise = 2 THEN
INPUT "How much do you want to put into this ability?", raise
IF raise > dis THEN PRINT "You don't have that much ability points": GOTO 1
IF (dex + raise) > 18 THEN PRINT "You can only have 18 points in one ability!": GOTO 1
dex = dex + raise
dis = dis - raise
END IF
IF raise = 3 THEN
INPUT "How much do you want to put into this ability?", raise
IF raise > dis THEN PRINT "You don't have that much ability points!": GOTO 1
IF (con + raise) > 18 THEN PRINT "You can only have 18 points in one ability!": GOTO 1
con = con + raise
dis = dis - raise
END IF
IF raise = 4 THEN
INPUT "How much do you want to put into this ability?", raise
IF raise > dis THEN PRINT "You don't have that much ability points!": GOTO 1
IF (wis + raise) > 18 THEN PRINT "You can only have 18 points in one ability!": GOTO 1
wis = wis + raise
dis = dis - raise
END IF
IF raise = 5 THEN
INPUT "How much do you want to put into this ability?", raise
IF raise > dis THEN PRINT "You don't have that much ability points!": GOTO 1
IF (in + raise) > 18 THEN PRINT "You can only have 18 points in one ability!": GOTO 1
in = in + raise
dis = dis - raise
END IF
IF raise = 6 THEN
INPUT "How much do you want to put into this ability?", raise
IF raise > dis THEN PRINT "You don't have that much ability points!": GOTO 1
IF (cha + raise) > 18 THEN PRINT "You can only have 18 points in one ability!": GOTO 1
cha = cha + raise
dis = dis - raise
END IF
IF dis > 0 THEN GOTO 1
level = 1
cxp = 0
lxp = 200
chp = hp
mhp = hp
cmp = mp
mmp = mp
heal = 5
mpheal = 1
armor = 3
armor$ = "Thin leather armor"
weapon = 7
weapon$ = "Copper sword"
gold = 400
bank = 0
END SUB
SUB dragon
60
PRINT "You go to tell the townspeople that you are going to fight the dragon.."
SLEEP 2
COLOR 5: PRINT "KING: We know you can do it,"; name$; " , so do this village proud and "
PRINT "rid the land of Rakies."
DO: LOOP WHILE INKEY$ = ""
COLOR 31: INPUT "Are you SURE you are going to fight the dragon? There is no turning back", y$
IF UCASE$(LEFT$(y$, 1)) = "N" THEN EXIT SUB
COLOR 15: PRINT "QUEEN: You must take this elixer before you go."
chp = mhp
cmp = mmp
SLEEP 3
COLOR 22: PRINT "HP and MP restored!"
SLEEP 2
COLOR 15: PRINT "You WILL do it "; name$; "!"
SLEEP 4
CLS
PRINT "After about 1 hour of searching you find the dragon."
SLEEP 1
PRINT UCASE$(name$); ": Rakies, you must die because of all of your raids"
DO: LOOP WHILE INKEY$ = ""
COLOR 4: PRINT "RAKIES: Neeeevvvveeerrr human. You dare to challenge me? Prepare to "
PRINT "have an easy defeat!"
hit1 = 87: ele = 5: mst = 62: mdx = 58: mcn = 43: mws = 25: min = 73: mch = 34: attack1 = 254: defense1 = 129: xp = 10000: qhp = 50000: ehp = qhp
COLOR 20: PRINT "Now the REAL FIGHT BEGINS...."
COLOR 15
SLEEP 2
61
CLS
PRINT "You:";
COLOR 15
IF chp <= INT(mhp * .5) THEN COLOR 12
IF chp <= INT(mhp * .15) THEN COLOR 20
PRINT chp;
COLOR 15
PRINT "/"; mhp
PRINT "[A]ttack"
PRINT "[S]kill"
PRINT "[H]eal"
PRINT "[M]p heal"
INPUT "command>", attack$
attack$ = UCASE$(attack$)
SELECT CASE attack$
CASE "M"
res = INT(wis * .75 + fnrnd(5))
PRINT res; " MP's restored!"
cmp = cmp + res
mpheal = mpheal - 1
CASE "S"
CALL skillprint
IF cod = 0 THEN GOTO 61
CALL skillattack
CASE "H"
IF heal < 1 THEN GOTO 61
IF chp = mhp THEN PRINT "You don't need a heal!": GOTO 61
hpheal = fnrnd(5) + (in + con + wis)
COLOR 11: PRINT hpheal; " HP's healed!"
COLOR 15
chp = chp + hpheal
IF chp > mhp THEN chp = mhp
heal = heal - 1
GOTO 62
CASE "A"
dmg = fnrnd(10) + attack
IF dmg <= defense1 THEN SOUND (dmg + 500), 3: PRINT "Your attack does no damage": GOTO 62
dmg = INT(dmg - defense1)
re = fnrnd(100)
IF re <= hit THEN
dmg = dmg * 2
COLOR 20: PRINT "CRITICAL!"
COLOR 15
SOUND (dmg + 500), 3
PRINT "You hit the monster for"; dmg; "hit points!"
END IF
IF re > hit THEN SOUND (dmg + 500), 3: PRINT "you inflicted "; dmg; "hp on the monster"
ehp = ehp - dmg
CASE ELSE
GOTO 61
END SELECT
IF ehp <= 0 THEN
COLOR 31: PRINT "you have defeated the monster!"
COLOR 15
cxp = cxp + xp
IF cxp >= lxp THEN CALL levelraise
OPEN "O", 1, "Honor": WRITE #1, name$: CLOSE #1
CALL endgame
END IF
62
at = fnrnd(3)
IF at = 1 THEN
COLOR 4: PRINT "Rakies attacks!"
COLOR 15
dmg = attack1 + fnrnd(10) - defense
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "It did no damage!": DO: LOOP WHILE INKEY$ = "": GOTO 61
re = fnrnd(100)
IF re <= hit1 THEN
COLOR 20: PRINT "CRITICAL!!!"
SOUND (dmg + 500), 3
dmg = dmg * 3 + fnrnd(2)
COLOR 4: PRINT "Rakies hit you for"; dmg; " damage"
COLOR 15
chp = chp - dmg
END IF
IF re > hit1 THEN
SOUND (dmg + 500), 3
COLOR 4: PRINT "Rakies hit you for"; dmg; " damage"
COLOR 15
chp = chp - dmg
END IF
END IF
IF at = 2 THEN
COLOR 20: PRINT "The dragon breathes fire at you!"
COLOR 15
dmg = attack1 + (mws * 3) + fnrnd(20)
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "The attack did no damage!": DO: LOOP WHILE INKEY$ = "": GOTO 61
SOUND (dmg + 500), 3
COLOR 4: PRINT "The fire nailed you for"; dmg; "damage"
COLOR 15
chp = chp - dmg
END IF
IF at = 3 THEN
COLOR 25: PRINT "The dragon rises...."
COLOR 15
dmg = attack1 + INT(attack1 * .65) + fnrnd(20)
SOUND (dmg + 500), 3
COLOR 2
PRINT "The dive drops your defenses and hits you for"; dmg; " damage"
COLOR 15
chp = chp - dmg
END IF
IF chp <= 0 THEN
COLOR 14: PRINT "You lost!....get stronger first."
SYSTEM
END IF
DO: LOOP WHILE INKEY$ = ""
GOTO 61
END SUB
SUB endgame
PRINT "You have defeated the dragon? Unbeleiveable!"
DO: LOOP WHILE INKEY$ = ""
PRINT "QUEEN: You have done the unexpectable, be sure to take care of other"
PRINT "lands as well!"
DO: LOOP WHILE INKEY$ = ""
PRINT "Your name is now in the hall of honor, it will remain there until some-"
PRINT "one else decides to kill the dragon next."
DO: LOOP WHILE INKEY$ = ""
PRINT "Thanks for playing COMBAT ARENA!"
PRINT "Credits:"
SLEEP 1
CLS
PRINT "Programming: Jeff Copperthite"
PRINT "Concept: Jeff Copperthite and Alan Kingsley"
PRINT "Special thanks: SOCC2ME@aol.com, JasonDBird@aol.com, SASEisME@aol.com"
PRINT "Borg953@aol.com, Marc Doherty"
PRINT "Couldn't have done it without these guys!"
SLEEP 3
PRINT "Be sure to give your suggestions to Jeff!"
PRINT "Thanks for playing again.."
SYSTEM
END SUB
SUB fight1
mst = fnrnd(15) + INT(up * .75)
mdx = fnrnd(15) + INT(up * .75)
mcn = fnrnd(15) + INT(up * .75)
min = fnrnd(15) + INT(up * .75)
mws = fnrnd(15) + INT(up * .75)
mch = fnrnd(15) + INT(up * .75)
attack1 = INT((mst + up) * 1.5)
defense1 = ((mdx \ 2) + up)
raigold = INT((((level * 3.5) + (up * 3.5)) + fnrnd(10) + 200) * 1.5 + fnrnd(2)) + (125 * up)
ele = fnrnd(6)
leve = up
qhr = ((up \ 5) + (mst \ 2))
IF qhr > 99 THEN qhr = 99
qhp = fnrnd(10) + INT((mcn * 2) + (up * 16.2) + (up * (mst \ 3)))
ehp = qhp
xp = (up + (qhp \ 2)) + (mst + mdx + min + mws + mcn + mch \ 6)
PRINT "Level:"; leve
PRINT "HP:"; qhp; "/"; qhp
IF ele = 1 THEN PRINT "Fire"
IF ele = 2 THEN PRINT "Water"
IF ele = 3 THEN PRINT "Earth"
IF ele = 4 THEN PRINT "Air"
IF ele = 5 THEN PRINT "Darkness"
IF ele = 6 THEN PRINT "Light"
PRINT " Hit%:"; qhr
PRINT " Attack:"; attack1
PRINT " Defense:"; defense1
PRINT " Strength: "; mst
PRINT " Dexterity: "; mdx
PRINT " Intelligence: "; min
PRINT " Wisdom: "; mws
PRINT " Constitution: "; mcn
PRINT " Charisma: "; mch
PRINT " Xp value: "; xp
PRINT " Gold:"; raigold
INPUT "Fight this monster?", y$
IF y$ = "N" OR y$ = "n" THEN EXIT SUB
PRINT "You will get"; xp; " experience for defeating this monster"
PRINT "LET'S FIGHT!"
ehp = qhp
4
CLS
PRINT "You:";
COLOR 15
IF chp <= INT(mhp * .5) THEN COLOR 12
IF chp <= INT(mhp * .15) THEN COLOR 20
PRINT chp;
COLOR 15
PRINT "/"; mhp
IF quest = 1 THEN COLOR 0
PRINT "Monster:"; ehp; "/"; qhp
COLOR 15
PRINT "[A]ttack"
PRINT "[S]kill"
PRINT "[F]lee"
PRINT "[D]eathfight"
PRINT "[H]eal"
PRINT "[M]p heal"
INPUT "command>", attack$
attack$ = UCASE$(attack$)
SELECT CASE attack$
CASE "D"
CALL deathfight
CASE "M"
res = INT(wis * .75 + fnrnd(5))
PRINT res; " MP's restored!"
cmp = cmp + res
mpheal = mpheal - 1
CASE "F"
fle = dex + wis + cha
elf = mdx + mws + mch
IF fle > elf THEN PRINT "you flee from the battle": EXIT SUB
IF fle <= elf THEN PRINT "you can't run!"
CASE "H"
IF heal < 1 THEN GOTO 4
IF chp = mhp THEN PRINT "You don't need a heal!": GOTO 4
hpheal = fnrnd(5) + (in + con + wis)
COLOR 6: PRINT hpheal; " HP's healed!"
COLOR 15
chp = chp + hpheal
IF chp > mhp THEN chp = mhp
heal = heal - 1
GOTO 5
CASE "S"
CALL skillprint
IF cod = 0 THEN GOTO 4
CALL skillattack
CASE "A"
dmg = fnrnd(10) + attack
dmg = INT(dmg - defense1)
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "Your attack does no damage": GOTO 5
re = fnrnd(100)
IF re <= hit THEN
dmg = dmg * 3 + fnrnd(2)
COLOR 20: PRINT "CRITICAL!"
SOUND (dmg + 500), 3
COLOR 15: PRINT "You hit the monster for"; dmg; "hit points!"
END IF
IF re > hit THEN SOUND (dmg + 500), 3: PRINT "you inflicted "; dmg; "hp on the monster"
ehp = ehp - dmg
IF ehp <= 0 THEN
COLOR 25: PRINT "you have defeated the monster!"
COLOR 15
gold = gold + raigold
cxp = cxp + xp
IF cxp >= lxp THEN CALL levelraise
EXIT SUB
END IF
CASE ELSE
GOTO 4
END SELECT
IF ehp <= 0 THEN
COLOR 25: PRINT "you have defeated the monster!"
COLOR 15
gold = gold + raigold
cxp = cxp + xp
IF cxp >= lxp THEN CALL levelraise
EXIT SUB
END IF
5
PRINT "The monster attacks!"
dmg = fnrnd(10) + attack1
dmg = INT(dmg - defense)
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "The attack does no damage": DO: LOOP WHILE INKEY$ = "": GOTO 4
re = fnrnd(100)
IF re <= qhr THEN
dmg = dmg * 3 + fnrnd(2)
COLOR 20: PRINT "CRITICAL!"
SOUND (dmg + 500), 3
COLOR 4: PRINT "The monster hit you for"; dmg; " hit points."
COLOR 15
END IF
IF re > qhr THEN SOUND (dmg + 500), 3: COLOR 4: PRINT "The monster hits you for"; dmg; " hp"
COLOR 15
chp = chp - dmg
IF chp <= 0 THEN
INPUT "You lost!...keep playing?", e$
gold = gold \ 1.2
cxp = INT(cxp - (cxp * .01))
IF gold <= 0 THEN gold = 0
chp = mhp
IF e$ = "N" OR e$ = "n" THEN SYSTEM
END IF
DO: LOOP WHILE INKEY$ = ""
GOTO 4
END SUB
SUB help
560
CLS
PRINT "[1] What is COMBAT ARENA?"
PRINT "[2] Help with stats"
PRINT "[3] Fighting"
PRINT "[4] Overview of skills"
PRINT "[5] Using Playerfights"
PRINT "[6] The town"
PRINT "[7] Getting your level up (and what happens)"
PRINT "[8] Tips"
PRINT "[9] Quit COMBAT ARENA help"
INPUT menu1
SELECT CASE menu1
CASE 1
PRINT "COMBAT ARENA is a text based fighting game for qbasic. This appeals"
PRINT "mostly to RPG fans but I made this game almost totally based on"
PRINT "fighting. I have gotten lots of reviews on this game that were good"
PRINT "Please enjoy the game."
PRINT " - Jeff Copperthite"
DO: LOOP WHILE INKEY$ = ""
CASE 2
PRINT "Name: Your characters name"
PRINT "Weapon: Your current sword in hand"
PRINT "Armor: Your current armor"
PRINT "Attack: The rate of damage you can cause"
PRINT "Defense: How much damage you can absorb from an attack"
PRINT "Critical hit %: Chance of one of your strikes being critical (3X damage!)"
PRINT "HP: How much damage you can take before dying / max HP's"
PRINT "MP: How much mystic force you have left / Max MP's"
PRINT "Strength: Helps with attack and learning sword skills"
PRINT "Dexterity: Helps defense and learning quickness skills"
PRINT "Constitution: Your health rating..helps with gaining max HP's"
PRINT "Wisdom: Your mystic power. Helps with learning magic spells"
PRINT "Intelligence: How smart you are..helps with healing spells(mostly)"
PRINT "Charisma: Your personal charm...helps with fleeing battles and healing"
PRINT "Experience: Your number of xp points from defeating monsters."
PRINT "For Level up: How much xp you need to raise a level"
PRINT "Gold in hand...gold in bank: Pretty self explanitory <g>"
PRINT "Healings: How many healing potions you have in your hand"
PRINT "Ethers: How many Ether potions you have in your hand"
DO: LOOP WHILE INKEY$ = ""
CASE 3
PRINT "When you fight you are either fighting on a quest or in the arena"
PRINT "gaining xp. You have 6 choices in battle...attack, skills, flee,deathfight"
PRINT "MP heal, and heal. Skills will call up your current skills for use. Attack"
PRINT "is a regular attack using your current weapon. Deathfight is a fight"
PRINT "to the death. If you die in a deathfight you will suffer consequences"
PRINT "like loss of ten percent of xp and half of your gold. MP heal and heal"
PRINT "will use one of your ethers or healings respectively. Be careful when"
PRINT "using deathfight..."
PRINT " When you defeat a monster you will gain xp for defeating the monster"
PRINT "and some gold. If you lose you will have an option to try again. "
PRINT "You will lose gold and xp if you do get defeated. "
DO: LOOP WHILE INKEY$ = ""
CASE 4
PRINT "You have two groups of skills...magic and physical skills. Each "
PRINT "requires a certain ability or abilities to be at a specified point."
PRINT "For example to learn Quad Attack you would need a strength of 31"
PRINT "or higher."
PRINT " Each skill needs a certain amount of mystic power to invoke. Some"
PRINT "of the more powerful skills (like flare and dark side) will need you"
PRINT "to get many of your abilities to a certain point."
PRINT " Skills are an important part of this game. Be sure to learn as many"
PRINT "skills as you can!"
DO: LOOP WHILE INKEY$ = ""
CASE 5
PRINT "Playerfights are an interesting and neat part of the game. What it is"
PRINT "is it allows you to fight another saved character and, if successful,"
PRINT "win gold and xp. The character you just killed will be rendered dead"
PRINT "until the player is loaded again. This is cool if you have a brother"
PRINT "or sister that plays this game as well <g>"
PRINT " To use playerfights you have to have the knowledge of knowing the"
PRINT "character's name. When you successfully have a character ready to fight"
PRINT "it will tell you the current weapon and armor of that character. You"
PRINT "will be given a chance to back out."
PRINT " During the fight you will not be able to use any skills. But the"
PRINT "fight to the death option is still there. Fight on as if this was"
PRINT "an arena battle (just keep an eye on your HP's)."
PRINT " Sometimes your opponet will purposely use a healing to keep HP's"
PRINT "up. That is why it is good to carry around a few healings."
PRINT " If you win you will gain all gold in your opponets hand, and"
PRINT "ten percent of your opponets xp. If you lose all of the above will"
PRINT "happen to you!"
DO: LOOP WHILE INKEY$ = ""
CASE 6
PRINT "The town is the spot where you buy all of your weapons, armor, ethers,"
PRINT "and healings. You are given the option of going to the bank,JR's "
PRINT "swords, MAD armor, Alan's professional healing shop, and the hall"
PRINT "of honor. Here is a brief explanation of the town."
PRINT
PRINT " Bank: This is where you keep your gold. The bank is useful so you can"
PRINT "keep your gold safe from attackers"
PRINT " Weapon shop: This is where you can buy new swords. You can also sell"
PRINT "your old sword for some extra dough. "
PRINT " Armor shop: This is where you can buy new armor. You can also sell"
PRINT "your old armor for extra money"
PRINT " Healing shop: This is where you buy healings, ethers, and get your"
PRINT "wounds healed. An essential in the town"
PRINT " Hall of Honor: This shows the last person that has beaten the dragon"
DO: LOOP WHILE INKEY$ = ""
CASE 7
PRINT "When you get your level up you basically go up in skill. You have"
PRINT "3 ability points to distribute through your 6 abilities. Then you"
PRINT "also go up in max HP's and MP's. Your base attack and defense are "
PRINT "raised by 1, and other things may change according to ability "
PRINT "changes (attack or defense may go up more, your critical hit % may"
PRINT "go up, you may learn a new skill or two)."
DO: LOOP WHILE INKEY$ = ""
CASE 8
PRINT "- Keep monster toughness around your current level. You gain more"
PRINT " gold for defeating a tougher monster."
PRINT "- Keep a high stock of healings incase you get attacked."
PRINT "- Note when you go on quests take some ether's along because you may"
PRINT " need MP's when you least expect it"
PRINT "- Keep your gold in the bank to keep it safe from attackers"
PRINT "- NEVER FORGET YOUR PASSWORD!"
PRINT "- Join Jeff's mailing list on AOL!(send me mail at JRC80@aol.com)"
PRINT " ^--Just had to put it in <g>"
DO: LOOP WHILE INKEY$ = ""
CASE 9
EXIT SUB
END SELECT
GOTO 560
END SUB
SUB levelraise
COLOR 17: PRINT "You have raised a level!"
COLOR 15
level = level + 1
dis = 3
324
PRINT "You have"; dis; "points left"
INPUT "(1.Str 2.Dex 3.Con 4.Wis 5.Int 6.Cha)", ab
SELECT CASE ab
CASE 1
str = str + 1
dis = dis - 1
CASE 2
dex = dex + 1
dis = dis - 1
CASE 3
con = con + 1
dis = dis - 1
CASE 4
wis = wis + 1
dis = dis - 1
CASE 5
in = in + 1
dis = dis - 1
CASE 6
cha = cha + 1
dis = dis - 1
END SELECT
IF dis > 0 THEN GOTO 324
raihp = fnrnd(10) + con + (con \ 2)
raimp = fnrnd(2) + (wis \ 7)
CLS
PRINT "Your max HP's are raised by"; raihp
PRINT "Your max MP's are raised by"; raimp
mhp = mhp + raihp
mmp = mmp + raimp
lxp = lxp + (level * 171)
cmp = mmp
CALL stat
IF level = 10 OR level = 20 OR level = 30 OR level = 40 OR level = 60 THEN CALL beginquest
END SUB
SUB load
INPUT "Tell me your name....", name$
PRINT "Enter your password"
COLOR 3, 3: INPUT upass
COLOR 15, 0
OPEN "I", 1, name$
INPUT #1, up, str, dex, con, in, wis, cha, heal, chp, mhp, cxp, lxp, level, cmp, mmp, defense, attack, hit, armor, weapon, bank, gold, message, pass, armor$, weapon$, mpheal
CLOSE
IF upass <> pass THEN PRINT "WRONG PASSWORD!": CLEAR
END SUB
SUB menu
CLOSE
IF cxp > lxp THEN CALL levelraise
IF message = 1 THEN
PRINT "*****BULLETIN*****"
SLEEP 2
PRINT "While away you were attacked and got killed!"
SLEEP 1
END IF
IF message = 2 THEN
PRINT "*****BULLETIN*****"
SLEEP 2
PRINT "While away you were attacked and killed the challenger in self defense!"
SLEEP 1
END IF
message = 0
PRINT "(1) See stat screen"
PRINT "(2) Fight monster"
PRINT "(3) Change monster level"
PRINT "(4) Use healing"
PRINT "(5) Save character"
PRINT "(6) Load character"
PRINT "(7) View skills"
PRINT "(8) Venture to town"
PRINT "(9) Fight another player"
PRINT "(10) Use ether"
PRINT "(11) Quit COMBAT ARENA"
PRINT "(12) Help on COMBAT ARENA"
IF level > 59 THEN PRINT "(13) Fight Rakies"
INPUT choice
END SUB
SUB playerfight
INPUT "What is the name of the character you wish to fight?", name2$
IF UCASE$(name2$) = UCASE$(name$) THEN PRINT "You can't fight yourself!": EXIT SUB
IF name2$ = "" THEN EXIT SUB
OPEN "I", 1, name2$: INPUT #1, up1, str1, dex1, con1, in1, wis1, cha1, heal1, chp1, mhp1, cxp1, lxp1, level1, cmp1, mmp1, defense1, attack1, hit1, armor1, weapon1, bank1, gold1, message1, pass5, armor1$, weapon1$, mpheal1: CLOSE #1
IF message1 = 1 THEN PRINT "This character is dead already!": EXIT SUB
PRINT "The character you are going to fight has "; armor1$; " on and"
PRINT "is holding a "; weapon1$; " for a weapon."
DO: LOOP WHILE INKEY$ = ""
INPUT "Are you sure you want to fight this character?", s$
IF UCASE$(s$) = "N" THEN EXIT SUB
PRINT "Here we go! "; name$; " vs. "; name2$
chp1 = mhp1
1000
PRINT name$; " :";
COLOR 15
IF chp <= INT(mhp * .5) THEN COLOR 12
IF chp <= INT(mhp * .15) THEN COLOR 20
PRINT chp; "/";
COLOR 15
PRINT mhp
PRINT name2$; " :";
COLOR 15
IF chp1 <= INT(mhp1 * .5) THEN COLOR 12
IF chp1 <= INT(mhp1 * .15) THEN COLOR 20
PRINT chp1; "/";
COLOR 15
PRINT mhp1
PRINT "You attack"
PRINT "[a]ttack"
PRINT "[h]eal"
PRINT "[f]ight to the death!"
PRINT "[r]un"
INPUT "command>", attack$
IF (attack$ = "h" OR attack$ = "H") AND heal > 0 THEN
hpheal = cha + in + wis + con
PRINT hpheal; " HP's healed!"
chp = chp + hpheal
heal = heal - 1
IF chp > mhp THEN chp = mhp
END IF
IF attack$ = "f" OR attack$ = "F" THEN
DO
dmg = attack - defense1 + fnrnd(10)
IF dmg < 0 THEN dmg = 0
PRINT "You hit for"; dmg; "damage"
chp1 = chp1 - dmg
dmg = attack1 - defense + fnrnd(10)
IF dmg < 0 THEN dmg = 0
PRINT "You are hit for"; dmg; "damage"
chp = chp - dmg
LOOP WHILE (chp > 0 AND chp1 > 0)
IF chp1 <= 0 THEN
PRINT "You have defeated "; name2$
SLEEP 1
xpgain = INT(cxp1 - (cxp1 * .9))
PRINT name2$; " has "; gold1; "gold..now it is yours!"
PRINT "You earn"; xpgain; " experience"
gold = gold + gold1
gold1 = 0
cxp = cxp + xpgain
cxp1 = cxp1 - xpgain
chp1 = mhp1
message1 = 1
GOTO saveend
END IF
IF chp <= 0 THEN
PRINT "You have been defeated by "; name2$
SLEEP 1
PRINT "TEN PERCENT OF XP WAS LOST"
PRINT "ALL GOLD ON HAND WAS LOST AND GIVEN TO "; UCASE$(name2$)
gold1 = gold1 + gold
xpgain = INT(cxp - (cxp * .9))
cxp1 = cxp1 + xpgain
cxp = cxp - xpgain
chp = mhp
gold = 0
message1 = 2
GOTO saveend
END IF
END IF
IF attack$ = "r" OR attack$ = "R" THEN
IF dex < dex1 THEN
PRINT name2$; " trips you as you scurry away, taking"; INT(gold - (gold * .9)); " gold away"
PRINT "from you."
goldloss = INT(gold - (gold * .9))
gold = gold - goldloss
gold1 = gold1 + goldloss
GOTO saveend
END IF
IF dex >= dex1 THEN
PRINT "You use your quickness to run away from the battle"
GOTO saveend
END IF
END IF
IF attack$ = "a" OR attack$ = "A" THEN
PRINT "You attack"
dmg = attack + fnrnd(10) - defense1
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "You didn't do damage!": GOTO 2000
re = fnrnd(100)
IF re <= hit THEN
COLOR 20: PRINT "CRITICAL!"
COLOR 15
dmg = dmg * 3 + fnrnd(2)
SOUND (dmg + 500), 3
PRINT "You did"; dmg; " damage to "; name2$
chp1 = chp1 - dmg
END IF
IF re > hit THEN
SOUND (dmg + 500), 3
PRINT "You did"; dmg; " damage to "; name2$
chp1 = chp1 - dmg
END IF
END IF
IF chp1 <= 0 THEN
PRINT "You have defeated "; name2$
SLEEP 1
xpgain = INT(cxp1 - (cxp1 * .9))
PRINT name2$; " has "; gold1; "gold..now it is yours!"
PRINT "You earn"; xpgain; " experience"
gold = gold + gold1
gold1 = 0
cxp = cxp + xpgain
cxp1 = cxp1 - xpgain
chp1 = mhp1
message1 = 1
GOTO saveend
END IF
2000
attac = fnrnd(10)
IF attac = 10 AND heal1 < 1 THEN GOTO 2000
IF attac = 10 THEN
PRINT name2$; " takes a heal!"
SLEEP 1
hpheal = cha1 + in1 + wis1 + con1
PRINT hpheal; "HP's healed!"
chp1 = chp1 + hpheal
heal1 = heal1 - 1
IF chp1 > mhp1 THEN chp1 = mhp1
END IF
IF attac <> 10 THEN
PRINT name2$; " attacks you!"
dmg = attack1 + fnrnd(10) - defense
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "The attack did no damage!": GOTO 1000
re = fnrnd(100)
IF re <= hit1 THEN
COLOR 20: PRINT "CRITICAL!"
COLOR 15
dmg = dmg * 3 + fnrnd(2)
SOUND (dmg + 500), 3
PRINT name2$; " hit you for"; dmg; " damage"
chp = chp - dmg
END IF
IF re > hit1 THEN
SOUND (dmg + 500), 3
PRINT name2$; " hit you for"; dmg; " damage"
chp = chp - dmg
END IF
END IF
IF chp <= 0 THEN
PRINT "You have been defeated by "; name2$
SLEEP 1
PRINT "TEN PERCENT OF XP WAS LOST"
PRINT "ALL GOLD ON HAND WAS LOST AND GIVEN TO "; UCASE$(name2$)
gold1 = gold1 + gold
xpgain = INT(cxp - (cxp * .9))
cxp1 = cxp1 + xpgain
cxp = cxp - xpgain
chp = mhp
gold = 0
message1 = 2
GOTO saveend
END IF
GOTO 1000
saveend:
OPEN "O", 1, name$: WRITE #1, up, str, dex, con, in, wis, cha, heal, chp, mhp, cxp, lxp, level, cmp, mmp, defense, attack, hit, armor, weapon, bank, gold, message, pass, armor$, weapon$, mpheal: CLOSE #1
OPEN "O", 1, name2$: WRITE #1, up1, str1, dex1, con1, in1, wis1, cha1, heal1, chp1, mhp1, cxp1, lxp1, level1, cmp1, mmp1, defense1, attack1, hit1, armor1, weapon1, bank1, gold1, message1, pass5, armor1$, weapon1$, mpheal1: CLOSE #1
END SUB
SUB quest1
IF quest = 2 THEN GOTO 20
IF quest = 3 THEN GOTO 40
IF quest = 4 THEN GOTO 50
DO
COLOR 2
PRINT "You are in the forest"
COLOR 15
PRINT "(esc) to view stats"
PRINT "(enter) to heal"
PRINT "Any other key to move on"
DO: trash$ = INKEY$: LOOP WHILE trash$ = ""
IF trash$ = CHR$(27) AND heal > 0 THEN chp = chp + wis + in + cha: heal = heal - 1
IF trash$ = CHR$(13) THEN CALL stat
encount = fnrnd(4)
IF encount = 1 THEN GOSUB fight10
trek = trek + 1
LOOP WHILE (trek < 15)
COLOR 24: PRINT "You have encountered the bone golem!"
SLEEP 2
COLOR 15
xp = 1000
qhp = 2000
mst = 25: mdx = 23: mcn = 19: mws = 27: min = 24: mch = 23
attack1 = 46
defense1 = 20
hit1 = 19
ele = 4
ehp = 2000
DO
11
CLS
PRINT "You:";
COLOR 15
IF chp <= INT(mhp * .5) THEN COLOR 12
IF chp <= INT(mhp * .15) THEN COLOR 20
PRINT chp;
COLOR 15
PRINT "/"; mhp
PRINT "[A]ttack"
PRINT "[S]kill"
COLOR 2: PRINT "[F]lee"
COLOR 15: PRINT "[H]eal"
PRINT "[M]p heal"
INPUT "command>", attack$
attack$ = UCASE$(attack$)
SELECT CASE attack$
CASE "M"
res = INT(wis * .75 + fnrnd(5))
PRINT res; " MP's restored!"
cmp = cmp + res
mpheal = mpheal - 1
CASE "F"
COLOR 18
PRINT "You can't flee from this battle!": GOTO 11
COLOR 15
CASE "H"
IF heal < 1 THEN GOTO 11
IF chp = mhp THEN PRINT "You don't need a heal!": GOTO 11
hpheal = fnrnd(5) + (in + con + wis)
COLOR 10
PRINT hpheal; " HP's healed!"
COLOR 15
chp = chp + hpheal
IF chp > mhp THEN chp = mhp
heal = heal - 1
GOTO 12
CASE "S"
CALL skillprint
IF cod = 0 THEN GOTO 11
CALL skillattack
CASE "A"
dmg = fnrnd(10) + attack
IF dmg <= defense1 THEN COLOR 24: SOUND (dmg + 500), 3: PRINT "Your attack does no damage": COLOR 15: GOTO 12
dmg = INT(dmg - defense1)
re = fnrnd(100)
IF re <= hit THEN
dmg = dmg * 2
COLOR 20
PRINT "CRITICAL!"
SOUND (dmg + 500), 3
COLOR 15
PRINT "You hit the monster for"; : COLOR 4: PRINT dmg; : COLOR 15: PRINT "hit points!"
END IF
IF re > hit THEN SOUND (dmg + 500), 3: PRINT "you inflicted "; : COLOR 4: PRINT dmg; : COLOR 15: PRINT "hp on the monster"
ehp = ehp - dmg
CASE ELSE
GOTO 11
END SELECT
IF ehp <= 0 THEN
COLOR 13
PRINT "you have defeated the monster!"
COLOR 15
cxp = cxp + xp
IF cxp >= lxp THEN CALL levelraise
rewad = 1: CALL reward
EXIT SUB
END IF
12
at = fnrnd(3)
IF at = 1 THEN
dmg = attack1 + fnrnd(10)
IF dmg <= defense THEN PRINT "The attack does no damage": DO: LOOP WHILE INKEY$ = "": GOTO 11
dmg = dmg - defense
re = fnrnd(100)
IF re <= hit1 THEN
dmg = dmg * 3 + fnrnd(2)
PRINT "The monster attacks!"
COLOR 20
PRINT "CRITICAL!"
COLOR 15
SOUND (dmg + 500), 3
PRINT "The bone golem hit you for"; : COLOR 4: PRINT dmg; : COLOR 15: PRINT " HP's"
chp = chp - dmg
END IF
IF re > hit1 THEN
PRINT "The bone golem attacks"
SOUND (dmg + 500), 3
PRINT "He hit you for"; : COLOR 4: PRINT dmg; : COLOR 15: PRINT " HP's"
chp = chp - dmg
END IF
END IF
IF at = 2 THEN
PRINT "He tosses a bone at you!"
dmg = INT(attack1 + 10 + fnrnd(10))
dmg = dmg - defense
IF dmg < 0 THEN dmg = 0
SOUND (dmg + 500), 3
PRINT "It hits you for"; : COLOR 4: PRINT dmg; : COLOR 15: PRINT " damage"
chp = chp - dmg
END IF
IF at = 3 THEN
PRINT "He runs into you!"
dmg = INT(attack1 * 1.5) + fnrnd(10)
dmg = dmg - defense
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "it didn't do any damage!": DO: LOOP WHILE INKEY$ = "": GOTO 11
SOUND (dmg + 500), 3
PRINT "He hits you for"; : COLOR 4: PRINT dmg; : COLOR 15: PRINT " damage"
chp = chp - dmg
END IF
IF chp <= 0 THEN
COLOR 25
PRINT "You died!....you will try again.."
COLOR 15
chp = mhp
ehp = qhp
IF cmp <= 0 THEN cmp = INT(mmp * .5)
IF cmp > mmp THEN cmp = mmp
GOTO 11
END IF
DO: LOOP WHILE INKEY$ = ""
LOOP WHILE ehp > 0 AND chp > 0
20
trek = 0
DO
trek = trek + 1
COLOR 6
PRINT "You are in the mountain ranges"
COLOR 15
PRINT "(esc) for heal"
PRINT "(enter) for stats"
PRINT "Any other key to continue"
DO: trash$ = INKEY$: LOOP WHILE (trash$ = "")
IF trash$ = CHR$(27) AND heal > 0 THEN chp = chp + wis + in + cha: heal = heal - 1: IF chp > mhp THEN chp = mhp
IF trash$ = CHR$(13) THEN CALL stat
encount = fnrnd(3)
IF encount = 1 THEN GOSUB fight10
LOOP WHILE (trek < 20)
COLOR 29: PRINT "You have found the wyvern!"
COLOR 15
SLEEP 2
xp = 2000
qhp = 5000
mst = 27: mdx = 32: mcn = 26: mws = 30: min = 28: mch = 35
attack1 = 59
defense1 = 35
hit1 = 25
ele = 1
ehp = 2500
21
CLS
PRINT "You:";
COLOR 15
IF chp <= INT(mhp * .5) THEN COLOR 12
IF chp <= INT(mhp * .15) THEN COLOR 20
PRINT chp;
COLOR 15
PRINT "/"; mhp
PRINT "[A]ttack"
PRINT "[S]kill"
COLOR 2: PRINT "[F]lee"
COLOR 15: PRINT "[H]eal"
PRINT "[M]p heal"
INPUT "command>", attack$
attack$ = UCASE$(attack$)
SELECT CASE attack$
CASE "M"
res = INT(wis * .75 + fnrnd(5))
PRINT res; " MP's restored!"
cmp = cmp + res
mpheal = mpheal - 1
CASE "S"
CALL skillprint
IF cod = 0 THEN GOTO 21
CALL skillattack
CASE "H"
IF chp = mhp THEN PRINT "You don't need a heal!": GOTO 21
hpheal = fnrnd(5) + (in + con + wis)
COLOR 8
PRINT hpheal; " HP's healed!"
COLOR 15
chp = chp + hpheal
IF chp > mhp THEN chp = mhp
heal = heal - 1
GOTO 22
CASE "A"
dmg = fnrnd(10) + attack
dmg = INT(dmg - defense1)
IF dmg <= 0 THEN COLOR 19: SOUND (dmg + 500), 3: PRINT "Your attack does no damage": COLOR 15: GOTO 22
re = fnrnd(100)
IF re <= hit THEN
dmg = dmg * 2
COLOR 20
PRINT "CRITICAL!"
COLOR 15
SOUND (dmg + 500), 3
PRINT "You hit the monster for"; : COLOR 4: PRINT dmg; : COLOR 15: PRINT "hit points!"
END IF
IF re > hit THEN SOUND (dmg + 500), 3: PRINT "you inflicted "; : COLOR 4: PRINT dmg; : COLOR 15: PRINT "hp on the monster"
ehp = ehp - dmg
CASE ELSE
GOTO 21
END SELECT
IF ehp <= 0 THEN
COLOR 25
PRINT "you have defeated the monster!"
COLOR 15
cxp = cxp + xp
IF cxp >= lxp THEN CALL levelraise
rewad = 2: CALL reward
EXIT SUB
END IF
22
at = fnrnd(3)
IF at = 1 THEN
COLOR 2
PRINT "The wyvern attacks!"
COLOR 15
dmg = attack1 + fnrnd(10)
dmg = dmg - defense
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "The attack didn't hurt you!": DO: LOOP WHILE INKEY$ = "": GOTO 21
re = fnrnd(100)
IF re <= hit1 THEN
dmg = dmg * 2
COLOR 20: PRINT "CRITICAL!"
COLOR 15
SOUND (dmg + 500), 3
PRINT "The wyvern did"; : COLOR 4: PRINT dmg; : COLOR 15: PRINT " damage on you"
chp = chp - dmg
END IF
IF re > hit1 THEN
SOUND (dmg + 500), 3
PRINT "The wyvern did"; : COLOR 4: PRINT dmg; : COLOR 15: PRINT " damage on you"
chp = chp - dmg
END IF
END IF
IF at = 2 THEN
COLOR 2: PRINT "The wyvern hits you with the wing slap"
dmg = INT(attack1 * 1.5) + fnrnd(15)
COLOR 15
SOUND (dmg + 500), 3
dmg = dmg - defense
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "it didn't do any damage!": DO: LOOP WHILE INKEY$ = "": GOTO 21
PRINT "It did"; : COLOR 4: PRINT dmg; : COLOR 15: PRINT " HP of damage on you"
chp = chp - dmg
END IF
IF at = 3 THEN
COLOR 20: PRINT "The wyvern breathes fire at you!"
dmg = INT(mws * 1.5 + fnrnd(20))
COLOR 15
SOUND (dmg + 500), 3
PRINT "It does"; : COLOR 4: PRINT dmg; : COLOR 15: PRINT " damage to you"
chp = chp - dmg
END IF
IF chp <= 0 THEN
COLOR 25
PRINT "You lost!...you will try again"
COLOR 15
chp = mhp
ehp = qhp
IF cmp = 0 THEN cmp = INT(mmp * .5)
GOTO 21
END IF
DO: LOOP WHILE INKEY$ = ""
GOTO 21
40
PRINT "Good luck!"
trek = 0
DO
IF trek < 11 THEN COLOR 2: PRINT "You are in the plains"
IF trek > 10 THEN COLOR 11: PRINT "You are in the castle"
COLOR 15
PRINT "(esc) for a heal"
PRINT "(enter) for stats"
PRINT "any other key to move on"
DO: trash$ = INKEY$: LOOP WHILE (trash$ = "")
IF trash$ = CHR$(13) THEN CALL stat
IF trash$ = CHR$(27) AND heal > 0 THEN chp = mhp: heal = heal - 1: IF chp > mhp THEN chp = mhp
trek = trek + 1
encount = fnrnd(fr)
IF encount = 1 THEN GOSUB fight10
LOOP WHILE (trek < 20)
41
ele = 2: hit1 = 28: mst = 32: mdx = 23: mcn = 31: mws = 36: min = 23: mch = 27: xp = 3400: qhp = 6500: ehp = 3000: attack = 102: defense1 = 58: IF leave = 2 THEN defense1 = 23: IF fr = 5 THEN defense1 = 58
COLOR 24: PRINT "You have found the vampire!"
COLOR 15
42
CLS
PRINT "You:";
COLOR 15
IF chp <= INT(mhp * .5) THEN COLOR 12
IF chp <= INT(mhp * .15) THEN COLOR 20
PRINT chp;
COLOR 15
PRINT "/"; mhp
PRINT "[A]ttack"
PRINT "[S]kill"
COLOR 2: PRINT "[F]lee"
COLOR 15: PRINT "[H]eal"
PRINT "[M]p heal"
INPUT "command>", attack$
attack$ = UCASE$(attack$)
SELECT CASE attack$
CASE "M"
res = INT(wis * .75 + fnrnd(5))
PRINT res; " MP's restored!"
cmp = cmp + res
mpheal = mpheal - 1
CASE "S"
CALL skillprint
IF cod = 0 THEN GOTO 42
CALL skillattack
CASE "H"
IF heal < 1 THEN GOTO 42
IF chp = mhp THEN PRINT "You don't need a heal!": GOTO 42
hpheal = fnrnd(5) + (in + con + wis)
COLOR 11
PRINT hpheal; " HP's healed!"
COLOR 15
chp = chp + hpheal
IF chp > mhp THEN chp = mhp
heal = heal - 1
GOTO 43
CASE "A"
dmg = fnrnd(10) + attack
dmg = INT(dmg - defense1)
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "Your attack does no damage": GOTO 43
re = fnrnd(100)
IF re <= hit THEN
dmg = dmg * 3 + fnrnd(2)
COLOR 20
PRINT "CRITICAL!"
COLOR 15
SOUND (dmg + 500), 3
PRINT "You hit the monster for"; dmg; "hit points!"
END IF
IF re > hit THEN SOUND (dmg + 500), 3: PRINT "you inflicted "; dmg; "hp on the monster"
ehp = ehp - dmg
CASE ELSE
GOTO 42
END SELECT
IF ehp <= 0 THEN
COLOR 25
PRINT "you have defeated the monster!"
COLOR 15
cxp = cxp + xp
IF cxp >= lxp THEN CALL levelraise
rewad = 3: CALL reward
EXIT SUB
END IF
43
at = fnrnd(3)
IF at = 1 THEN
PRINT "The vampire attacks!"
dmg = attack1 + fnrnd(10)
dmg = dmg - defense
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "It did no damage!": DO: LOOP WHILE INKEY$ = "": GOTO 42
re = fnrnd(100)
IF re <= hit1 THEN
COLOR 20: PRINT "CRITICAL!"
dmg = dmg * 3 + fnrnd(2)
SOUND (dmg + 500), 3
COLOR 4: PRINT "The vampire hit you for"; dmg; " damage"
COLOR 15
chp = chp - dmg
END IF
IF re > hit1 THEN
SOUND (dmg + 500), 3
COLOR 4: PRINT "The vampire hit you for"; dmg; " damage"
COLOR 15
chp = chp - dmg
END IF
END IF
IF at = 2 THEN
er = fnrnd(100)
dmg = INT(attack1 * 2)
IF er > 25 THEN SOUND (dmg + 500), 3: PRINT "The vampire missed with the drain.": DO: LOOP WHILE INKEY$ = "": GOTO 42
IF er <= 25 THEN
COLOR 29: PRINT "The vampire sinks his teeth in"
COLOR 15
SOUND (dmg + 500), 3
IF dmg <= (wis + con) + level THEN PRINT "It didn't hurt you!": DO: LOOP WHILE INKEY$ = "": GOTO 42
dmg = dmg - (wis + con + level)
COLOR 20: PRINT "You lost"; dmg; " HPs"
COLOR 2: PRINT "The vampire gained"; (dmg \ 2 + fnrnd(4)); " HPs"
COLOR 15
chp = chp - dmg
ehp = ehp + (dmg \ 2 + fnrnd(4))
IF ehp > qhp THEN ehp = qhp
END IF
END IF
IF at = 3 THEN
COLOR 20: PRINT "The vampire casts fire!"
COLOR 15
dmg = (mws * 2) + fnrnd(10)
SOUND (dmg + 500), 3
PRINT "The spell does"; dmg; " to you"
chp = chp - dmg
END IF
IF chp <= 0 THEN
COLOR 21: PRINT "You lost!....you will try again"
COLOR 15: chp = mhp
IF cmp = 0 THEN cmp = INT(mmp * .5)
GOTO 43
END IF
DO: LOOP WHILE INKEY$ = ""
GOTO 42
50
DO WHILE trek < 20
COLOR 8: PRINT "You are in the mountainside cave"
COLOR 15
PRINT "(esc) to use a heal"
PRINT "(enter) to see stats"
PRINT "Any other key to move on"
DO: trash$ = INKEY$: LOOP WHILE trash$ = ""
IF trash$ = CHR$(13) THEN CALL stat
IF trash$ = CHR$(27) AND heal > 0 THEN chp = chp + wis + cha + in: heal = heal - 1: IF chp > mhp THEN chp = mhp
trek = trek + 1
encount = fnrnd(4)
IF encount = 1 THEN GOSUB fight10
LOOP
COLOR 6: PRINT "You have found the tarrasque and he is MAD!"
hit1 = 30: mst = 41: mdx = 21: mcn = 31: mws = 15: min = 27: mch = 25: attack1 = 122: defense1 = 61: xp = 5000: qhp = 7000: ehp = qhp: ele = 4
51
CLS
PRINT "You:";
COLOR 15
IF chp <= INT(mhp * .5) THEN COLOR 12
IF chp <= INT(mhp * .15) THEN COLOR 20
PRINT chp;
COLOR 15
PRINT "/"; mhp
PRINT "[A]ttack"
PRINT "[S]kill"
COLOR 2: PRINT "[F]lee"
COLOR 15: PRINT "[H]eal"
PRINT "[M]p heal"
INPUT "command>", attack$
attack$ = UCASE$(attack$)
SELECT CASE attack$
CASE "M"
res = INT(wis * .75 + fnrnd(5))
PRINT res; " MP's restored!"
cmp = cmp + res
mpheal = mpheal - 1
CASE "S"
CALL skillprint
IF cod = 0 THEN GOTO 51
CALL skillattack
CASE "H"
IF heal < 1 THEN GOTO 51
IF chp = mhp THEN PRINT "You don't need a heal!": GOTO 51
hpheal = fnrnd(5) + (in + con + wis)
COLOR 10: PRINT hpheal; " HP's healed!"
COLOR 15
chp = chp + hpheal
IF chp > mhp THEN chp = mhp
heal = heal - 1
GOTO 52
CASE "A"
dmg = fnrnd(10) + attack
IF dmg <= defense1 THEN SOUND (dmg + 500), 3: PRINT "Your attack does no damage": GOTO 52
dmg = INT(dmg - defense1)
re = fnrnd(100)
IF re <= hit THEN
dmg = dmg * 2
COLOR 20: PRINT "CRITICAL!"
COLOR 15
SOUND (dmg + 500), 3
PRINT "You hit the monster for"; dmg; "hit points!"
END IF
IF re > hit THEN SOUND (dmg + 500), 3: PRINT "you inflicted "; dmg; "hp on the monster"
ehp = ehp - dmg
CASE ELSE
GOTO 51
END SELECT
IF ehp <= 0 THEN
COLOR 25: PRINT "you have defeated the monster!"
COLOR 15
cxp = cxp + xp
IF cxp >= lxp THEN CALL levelraise
rewad = 4: CALL reward
EXIT SUB
END IF
52
at = fnrnd(3)
IF at = 1 THEN
PRINT "The tarrasque attacks!"
dmg = attack1 + fnrnd(10) - defense
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "The attack did no damage!": DO: LOOP WHILE INKEY$ = "": GOTO 51
re = fnrnd(100)
IF re <= hit1 THEN
COLOR 20: PRINT "CRITICAL!"
dmg = dmg * 3 + fnrnd(2)
SOUND (dmg + 500), 3
COLOR 4: PRINT "The attack did"; dmg; "damage to you"
COLOR 15
chp = chp - dmg
END IF
IF re > hit1 THEN
SOUND (dmg + 500), 3
COLOR 4: PRINT "The attack did"; dmg; " damage to you"
COLOR 15
chp = chp - dmg
END IF
END IF
IF at = 2 THEN
COLOR 4: PRINT "The tarrasque bashes into you!"
COLOR 15
dmg = attack1 + fnrnd(20) - (dex \ 2.5)
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "The attack didn't phase you!": DO: LOOP WHILE INKEY$ = "": GOTO 51
SOUND (dmg + 500), 3
COLOR 4: PRINT "The bash did"; dmg; " damage to you"
COLOR 15
chp = chp - dmg
END IF
IF at = 3 THEN
PRINT "The double claw attack!"
er = fnrnd(100)
IF er <= 75 THEN
SOUND (dmg + 500), 3
dmg = attack1 + fnrnd(10) - (dex \ 3)
COLOR 19: PRINT "The claw hits you for"; dmg; " damage"
COLOR 15
chp = chp - dmg
END IF
IF er > 75 THEN
SOUND (dmg + 500), 3
PRINT "The tarrasque roars as the claw misses"
END IF
er = fnrnd(100)
IF er <= 75 THEN
SOUND (dmg + 500), 3
dmg = attack1 + fnrnd(10) - (dex \ 3)
COLOR 20: PRINT "The second claw hits you or"; dmg; " damage"
COLOR 15
chp = chp - dmg
END IF
IF er > 75 THEN
SOUND (dmg + 500), 3
PRINT "The claw missed!"
END IF
END IF
IF chp <= 0 THEN
COLOR 21: PRINT "You lost!....you will try again"
COLOR 15
chp = mhp
IF cmp = 0 THEN cmp = INT(mmp * .5)
GOTO 50
END IF
DO: LOOP WHILE INKEY$ = ""
GOTO 51
fight10:
mst = fnrnd(15) + INT(up * .75)
mdx = fnrnd(15) + INT(up * .75)
mcn = fnrnd(15) + INT(up * .75)
min = fnrnd(15) + INT(up * .75)
mws = fnrnd(15) + INT(up * .75)
mch = fnrnd(15) + INT(up * .75)
attack1 = INT((mst + up) * 1.5)
defense1 = ((mdx \ 2) + up)
raigold = INT((((level * 3.5) + (up * 3.5)) + fnrnd(10) + 200) * 1.5 + fnrnd(2)) + (125 * up)
ele = fnrnd(6)
leve = up
qhr = ((up \ 5) + (mst \ 2))
IF qhr > 99 THEN qhr = 99
qhp = fnrnd(10) + INT(mcn + (up * 10) + (mhp \ 2))
ehp = qhp
xp = (up + (qhp \ 2)) + (mst + mdx + min + mws + mcn + mch \ 6)
PRINT "LET'S FIGHT!"
ehp = qhp
400
CLS
PRINT "You:";
COLOR 15
IF chp <= INT(mhp * .5) THEN COLOR 12
IF chp <= INT(mhp * .15) THEN COLOR 20
PRINT chp;
COLOR 15
PRINT "/"; mhp
COLOR 15
PRINT "[A]ttack"
PRINT "[S]kill"
PRINT "[F]lee"
PRINT "[D]eathfight"
PRINT "[H]eal"
PRINT "[M]p heal"
INPUT "command>", attack$
attack$ = UCASE$(attack$)
SELECT CASE attack$
CASE "D"
CALL deathfight
IF chp < 1 THEN chp = mhp: RETURN
CASE "M"
res = INT(wis * .75 + fnrnd(5))
PRINT res; " MP's restored!"
cmp = cmp + res
mpheal = mpheal - 1
CASE "F"
fle = dex + wis + cha
elf = mdx + mws + mch
IF fle > elf THEN PRINT "you flee from the battle": RETURN
IF fle <= elf THEN PRINT "you can't run!"
CASE "H"
IF heal < 1 THEN GOTO 400
IF chp = mhp THEN PRINT "You don't need a heal!": GOTO 400
hpheal = fnrnd(5) + (in + con + wis)
COLOR 6: PRINT hpheal; " HP's healed!"
COLOR 15
chp = chp + hpheal
IF chp > mhp THEN chp = mhp
heal = heal - 1
GOTO 500
CASE "S"
CALL skillprint
IF cod = 0 THEN GOTO 400
CALL skillattack
CASE "A"
dmg = fnrnd(10) + attack
dmg = dmg - defense1
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "Your attack does no damage": GOTO 500
re = fnrnd(100)
IF re <= hit THEN
dmg = dmg * 3 + fnrnd(2)
COLOR 20: PRINT "CRITICAL!"
SOUND (dmg + 500), 3
COLOR 15: PRINT "You hit the monster for"; dmg; "hit points!"
END IF
IF re > hit THEN SOUND (dmg + 500), 3: PRINT "you inflicted "; dmg; "hp on the monster"
ehp = ehp - dmg
CASE ELSE
GOTO 400
END SELECT
IF ehp <= 0 THEN
COLOR 25: PRINT "you have defeated the monster!"
COLOR 15
PRINT "You gain"; xp; "xp points, and"; raigold; "gold!"
DO: LOOP WHILE INKEY$ = ""
gold = gold + raigold
cxp = cxp + xp
IF cxp >= lxp THEN CALL levelraise
RETURN
END IF
500
PRINT "The monster attacks!"
dmg = fnrnd(10) + attack1
dmg = INT(dmg - defense)
IF dmg <= 0 THEN SOUND (dmg + 500), 3: PRINT "The attack does no damage": DO: LOOP WHILE INKEY$ = "": GOTO 400
re = fnrnd(100)
IF re <= qhr THEN
dmg = dmg * 3 + fnrnd(2)
COLOR 20: PRINT "CRITICAL!"
SOUND (dmg + 500), 3
COLOR 4: PRINT "The monster hit you for"; dmg; " hit points."
COLOR 15
END IF
IF re > qhr THEN SOUND (dmg + 500), 3: COLOR 4: PRINT "The monster hits you for"; dmg; " hp"
COLOR 15
chp = chp - dmg
IF chp <= 0 THEN
INPUT "You lost!...keep playing?", e$
IF e$ = "N" OR e$ = "n" THEN SYSTEM
gold = gold \ 1.2
IF gold <= 0 THEN gold = 0
chp = mhp
END IF
DO: LOOP WHILE INKEY$ = ""
GOTO 400
END SUB
SUB reward
IF rewad = 1 THEN GOTO 100
IF rewad = 2 THEN GOTO 101
IF rewad = 3 THEN GOTO 102
IF rewad = 4 THEN GOTO 103
100
quest = 0
PRINT "Thank you for killing the bone golem!"
PRINT "Here is 2000 gold": gold = gold + 2000
PRINT "We will reward you by giving you an ability potion. What ability"
PRINT "do you want up?"
SLEEP 1
INPUT "(1)str (2)dex (3) con (4) wis (5) int (6) cha", ab
IF ab = 1 THEN PRINT "Strength up by 1!": str = str + 1
IF ab = 2 THEN PRINT "Dexterity up by 1!": dex = dex + 1
IF ab = 3 THEN PRINT "Constitution up by 1!": con = con + 1
IF ab = 4 THEN PRINT "Wisdom up by 1!": wis = wis + 1
IF ab = 5 THEN PRINT "Intelligence up by 1!": in = in + 1
IF ab = 6 THEN PRINT "Charisma up by 1!": cha = cha + 1
IF ab > 6 OR ab < 1 THEN GOTO 100
PRINT "Thanks again!"
SLEEP 2
EXIT SUB
101
quest = 0
PRINT "You have recovered the statue!"
SLEEP 1
PRINT "Here have 10000 gold!": gold = gold + 10000
PRINT "Thanks for doing such a heroic deed...pick one"
PRINT "(1) vitality potion"
PRINT "(2) 15 healings"
INPUT "", ried
IF ried = 1 THEN gain = fnrnd(20) + con: PRINT "You have gained"; gain; " max HP's!": mhp = mhp + gain
IF ried = 2 THEN heal = heal + 15: PRINT "There are your 15 healings!"
IF ried < 1 OR ried > 2 THEN GOTO 101
SLEEP 1
PRINT "Thanks again!"
SLEEP 2
EXIT SUB
102
quest = 0
PRINT "You have saved our king! I know how to thank you..."
PRINT "Here have 100000 gold!": gold = gold + 100000
PRINT "Pick one"
PRINT "(1) MP raise (2) HP raise (3) ability raise"
INPUT ried
IF ried = 1 THEN
mpr = fnrnd(3) + (wis \ 2)
PRINT "Max MP raised by"; mpr; "!"
mmp = mmp + mpr
END IF
IF ried = 2 THEN
thp = fnrnd(20) + con + wis
PRINT "Max HP's raised by"; thp; "!"
mhp = mhp + thp
END IF
IF ried = 3 THEN
PRINT "What ability do you want up?"
SLEEP 1
INPUT "(1)str (2)dex (3) con (4) wis (5) int (6) cha", ab
IF ab = 1 THEN PRINT "Strength up by 4!": str = str + 4
IF ab = 2 THEN PRINT "Dexterity up by 4!": dex = dex + 4
IF ab = 3 THEN PRINT "Constitution up by 4!": con = con + 4
IF ab = 4 THEN PRINT "Wisdom up by 4!": wis = wis + 4
IF ab = 5 THEN PRINT "Intelligence up by 4!": in = in + 4
IF ab = 6 THEN PRINT "Charisma up by 4!": cha = cha + 4
IF ab > 6 OR ab < 1 THEN GOTO 102
END IF
IF ried < 1 OR ried > 3 THEN GOTO 102
PRINT "Thanks again. You will beat the dragon someday"
SLEEP 1
EXIT SUB
103
quest = 0
PRINT "You have beaten the tarrasque!"
PRINT "You need 100000 gold don't you?": gold = gold + 100000
PRINT "How did you do it? I can't believe this! Someone that someday will"
PRINT "rid us of the DRAGON!"
SLEEP 2
PRINT "You need a big reward!"
PRINT "What ability do you want up?"
SLEEP 1
INPUT "(1)str (2)dex (3) con (4) wis (5) int (6) cha", ab
IF ab = 1 THEN PRINT "Strength up by 4!": str = str + 4
IF ab = 2 THEN PRINT "Dexterity up by 4!": dex = dex + 4
IF ab = 3 THEN PRINT "Constitution up by 4!": con = con + 4
IF ab = 4 THEN PRINT "Wisdom up by 4!": wis = wis + 4
IF ab = 5 THEN PRINT "Intelligence up by 4!": in = in + 4
IF ab = 6 THEN PRINT "Charisma up by 4!": cha = cha + 4
IF ab > 6 OR ab < 1 THEN GOTO 103
PRINT "You aren't strong enough now but I am sure when you reach "
PRINT "level 60 you will be able to kill the dragon."
SLEEP 4
PRINT "Until then keep at the arena. Bye!"
SLEEP 3
CLS
EXIT SUB
END SUB
SUB save
OPEN "O", 1, name$
WRITE #1, up, str, dex, con, in, wis, cha, heal, chp, mhp, cxp, lxp, level, cmp, mmp, defense, attack, hit, armor, weapon, bank, gold, message, pass, armor$, weapon$, mpheal
CLOSE
END SUB
SUB skillattack
IF cod = 0 THEN EXIT SUB
IF cod = 1 THEN
PRINT "You jump at the monster with a slash"
cmp = cmp - 1
dmg = (attack) + fnrnd(10) + (dex \ 2)
SOUND (500 + dmg), 3
PRINT "You inflict "; dmg; " HP's on him"
ehp = ehp - dmg
END IF
IF cod = 2 THEN
PRINT "You jump at the enemy, coming down with your sword"
cmp = cmp - 3
dmg = (attack) * 2 + fnrnd(9) + (dex \ 2)
SOUND (500 + dmg), 3
PRINT "You inflict "; dmg; " HP's on him"
ehp = ehp - dmg
END IF
IF cod = 3 THEN
PRINT "You shoot flames at the enemy"
cmp = cmp - 2
IF ele = 2 THEN dmg = ((wis * 2) + fnrnd(10)) * 2
IF ele <> 2 THEN dmg = (wis * 2) + fnrnd(10)
SOUND (500 + dmg), 3
IF ele = 2 THEN
PRINT "Monster weak against fire!"
PRINT "You inflict"; dmg; " HP's on the monster"
END IF
IF ele = 1 THEN
PRINT "Monster strong against fire"
PRINT "The monster gained"; dmg; " HP's"
END IF
IF ele <> 1 AND ele <> 2 THEN
PRINT "You inflicted"; dmg; " HP's on the monster"
END IF
IF ele <> 1 THEN ehp = ehp - dmg
IF ele = 1 THEN ehp = ehp + dmg
IF ehp > qhp THEN ehp = qhp
END IF
IF cod = 4 THEN
PRINT "You conjure an ice storm on the monster"
cmp = cmp - 2
IF ele = 1 THEN dmg = ((wis * 2) + fnrnd(11)) * 2 + fnrnd(2)
IF ele <> 1 THEN dmg = (wis * 2) + fnrnd(11)
SOUND (500 + dmg), 3
IF ele = 1 THEN
PRINT "Monster weak against ice!"
PRINT "You inflict"; dmg; " HP's on the monster"
END IF
IF ele = 2 THEN
PRINT "Monster strong against ice"
PRINT "The monster gained"; dmg; " HP's"
END IF
IF ele <> 1 AND ele <> 2 THEN
PRINT "You inflicted"; dmg; " HP's on the monster"
END IF
IF ele <> 2 THEN ehp = ehp - dmg
IF ele = 2 THEN ehp = ehp + dmg
IF ehp > qhp THEN ehp = qhp
END IF
IF cod = 5 THEN
PRINT "A bolt of lightning comes down on the enemy"
cmp = cmp - 3
IF ele = 5 THEN dmg = ((wis * 2) + fnrnd(12)) * 2
IF ele <> 5 THEN dmg = (wis * 2) + fnrnd(12)
SOUND (500 + dmg), 3
IF ele = 5 THEN
PRINT "Monster weak against lightning!"
PRINT "You inflict"; dmg; " HP's on the monster"
END IF
IF ele = 6 THEN
PRINT "Monster strong against lightning"
PRINT "The monster gained"; dmg; " HP's"
END IF
IF ele <> 6 AND ele <> 5 THEN
PRINT "You inflicted"; dmg; " HP's on the monster"
END IF
IF ele <> 6 THEN ehp = ehp - dmg
IF ele = 6 THEN ehp = ehp + dmg
IF ehp > qhp THEN ehp = qhp
END IF
IF cod = 6 THEN
PRINT "You cast the spell...."
cmp = cmp - 2
gahp = ((in * wis) \ 1.5) + fnrnd(5)
SOUND (500 + gahp), 3
PRINT "..and recover"; gahp; " HP's!"
chp = chp + gahp
IF chp > mhp THEN chp = mhp
END IF
IF cod = 7 THEN
PRINT "You cast the spell....."
cmp = cmp - 20
gahp = (((in * wis) \ 2) * 2 + fnrnd(25))
SOUND (500 + gahp), 3
PRINT "...and recover "; gahp; "HP's!"
chp = chp + gahp
IF chp > mhp THEN chp = mhp
END IF
IF cod = 8 THEN
PRINT "Here comes the tornado!"
cmp = cmp - 5
IF ele = 4 THEN dmg = INT((wis * 2.5) + fnrnd(10)) * 2
IF ele <> 4 THEN dmg = INT(wis * 2.5) + fnrnd(10)
SOUND (500 + dmg), 3
IF ele = 4 THEN
PRINT "Monster weak against air!"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment