إصلاح السيارة غير المرئية
مرحبًا للجميع! هل واجهتم مشكلة كهذه - أنتم في مكان مغلق (مثل الملعب) وقد قمتم بإنشاء سيارة. لكنها غير موجودة! في الواقع، هي موجودة، لكنها أصبحت غير مرئية.
هذا الإصلاح يحل هذه المشكلة ويمكنكم إنشاء سيارات "مرئية" في جميع الأماكن المغلقة.
يمكن أيضًا تعطيل ذلك بإدخال رمز الغش "fixcars"، وعندها سيصدر صوت مميز.
بالنسبة لمن يريد فهم كيفية عمل ذلك...
الآن بالتفصيل. لا تأخذ مولدات السيارات في الاعتبار أن اللاعبين يمكنهم إنشاء سيارات (وغيرها) في الأماكن المغلقة. نتيجة لذلك، يتم ربط جميع السيارات بالمكان المغلق 0 (الشارع)،
لكن بما أننا لسنا في المكان المغلق 0، فإن السيارة المرئية ستكون فقط في المكان المغلق 0 (أي بالنسبة لنا هي "غير مرئية"). كل هذا يتم حله بسطرين من الكود بعد إنشاء السيارة.
مثال:
:CarCreating //اسم السلسلة
wait 0 // انتظر، وإلا ستتجمد اللعبة
if // إذا
0ADC: test_cheat "elegy" //تم كتابة رمز الغش
jf @CarCreating //إذا لم يكن كذلك، انتقل إلى بداية سلسلة "CarCreating"
jump @CarCreating2 //إذا تم كتابة رمز الغش، انتقل إلى سلسلة "CarCreating2"
:CarCreating2 //اسم السلسلة
wait 0 //انتظر، وإلا ستتجمد اللعبة
model.load(#elegy) //تحميل النموذج \"elegy\"(نموذج السيارة)
038B: load_requested_models //تسجيل النموذج في اللعبة (بدون هذا الأمر، لن يتم تحميل النموذج)
if //إذا
model.available(#elegy) //تم تحميل النموذج
jf @CarCreating2 //إذا لم يكن كذلك، انتقل إلى بداية سلسلة "CarCreating2"
Car.create(0@ #elegy 1@ 2@ 3@) //إنشاء السيارة
077E: get_active_interior_to $ACTIVE_INTERIOR //ننظر في أي مكان مغلق يوجد اللاعب
0840: link_car 0@ to_interior $ACTIVE_INTERIOR //"نربط" (نجعلها مرئية لنا) السيارة
car.RemoveReferences(0@) //إزالة المعلومات عن السيارة
jump @CarCreating //العودة إلى بداية السكربت
حيث 0@ - السيارة نفسها؛ #elegy - نموذج السيارة؛ 1@ 2@ 3@ - متغيرات (في هذه الحالة - الإحداثيات)؛ $ACTIVE_INTERIOR - متغير رقم المكان المغلق.
إجمالاً، هذان السطران:
077E: get_active_interior_to $ACTIVE_INTERIOR //ننظر في أي مكان مغلق يوجد اللاعب
0840: link_car 0@ to_interior $ACTIVE_INTERIOR //"نربط" (نجعلها مرئية لنا) السيارة
حيث 0@ - المركبة المطلوبة؛ $ACTIVE_INTERIOR - متغير رقم المكان المغلق.
يجعلان السيارة "مرئية" لنا. ولكن إذا غيرنا المكان المغلق، ستصبح السيارة "غير مرئية".
Всем привет! Вы сталкивались с такой проблемой - вы в каком-нибудь интерьере(стадион, например) и заспавнили машину. Но её нет! Вернее она есть, просто стала невидимой.
Данный фикс исправляет эту проблему и вы можете спавнить «видимые» машины во всех интерьерах.
Также это можно отключить, введя чит-код «fixcars», при этом раздастся характерный звук.
Для тех, кто хочет разобраться, как это работает...
Теперь по порядку. Спавнеры машин не учитывают то, что игроки могут спавнить авто(и не только) в интерьерах. Из-за этого все машины прицепляются к интерьеру 0(улица),
но т.к. мы находимся не в интерьере 0, то и видимой машина будет только в интерьере 0(т.е для нас она «невидима»). Все это решается двумя строчками кода после спавна авто.
Пример:
:CarCreating //наименование потока
wait 0 // ждем, в противному случае игра зависнет
if // если
0ADC: test_cheat «elegy» //чит-код написан
jf @CarCreating //в противном случае переходим в начало потока «CarCreating»
jump @CarCreating2 //если чит-код написан, переходим в поток «CarCreating2»
:CarCreating2 //наименование потока
wait 0 //ждем, в противном случае игра зависнет
model.load(#elegy) //загружаем модель \"elegy\"(модель автомобиля)
038B: load_requested_models //регистрируем модель в игре(без этого опкода модель не загрузится)
if //если
model.available(#elegy) //модель загружена
jf @CarCreating2 //в противном случае переходим в начало потока «CarCreating2»
Car.create(0@ #elegy 1@ 2@ 3@) //создаем машину
077E: get_active_interior_to $ACTIVE_INTERIOR //смотрим, в каком интерьере находится игрок
0840: link_car 0@ to_interior $ACTIVE_INTERIOR //\"прицепляем\"(делаем ее видимой для нас) машину
car.RemoveReferences(0@) //удаляем инфу о машине
jump @CarCreating //переходим в самое начало скрипта
где 0@ - само авто; #elegy - моделька авто; 1@ 2@ 3@ - переменные(в данном случае - координаты); $ACTIVE_INTERIOR - переменная номера интерьера.
Всего вот эти две строчки:
077E: get_active_interior_to $ACTIVE_INTERIOR //смотрим, в каком интерьере находится игрок
0840: link_car 0@ to_interior $ACTIVE_INTERIOR //\"прицепляем\"(делаем ее видимой для нас) машину
где 0@ - нужное ТС(транспортное средство); $ACTIVE_INTERIOR - переменная номера интерьера.
Делают авто «видимым» для нас. Но если мы поменяем интерьер, то машина станет «невидимой»