Показать сообщение отдельно
Старый 01.09.2012, 00:54   #1505
Dzirt
Элита
 
Аватар для Dzirt
 
Регистрация: 16.01.2008
Сообщений: 1,800
Написано 958 полезных сообщений
(для 3,833 пользователей)
Ответ: Вопрос-Ответ (для новичков)

Сообщение от pepel Посмотреть сообщение
функция пересечения квадрата и прямоугольника тебе в помощь

Function cross_square_and_rect(x1#,y1#,x2#,y2#,x#,y#,side#) 

    
w#=x1-x2 
    
h#=y1-y2 
    
centerx#=x1-w/2 
    
centery#=y1-h/2 

    
If Abs(centerx x) <= (Abs(w) + side) / And Abs(centery y) <= (Abs(h) + side) / Return True 
     
     
End 
Function 
Так будет куда шустрее если хочешь проверить коллизии:

Function CollisionDetect(x1,y1,w1,h1,x2,y2,w2,h2)
		If x1 > (x2+w2) Or (x1+w1) < x2 Then Return False
		If y1 > (y2+h2) Or (y1+h1) < y2 Then Return False
	Return True 
End Function
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Dzirt за это полезное сообщение:
Dream (01.09.2012), pepel (01.09.2012)