Stay Alive - Game Help
Author |
Message |
altdas
|
Posted: Mon Jan 21, 2008 6:20 pm Post subject: Stay Alive - Game Help |
|
|
Hello, I'm altdas and I need a little Turing help. I'm pretty new to Turing, almost done a course in it, and for my final project, well, I'm a little stuck with my game.
This is my project so far, and I am having a little problems with the animation, All the images and files you need are in the attached file, could you please look at some of the things it is doing, and tell me how to fix them? You will easily be able to see what is wrong with it.
Quote:
% Screen Settings
var win := Window.Open ("graphics:644;404,offscreenonly")
var chars : array char of boolean
% ***************************************
% Variables & Constants
% ***************************************
% Physics
const RUN_SPEED := 10
const JUMP_SPEED := 15
const GRAVITY := 1
% Map
const GROUND_HEIGHT := 1
const WALL_LEFT := 1
const WALL_RIGHT := 573
% Character; Position
var posx, posy : int
var velx, vely : real
% Character; Physics Tracker
posx := 5
velx := 0
posy := 5
vely := 0
% Scene background
var background : string
background := "background.jpg"
% Character
var mc_air_right : string
mc_air_right := "mc_air_right.jpg"
var mc_air_left : string
mc_air_left := "mc_air_left.jpg"
% Character Running Right
const mc_run_right := "mc_run_right.gif"
var numFrames_right : int := Pic.Frames (mc_run_right)
% Load the picture
var delayTime_right : int
var pics_right : array 1 .. numFrames_right of int
Pic.FileNewFrames (mc_run_right, pics_right, delayTime_right)
% Character Running Left
const mc_run_left := "mc_run_left.gif"
var numFrames_left : int := Pic.Frames (mc_run_left)
% Load the picture
var delayTime_left : int
var pics_left : array 1 .. numFrames_left of int
Pic.FileNewFrames (mc_run_left, pics_left, delayTime_left)
%Rockets
var ranrocket : int
% ***************************************
% Main Program
% ***************************************
View.Set ("graphics,offscreenonly")
setscreen ("graphics")
% Pic.ScreenLoad (background, 0, 0, picCopy)
process character ()
loop
% In-game menu
Input.KeyDown (chars)
if chars ('q') then
exit
end if
Input.KeyDown (chars)
if chars ('i') then
put "Info"
% Instructions go here
end if
% Making the Character move
if chars (KEY_LEFT_ARROW) then
velx := -RUN_SPEED
elsif chars (KEY_RIGHT_ARROW) then
velx := RUN_SPEED
else
velx := 0
end if
% Character must be on the ground to jump
if chars (KEY_UP_ARROW) and posy = GROUND_HEIGHT then
vely := JUMP_SPEED
end if
% Gravity working with velocity
vely -= GRAVITY
posx += round (velx)
posy += round (vely)
% Borders | ground, and walls
if posy < GROUND_HEIGHT then
posy := GROUND_HEIGHT
vely := 0
end if
if posx <= WALL_LEFT then
posx := WALL_LEFT
velx := 0
end if
if posx >= WALL_RIGHT then
posx := WALL_RIGHT
velx := 0
end if
% Draw Borders
% Draw.Line (0, GROUND_HEIGHT, maxx, GROUND_HEIGHT, 0)
% Delay render, this is needed for fast computers
delay (15)
View.Update
end loop
end character
fork character
loop
% Character Display
if velx <= 0 then
for i : 1 .. 1
Pic.DrawFrames (pics_right, posx, posy, picCopy, upper (pics_right), 70, false)
end for
end if
if velx >= 0 then
for i : 1 .. 1
Pic.DrawFrames (pics_left, posx, posy, picCopy, upper (pics_left), 70, false)
end for
end if
if posy >= 5 and velx <= 0 then
Pic.ScreenLoad (mc_air_left, posx, posy, picCopy)
end if
if posy >= 5 and velx >= 0 then
Pic.ScreenLoad (mc_air_right, posx, posy, picCopy)
end if
View.Update
Draw.Cls
end loop
fork character
loop
randint (ranrocket, 1, 843)
end loop
Description: |
Contains a copy of the script, and all the images needed, plus a few of my older ones. |
|
Download |
Filename: |
Run.zip |
Filesize: |
56.36 KB |
Downloaded: |
72 Time(s) |
|
|
|
|
|
|
Sponsor Sponsor
|
|
|
isaiahk9
|
Posted: Mon May 05, 2008 5:42 pm Post subject: Re: Stay Alive - Game Help |
|
|
what do you mean - on the laptop I'm working off now, it's working fine.
|
|
|
|
|
|
|
|