Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

0    0    #1
30.04.2011 23:38

Pirate
Участник (+2)
Зарегистрирован: 30.04.2011
Сообщений: 26

описание комнаты и др вопросы от Pirate

Мануал я почитал кусками, вроде что-то понял. На форум ваш иногда заглядываю. Я так гляжу, нубские вопросы выливаются обычно в тему посвящённую не какому-то конкретному вопросу, а какому-то конкретному нубу. Я тоже такую тему себе хочу:)

Сразу скажу, что терпения и фантазии мне не хватает, зато я точно знаю, что хочу написать. Это- небольшие куски англоязычных квестов. Я хочу сделать из них фанские демки на русском.

проблемы две:

Код:

Plateau_3: room
    sdesc = "Плато"   
    ldesc =
    {
        "Плоская вершина круглого каменного образования около тысячи метров в диаметре. Отсюда вы можете
         обозревать поверхность планеты на многие километры во все стороны, но везде всё та же знакомая
         картина. Пыльная равнина, тридцатью метрами ниже, простирается во все стороны. Ваш корабль
         виден прямо на юг отсюда. Край скалы продолжается на восток и на запад.";
        if (boulder.location = Plateau_3)
        {
        " \b Вы заметили здоровенный валун к югу. Он около трёх метров в диаметре и, похоже, расположен на
         самом краешке скалы.";
        }
    }
    
    north  = { "Туда идти незачем."; return nil; }  
    nw     = { "Туда идти незачем."; return nil; }
    ne     = { "Туда идти незачем."; return nil; } 
    west   = Plateau_2
    east   = { "Вы прошли несколько сотен метров вдоль края плато, ничего особенного не обнаружили, и вернулись."; return nil; }
    // s, sw or se - impossible     
    
    // in, out, up or down - impossible
;

Код:

boulder: item
  location= Plateau_3
  desc = 'валун/м'
  noun = 'валун/м'
  adjective=  'большой/м' 'валуна' 'валуна#r'
  ldesc= "Большой валун."
  isHer = true
    
  verDoPush(actor) =
  {
  }    
    
  doPush(actor) =
  {
        "Вы налегли на валун, и толкнули изо всех сил. Камень пришёл в движение. Перевалившись через
         край, он медленно покатился, набирая скорость. Несколькими метрами ниже он задел другой валун,
         который покатился, сбивая всё на своём пути. Цепная реакция продолжалась до тех пор, пока
         значительная часть навеса не рухнула вниз, в пыль у основания скалы. Пыль огромным облаком
         поднялась в вакууме, и начала медленно оседать.";

        self.moveInto(nil);  
        BelowCave.ldesc := 'другое, изменившееся описание';
        BelowCave.north := startroom; 
  }
;

1.
Забираюсь я на Plateau_3, и вижу описание комнаты, описание валуна(которое я предусмотрел в описании комнаты), и фразу: "А видишь здесь валун." И эта фраза- лишняя.

2.
Толкаю оттуда валун, и всё бы хорошо, но когда я иду к BelowCave, оказывается, что ldesc не то, чтобы изменилось, а вместо него выводится пустой текст. Это из-за того, что я поставил одинарные кавычки? С двойными кавычками новое описание BelowCave выводится сразу после сталкивания валуна, что мне совсем не надо.

Пробовал я убрать эту строку из doPush, и сделать два описания ldesc внутри объявления BelowCave:room, через if(boulder.location=Plateau_3){}else{}. Не компилится. Грит, каких-то символов ему не хватает.

Отредактировано Pirate (30.04.2011 23:39)

Неактивен

0    0    #2
01.05.2011 19:55

fireton
некто с бородой (+354, -92)
Откуда: Москва
Зарегистрирован: 22.08.2005
Сообщений: 1103
Вебсайт

Тон

Re: описание комнаты и др вопросы от Pirate

Я тоже такую тему себе хочу:)

Ну, видишь, сам себе помог. wink

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru