Информация: Уважаемые посетители! В течение нескольких месяцев на форуме существовала проблема с регистрацией новых пользователей, о которой администрации стало известно недавно. Если вы ранее пытались зарегистрироваться на форуме, но не получили на ваш e-mail письмо с ссылкой для подтверждения регистрации, просим вас зарегистрироваться повторно. Приносим извинения за доставленные неудобства. Если вы все еще испытываете проблемы с регистрацией на форуме, обратитесь за помощью на e-mail: mr.angelo@railroadsim.net

Язык скриптования Auran Game Script

Другие вопросы и проблемы разработки дополнений

Re: Язык скриптования Auran Game Script

Сообщение AlexanderG » 25.02.2011, 16:04

2) нельзя получить список всех SceneryWithTrack-объектов карты
А зачем?
3) нельзя начинать поиск с этих объектов
И это зачем?
Join Dropbox and SHARE YOUR SHIT FOR FREE!
AlexanderG
 
Сообщения: 761
Зарегистрирован: 27.06.2009, 16:54
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.
Блог: Просмотр блога (2)
Имя: Александр

Re: Язык скриптования Auran Game Script

Сообщение agmike » 25.02.2011, 16:19

TRam_ писал(а):3) нельзя начинать поиск с этих объектов

GetNamedTrack("42").BeginTrackSearch(direction);
The Cake is a Lie.
agmike
 
Сообщения: 1025
Зарегистрирован: 26.08.2006, 12:43
Благодарил (а): 0 раз.
Поблагодарили: 3 раз.
Играю в: Пульт ДНЦ

Re: Язык скриптования Auran Game Script

Сообщение TRam_ » 25.02.2011, 17:07

2) нельзя получить список всех SceneryWithTrack-объектов карты
хотя бы для переделывания светофоров типа KDA. Но самый большой недостаток - неотображение на миникарте и невозможность управления с неё.
в z7 всё можно, а что нельзя - можно в sU
Аватара пользователя
TRam_
 
Сообщения: 1925
Зарегистрирован: 30.11.2007, 20:14
Благодарил (а): 2 раз.
Поблагодарили: 66 раз.
Играю в: Auran Trainz
Роль: Разработчик
Имя: Владимир

Re: Язык скриптования Auran Game Script

Сообщение AlexanderG » 25.02.2011, 17:28

хотя бы для переделывания светофоров типа KDA.
Некрофилией предлагаешь заниматься?
Join Dropbox and SHARE YOUR SHIT FOR FREE!
AlexanderG
 
Сообщения: 761
Зарегистрирован: 27.06.2009, 16:54
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.
Блог: Просмотр блога (2)
Имя: Александр

Re: Язык скриптования Auran Game Script

Сообщение kemal » 25.02.2011, 19:46

Так чего там с GSTrackSearch? Можно как-то эту стрелку найти?
<kuid:216981:******>
куид.ру не нужен
Аватара пользователя
kemal
 
Сообщения: 375
Зарегистрирован: 10.02.2006, 18:21
Откуда: Казань
Благодарил (а): 4 раз.
Поблагодарили: 7 раз.
Блог: Просмотр блога (4)
Играю в: Auran Trainz
Роль: Разработчик
Имя: Камиль

Re: Язык скриптования Auran Game Script

Сообщение AlexanderG » 25.02.2011, 22:10

Классическим способом нет. SceneryWithTrack не является трексайдом. Однако есть вот что:
Код: Выделить всё
  //! If the search cursor lies within an attached track, this function will return the
  //  SceneryWithTrack object to which the track is attached.
  //
  // Returns:
  //     Returns the SceneryWithTrack object to which the search cursor's track is attached,
  //     or null.
  //
  public native SceneryWithTrack GetAttachedTrackParentObject(void);

Допустим, натыкаемся на Junction, лежащий в пределах стрелки-SceneryWithTrack, тогда вызов этой функции вернет сам SceneryWithTrack.
Join Dropbox and SHARE YOUR SHIT FOR FREE!
AlexanderG
 
Сообщения: 761
Зарегистрирован: 27.06.2009, 16:54
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.
Блог: Просмотр блога (2)
Имя: Александр

