% Bryan's World Of FF06
 
var numFrames : int := Pic.Frames ("M:/TIK/11.gif")
 
var pics, pics1 : array 1 .. 16 of int
 
var delayTime, delayTime1 : int
 
var keys : array char of boolean %using keys
 
var x, x1, y1, y, xSize, ySize : int
 
var font, font2 : int
 
var position : int
 
var name : int
 
var number1, number2, number3, number4 : int
 
var characterHP, character2HP, character2MP, characterMP, characterTP, character2TP : int
 
characterHP := 9999
 
character2HP := 9999
 
characterMP := 100
 
character2MP := 100
 
characterTP := 100
 
character2TP := 100
 
x := 10
 
y := 10
 
x1 := 10
 
y1 := 10
 
xSize := 10
 
ySize := 10
 
number1 := Rand.Int (50, 100)
 
number2 := Rand.Int (800, 1500)
 
 
 
font := Font.New ("serif:15")
 
font2 := Font.New ("serif:85")
 
 
View.Set ("offscreenonly")
 
put "**********************************************************************"
 
put "** Welcome to the World Of Final Fantasy 06.                        **"
 
put "** The game you are about to play is based on the 11 Final Fantasy. **"
 
put "** The Main story line for this is Cloud is looking for Magus the   **"
 
put "** bad end boss on his way he must fight and level his way throught **"
 
put "** different areas.                                                 **"
 
put "** hit 'o' if your a new player                                     **"
 
put "**********************************************************************"
 
 
Draw.Text ("Final Fantasy", 20, 170, font2, black)
 
View.Update
 
delay (6000)
 
cls
 
 
 
% var picID : int
 
% var x2, y2 : int
 
%
 
% picID := Pic.FileNew ("M:/TIK/worldmap.gif")
 
% for i : 1 .. 50
 
%     x2 := Rand.Int (0, maxx)
 
%     y2 := Rand.Int (0, maxy)
 
%     Pic.Draw (picID, x2, y2, picCopy)
 
% end for
 
% Pic.Free (picID)
 
% delay (8000)
 
 
% Load the picture
 
 
Pic.FileNewFrames ("M:/TIK/11.gif", pics, delayTime)
 
%Pic.FileNewFrames ("C:/Documents and Settings/Mom_2/Desktop/Turing/cloud.gif", pics, delayTime)
 
Pic.FileNewFrames ("M:/TIK/cloud.gif", pics1, delayTime1)
 
%Pic.FileNewFrames ("C:/Documents and Settings/Mom_2/Desktop/Turing/magus.gif", pics1, delayTime1)
 
% Draw the background black
 
Draw.FillBox (0, 0, maxx, maxy, green)
 
 
% Create the sprite
 
var sprite, sprite1 : int
 
sprite := Sprite.New (pics (1))
 
sprite1 := Sprite.New (pics1 (1))
 
Sprite.SetPosition (sprite, 0, 100, false)
 
Sprite.SetPosition (sprite1, 0, 100, false)
 
Sprite.Show (sprite)
 
