Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 04.06.2009, 14:15   #1
Unodeya
ПроЭктировщик
 
Аватар для Unodeya
 
Регистрация: 14.05.2009
Сообщений: 101
Написано 31 полезных сообщений
(для 67 пользователей)
Вопрос: Препятствия на пути игрока

Я управляю игроком с помощью CamPick'a. Т.е где кликаю по плэйну туда идёт игрок. Вопрос: Если на пути игрока есть припятствия например куб или стена или здание. Если я кликну за кубом или персонаж должен остановиться. Я так понимаю нужно использовать LinePick но непонимаю как именно.. Подскажите пожалуйста! Заранее огромное спасибо!
(Offline)
 
Ответить с цитированием
Старый 04.06.2009, 16:36   #2
Amatsu
Дэвелопер
 
Аватар для Amatsu
 
Регистрация: 24.07.2008
Сообщений: 1,544
Написано 1,095 полезных сообщений
(для 2,706 пользователей)
Ответ: Вопрос: Препятствия на пути игрока

LinePick ( x#,y#,z#,dx#,dy#,dz#[,radius#] )

1) x,y,z - координаты персонажа

2) dx,dy,dz - вектор пика. например
dx=px-x dy=py-y dz=pz-z , где px,py,pz - координаты точки, куда должен дойти персонаж, а x,y,z - координаты персонажа

3) radius - толщина линии пика
(Offline)
 
Ответить с цитированием
Старый 04.06.2009, 18:03   #3
Sleepybear
ПроЭктировщик
 
Аватар для Sleepybear
 
Регистрация: 13.02.2009
Сообщений: 134
Написано 21 полезных сообщений
(для 22 пользователей)
Ответ: Вопрос: Препятствия на пути игрока

не понял, он у тебя должен дойти до препятствия и остановится или после клика просто не двигатся если есть препядствие ?
(Offline)
 
Ответить с цитированием
Старый 04.06.2009, 18:26   #4
Unodeya
ПроЭктировщик
 
Аватар для Unodeya
 
Регистрация: 14.05.2009
Сообщений: 101
Написано 31 полезных сообщений
(для 67 пользователей)
Ответ: Вопрос: Препятствия на пути игрока

оО Amatsu спасибо) Я фан твоей JRPG) Помоги мне правильно реализовать это сдесь :

MH1=MouseHit(1)
MH2=MouseHit(2)
MH3=MouseHit(3)
If MH1
CameraPick (Camera, MouseX(),MouseY())
If PickedEntity()=plane

PX#=PickedX ()
PZ#=PickedZ ()

PositionEntity PPick,PX,0,PZ
PointEntity(Player,PPick)
TurnEntity Player,0,180,0

EndIf
EndIf

If EntityDistance(Player,PPick)>.1

If AnimSeq(Player)=0
Animate Player,1,.5,1,10
EndIf
MoveEntity Player,0,0,-0.16
Else
If AnimSeq(Player)=1
Animate Player,2,1,0,10
EndIf
EndIf

Дополни пожалуйста как будет правильно! Заранее огромное тебе спасибо)

Sleepybear Мне нужно если перед игроком здание или любой обьект если я кликну на плейн дальше здания - он стоял на месте)
(Offline)
 
Ответить с цитированием
Старый 04.06.2009, 19:26   #5
Amatsu
Дэвелопер
 
Аватар для Amatsu
 
Регистрация: 24.07.2008
Сообщений: 1,544
Написано 1,095 полезных сообщений
(для 2,706 пользователей)
Лампочка Ответ: Вопрос: Препятствия на пути игрока

Я еще ни одной JRPG не сделал 0_о

По поводу кода, не силен я в разбирании чужих текстов. Но, если уж просишь, я бы сделал так:
MH1%=MouseHit(1)
MH2%=MouseHit(2)
MH3%=MouseHit(3)

If MH1 Then
	CameraPick (Camera, MouseX(),MouseY()) 

	If PickedEntity()=plane Then
		PX#=PickedX ()
		PZ#=PickedZ () 
			
		PositionEntity PPick,PX,0,PZ
		PointEntity(Player,PPick)
	EndIf
EndIf 

If LinePick(EntityX(Player,1),EntityY(Player,1),EntityZ(Player,1),EntityX(PPick,1)-EntityX(Player,1),EntityY(PPick,1)-EntityY(Player,1),EntityZ(PPick,1)-EntityZ(Player,1)) Then
	If Sqr((PickedX()-EntityX(Player,1))^2+(PickedY()-EntityY(Player,1))^2+(PickedZ()-EntityZ(Player,1))^2)>0.16 Then
		If AnimSeq(Player)<>1 Then Animate Player,1,.5,1,10
		MoveEntity Player,0,0,0.16
	Else
		If AnimSeq(Player)<>0 Then Animate Player,2,1,0,10
	EndIf
Else
	If EntityDistance(Player,PPick)>0.16 Then
		If AnimSeq(Player)<>1 Then Animate Player,1,.5,1,10
		MoveEntity Player,0,0,0.16
	Else
		If AnimSeq(Player)<>0 Then Animate Player,2,1,0,10
	EndIf
EndIf
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Посоветоваться (движение игрока) Fant 3D-программирование 6 18.03.2007 10:52
Передвижение игрока Fant 3D-программирование 27 09.03.2007 21:29
Реализация игрока в FPS X-Ranger 3D-программирование 7 06.03.2007 02:09
замучать игрока до скону jimon Болтовня 0 17.09.2006 12:47
Плавное перемещение игрока Fant 3D-программирование 4 18.04.2006 22:48


Часовой пояс GMT +4, время: 18:29.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com