Показать сообщение отдельно
Старый 12.02.2011, 13:50   #10
RBK
Знающий
 
Аватар для RBK
 
Регистрация: 06.12.2010
Адрес: Луганск
Сообщений: 252
Написано 113 полезных сообщений
(для 167 пользователей)
Ответ: Создание задания и выполнение события

я понял он хочет тестит где находится...
Нет, прочти цитату внимательней, у него два этажа на уровне, кнопка переносит игрока на другой этаж.
ведь positionentity не использует Тупаки колизии..и может быть баг когда обратно тупак цепляешь(провал через стену пример)
Ещё как использует, если коллизии не отключишь, через стены(пол и тд.) не пройдёшь.
Провал через стену(или пол) может быть, если неправильно указать координаты перемещения.

to Kingston
К примеру, я иду по коридору, зашел в триггер зону и проигрывается видео заставка( OpenMovie("video.wmv") )...
Я использую столкновения объектов.
Для триггера: создадим куб(CreateCube()), сделаем его прозрачным(EntityAlpha ...),установим тип триггер(EntityType ...),запишем в имя номер действия(NameEntity ...).
Теперь активатор: создаем пивот с родителем(CreatePivot(player)), установим тип активатор, указываем радиус проверки(EntityRadius...), создаем столкновение между типами(Collisions активатор, триггер, 2, 1)
Вызываем обновление активатора
. . .
act=CreatePivot(player)
; и тд по списку, см. активатор выше
. . .

Function triger_update()
  Local ent
  ; проверяем столкновение с триггером
  ent = EntityCollided(act, тип триггер)
  ; если произошло - обрабатываем
  If ent > 0
    ; отключаем триггер
    EntityType ent, 0
    ; столкновение сдвинуло активатор - возвращаем на место
    PositionEntity act, 0, 0, 0
    ; функция возвращает имя триггера(номер действия)
    Return EntityName$( ent )
  Else
    ; если столкновение нет возвращаем 0
    Return 0
  End If
End Function
А по возвращённому номеру действия определяешь что произойдёт("video.wmv" или на голову что-нибудь упадёт)
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Kingston (12.02.2011)