Sprite.Show (sprite1)
 
 
 
 
loop
 
    loop
 
        Draw.FillOval (57, 322, 55, 50, white)
 
        Draw.FillOval (110, 322, 55, 50, white)
 
        Draw.FillOval (240, 322, 55, 50, white)
 
        Draw.FillOval (240 + 70, 322, 55, 50, white)
 
 
        Draw.Oval (280, 222, 10, 10, green)
 
        Draw.Oval (88, 222, 10, 10, white)
 
        %Move the sprite across the screen
 
        Sprite.Hide (sprite)
 
 
        Sprite.SetPosition (sprite, +x1 + 50, y1 + 100, false)
 
        Sprite.SetPosition (sprite1, +x + 250, y + 100, false)
 
 
        Sprite.Show (sprite1)
 
        Sprite.Show (sprite)
 
 
        Input.KeyDown (keys)
 
        drawfilloval (42, 60, 5, 5, blue)
 
        drawfilloval (42, 85, 5, 5, blue)
 
        Draw.FillBox (638, 400, 458, 303, white)     %TP window
 
        Draw.FillBox (638 + 8, 400 + 8, 458 + 8, 303 + 8, blue)     %TP window
 
        Draw.FillBox (0, 0, maxx, maxy div 4 + 8, white)     %select window
 
        Draw.FillBox (8, 8, maxx - 10, maxy div 4, blue)     %select window
 
        Draw.ThickLine (170, 100, 170, 5, 5, white)
 
        if keys (KEY_UP_ARROW) then
 
            drawfilloval (42, 60, 5, 5, blue)
 
            drawfilloval (42, 85, 5, 5, white)
 
            position := 1
 
        end if
 
        if keys (KEY_DOWN_ARROW) then
 
            drawfilloval (42, 85, 5, 5, blue)
 
            drawfilloval (42, 57, 5, 5, white)
 
            position := 2
 
        end if
 
 
        if keys (KEY_RIGHT_ARROW) then
 
            drawfilloval (42, 85, 5, 5, blue)
 
            drawfilloval (42, 57, 5, 5, blue)
 
            drawfilloval (26, 40, 5, 5, white)
 
            position := 3
 
        end if
 
 
        if keys (KEY_LEFT_ARROW) then
 
            drawfilloval (42, 85, 5, 5, blue)
 
            drawfilloval (42, 57, 5, 5, blue)
 
            drawfilloval (26, 40, 5, 5, blue)
 
            drawfilloval (42, 25, 5, 5, white)
 
            position := 4
 
        end if
 
 
 
        if keys (KEY_ENTER) then
 
            if position = 1 then
 
                character2HP := character2HP - number1
 
                characterTP := characterTP + 10
 
 
                View.Update
 
 
                Draw.ThickLine (255, 117, 307, 188, 10, black)
 
                Draw.ThickLine (255, 117, 307, 188, 10 - 5, brightred)
 
                delay (800)
 
                Draw.ThickLine (310, 115, 250, 176, 10, black)
 
                Draw.ThickLine (310, 115, 250, 176, 10 - 5, brightred)
 
                Draw.Text (intstr ((number1)), 265, 203, font, white)
 
                delay (800)
 
                Draw.FillBox (0, 0, maxx, maxy, green)
 
                Draw.FillOval (57, 322, 55, 50, white)
 
                Draw.FillOval (110, 322, 55, 50, white)
 
                Draw.FillOval (240, 322, 55, 50, white)
 
                Draw.FillOval (240 + 70, 322, 55, 50, white)
 
                exit
 
            elsif characterHP < 1 then
 
                Draw.Text ("Game Over", 350, 280, font, white)
 
                exit when character2HP < 1
 
                exit
 
            elsif position = 2 and characterMP > 1 then
 
                character2HP := character2HP - number2
 
                characterMP := characterMP - 10
 
                exit when character2HP < 1
 
                delay (200)
 
                View.Update
 
                Draw.FillOval (285, 145, 50, 50, black)
 
                Draw.FillOval (285, 145, 50 - 10, 50 - 10, purple)
 
                delay (800)
 
                Draw.ThickLine (285, 145, 288, 106, 5, black)
 
                delay (100)
 
                Draw.ThickLine (285, 145, 240, 150, 5, black)
 
                delay (100)
 
                Draw.ThickLine (285, 145, 326, 148, 5, black)
 
                delay (100)
 
                Draw.ThickLine (285, 145, 283, 194, 5, black)
 
                delay (100)
 
                Draw.ThickLine (285, 145, 317, 119, 5, black)
 
                delay (100)
 
                Draw.ThickLine (285, 145, 245, 123, 5, black)
 
                delay (100)
 
                Draw.ThickLine (285, 145, 252, 180, 5, black)
 
                delay (100)
 
                Draw.ThickLine (285, 145, 315, 180, 5, black)
 
                Draw.Text (intstr ((number2)), 265, 203, font, white)
 
                delay (1000)
 
                Draw.FillBox (0, 0, maxx, maxy, green)
 
                Draw.FillOval (57, 322, 55, 50, white)
 
                Draw.FillOval (110, 322, 55, 50, white)
 
                Draw.FillOval (240, 322, 55, 50, white)
 
                Draw.FillOval (240 + 70, 322, 55, 50, white)
 
                View.Update
 
                exit
 
 
 
            elsif characterHP < 1 then
 
                Draw.Text ("Game Over", 350, 280, font, white)
 
                exit when character2HP < 1
 
                exit
 
 
 
            elsif position = 3 and characterTP > 99 then
 
                character2HP := character2HP - characterTP * 10
 
                characterTP := characterTP - characterTP
 
                Draw.Text (intstr ((characterTP * 10)), 350, 280, font, white)
 
                delay (800)
 
                Draw.FillBox (0, 0, maxx, maxy, green)
 
                Draw.FillOval (57, 322, 55, 50, white)
 
                Draw.FillOval (110, 322, 55, 50, white)
 
                Draw.FillOval (240, 322, 55, 50, white)
 
                Draw.FillOval (240 + 70, 322, 55, 50, white)
 
                View.Update
 
            elsif characterHP < 1 then
 
                Draw.Text ("Game Over", 350, 280, font, white)
 
                exit when character2HP < 1
 
                Draw.ThickLine (255, 117, 307, 188, 10, black)
 
                Draw.ThickLine (255, 117, 307, 188, 10 - 5, brightred)
 
                delay (800)
 
                Draw.ThickLine (310, 115, 250, 176, 10, black)
 
                Draw.ThickLine (310, 115, 250, 176, 10 - 5, brightred)
 
                delay (800)
 
                Draw.FillBox (0, 0, maxx, maxy, green)
 
                Draw.FillOval (57, 322, 55, 50, white)
 
                Draw.FillOval (110, 322, 55, 50, white)
 
                Draw.FillOval (240, 322, 55, 50, white)
 
                Draw.FillOval (240 + 70, 322, 55, 50, white)
 
                exit
 
 
            elsif position = 4 and characterMP > 0 then
 
                characterHP := characterHP + 1000
 
                characterMP := characterMP - 15
 
 
                Draw.Text ("+1000", 60, 203, font, white)
 
                delay (800)
 
                Draw.FillBox (0, 0, maxx, maxy, green)
 
                Draw.FillOval (57, 322, 55, 50, white)
 
                Draw.FillOval (110, 322, 55, 50, white)
 
                Draw.FillOval (240, 322, 55, 50, white)
 
                Draw.FillOval (240 + 70, 322, 55, 50, white)
 
                exit
 
 
            end if
 
        end if
 
 
        var width : int := Font.Width ("Attack", font)
 
        var height, ascent, descent, internalLeading : int
 
        Draw.Text ("Attack", 50, 80, font, white)
 
        Draw.Text ("Magic", 50, 57, font, white)
 
        Draw.Text ("Weapon Skill", 38, 37, font, white)
 
        Draw.Text ("Healing", 50, 18, font, white)
 
        Draw.Text ("Magus", 250, 80, font, white)
 
        Draw.Text ("HP", 310, 80, font, white)     %HP
 
        Draw.Text ("HP", 310, 57, font, white)     %HP
 
        Draw.Text (intstr (characterHP), 350, 80, font, white)
 
        Draw.Text ("Cloud", 250, 57, font, white)
 
        Draw.Text ("/9999", 400, 80, font, white)
 
        Draw.Text (intstr (character2HP), 350, 57, font, white)
 
        Draw.Text ("/9999", 400, 57, font, white)     %end of HP
 
        Draw.Text ("MP", 550, 57, font, white)     %MP
 
        Draw.Text ("MP", 550, 80, font, white)     %MP
 
        Draw.Text (intstr (character2MP), 470, 57, font, white)
 
        Draw.Text ("/100", 500, 80, font, white)
 
        Draw.Text (intstr (characterMP), 470, 80, font, white)
 
        Draw.Text ("/100", 500, 57, font, white)     %end of MP
 
        Draw.Text ("/100", 600, 380, font, white)     %end of TP
 
        Draw.Text ("/100", 600, 339, font, white)     %end of TP
 
        Draw.Text ("Cloud", 490, 380, font, white)
 
        Draw.Text ("Magus", 490, 340, font, white)
 
        Draw.Text (intstr (characterTP), 570, 380, font, white)     %TP
 
        Draw.Text (intstr (character2TP), 570, 339, font, white)     %TP
 
        View.Update
 
        var x6, y6, button : int
 
 
        Mouse.Where (x6, y6, button)
 
        Text.Locate (1, 1)
 
        if button = 0 then
 
            put x6 : 4, "  ", y6 : 4, "  button up"
 
        else
 
 
 
        end if
 
 
    end loop
 
 
    loop
 
        Draw.FillOval (57, 322, 55, 50, white)
 
        Draw.FillOval (110, 322, 55, 50, white)
 
        Draw.FillOval (240, 322, 55, 50, white)
 
        Draw.FillOval (240 + 70, 322, 55, 50, white)
 
 
        Draw.Oval (88, 222, 10, 10, green)
 
        Draw.Oval (280, 222, 10, 10, white)
 
        %Move the sprite across the screen
 
        Sprite.Hide (sprite)
 
 
        Sprite.SetPosition (sprite, +x1 + 50, y1 + 100, false)
 
        Sprite.SetPosition (sprite1, +x + 250, y + 100, false)
 
 
        Sprite.Show (sprite1)
 
        Sprite.Show (sprite)
 
 
        Input.KeyDown (keys)
 
        drawfilloval (42, 60, 5, 5, blue)
 
        drawfilloval (42, 85, 5, 5, blue)
 
        Draw.FillBox (638, 400, 458, 303, white)     %TP window
 
        Draw.FillBox (638 + 8, 400 + 8, 458 + 8, 303 + 8, blue)     %TP window
 
        Draw.FillBox (0, 0, maxx, maxy div 4 + 8, white)     %select window
 
        Draw.FillBox (8, 8, maxx - 10, maxy div 4, blue)     %select window
 
        Draw.ThickLine (170, 100, 170, 5, 5, white)
 
        if keys (KEY_UP_ARROW) then
 
            drawfilloval (42, 60, 5, 5, blue)
 
            drawfilloval (42, 85, 5, 5, white)
 
            position := 1
 
        end if
 
        if keys (KEY_DOWN_ARROW) then
 
            drawfilloval (42, 85, 5, 5, blue)
 
            drawfilloval (42, 57, 5, 5, white)
 
            position := 2
 
        end if
 
        if keys (KEY_RIGHT_ARROW) then
 
            drawfilloval (42, 85, 5, 5, blue)
 
            drawfilloval (42, 57, 5, 5, blue)
 
            drawfilloval (26, 40, 5, 5, white)
 
            position := 3
 
        end if
 
 
        if keys (KEY_LEFT_ARROW) then
 
            drawfilloval (42, 85, 5, 5, blue)
 
            drawfilloval (42, 57, 5, 5, blue)
 
            drawfilloval (26, 40, 5, 5, blue)
 
            drawfilloval (42, 25, 5, 5, white)
 
            position := 4
 
        end if
 
 
        if keys ('o') then
 
            put "Welcome to FF2006, using your up arrow key to attack, down to use magic, right to use tp moves, and left to heal yourself"
 
        end if
 
 
        if keys (KEY_ENTER) then
 
            if position = 1 then     %atttack
 
                characterHP := characterHP - number1
 
                character2TP := character2TP + 10
 
                delay (200)
 
                View.Update
 
                Draw.ThickLine (57, 116, 121, 173, 10, black)
 
                Draw.ThickLine (57, 116, 121, 173, 10 - 5, brightred)
 
                delay (800)
 
                Draw.ThickLine (120, 114, 51, 175, 10, black)
 
                Draw.ThickLine (120, 114, 51, 175, 10 - 5, brightred)
 
                Draw.Text (intstr ((number1)), 60, 203, font, white)
 
                delay (800)
 
                Draw.FillBox (0, 0, maxx, maxy, green)
 
                Draw.FillOval (57, 322, 55, 50, white)
 
                Draw.FillOval (110, 322, 55, 50, white)
 
                Draw.FillOval (240, 322, 55, 50, white)
 
                Draw.FillOval (240 + 70, 322, 55, 50, white)
 
                exit
 
 
            elsif characterHP < 1 then
 
                Draw.Text ("Game Over", 350, 280, font, white)
 
                exit when characterHP < 1
 
            elsif position = 2 and character2MP > 1 then
 
                characterHP := characterHP - number2
 
                character2MP := character2MP - 10
 
                exit when characterHP < 1
 
                delay (200)
 
                View.Update
 
                Draw.FillOval (88, 140, 35, 35, white)
 
                Draw.FillOval (88, 140, 35 - 10, 35 - 10, blue)
 
                delay (800)
 
                Draw.FillOval (46, 173, 23, 23, white)
 
                Draw.FillOval (46, 173, 23 - 5, 23 - 5, blue)
 
                delay (800)
 
                Draw.FillOval (130, 150, 23, 23, white)
 
                Draw.FillOval (130, 150, 23 - 5, 23 - 5, blue)
 
                delay (800)
 
                Draw.FillOval (60, 130, 23, 23, white)
 
                Draw.FillOval (60, 130, 23 - 5, 23 - 5, blue)
 
                delay (800)
 
                Draw.Text (intstr ((number2)), 60, 203, font, white)
 
                delay (1000)
 
                Draw.FillBox (0, 0, maxx, maxy, green)
 
                Draw.FillOval (57, 322, 55, 50, white)
 
                Draw.FillOval (110, 322, 55, 50, white)
 
                Draw.FillOval (240, 322, 55, 50, white)
 
                Draw.FillOval (240 + 70, 322, 55, 50, white)
 
                exit
 
            elsif character2HP < 1 then
 
                Draw.Text ("Game Over", 350, 280, font, white)
 
                exit when characterHP < 1
 
                View.Update
 
 
 
            elsif position = 3 and character2TP > 99 then
 
                characterHP := characterHP - characterTP * 10
 
                character2TP := character2TP - character2TP
 
                Draw.Text (intstr ((character2TP * 10)), 60, 203, font, white)
 
                delay (800)
 
                Draw.FillBox (0, 0, maxx, maxy, green)
 
                Draw.FillOval (57, 322, 55, 50, white)
 
                Draw.FillOval (110, 322, 55, 50, white)
 
                Draw.FillOval (240, 322, 55, 50, white)
 
                Draw.FillOval (240 + 70, 322, 55, 50, white)
 
                View.Update
 
            elsif character2HP < 1 then
 
                Draw.Text ("Game Over", 350, 280, font, white)
 
                exit when character2HP < 1
 
                delay (200)
 
                exit
 
 
            elsif position = 4 and character2MP > 0 then
 
                character2HP := character2HP + 1000
 
                character2MP := character2MP - 15
 
                Draw.Text ("+1000", 265, 203, font, white)
 
                delay (800)
 
                Draw.FillBox (0, 0, maxx, maxy, green)
 
                Draw.FillOval (57, 322, 55, 50, white)
 
                Draw.FillOval (110, 322, 55, 50, white)
 
                Draw.FillOval (240, 322, 55, 50, white)
 
                Draw.FillOval (240 + 70, 322, 55, 50, white)
 
                exit
 
 
            end if
 
        end if
 
 
        var width : int := Font.Width ("Attack", font)
 
        var height, ascent, descent, internalLeading : int
 
        Draw.Text ("Attack", 50, 80, font, white)
 
        Draw.Text ("Magic", 50, 57, font, white)
 
        Draw.Text ("Weapon Skill", 38, 37, font, white)
 
        Draw.Text ("Healing", 50, 18, font, white)
 
        Draw.Text ("Magus", 250, 80, font, white)
 
        Draw.Text ("HP", 310, 80, font, white)     %HP
 
        Draw.Text ("HP", 310, 57, font, white)     %HP
 
        Draw.Text (intstr (characterHP), 350, 80, font, white)
 
        Draw.Text ("Cloud", 250, 57, font, white)
 
        Draw.Text ("/9999", 400, 80, font, white)
 
        Draw.Text (intstr (character2HP), 350, 57, font, white)
 
        Draw.Text ("/9999", 400, 57, font, white)     %end of HP
 
        Draw.Text ("MP", 550, 57, font, white)     %MP
 
        Draw.Text ("MP", 550, 80, font, white)     %MP
 
        Draw.Text (intstr (character2MP), 470, 57, font, white)
 
        Draw.Text ("/100", 500, 80, font, white)
 
        Draw.Text (intstr (characterMP), 470, 80, font, white)
 
        Draw.Text ("/100", 500, 57, font, white)     %end of MP
 
        Draw.Text ("/100", 600, 380, font, white)     %end of TP
 
        Draw.Text ("/100", 600, 339, font, white)     %end of TP
 
        Draw.Text ("Cloud", 490, 380, font, white)
 
        Draw.Text ("Magus", 490, 340, font, white)
 
        Draw.Text (intstr (characterTP), 570, 380, font, white)     %TP
 
        Draw.Text (intstr (character2TP), 570, 339, font, white)     %TP
 
        View.Update
 
        var x6, y6, button : int
 
 
 
 
        Mouse.Where (x6, y6, button)
 
        Text.Locate (1, 1)
 
        if button = 0 then
 
            put x6 : 4, "  ", y6 : 4, "  button up"
 
        else
 
 
 
        end if
 
    end loop
 
 
end loop
 
 
  |