RU 📌 Pinned

Как сделать?

Dark[Ol(U23)leneri] #34 18.04.2010 22:57 6408 comments 2437450 views

Lic,
код обеих локаций покажите.

Так, намек похоже понял и проблема решена. Теперь такой вопрос: можно ли как-то устроить код с вычислением времени по проще, не перебирая каждую секунду? А то с таким количеством блоков для каждого НПЦ, игрока, НПЦ-команды игрока и т.д. мне кажется будет заметно тормозить игру.

Lic,
А вы выключать музыку не забываете?

Rude,
если не будет каких-нибудь WAIT’ов, то ничего тормозить не должно, QSP очень оптимизированный движок.
А код конечно можно упростить. Только вот не увидев этого самого кода, никто не подскажет, как это сделать.

Lic:

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

может сушествует какой то код, который отключал бы старую музыку и давал играть новой без наложения???

Разумеется, такой код существует :) Самый простой вариант - перед переходом на следующую локацию написать CLOSE ALL (закрыть все проигрывающиеся дорожки). Например,

act 'Убежать с кладбища':
  close all
  gt 'деревня'
end

А вообще-то, если вы делали все по коду Некса, то предыдущий трек должен выключаться. Может,

$music_theme = ''

не там написали?

Доброго времени суток!

Можете подсказать, как сделать скрытые главы текста? Чтобы они все были вписаны на одной странице, а доступ к ним открывался только после прохождения предыдущей.

P.S Сколько не мучался с условиями (IF) Ничго не получается.

Antidote90,
рекомендую последовательно выполнить все уроки из учебника. Пока что я даже не понял что вам нужно.

Ладно, скажу проще… Как мне сделать так, чтобы действия на одной и той же странице открывались по мере прохождения игры.

Antidote90,
то, что вам нужно - это “действие по условию”. В учебнике показано несколько примеров, как это делается. Проделайте все уроки из учебника, и многое встанет на свои места.

В области “Выполнить при посещении” оглавления, напишите:

ACT 'Глава 1':GOTO 'Глава1'
IF chapter>1:
  ACT 'Глава 2':GOTO 'Глава2'
END
IF chapter>2:
  ACT 'Глава 3':GOTO 'Глава3'
END
IF chapter>3:
  ACT 'Глава 4':GOTO 'Глава4'
END

В стартовой локации игры напишите

IF chapter = 0:
  chapter = 1
END

В конце первой главы, перед тем как перейти на оглавление, напишите

IF chapter = 1:
  chapter = 2
END

В конце второй главы:

IF chapter = 2:
  chapter = 3
END

В конце третьей:

IF chapter = 3:
  chapter = 4
END

И так далее.

Спасибо огромное! Очень помогло.

Еще один вопрос. На него я точно не нашел ответа. Как сделать так, чтобы при входе в игру отображались все открытые главы а не только первая? И ответ, типа ‘Сохранения’ тут неподойдет, потому что перед меню выбора глав у меня еще несколько страниц предыстории и, при сохранении на последующих локациях их уже не вернуть.

P.S Если так вообще можно сделать.

Я имею в виду, чтобы автоматом. При входе в игру без загрузки сохраненнной игры.

Antidote90,
Зря ты так про сохранения. Если ты напишешь команду SAVE на локации, где происходит выбор главы (а если ты сразу переходишь на следующую главу, без экрана частей, то можно сделать так:
На последней локации в предыдущей части:

goto 'выбор главы'
skip = 1

На локацией с выбором главы

if skip=1:
        SAVEGAME '1'
        skip = 0
        goto 'следующая глава'
end

А потом, когда открываешь игру сначала, то

OPENGAME '1'

Вообще-то я имел ввиду что-бы заходит в игру каждый раз как в новую, а открытые главы в меню выбора оставались.

Всё верно, каждый раз ты будешь отрывать игру по-новой, но будут подгружаться все переменные, в том числе и открытые главы.

Log in or Register to post comments.