Показать сообщение отдельно
Старый 02.02.2009, 20:24   #2
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Аптечки - боеприпасы

Сообщение от Petrofan Посмотреть сообщение
Хочу спросить как можно это сделать с помощью типов. Я пробовал так:

Function Create_amunitions(amx#,amy#,amz#)
b.amunitions= New amunitions
b\Entity = LoadMesh("Data\obj\amunitions.3DS")
ScaleEntity b\Entity ,.05,.05,.05
EntityType b\Entity,amunitions_type
PositionEntity b\Entity,pmx#,pmy#,pmz#
End Function

Function Update_money()
For f.amunitions= Each amunitions
TurnEntity f\Entity,0,10,0
If EntityCollided(player,amunitions_Type)>1
FreeEntity f\Entity
Delete f
End If
Next
End Function

Функцией создания расставляю где мне нужно
(Create_amunitions(0,0,100)) но стоит мне взять один ящик боеприпасов в этот момент все исчезают может я чё не так делаю?
Конечно не так.
Проверяй коллизию в апдейте игрока, ведь у тебя игрок коллизится с аптечкой.
EntityCollided(player,amunitions_Type) возвратит тебе хендл аптечки, с которой произошла коллизия.
Методом перебора (или мгновенным доступом к объекту типа см. соотв. тему в факе) найди элемент типа аптечек, ентити которого соответствует хендлу коллижна и там его удали
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ABTOMAT (02.02.2009)