Posted: Thu Dec 19, 2002 4:51 am Post subject: please help as fast as possible
my program got two circles and one of them is bouncing all over the screen and the only thing i want is to give me a code that makes the bouncy circle bounce back if it hit the other circle and not pass throu it.
plz answer quickly
Sponsor Sponsor
azndragon
Posted: Thu Dec 19, 2002 9:13 am Post subject: (No subject)
Read the tutorial for the pool game in the other Turing forum. It explains how to develop a very realistic physics system.
Rocky
Posted: Thu Dec 19, 2002 7:12 pm Post subject: thankx but..
thank you but i still can't understand . let me just tell what iam doing
i made two circles one is big and the other one is small . i made the small one bounce all over the screen and i made the big one move usin the keyboared and the only thing is missing now is to make the small ball bounce back if hits the big one .... so please answer quickly ..plz.plz...i really need it today ...plz the code
krishon
Posted: Thu Dec 19, 2002 7:41 pm Post subject: (No subject)
i'm not to sure bout how to do this, maybe if you can use the equation of a circle. Like if they touch, then since the x y co-ordinates ont he side change, you could make them bounce off. i not really sure how to do it with a circle, but i know how to do it with a straight line, like pong.
krishon
Posted: Thu Dec 19, 2002 7:47 pm Post subject: (No subject)
well, actually, nm
u should reread the tutorial, with the code about the length between the centers and the if the distance of the length is less than the sum of the length of the radiuses, then it will bounce off. that is ur best bet.
Rocky
Posted: Thu Dec 19, 2002 8:29 pm Post subject: ok can you..
ok u said that u can do it with a line right? i think that would be better because iam actully making a program that it's related to pong so clould u please show me the code or send it to aho_vip@hotmail.com
plz hurry up
Rocky
Posted: Thu Dec 19, 2002 8:34 pm Post subject: i ask a lot sorry
could u please include the way of moving the line if u decided to send the code ...... i know i asked alot but i am new on turing and i don't know alot about it ...sorry
Dan
Posted: Thu Dec 19, 2002 8:59 pm Post subject: time sucks
with all the stuff going on i dont have any time to wire this up for you but we do have two difrent pong progames that may help you out.
then go in to the turing dir, progames then there is dan pong and another one made by some one i know.
Computer Science CanadaHelp with programming in C, C++, Java, PHP, Ruby, Turing, VB and more!
Sponsor Sponsor
Dan
Posted: Thu Dec 19, 2002 9:01 pm Post subject: oh
oh, one more thing they are made for turing 3.0.1 so if you dont have a sprite comblet turing you may have some problems but the code for colasion dection is still good.
P.S. next time plz give your post a better title it will help us and poleop that are looking for help.
Computer Science CanadaHelp with programming in C, C++, Java, PHP, Ruby, Turing, VB and more!
Rocky
Posted: Thu Dec 19, 2002 9:10 pm Post subject: sorry
iam have been trying to do what u said scence last week but as i said iam not really good at turing and i just found ur site yesterday and my program is due tommorw sooooooooooo pleaseeeeeeee help plz plz
Rocky
Posted: Thu Dec 19, 2002 9:20 pm Post subject: (No subject)
%-----------------------------------------------------------------------------
%Variable Dictionary
%-----------------------------------------------------------------------------
var b, n : int %Cordenates of the cercle centre
var chars : array char of boolean %Arrys
var x : int % the center of the circle
var y : int % the center of the circle
var dx : int %The Change in x
var dy : int %The Change in y
var picID : int %The ball image
var picBack : int %the Background Picture
var t : array 1 .. 8 of int := init (100, 100, 135, 185, 220, 220, 185, 135) %initiling the lines of the polygon
var z : array 1 .. 8 of int := init (100, 150, 185, 185, 150, 100, 65, 65) %initiling the lines of the polygon
%-----------------------------------------------------------------------------
%Setting Values For Variables
%-----------------------------------------------------------------------------
x := 100 %assigning where the centre of the circle must be
y := 240 %assigning where the centre of the circle must be
dx := Rand.Int (10, 15) %setting the changes of x to random number
dy := Rand.Int (10, 15) %setting the changes of y to random number
b := 100 %Centre of the Circle
n := 100 %Centre of the Circle
%-----------------------------------------------------------------------------
% SET SCREEN SETTINGS
%-----------------------------------------------------------------------------
setscreen ("graphics:v16") % sets the screen for vga mode 640 x 480
setscreen ("nocursor") % Turn off cursor
setscreen ("noecho")% Do not echo keys
%----------------------------------------------------------------------------
%Drawing the intor screen
%----------------------------------------------------------------------------
Draw.FillBox (0, 0, maxx, maxy, black)
delay (1000)
Draw.FillPolygon (t, z, 8, brightblue)
Draw.Polygon (t, z, 8, cyan)
delay(1000)
var font4 : int
font4 := Font.New ("Palatino:40:bold,italic")
Font.Draw ("Wellcome", 200, 300, font4, green)
delay(1000)
put"Try to prevent the bouncy ball from going behind your big circle"
delay(3000)
%----------------------------------------------------------------------------
%Play Music while the program is running
%----------------------------------------------------------------------------
process Rock
loop
Music.PlayFile ("pong2.mid")
end loop
end Rock
Draw.FillBox (0, 0, maxx, maxy, 10)
for v : 80 .. 640 by 80
Draw.Line (v, 0, v, 480, 0)
end for
for h : 60 .. 640 by 60
Draw.Line (0, h, 640, h, 0)
end for
%---------------------------------------------------------------------------
% Capture Image as Background and Draw it
%---------------------------------------------------------------------------
%---------------------------------------------------------------------------
%Drawing the Ball
%---------------------------------------------------------------------------
%---------------------------------------------------------------------------
%looping and setting the walls
%---------------------------------------------------------------------------
loop
Pic.Draw (picBack, 0, 0, picCopy)
Pic.Draw (picID, x, y, picMerge)
delay (40)
x := x + dx
if x >= maxx - 20 or x <= 0 then
dx:=-dx
end if
y := y + dy
if y >= maxy - 50 or y <= -30 then
dy := -dy
end if
%-----------------------------------------------------------------------------
%Make The Big Circle move using the Keyboared
%-----------------------------------------------------------------------------
Input.KeyDown (chars)
if chars (KEY_UP_ARROW) then
n := n + 5
elsif chars (KEY_RIGHT_ARROW) then
b := b + 5
elsif chars (KEY_LEFT_ARROW) then
b := b - 5
elsif chars (KEY_DOWN_ARROW) then
n := n - 5
end if
drawoval (b, n, 40, 40, red)
delay (5)
end loop
-----------------------------------------------------------------------------------
and as i said the only thing i want is to make the bouncy ball bounce back if it hits the big ball
plzzz help
Rocky
Posted: Thu Dec 19, 2002 9:23 pm Post subject: if u..
if u dont know how make the ball bounce back pretend that it's aline and tell me how to move it
sorry about allt these posts
Tony
Posted: Thu Dec 19, 2002 10:48 pm Post subject: solution
listen kid, you were told to read the tutorial on pool like 5 times already. By different people... I mean come on! It has all the code you need and it explains how to use it.
Quote:
if x >= maxx - 20 or x <= 0 then
dx:=-dx
end if
you obvisoly understand how to bounce the ball of the wall, now just make another if statment to bounce it of the other ball...