Привет всем! Я сделал этот лифт, штука интересная. Как делаем, создаем
два этажа, т.е. две комнаты, друг над другом, щелкаем правой кнопкой
мыши по карте, выбираем func\func_elevator, жмем кнопку Model в
свойствах, выбираем Base\mapobects\elevator\ и какую нибудь модель,
по
сути это шкаф без дверей Делаем сначала простой лифт. Т.е. без
дверей, и на два этажа. Лифт должен находиться в шахте, а не за
пределами комнаты, где-то в пространстве. Теперь задаем параметры
move_speed = 50, теперь нам нужно определить координаты расположения
первого и второго этажа. Как это делаеться, мышкой подводим к нижней
точке пола где будет распологаться лифт(У модели лифта есть
красненькая точка) вот и представим где она должна находиться когда
лифт будет стоять на первом этаже и снизу пишуться координаты точки. Например
192 0 16, эти цифры соответствуют осям X Y Z, определяем расположение второго
этажа, например 192 0 365, заметим, что X Y одинаковы, а Z изменяеться,
нам же надо чтоб он вертикально двигался когда определили координаты,
вводим их в свойства лифта это у нас параметр FloorPos1 - цифра 1 означает
1-ый этаж, вводим координаты 192 0 16, те которые соответствуют первому
этажу. Далее пишим ручками свойство FloorPos2 - 2 это цифра второго этажа.
Задаем значение 192 0 365, координаты второго этажа. Половина готова. Делаем
дисплей управления лифтом. Жмем кнопку Guis ищем в списке doors\elevator2floor.*,
пульт готов. Задаем ему свойства в общих свойтвах лифта. Gui_parm2 = 1,
Gui_parm3 = level2, Gui_parm4=level1. Почти готов, теперь надо сказать
лифту на каком этаже ему находиться в начале. Параметр Floor = 1 допустим
на 1 этаже. Лифт Готов!
Ах да!!! Забыл сказать, в нашем лифте будет темно как в ж... у негра
Делаем лампу, можно указать параметр ей Light_radius=150 150 150 , и самое
главное это параметр Bind, именно он заставит нашу лампу двигаться с лифтом
вместе. Указываем Bind=func_elevator_1 -имя лифта, можно посмотреть в свойствах
лифта в поле Name
Привет снова, доделываем наш лифт. Сделаем кнопки вызова лифта на этаж.
У лифта изменяем параметр floor=2 отправляем его от нас на другой этаж.
Теперь щелкаем правой мышкой по карте, выбираем сверху пункт Model... Ищем
guiobject(помоему, не помню блин) находим там что-то похожее на guimonitor(извиняюсь,
т.к. не имею редактора под носом, так что могу ошибиться) По сути это моделька
похоже на слепой монитор, вы в лифте, как заходишь в него слева такая пластина
находиться на стенке, вот что-то похожее и нам надо найти. У нее жмем в
свойствах guis, ищем guis\doors\elevator2floorcall что-то подобное. Задаем
ей параметры gui_parm1=1 - вызвать лифт на 1-й этаж. gui_parm3=Level2,gui_parm4=Level1.
Target=func_elevator_1, появиться голубая стрелочка, показывающая связь.
Такой-же объект создаем на 2 этаже, и изменяем параметр gui_parm1=2. Вот
и все, должна работать.
Попробовал я сделать двери у лифта, значит, так, их два вида, внешние
и внутринние, в чем различия, внешние-это двери расположенные на этаже,
не привязанные к лифту, ну чтоб за ним не ездили Внутренние-двери
принадлежащие самой модели лифта, т.е. те которые ездят с ним. У меня с
ними запарка какая-то получается, их можно открыть в любой момент, даже
когда лифт двигаеться, а так и выпасть можно, я пока над этим работаю.
Значит делаем внешние двери. Двери как двери, ни чем не отличаються от
обычных, если забыл как их делать смотри здесь в форуме есть мое описание
создания дверей. Когда мы их навояли, нам нужно в свойтвах лифта добавить
параметры, это для того, чтоб когда лифт приедет на этаж, двери открылись
сами . Это будут параметры FloorDoor1=func_door_1 первая дверь расположенная
на первом этаже, опять же смоти как у тебя они называються в их свойствах
в поле Name. это имя и пиши сюда. И еще один параметр FloorDoor2=func_door_2
дверь расположенная на втором этаже. Можете у дверей поправить свойсво
triggersize=10 это чтоб двери не открывались сами когда вы стоите по середине
лифта, т.е. расстояние для открытия
Ну вот я и двери внутренние сделал, все пучком не открываються
когда лифт едет. Посмотрел пример с этим лифтом, там увидел инетересный
параметр Team. Стал разбираться, что к чему. По сути я выяснил какое значение
должен он принимать. team=<имя функции>_<имя группы> Фишка заключаеться
в том, что у тех предметов где этот параметр одинаковый, они входят в одну
функцию. Допустим, делаем две двери, одна будет называться Func_door_1,
другая func_door_2. У обоих делаем параметр team=func_door1_mydoor. Теперь
делаем кнопку, у кнопки делаем параметр target=func_door_1. Что получаем,
когда щелкаем на кнопку открываються обе двери. Кнопка вызвала открытие
func_door_1, а та в одной группе с func_door_2, и значит вызов соответствует
второй двери тоже. Вот и фишка. Как нам ее применить к лифту? У лифта делаем
две двери раздвигающиеся например влево-вправо, обоим дверям даем параметр
team=func_door1_indoor(ну если у нас получились двери например func_door_56,
а вторая 63, то мы у team делаем функцию func_door56_indoor). Теперь у
самого лифта делаем параметр innerdoor=func_door_1(или 56), так же можно
и с внешними дверями которые не по одной на этаже. Вот, вроде все.