Понял, вся загвоздка была в том, что такого товара не было на станции ...
X3 Terran Conflict / X3 Земной конфликт
 
X3 Terran conflict  
 

На сайте онлайн (человек): 217



 



Понял, вся загвоздка была в том, что такого товара не было на станции ...

Terran Conflict (X3TC) / Форум / Скрипты и моды для X3 Terran Conflict / Уроки танцев на СКРИПТАХ от MistR (От чайника для чайника)

Уроки танцев на СКРИПТАХ от MistR (От чайника для чайника)
(http://x3tc.net/x3_forum/?tid=375)
Автор: Мирный
(24.08.2012 17:02:11)

 Crudus писал(а):
Понял, вся загвоздка была в том, что такого товара не было на станции :) Благодарю ! Жаль, только, что придется прописывать для каждого айтема свою переменную и описывать кол-во. Как-то можно сократить список, типа:
лист->товары а,b,c...z; добавить весь лист на верфь; задать кол-во для листа -1; return null ?
 


Добавление товара только в три строчки для каждого, может и есть другие способы, но я пользуюсь только этим.
Впринципе, можно написать скрипт, который при запуске откроет окно с выбором товара для добавления.
Для этого надо будет создать параметр Item, который будет вызывать команду "Выбрать товар".
Точно так же можно ввести параметр для станции, чтобы выбирать куда добавить товар.
В таком случае можно будет обойтись примерно четырьмя-пятью строчками.


 Crudus писал(а):
Все получилось, но ппц пришлось с бубном танцевать и километры текста писать по 3 раза. Сначала написал скрипт в игре - отлично все работает. Проверочный выход-вход в игру и скрипта нету... дубль два... скрипт не сохраняется
Сел писать через Exscriptor. В итоге вот результат
Мне кажется ему не нравилось, что там 30 переменных, вот и не сохранял
 


Так ведь можно обойтись и одной переменной.

Все это пишется при помощи встроенного редактора и кнопок C и V (как ctrl + V и ctrl + C)
Ты вроде как называл переменные по номерам, этого делать не надо.
Добавление происходит в три строки, расписывать чересчур не буду, т.к. сделал это постом выше, но поясню вот что:

Опускаем поиск/создание станции,
Строка первая: Ввод переменной item, указание ее значения (оборудование/товар, в нашем случае)
Строка вторая: собсна, добавление на станцию
Строка третья: добавление в продажу кол-ва (в случае с апгрейдами неизменно добавляем 1шт)
Строка четвертая: пробел, дабы разграничить добавление айтема
Строка пятая: Снова ввод переменной Item, указываем ее, а не создаем новую, однако здесь присваеваем ей уже значение следующего нужного оборудования.
Строка шесть - дублирует строку два
Строка семь - дублирует строку три
Строка восемь - пропуск
Строка девять - Третий вид товара/оборудования таким же способом что и в строках один и пять.

Вот, вобщем так. Новую переменную мы не вводим потому, что ставим пробел между тремя строками, которыми добавляем товар. Это позволяет нам использовать одну и ту же $Item хоть 100 раз.


 Crudus писал(а):
Дык, я так с самого начала и сделал. Но добавлялся почему-то только последний айтем.
Т.е. у меня было
 Код:
  1. 001   $station = find station: sector=Heretic's End class or type=Terran Orbital Defence Station race=Terran flags=null refobj=null maxdist=null maxnum=null refpos=null
  2. 002   $gear = Bioscanner
  3. 003   $gear = Carrier Command Software
  4. 004   $station -> add product to factory or dock: $gear
  5. 005    = $station -> add 1 units of $gear
 

В данном примере, у меня, неизменно, добавлялся только Программный Модуль Авианосца.
 



*переходит на учительский тон*
Во первых, между строками 001 и 002 обязан быть пробел (во встроенном редакторе жамкаем insert)
Во вторых, я же писал про разграничение айтемов этими же пробелами, то есть в вашем скрипте ошибка в том, что строка 002 не имеет за собой строк 003 и 004 которые бы добавляли биосканер в продажу. 003 и 004 должны выглядеть в точности как выглядят у вас 004 и 005 соответственно. В строке 006 должен быть пробел, в общем я лучше напишу, как должно быть, смотрим:

 Код:
  1. 001  $station = find station: sector=Heretic's End class or type=Terran Orbital Defence Station race=Terran flags=null refobj=null maxdist=null maxnum=null refpos=null
  2. 002
  3. 003 $gear = Bioscanner
  4. 004 $station -> add product to factory or dock: $gear
  5. 005 = $station -> add 1 units of $gear
  6. 006
  7. 007 $gear = Carrier Command Software
  8. 008 $station -> add product to factory or dock: $gear
  9. 009 = $station -> add 1 units of $gear
 


Скоро уже сам смогу написать гайд по скриптам

 Crudus писал(а):
Хе-хе-хе, спасибо, сенсей, понял в чем была ошибка :)
Дерзайте! :) Вдруг именно вы напишите мод на добавление нормандии в Х3 :rolleyes:
 


Да не за что, обращайтесь если что
Нормандию еще до меня добавили в каком-то шип паке.
И кстати, я всего месяц или два назад открыл для себя редактор скриптов, и большинство из того что я тут писал, я почерпнул из чужих творений, а именно скачивал маленькие скрипты, открывал их и с помощью знаний, полученных из уроков MistR и Malstrime (за что им огромное спасибо) и знания английского изучал используемые команды, соотнося, например такие факты что корабль и станция добавляются в продажу по одному алгоритму уже смог создавать свои скрипты.

Кстати могу еще посоветовать создать свой собственный док для продажи оборудования вашим кораблям. Образец можете вытащить отсюда, только уберите в своем скрипте приставку "setup", т.к. в моем скрипте это вызвало создание тучи доков после каждой загрузки сейва, потому что я забыл добавить строку if not found (как то так) в скрипт, а исправить руки не доходят. Скрипт называется setup.aDO

 
p.s. и может в аську ?
 

Спать уже хочется, если что в скайп лучше -  kino09876

дерево темы → Уроки танцев на СКРИПТАХ от MistR (От чайника для чайника) Уроки танцев на СКРИПТАХ от MistR (От чайника для чайника) »
Список игр