Показать сообщение отдельно
Старый 10.04.2012, 05:28   #8
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: Дубликат в дубликате

Поделал я твою игрушку на досуге. Поправил то что тебе нужно.
Сделано:
- пушки стреляют все, и только если игрок приблизится на определённое расстояние
- пушки убивают игрока
- игрок убивает пушки (после смерти они полупрозрачными становятся)

Теперь по коду. Конструкции типа
UpdateEnemy(ex_en.T_enemy)
....
Function UpdateEnemy(ex_en.T_enemy)
	For ex_en.T_enemy = Each T_enemy
		PointEntity ex_en\ent,player
		TurnEntity ex_en\ent,0,181.5,0
	Next
End Function
я заменил на
UpdateEnemies()
....
Function UpdateEnemies()
	Local ex_en.T_enemy
	For ex_en.T_enemy = Each T_enemy
		PointEntity ex_en\ent,player
		TurnEntity ex_en\ent,0,181.5,0
	Next
End Function
не вижу смысла в такие функции извне что-то передавать (во всяком случае на данном этапе).

Про коллизии. У тебя в игрока враг не попадал из-за неправильно назначенной коллизии, ты написал:
Collisions TYPE_PLAYER, TYPE_EN_BULLET, 2, 3
обрати внимание на порядок типов коллизии. Нужно поменять их местами:
Collisions TYPE_EN_BULLET, TYPE_PLAYER, 1, 1
т.к. первым должен идти тип того объекта, который сталкивается, а вторым того, с которым. (или нет? доку я перечитывать не стал, откуда-то помню такое просто)
Если бы ты игроком нарвался на пулю, идя на врага, то сработало бы и это.
Плюс к тому метод коллизии можно поставить 1: ellipsoid-to-ellipsoid collisions, и решение для коллизий тоже в 1: stop , т.к. пуля и игрок в виде эллипсоида колизятся, и двигать после столкновения ничего не нужно - снаряд просто удаляется сразу.

Подбирание оружие и аптечек я думаю лучше сделать через EntityDistance, думаю что быстрее работать будет (инфа не 100%).
Плюс проходить сквозь них игрок сможет, не подбирая, а то щас при здоровье в 100 сквозь аптечку не пролезешь, сдвигается игрок по коллизии.

Пушки я расставил в цикле, т.к. они в ряд просто пока что.

Там где исправлял что-то, поставил комментарий ";+++", но не везде т.к. мест стало много и мне надоело отвлекаться на проставление этих комментов.
Вложения
Тип файла: zip Game_ex.zip (3.6 Кб, 606 просмотров)
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Devilox (10.04.2012)