Показать сообщение отдельно
Старый 16.06.2010, 18:28   #870
FireOwl
Бывалый
 
Аватар для FireOwl
 
Регистрация: 16.09.2009
Адрес: Sun system
Сообщений: 831
Написано 442 полезных сообщений
(для 1,836 пользователей)
Сообщение Ответ: Вопрос-Ответ (для новичков)

Warning! Псевдо-код!
Type barrel
    Field mesh
    Field life
End Type

pickmesh  ; допустим, это меш который был определен пиком

; определение в главном цикле бочки, в которую стреляли
For b.barrel=Each barrel
    If b\mesh=pickmesh Then Explode(b)
Next

Function Explode(b.barrel)
    b\life=0                
    ; далее код взрыва или еще чего-нибудь
    ;  -
    ;  -
    For d.barrel=Each barrel
        If b<>d And d\life>0 Then
            If EntityDistance(b\mesh,d\mesh)<10 Then 
                Explode(d)
            EndIf
        EndIf
    Next
    FreeEntity(b\mesh)
    Delete b
End Function
Эх.. Давно не писал на Blitz, может где ошибся.
Но идея была примерно такой.
__________________
N"Gasta! Kvata! Kvakis!
Ahkstas so novajxletero (oix jhemile) so Ranetauw.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Nex (17.06.2010)