Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Александр Амзин. Бойцовский клуб и всё такое. [Работа над ошибками]


Информационный Канал Subscribe.Ru



Сегодня в рассылке:
1. Лирика и PR
2. Работа над ошибками


1. ЛИРИКА И PR

Сделал сегодня несколько открытий, которыми грех не поделиться с подписчиками:

    1) лучший пивной брэнд: "Пенное". И дизайн простой - плакаты и транспаранты
с надписью "ПЕЙТЕ ПИВО ``ПЕННОЕ''!"
Я потрясён тем, что до сих пор этот брэнд ещё никто не занял. Были бы головокружительные
высоты и объёмы продаж. Это вам не одеколон "Финиш" и не конфеты "Калигула".
    2) PR на самом деле суть не public realtions, как нам объясняют с экранов
телевизоров, а просто неверно (латиницей) набранная аббревиатура ЗК, что означает:
заключённый-каналоармеец. И именно эта невидимая связь объясняет то, что PR наиболее
силён среди бывших заключённых (а то и настоящих, тут Лимонов книгу выпустил;
не читал, но осуждаю. Книгу), а также то, что проделано столько работы на самим
понятием PR, и конца-края этому не видно.
Работая, я брал с собойу "Generation П" как аналог китайской "Книги Перемен"
или молитвенник - и, знаете ли, получалось, да. Предсказывал поведение начальства
как по отношению к себе, так и к окружающим.


2. РАБОТА НАД ОШИБКАМИ

Естественно, что код, который я дал, был ошибочным.

Правильный код для объекта "деньги" выглядит весьма своеобразно:

salesman: fixeditem
location=stroom
initial='продавец воздушных шариков'
noun = 'продавец'
sdesc= 'продавец воздушных шариков'
ldesc= {
"Продавец воздушных шариков стоит здесь, выкрикивая время от времени - ``Шарик
за 3 золотых!''.";
"Ты замечаешь, что из кармана у него выскочила монетка";
money.deposit(1);
money.stat;
};




   mag: item
   noun='курица'
   sdesc="курица"
   ldesc="Попробуй дотронуться!"
   location=stroom
   verDoTouch( actor ) = {}
   doTouch( actor ) =
   {
      local temp;
      "Ничего, кажется, не происходит ";
      temp:=money.withdraw(3);
      if (temp=true) {"Она клюёт <b>ДЕНЬГИ!</b>";} else {"У тебя, кажется, недостаточно
денег. Вот было бы
      монеты три...";};
   }
 ;



/* Проследить за тем, чтобы обеспечить безопасные методы для денежных расчётов
/
money: item
 loneitem="марка"
 discoverloneitem="марку"
 fiveitem="марки"
 tenitem="марок"
 amount=0
 sdesc="<<self.amount>> марок"
 ldesc="Это деньги. <<self.amount>>"
 location=Me

 / эта процедура добавляет деньги /

 deposit (sum) = {
 local temp;
 self.amount:=self.amount+sum;


  temp:=sum%10;
  "\nТы обнаруживаешь <<sum>> ";

  if (sum>10 && sum<20) {"<<self.tenitem>>";}
      else {
  switch (temp) {
  case 1:
   "<<self.discoverloneitem>>";
  break;
  case 2:
  case 3:
  case 4:
   "<<self.fiveitem>>";
  break;
  case 5:
  case 6:
  case 7:
  case 8:
  case 9:
  case 0:
   "<<self.tenitem>>";
  break;
  default:
  break;
   }
                  } / end of big IF /

return true;
 }

 / эта процедура забирает деньги /
 withdraw (sum) = {
   local temp;
   temp:=self.amount-sum;

   if (temp<0) {
         "Не могу уплатить денег больше, чем у меня есть.\n";
         return nil;
         }
 else {self.amount:=temp; return true;}

 }

 / эта процедура выводит количество денег /
 stat= {}
 stut = {local temp;
  temp:=self.amount%10;
  "\nУ тебя <<self.amount>> ";

 if (self.amount>10 && self.amount<20) {"<<self.tenitem>>";} else {
  switch (temp) {
  case 1:
  "<<self.loneitem>>";
  break;
  case 2:
  case 3:
  case 4:
  "<<self.fiveitem>>";
  break;
  case 5:
  case 6:
  case 7:
  case 8:
  case 9:
  case 0:
  "<<self.tenitem>>";
  break;
  default:
  break;
   }
         } / end of big IF */
   "\n";
  };


Остаётся только прокомментировать работу этой схемы.

Итак, мы создаём в комнате stroom двух персонажей - продавца и курицу. Курица,
если мы её коснёмся (touch курица), yfxy`n клевать деньги и склюёт три марки,
а продавец каждый раз, как мы на него поглядим (examine продавец), роняет по
одной марке.
Таким образом мы используем два метода объекта money: deposit и withdraw.

Осталось только сделать маленький финт ушами:

wallet: item
location=Me
sdesc="бумажник"
noun='бумажник';

И изменить location в money - мало ли кому деньги принадлежат!

location=wallet

Запускаем, и смотрим на inventory.

 > inventory
ты have a бумажник. The бумажник seems to contain a 0 марок. Сурраб отчаливает
на север.


 > x продавец
Продавец воздушных шариков стоит здесь, выкрикивая время от времени - ``Шарик
за 3 золотых!''.Ты замечаешь, что из кармана у него выскочила монетка
Ты обнаруживаешь 1 марку


 > inventory
ты have a бумажник. The бумажник seems to contain a 1 марок. Сурраб покачивается
и что-то тихонько поёт


Как некрасиво! Have a бумажник... to contain a 1 марок...Вот этим мы и займёмся
в следующих выпусках. Русификацией TADS.

С уважением, Александр Амзин
mailto:amzeen@mtu-net.ru

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное