000117. Обзор класса Model
Last updated
Last updated
Обзор класса Model|Сегодня мы рассмотрим ещё один небольшой класс - Model. Мы узнаем как загружать модели и как их использовать!|wmysterio|wmysterio||||Начнём с конструктора. Что бы объявить модель нам нужно написать:
Мы объявляем нашу модель и она ждёт указания имени нашей модели и дальнейшего использования. Но более удобно использовать именно конструктор, когда модель мы уже знаем и хотим явно присвоить переменной. Для этого нужно использовать следующий код:
Само словоnew значит "новый", то есть мы создаём очередной экземпляр класса. Такая запись является вызовом конструктором класса. Хочу обратить ваше внимание, на следующую картинку:
Такое выпадающее меню указывает, что конструктор или функция может иметь несколько вариантов выполнения. Такой процесс называется перегрузкой функций. Детальнее о перегрузках вы можете узнать со ссылок в конце урока. Если мы во время этого списка мы начнём нажимать на клавиатуре стрелками ↑ или <kbd>↓
, вы увидите какие параметры может принимать функции. В моём случаи устраивает следующий вариант:
Мы явно указали, какую модель мы должны записать в переменную MyModel, как показано выше.
Рассмотрим, что у нас есть с самим объектом класса. А содержит он только условия. Вот их список:
``` cs /* Проверка: "Модель является для мотоциклов?": / MyModel.isBike / Здесь: возвращаемый параметр: bool */ cs /* Проверка: "Модель является для лодок?": / MyModel.isBoat / Здесь: возвращаемый параметр: bool */ 081E: model 0@ boat cs /* Проверка: "Модель является для автомобилей?": / MyModel.isCar / Здесь: возвращаемый параметр: bool */ 0A01: model 0@ car cs /* Проверка: "Модель является для вертолётов?": / MyModel.isHelicopter / Здесь: возвращаемый параметр: bool */ 0820: model 0@ heli cs /* Проверка: "Модель загружена?" или "Модель в памяти игры?": / MyModel.isInMemory / Здесь: возвращаемый параметр: bool */ 0820: model 0@ heli cs /* Проверка: "Модель является для пешеходов?": / MyModel.isPed / Здесь: возвращаемый параметр: bool */ cs /* Проверка: "Модель является для самолётов?": / MyModel.isPlane / Здесь: возвращаемый параметр: bool */ 081F: model 0@ plane cs /* Проверка: "Модель является для поездов?: / MyModel.isTrain / Здесь: возвращаемый параметр: bool */ cs /* Проверка: "Модель является для транспорта?": / MyModel.isVehicle / Здесь: возвращаемый параметр: bool */ cs /* Проверка: "Модель действительная?" или "Модель существует?": / MyModel.isValid / Здесь: возвращаемый параметр: bool */ 0488: model 0@ exists // versionA 07DE: model 0@ exists // versionB cs /* Получить модель оружия: / Model.GetWeaponModel(WeapMod) / Здесь: "Admiral" - название модели (string) Возвращает: объект класса Model */ 0781: get_weapon_with_ID 31 model_to $TEMP_MODEL cs /* Получает модель, указав её имя: / Model.FromString("Admiral") / Здесь: "Admiral" - модель (string) Возвращает: объект класса Model */ cs /* Получает базовую модель копов: / Model.BasicCopModel / Здесь: Возвращает: объект класса Model */ cs /* Получает базовую модель машины копов: / Model.BasicPoliceCarModel / Здесь: Возвращает: объект класса Model */ cs /* Получает текущую модель копов: / Model.CurrentCopModel / Здесь: Возвращает: объект класса Model */ cs /* Получает текущую модель машины копов: / Model.CurrentPoliceCarModel / Здесь: Возвращает: объект класса Model */ cs /* Скорее всего это модель игрока (???): / Model.Null / Здесь: Возвращает: объект класса Model */ /* Возможно: */ 0@ = #NULL cs /* Получить модель машины такси: / Model.TaxiCarModel / Здесь: Возвращает: объект класса Model */ cs World.CreateVehicle(new Model("Admiral"), MyVec); cs using System; using System.Windows.Forms; using GTA; namespace TestScript { public class Thread : Script { public Thread() { Vector3 MyVec; while (true) { MyVec = Player.Character.Position; if (Game.isKeyPressed(Keys.Tab)) { Wait(5000); World.CreateVehicle(new Model("Admiral"), MyVec); Game.DisplayText("Car Created!"); } Wait(0); } } } } {$CLEO} 0000: thread 'TestScript' model.Load(#ADMIRAL) 038B: load_requested_models while not model.Available(#ADMIRAL) wait 0 end while true Actor.StorePos($PLAYER_ACTOR, 0@, 1@, 2@) wait 5000 if 0AB0: key_pressed 9 // Tab then 00A5: 3@ = create_car #ADMIRAL at 0@ 1@ 2@ end wait 0 end
`||obzor_klassa_model|1554385340 |