Сейчас на форуме: user99 (+2 невидимых)

 eXeL@B —› Оффтоп —› Colobot
Посл.ответ Сообщение


Ранг: 164.6 (ветеран), 65thx
Активность: 0.120
Статус: Участник
Волшебник

Создано: 28 мая 2012 01:27
· Личное сообщение · #1

Где-то около года назад закачал игрушку и почему-то поставил в корень диска C:
Посмотрел, ничего не понял и решил оставить до лучших времён. Лучшие времена
наступили около недели назад. Давно мазолила глаза левая папка в корне системного.
Но перед сносом решил ещё раз посмотреть и... оценил.

Похоже в игровом хельпе язык расписан далеко не полностью. Всюду в интернетах читал,
что присутствуют ограничения на величину одного скрипта. Ещё не пробовал, но вроде
как есть функции работы с внешними файлами. Это были мои мысли.

Теперь по сути. Предлагаю в этом топике обмениваться своими соображениями по поводу
этой игры, скриптами и всем сопутствующим.

-----
Следуй за белым кроликом




Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

Создано: 28 мая 2012 03:43
· Личное сообщение · #2

Code:
  1. Впрочем, это ограничение легко обойти - необходимо, используя внешний редактор, изменить текст программы так, чтобы его длина превышала 20 000 символов. После этого будет возможно работать с программой, используя встроенный редактор Colobot, без каких-либо ограничений.


| Сообщение посчитали полезным: neomant


Ранг: 164.6 (ветеран), 65thx
Активность: 0.120
Статус: Участник
Волшебник

Создано: 28 мая 2012 03:58 · Поправил: neomant
· Личное сообщение · #3

На скорую руку набросал скрипт по сбору ресурсов для крылатого граббера.

Code:
  1. extern void object::collectResources()
  2. {
  3.   errmode(0);
  4.   int resTypes[];
  5.   resTypes[0] = Titanium;
  6.   resTypes[1] = PowerCell;
  7.  
  8.   object item;
  9.   object spaceShip = radar(SpaceShip);
  10.  
  11.   while (true) {
  12.     if (energyCell.energyLevel < 0.5) rechargeBattery();
  13.     item = findResource(resTypes, spaceShip.position);
  14.     if (item != null) {
  15.       goto(item.position);
  16.       grab();
  17.       goto(spaceShip.position);
  18.       while (drop() != 0) findWayOut();
  19.     } else {
  20.       if (position != spaceShip.position) goto(spaceShip.position);
  21.       wait(5);
  22.     }
  23.   }
  24. }
  25.  
  26. void object::rechargeBattery()
  27. {
  28.   object powerStation;
  29.   powerStation = radar(PowerStation);
  30.   if (powerStation != null) {
  31.     while (goto(powerStation.position) != 0) findWayOut();
  32.     while (energyCell.energyLevel < 1) wait(1);
  33.   }
  34. }
  35.  
  36. object object::findResource(int[] resTypes, point targetPos)
  37. {
  38.   object item;
  39.   item = radar(resTypes);
  40.   if (item == null) return null;
  41.   if (isTargetPosition(item.position, targetPos)) {
  42.     item = radar(resTypes, 0, 360, 0, 1000, -1);
  43.     if (isTargetPosition(item.position, targetPos)) return null;
  44.   }
  45.   return item;
  46. }
  47.  
  48. boolean object::isTargetPosition(point startPos, point targetPos)
  49. {
  50.   return distance(startPos, targetPos) < 10;
  51. }
  52.  
  53. void object::findWayOut()
  54. {
  55.   turn(rand() * 360);
  56.   motor(1, 1);
  57. }


-----
Следуй за белым кроликом





Ранг: 44.2 (посетитель), 69thx
Активность: 0.140.02
Статус: Участник

Создано: 30 мая 2012 10:04
· Личное сообщение · #4

когда то сам шпилил в сею гаму, ещё от тех же разрабов есть CeeBot, более интересная, потому как позволяет рисовать хуи и прочую творческую чушь с помощью коденга.

// Фсем падонкам и ушлёпкам, 10 лет игре было Soldat, бухнём за бывалые дни.




Ранг: 568.2 (!), 465thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 30 мая 2012 16:05
· Личное сообщение · #5

specz пишет:
потому как позволяет рисовать хуи и прочую творческую чушь с помощью коденга

У спекси на первом месте всегда Б*УИ
specz Ты у нас за петросяна канаешь --> Link <--

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.





Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 02 июня 2012 21:22
· Личное сообщение · #6

specz пишет:
10 лет игре было Soldat, бухнём за бывалые дни

мда..спекз, поднимай сервак, позовем шарика в солдата шпилить.


 eXeL@B —› Оффтоп —› Colobot

У вас должно быть 20 пунктов ранга, чтобы оставлять сообщения в этом подфоруме, но у вас только 0

   Для печати Для печати