помогите с выстрелом в объекты
Хотел попросить знающих программистов .
Я создал обьект который стреляет шариком по кубику .
Хотел попросить как сделать чтобы исчез и кубик и шарик при столкновении (при выстреле) ,и чтоб на месте стокновения был небольшой эффект взрыва (самого простого )
вот пример :
Graphics3D 640,480,32,2
SetBuffer BackBuffer()
shar=CreateSphere() ; - создаём шар
HideEntity shar ;- скрываем шар
player=CreateCube() ;- создаём куб(игрока)
cam=CreateCamera() ;-создаём камеру
PositionEntity cam,0,3,-15 ;- позиция камеры
EntityParent cam , player ;- привязка камеры с зади игрока
lit=CreateLight() ;- свет
Type Dude
Field entity
End Type
stena=CreateCube () ;- создаём обьект (СТЕНА)
PositionEntity stena , 0 ,0 ,50
Repeat
For d.Dude=Each Dude
MoveEntity d\entity,0,0,2
If EntityDistance(cam,d\entity)>150 ;- если при выстреле шарик улетает
FreeEntity d\entity ;- за 150 ,то он удаляеться с
Delete d ;- поверхности и из памяти
EndIf
Next
For d.Dude=Each Dude ;- если при выстреле шарик сталкиваеться
MoveEntity d\entity,0,0,1.1 ;- с кубиком(СТЕНА) , то шарик ищезает
If EntityDistance (d\entity,stena)<5 ;- с поверхности и из памяти
FreeEntity d\entity
Delete d
EndIf
Next
If MouseHit(1) ; - нажатие мыше при выстреле
d.Dude=New Dude ; - создаём копии шариков
d\entity=CopyEntity( shar )
PositionEntity d\entity,EntityX#(player,1),EntityY#(player),Entit yZ#(player,1) ;- привязка
EndIf ;- шариков кубика и камеры
If KeyDown(200) MoveEntity player,0,0,1 ;- управление
If KeyDown(208 ) MoveEntity player,0,0,-1
If KeyDown(203) MoveEntity player,-1,0,0
If KeyDown(205) MoveEntity player,1,0,0
RenderWorld
UpdateWorld
Flip
Until KeyHit(1)
End
Последний раз редактировалось shyrikkk, 11.12.2009 в 21:40.
|