Re: Язык скриптования Auran Game Script

Сообщение kemal » 26.02.2011, 01:34

Так в том-то и дело, что на Junction мы не натыкаемся. И даже на JunctionBase, не говоря уже о JunctionBaseGameObject (кстати, так до конца и не понял, для чего же нужен этот класс)

SceneryWithTrack не является трексайдом.

Это как раз не должно быть проблемой. Старые версии GSTrackSearch возвращают MapObject, потомком которого и является SceneryWithTrack. А новые так вообще object возвращают (опять же, так до конца и не понял, для чего же это сделано).
<kuid:216981:******>
куид.ру не нужен
Аватара пользователя
kemal
 
Сообщения: 375
Зарегистрирован: 10.02.2006, 18:21
Откуда: Казань
Благодарил (а): 4 раз.
Поблагодарили: 7 раз.
Блог: Просмотр блога (4)
Играю в: Auran Trainz
Роль: Разработчик
Имя: Камиль

Re: Язык скриптования Auran Game Script

Сообщение AlexanderG » 26.02.2011, 11:38

Так в том-то и дело, что на Junction мы не натыкаемся.
Это почему же? Стрелку не видно в поиске, ЕМНИП, только если она установлена не по маршруту.

Это как раз не должно быть проблемой. Старые версии GSTrackSearch возвращают MapObject, потомком которого и является SceneryWithTrack. А новые так вообще object возвращают (опять же, так до конца и не понял, для чего же это сделано).
Возвращать возвращают, но обжект там сделан для совместимости. Читаем мануал:
Код: Выделить всё
// The SearchNext() and GetMapObject() methods are provided to get a reference to a discovered
// Trackside object.  The reference returned by these methods can be <l gscLangKeyCast cast> to a
// Trackside child classes to find out if that item is in fact a Signal or a Junction for instance.
// As the script code doesn't know what the next item will be, always verify the cast.
Отсюда ясно, что поиск ведется только по потомкам Trackside и что стрелка, установленная "не туда", его прервет.

кстати, так до конца и не понял, для чего же нужен этот класс
Все в API:
Код: Выделить всё
//! Wrapper class for an object which derives from JunctionBase and GameObject. <bi FOR INTERNAL USE ONLY.>
Так что этот класс не должен нас интересовать.
JunctionBase описывает собственно соединение секций путей, и является прямым потомком GSObject, так что ГСТС его никогда не найдет. Для этих целей есть класс Junction, который является трексайдом, имеет модель (это, собственно, сам левер), может быть найден поиском и т.д.
Join Dropbox and SHARE YOUR SHIT FOR FREE!
AlexanderG
 
Сообщения: 761
Зарегистрирован: 27.06.2009, 16:54
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.
Блог: Просмотр блога (2)
Имя: Александр

Re: Язык скриптования Auran Game Script

Сообщение kemal » 07.03.2011, 21:19

Смотрю я в TRS2006 Scripting & API Guide (ибо ничего другого нет под рукой) и вижу фигу не могу понять, зачем же столько классов нужно.
В частности что косается индустрии. Вот какие классы мы имеем:
    Industry
    • BaseIndustry
      • GenericPassengerStation
    • BasePortal
    • GenericIndustry
Для чего нужен каждый из них?

Собственно, понадобилось мне пассажирскую станцию заскриптовать. Естественно, использовать GenericPassengerStation как-то не кошерно и я использовал BaseIndustry, перенеся весь функционал класса GenericPassengerStation в свой класс. Стало больше свободы, станцию можно более адекватно заскриптовать. Но некоторые сомнительные моменты всё же осталиь. Смотрю описание BaseIndustry - ничего нативного нет. И тут подкрадывается шальная мысль: а не выкинуть ли и его тоже, наследуясь сразу от Industry? Собственно, стоит ли так делать и, самое главное, не черевато ли это?
<kuid:216981:******>
куид.ру не нужен
Аватара пользователя
kemal
 
Сообщения: 375
Зарегистрирован: 10.02.2006, 18:21
Откуда: Казань
Благодарил (а): 4 раз.
Поблагодарили: 7 раз.
Блог: Просмотр блога (4)
Играю в: Auran Trainz
Роль: Разработчик
Имя: Камиль

