Colossal Caves Adventure - доступ к источнику данных с помощью JavaScript - PullRequest
3 голосов
/ 03 марта 2011

Я играл с идеей создания javascript-версии оригинального Colossal Caves Adventure, чтобы научить себя языку. Исходный файл данных для приключения можно найти здесь -

http://jerz.setonhill.edu/if/crowther/

Я надеюсь, что опытный javascripter может предложить мне лучший способ хранения и доступа к текстовому файлу данных (длина которого составляет всего несколько сотен строк). Сейчас я думаю о том, чтобы встроить текст в скрытый элемент на html-странице и получить к нему доступ таким образом, но я знаю, что ему не хватает элегантности. Что ты думаешь?

Ответы [ 2 ]

1 голос
/ 03 марта 2011

Вы можете погрузиться в глубокий конец и изучать AJAX, пока вы в нем. Получение контента по мере необходимости - это как раз то, в чем AJAX хорош. (Если вы изучаете JS, вы будете в конечном итоге выучите AJAX)

Если вы действительно хотите загрузить весь контент на странице, я бы рекомендовал разбить его на отдельные <input type="hidden" s. JavaScript очень легко захватывает их содержимое, и вы можете дать им описательные id с, которые сделают обслуживание контента более интуитивным во время программирования. например,

<input type="hidden" name="r121" value="You come upon a fissure" />

Что могло бы означать результат r 121 - "Вы натолкнулись на трещину"

0 голосов
/ 21 декабря 2013

Создайте объект javascript, назначенный переменной, и сохраните этот фрагмент кода как отдельный скрипт. Хранит данные и контрольный код отдельно.

Итак, возможно, у вас есть файл с именем advdat.js, который содержит это:

advdat = {  1: "YOU ARE STANDING AT THE END OF A ROAD BEFORE A SMALL BRICK\
                BUILDING . AROUND YOU IS A FOREST. A SMALL\
                STREAM FLOWS OUT OF THE BUILDING AND DOWN A GULLY.",
            2: "YOU HAVE WALKED UP A HILL, STILL IN THE FOREST\
                THE ROAD NOW SLOPES BACK DOWN THE OTHER SIDE OF THE HILL.\
                THERE IS A BUILDING IN THE DISTANCE.",
            3: "YOU ARE INSIDE A BUILDING, A WELL HOUSE FOR A LARGE SPRING.",...
          };

Загрузите это в свой собственный тег сценария перед загрузкой основной программы. Ваши данные теперь доступны в объекте advdat.

...