[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]


  • Страница 1 из 1
  • 1
Модератор форума: Spidy, turBO, blitz3d  
Форум мира Blitz3D » Язык Blitz3D » 3D программирование » Collided entity name (help)
Collided entity name
МаксимгоДата: Понедельник, 21.04.2008, 14:31 | Сообщение # 1
ламер
Группа: Пользователи
Сообщений: 1
Награды: 0
Репутация: 0
Статус: Offline
Подскажите плз, как узнать имя ентити с которой произошло столкновение.
 
DzirtДата: Среда, 14.05.2008, 16:41 | Сообщение # 2
форумовец
Группа: Модераторы
Сообщений: 260
Награды: 2
Репутация: 9
Статус: Offline
Максимго, Скажи конкретно для чого тобі це(в декількох словах).
Спробуй так :
if entitycollided (player,type_item_cube) then text 10,20,"Entity collided with: "+ entityname (item_cube)
Ясне діло потрібно перед цим надати ім`я обєкту перед цим(nameentity item_cube).

Добавлено (05.05.2008, 16:06)
---------------------------------------------
Спосіб нормальний,якщо в тебе всі обєкти різних типів!
(слід пам`ятати ,що в блітза ліміт типів 999).
Потім напишу щось більш оптимізоване.

Graphics3D 640,480,32
SetBuffer BackBuffer()

Const type_cube1=1
Const type_cube2=2
Const type_cube3=3

fn=LoadFont("courier",16,True,True)
SetFont fn

Collisions type_cube1,type_cube2,2,1
Collisions type_cube1,type_cube3,2,1

l=CreateLight()

cube_pol=CreateCube()
ScaleEntity cube_pol,20,2,20
PositionEntity cube_pol,0,0,0
EntityColor cube_pol,323,23,45

cube1=CreateCube ()
ScaleEntity cube1,2,2,2
PositionEntity cube1,0,20,0
EntityType cube1,type_cube1
EntityColor cube1,234,565,463

cube2=CopyEntity (cube1)
PositionEntity cube2,4,20,7
EntityType cube2,type_cube2
EntityColor cube2,3,22,467
NameEntity cube2,"CUBE2"

cube3=CopyEntity (cube1)
PositionEntity cube3,15,20,13
EntityColor cube3,344,555,33
EntityType cube3,type_cube3
NameEntity cube3,"CUBE3"

main_cam=CreateCamera()
PositionEntity main_cam,40,55,20

While Not KeyHit(1)

PointEntity main_cam,cube_pol

If KeyDown(200) Then MoveEntity cube1,0,0,-1
If KeyDown(203) Then TurnEntity cube1,0,1,0
If KeyDown(205) Then TurnEntity cube1,0,-1,0

UpdateWorld()
RenderWorld()

If EntityCollided(cube1,type_cube2) Then Text 10,10,"Entity collided with: "+EntityName (cube2)
If EntityCollided(cube1,type_cube3) Then Text 10,10,"Entity collided with: "+EntityName (cube2)

Flip
Wend
End

Добавлено (14.05.2008, 17:41)
---------------------------------------------
Ой......вибачаюсь та в останній строчці:
If EntityCollided(cube1,type_cube3) Then Text 10,10,"Entity collided with: "+EntityName (cube2)
повинно бути так:
If EntityCollided(cube1,type_cube3) Then Text 10,10,"Entity collided with: "+EntityName (cube3)


Головне в грі не графіка,а сюжет......хоча без першого його й розуміти не хочеться.)

Сообщение отредактировал Dzirt - Суббота, 03.05.2008, 19:40
 
IronManДата: Среда, 19.11.2008, 08:29 | Сообщение # 3
ламер
Группа: Пользователи
Сообщений: 19
Награды: 0
Репутация: 1
Статус: Offline
Хороший пример) спасибо Dzirt, мне помог кое где)

Yes, I can fly
 
Форум мира Blitz3D » Язык Blitz3D » 3D программирование » Collided entity name (help)
  • Страница 1 из 1
  • 1
Поиск: