[Tutorial] Collision Detection
Author |
Message |
FwuffyTheBunny
|
Posted: Wed Apr 09, 2003 10:11 am Post subject: (No subject) |
|
|
Hey man, i like the bouncing ball program, ill probly use sum of it to help me in making my projects in school, so all in all thanks |
|
|
|
|
|
Sponsor Sponsor
|
|
|
Homer_simpson
|
Posted: Fri Apr 25, 2003 11:04 pm Post subject: (No subject) |
|
|
here's is what i used in my custom created GUI to detect if mouse is over buttons or not
code: | function mouseover (x, y, x1, y1, x2, y2 : int) : boolean
if x >= x1 and x <= x2 then
if y >= y1 and y <= y2 then
result true
end if
end if
result false
end mouseover |
and this is how it is used
code: | var mousex, mousey, mouseb : int
function mouseover (x, y, x1, y1, x2, y2 : int) : boolean
if x >= x1 and x <= x2 then
if y >= y1 and y <= y2 then
result true
end if
end if
result false
end mouseover
loop
mousewhere (mousex, mousey, mouseb)
if mouseover (mousex, mousey, 15, 320, 115, 340) then
drawfillbox (15, 320, 115, 340, 9)
else
drawfillbox (15, 320, 115, 340, 12)
end if
end loop
|
|
|
|
|
|
|
hello
|
Posted: Sun May 11, 2003 7:35 pm Post subject: thx |
|
|
thx for helping with the collision detection and i will show my finished version of the game
thx again |
|
|
|
|
|
Pickles
|
Posted: Fri May 07, 2004 9:11 pm Post subject: .. |
|
|
I dont really understand it which is pretty sad because i should, is distance the point between the radius and what your looking for it to hit, and if distance is less than radius then that means that its hit.. ? Sorry if it sounds like a stupid question, i just cant seem to wrap my head around the concept |
|
|
|
|
|
Viper
|
Posted: Sun Nov 21, 2004 9:25 pm Post subject: (No subject) |
|
|
i find my self alwyas using the mousewhere is that jus b/c it the quickest 2 do or jus b/c im a newb would using keys be better or jus stick with mouse thing |
|
|
|
|
|
w00t
|
Posted: Wed Dec 01, 2004 8:17 am Post subject: (No subject) |
|
|
Hey, If figured this would be the place to be..
[mod:13299fcbab]No it isn't. Questions are best answered when asked in Turing Help. While I'm here, "fullscreen" only works in Turing 3.x, whereas View.Update only works in 4.0. That'd explain the flickering part.[/mod:13299fcbab] |
|
|
|
|
|
Andy
|
Posted: Wed Dec 01, 2004 4:03 pm Post subject: (No subject) |
|
|
u guys do realize that this topic is almost two years old right? |
|
|
|
|
|
w00t
|
Posted: Wed Dec 01, 2004 6:01 pm Post subject: (No subject) |
|
|
I'm using 3.2 |
|
|
|
|
|
Sponsor Sponsor
|
|
|
hq78
|
Posted: Wed Jan 05, 2005 5:10 pm Post subject: (No subject) |
|
|
how do you do the collision detection with a box? or like a 20 X 20 pixel picture with another 20 X 20 pixel picture? |
|
|
|
|
|
zylum
|
Posted: Wed Jan 05, 2005 5:57 pm Post subject: (No subject) |
|
|
check whether the horizontal distance between them is less than or equal to the sum of half of their lengths and the verticle distance is less than of equal to the sum of half of their heights. these distances would ofcourse be measured from the center of one box to the center of the other |
|
|
|
|
|
diablo
|
Posted: Mon Jan 17, 2005 1:15 pm Post subject: collision detection |
|
|
i read the tutorials and i still have a question:
i am making a game and my character uses large bullets
(about 15x15 pixels each), but i cant seem to get the bullets to kill the enemy when they hit. they just seem to pass thru each other.
can any1 help? |
|
|
|
|
|
Dan
|
Posted: Fri Jan 21, 2005 5:18 pm Post subject: Re: collision detection |
|
|
diablo wrote: i read the tutorials and i still have a question:
i am making a game and my character uses large bullets
(about 15x15 pixels each), but i cant seem to get the bullets to kill the enemy when they hit. they just seem to pass thru each other.
can any1 help?
Hard to help with somting like that with out seeing your code at all, post your question in turing help section with the code. |
Computer Science Canada
Help with programming in C, C++, Java, PHP, Ruby, Turing, VB and more! |
|
|
|
|
Paper*Mate
|
Posted: Sun Jun 05, 2005 12:28 pm Post subject: (No subject) |
|
|
so how would fix that the bullet doesnt go through the obsticles... heres my code
setscreen ("offscreenonly")
var x, y : int
var x3, x2, y3, y2 : int := 200
var shot : boolean := false
var bulletx, bullety : int := 0
x := 100
y := 100
var chars : array char of boolean
loop
drawfillbox (50, 110, 40, 280, black)
drawfillbox (590, 110, 600, 280, black)
drawfillbox (490, 0, 500, 25, black)
drawfillbox (490, 375, 500, maxy, black)
drawfillbox (125, 375, 135, maxy, black)
drawfillbox (125, 0, 135, 25, black)
drawfilloval (320, 190, 50, 50, black)
drawfillbox (maxx, maxy, 637, 0, black)
drawfillbox (0, 0, maxx, 2, black)
drawfillbox (0, 0, 2, maxy, black)
drawfillbox (0, 397, maxx, maxy, black)
drawfilloval (x, y, 6, 6, 12)
Input.KeyDown (chars)
if chars (KEY_UP_ARROW) then
if whatdotcolor (x, y + 9) = 0
then
y := y + 5
end if
end if
if chars (KEY_RIGHT_ARROW) then
if whatdotcolor (x + 9, y) = 0 then
x := x + 5
end if
end if
if chars (KEY_LEFT_ARROW) then
if whatdotcolor (x - 9, y) = 0 then
x := x - 5
end if
end if
if chars (KEY_DOWN_ARROW) then
if whatdotcolor (x, y - 9) = 0 then
y := y - 5
end if
end if
if chars (KEY_CTRL) and shot = false then
bulletx := x
bullety := y
shot := true
end if
if bulletx < maxx and shot then
bulletx += 10
drawfilloval (bulletx, bullety, 2, 2, brightred)
elsif bulletx >= maxx then
shot := false
end if
View.Update
delay (10)
cls
end loop
reply quick |
|
|
|
|
|
[Gandalf]
|
Posted: Sun Jun 05, 2005 12:43 pm Post subject: (No subject) |
|
|
heck, I know this is proabbyl an assignment and I'm not supposed to help you. I'm also sure that you should be listening to Dan and posting this is the Help sections. I'm also sure that you shouldn't post things multiple times to get help. But what the hey...
What you need is a whatdotcolour check for the bullet's x and y cordinates as well as the coordinates of you (big dot).
*edit* use [ code] tags next time when posting code. |
|
|
|
|
|
Paper*Mate
|
Posted: Sun Jun 05, 2005 1:06 pm Post subject: (No subject) |
|
|
im sorry to bug u again... but can u put up the actual code cause i dont understand what u r trying to tell me... its just that im a newbie at writting codes |
|
|
|
|
|
|
|