Сегодня на уроке мы изучим: -Пикапы, сейвинг, телепортацию и интерьеры. Итак, начнем Теория: -С помощью определеных опкодов можно вызвать save меню -С помощью определеных опкодов можно сделать телепортацию и смену интерьера игроку -pawnokit.com/Ru/Interiors- тут можно найти id всех интерьеров(Мне не платили) Конец теории Практика: Эм... ну что же начнем Значит создаем новый скрипт-файл(ctrl+n) Жмем F6(компиляция, да и кстати после завершения работы надо делать компиляцию, что бы получить готовый файл иначе игра не распознает его) Путь сохранения (путь к GTA)/cleo// В графе название пишим "MyFirstHouse" Далее В скрипте пишим {$cleo .формат}(формат смотри в первом уроке) 0000: thread 'MyFirstHouse' end_thread После thread 'MyFirstHouse' 0518: 1@ = create_available_asset_pickup 'PROP_3' at 2498.5393 -1642.2543 14.1131 price 120000 // Пикап покупки Marker.CreateIconWithoutSphere(2@,31,2498.539, -1642.254, 0.0) Далее пишим условие if $MyFirstHouseBuy == 0 jf @Buy1 Сразу же после пишим :NotBuy1 И :Buy1 После :NotBuy1 Пишим условие if and 0214: pickup 1@ picked_up jf @NotBuy1 Дальше сетим поворот и координаты игроку и ещё камеру Actor.PutAt($PLAYER_ACTOR,2498.4053, -1645.4764, 13.537) Actor.Angle($PLAYER_ACTOR) = 180.0 Camera.SetBehindPlayer() $MyFirstHouseBuy = 1 Потом уничтожаем на всякий случай прошлый пикап и на место него ставим другой пикап входа/выхода и убераем метку Pickup.Destroy(1@) 0A40: 1@ = create_entrance_marker_at 2498.539 -1642.254 14.1131 color 14 Marker.Disable(2@) Потом условие :1 wait 0 if 00ED: actor $PLAYER_ACTOR sphere 0 near_point 2498.539 -1642.254 radius 1.0 1.0 on_foot jf @1 Ииииииии... Телепортируем игрока, разворот ставим, камеру, интерьер, присоединяем игрока к интерьеру.... дальше делаем функционал сами !!!ПОСЛЕ ЗАВЕРШЕНИЯ РАБОТЫ КОМПИЛИРУЙТЕ СКРИПТ!!! !!!КООРДИНАТЫ ТУТ ТОЛЬКО ДЛЯ ПРИМЕРА! СТАВЬТЕ СВОИ И РАЗВОРОТ И ИНТЕРЬЕР ТОЖЕ СВОЙ!!! Actor.PutAt($PLAYER_ACTOR,-42.5258, 1408.2278, 1084.4297) Actor.Angle($PLAYER_ACTOR) = 0.0 Camera.SetBehindPlayer() 04BB: select_interior 8 0860: link_actor $PLAYER_ACTOR to_interior 8 После :Buy1 0A40: 1@ = create_entrance_marker_at 2498.539 -1642.254 14.1131 color 14 :2 wait 0 if 00ED: actor $PLAYER_ACTOR sphere 0 near_point 2498.539 -1642.254 radius 1.0 1.0 on_foot jf @2 Actor.PutAt($PLAYER_ACTOR,-42.5258, 1408.2278, 1084.4297) Actor.Angle($PLAYER_ACTOR) = 0.0 Camera.SetBehindPlayer() 04BB: select_interior 8 0860: link_actor $PLAYER_ACTOR to_interior 8 И тут тоже сами функционал... !!!ПОСЛЕ ЗАВЕРШЕНИЯ РАБОТЫ КОМПИЛИРУЙТЕ СКРИПТ!!! !!!КООРДИНАТЫ ТУТ ТОЛЬКО ДЛЯ ПРИМЕРА! СТАВЬТЕ СВОИ И РАЗВОРОТ И ИНТЕРЬЕР ТОЖЕ СВОЙ!!! Практика кончилась теперь бонус 3@ = Pickup.Create(модель,коорд_x,коорд_y,коорд_z) :228 wait 0 if Pickup.picked_up jf @228 03D8: show_save_screen !!!03D8-ой опкод показывает save меню!!! Итог: -Мы умеем телепортровать игрока -Мы умеем устанавлить игроку угол разворота -Менять интерьер -Присоединять актера к интерьеру -Делать сохранение -Устанавливать камеру за игроком -Делать проверки на поднятие пикапа -Делать маркеры входа/выхода -Создавать маркер для покупки имущества(не только дома, но и бизнесы можно сделать через это) -Все то что мы умели делать в прошлом уроке В следущем уроке: -Мы разберем объекты -Мы разберем анимации -Мы разберем активации на зоны Да и кстати, большое тебе спасибо, что прочитал это, потому что на этот мануал я убил один час своего сна :( КОНЕЦ | |
| |
Просмотров: 1744 | |
Всего комментариев: 0 | |