Re: Язык скриптования Auran Game Script

Сообщение TRam_ » 07.03.2011, 21:21

а не выкинуть ли и его тоже, наследуясь сразу от Industry?
можно вовсе ни от чего не наследоваться, правда тогда обработать наезд на индустрию нельзя - Scenery_with_tracks почему-то не производит сообщения о наезде на неё поезда, только Industy и всё что выше. Триггер "rf passanger station" наследуется вовсе от траксайда.

Не чревато ни чем, разве что в "достижения", которые введены в 2010 трейнзе, не будут добавляться "рекорды по перевозке пассажиров".
в z7 всё можно, а что нельзя - можно в sU
Аватара пользователя
TRam_
 
Сообщения: 1925
Зарегистрирован: 30.11.2007, 20:14
Благодарил (а): 2 раз.
Поблагодарили: 66 раз.
Играю в: Auran Trainz
Роль: Разработчик
Имя: Владимир

Re: Язык скриптования Auran Game Script

Сообщение AlexanderG » 08.03.2011, 12:23

Естественно, использовать GenericPassengerStation как-то не кошерно и я использовал BaseIndustry, перенеся весь функционал класса GenericPassengerStation в свой класс.
"Не плоди сущностей сверх надобности."
Join Dropbox and SHARE YOUR SHIT FOR FREE!
AlexanderG
 
Сообщения: 761
Зарегистрирован: 27.06.2009, 16:54
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.
Блог: Просмотр блога (2)
Имя: Александр

Re: Язык скриптования Auran Game Script

Сообщение Добрый » 25.03.2011, 12:31

Не могу решить проблему. Для вывода на экран с помощью скрипта прописываю стандартный набор:
okno="<HTML><body>"+HTMLWindow.StartTable();
okno=okno+HTMLWindow.MakeRow(HTMLWindow.MakeCell(HTMLWindow.MakeImage("images\fon.tga",true,516,393)));
okno=okno+HTMLWindow.EndTable()+"</body></html>";
Какие бы форматы графического файла я не пробовал - в результате выводится просто чёрный прямоугольник заданного размера, без какого-либо изображения.
Изображение
Что я не так делаю?
Ничто так не укорачивает жизнь, как длинный язык
Аватара пользователя
Добрый
 
Сообщения: 472
Зарегистрирован: 25.07.2008, 15:01
Откуда: Курск
Благодарил (а): 1 раз.
Поблагодарили: 8 раз.
Играю в: Auran Trainz

Re: Язык скриптования Auran Game Script

Сообщение TRam_ » 25.03.2011, 14:21

У тебя оригинальное изображение должно иметь размеры степени 2. Т.Е. например растяни его до 512х512
в z7 всё можно, а что нельзя - можно в sU
Аватара пользователя
TRam_
 
Сообщения: 1925
Зарегистрирован: 30.11.2007, 20:14
Благодарил (а): 2 раз.
Поблагодарили: 66 раз.
Играю в: Auran Trainz
Роль: Разработчик
Имя: Владимир

Re: Язык скриптования Auran Game Script

Сообщение Добрый » 25.03.2011, 15:36

Пробовал - не помогает. Причём при создании с тем же изображением стандартного HTML-окна, запускаемого правилом Display HTML - всё работает.
Ничто так не укорачивает жизнь, как длинный язык
Аватара пользователя
Добрый
 
Сообщения: 472
Зарегистрирован: 25.07.2008, 15:01
Откуда: Курск
Благодарил (а): 1 раз.
Поблагодарили: 8 раз.
Играю в: Auran Trainz

Re: Язык скриптования Auran Game Script

Сообщение TRam_ » 25.03.2011, 16:00

попробуй
HTMLWindow.MakeImage("images\fon.tga",false,516,393)
в z7 всё можно, а что нельзя - можно в sU
Аватара пользователя
TRam_
 
Сообщения: 1925
Зарегистрирован: 30.11.2007, 20:14
Благодарил (а): 2 раз.
Поблагодарили: 66 раз.
Играю в: Auran Trainz
Роль: Разработчик
Имя: Владимир

Пред.След.

Вернуться в [TZ] Другие вопросы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7