Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 Pacman Game Need help
Index -> Programming, Turing -> Turing Help
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
Chaoskiller




PostPosted: Mon Oct 26, 2009 9:44 pm   Post subject: Pacman Game Need help

I am using turing 4.1.1 and this is the code ive made so far: Okay so this isnt much and it does count points Smile . I need help with making boundaries. My boundaries are sketchy and i dont know how to make walls inside unless i get every coord, which would take a long time. Ive used whatdotcolour and it didnt work out for me. Also i need to know how to make it that you only get the points once for that dot. Any suggestions for my script would be helpful Smile

% Jordan Upiter October 20,2009
% Pacman Game
import GUI

setscreen ("graphics: max, max")

var pacmanx, pacmany, ballx, bally, score, font: int
var ballx1, bally1, ballx2, bally2, ballx3, bally3, ballx4, bally4, ballx5, bally5, ballx6, bally6 : int
var ballx7, bally7, ballx8, bally8, ballx9, bally9, ballx10, bally10, ballx11, bally11, ballx12, bally12, ballx13, bally13, ballx14, bally14 : int
var move : array char of boolean
pacmanx := 55
pacmany := 360
score := 0
font := Font.New ("Times New Roman:20")
ballx := 125
bally := 360

% Pacman when moving up
procedure pacmanUP
drawfilloval (pacmanx, pacmany - 10, 25, 25, 7)
drawfilloval (pacmanx, pacmany, 25, 25, 44)
drawfilloval (pacmanx + 10, pacmany + 2, 4, 4, 7)
drawfillarc (pacmanx, pacmany, 26, 26, 45, 135, 7)
delay (50)
drawfilloval (pacmanx, pacmany, 25, 25, 44)
delay (50)
drawfilloval (pacmanx, pacmany, 25, 25, 7)
end pacmanUP
% Pacman when moving right
procedure pacmanRIGHT
drawfilloval (pacmanx - 10, pacmany, 25, 25, 7)
drawfilloval (pacmanx, pacmany, 25, 25, 44)
drawfilloval (pacmanx + 2, pacmany + 10, 4, 4, 7)
drawfillarc (pacmanx, pacmany, 26, 26, 315, 45, 7)
delay (50)
drawfilloval (pacmanx, pacmany, 25, 25, 44)
delay (50)
drawfilloval (pacmanx, pacmany, 25, 25, 7)
end pacmanRIGHT
% Pacman when moving left
procedure pacmanLEFT
drawfilloval (pacmanx + 10, pacmany, 25, 25, 7)
drawfilloval (pacmanx, pacmany, 25, 25, 44)
drawfilloval (pacmanx + 6, pacmany + 6, 4, 4, 7)
drawfillarc (pacmanx, pacmany, 26, 26, 135, 230, 7)
delay (50)
drawfilloval (pacmanx, pacmany, 25, 25, 44)
delay (50)
drawfilloval (pacmanx, pacmany, 25, 25, 7)
end pacmanLEFT
% Pacman when moving down
procedure pacmanDOWN
drawfilloval (pacmanx, pacmany + 10, 25, 25, 7)
drawfilloval (pacmanx, pacmany, 25, 25, 44)
drawfilloval (pacmanx + 6, pacmany + 6, 4, 4, 7)
drawfillarc (pacmanx, pacmany, 26, 26, 225, 310, 7)
delay (50)
drawfilloval (pacmanx, pacmany, 25, 25, 44)
delay (50)
drawfilloval (pacmanx, pacmany, 25, 25, 7)
end pacmanDOWN

procedure Game
cls
colour (10)
locate (4, 77)
put score
% Background fill colour
drawfill (1, 1, 7, 7)
% Dots First Row
drawfillarc (ballx, bally, 7, 7, 0, 360, 42)
drawline (5, 395, 635, 395, 10)
drawline (5, 5, 5, 395, 10)
drawline (5, 5, 600, 5, 10)
drawbox (600, 360, 600, 5, 10)
drawbox (600, 360, 635, 395, 10)
Draw.Text ("Start Here", 6, 375, font, red)
drawline (10, 360, 40, 360, red)
drawline (30, 370, 40, 360, red)
drawline (30, 350, 40, 360, red)
drawfillbox (100, 100, 150, 200, grey)
drawfilloval (pacmanx, pacmany, 25, 25, 44)
% User Input
loop
colour (10)
colourback (7)
locate (4, 76)
put score
drawline (5, 395, 635, 395, 10)
drawline (5, 5, 5, 395, 10)
drawline (5, 5, 600, 5, 10)
drawbox (600, 360, 600, 5, 10)
drawbox (600, 360, 635, 395, 10)
Draw.Text ("Start Here", 6, 375, font, red)
drawline (10, 360, 40, 360, red)
drawline (30, 370, 40, 360, red)
drawline (30, 350, 40, 360, red)
drawfilloval (pacmanx, pacmany, 25, 25, 44)
drawfilloval (pacmanx + 6, pacmany + 6, 4, 4, 7)

Input.KeyDown (move)

if move (KEY_UP_ARROW) then
pacmany := pacmany + 5
pacmanUP
end if
if move (KEY_RIGHT_ARROW) then
pacmanx := pacmanx + 5
pacmanRIGHT
end if
if move (KEY_LEFT_ARROW) then
pacmanx := pacmanx - 5
pacmanLEFT
end if
if move (KEY_DOWN_ARROW) then
pacmany := pacmany - 5
pacmanDOWN
end if

if pacmanx = ballx and pacmany = bally then
drawfillarc (617, 377, 7, 7, 0, 360, 42)
score := score + 10
end if

if pacmanx = 575 then
pacmanx := pacmanx - 5
end if
if pacmany = 370 then
pacmany := pacmany - 5
end if
if pacmanx = 30 then
pacmanx := pacmanx + 5
end if
if pacmany = 30 then
pacmany := pacmany + 5
end if

end loop
end Game

View.Set ("graphics:639;399,nobuttonbar")
var draw : int := GUI.CreateButtonFull (50, 10, 0, "Start",
Game, 0, '^D', true)

loop
exit when GUI.ProcessEvent
end loop
Sponsor
Sponsor
Sponsor
sponsor
Tony




PostPosted: Mon Oct 26, 2009 10:00 pm   Post subject: RE:Pacman Game Need help

array perhaps? You are already using them for "move".
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
Chaoskiller




PostPosted: Tue Oct 27, 2009 5:37 pm   Post subject: Re: RE:Pacman Game Need help

Tony @ Mon Oct 26, 2009 10:00 pm wrote:
array perhaps? You are already using them for "move".


Hmm am i really please explain how. Also i tried understanding arrays on the tutorials but it was to much for me to undertsnad in 1 sitting. i shud look at it again

ahh i see how using the ...array char of boolean... but i just realized what that does i just put it in because it was neccesarry for Input.KeyDown Smile
Display posts from previous:   
   Index -> Programming, Turing -> Turing Help
View previous topic Tell A FriendPrintable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 1  [ 3 Posts ]
Jump to:   


Style:  
Search: