Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Narrative switching support #44

Open
nsensfel opened this issue Oct 3, 2023 · 0 comments
Open

Narrative switching support #44

nsensfel opened this issue Oct 3, 2023 · 0 comments
Assignees
Labels
enhancement New feature or request fate Issues relating to the Fate language interpreter wyrd Issues relating to the Wyrd language

Comments

@nsensfel
Copy link
Owner

nsensfel commented Oct 3, 2023

  • Add the following instructions:
    • (narrative:push filename tag_list) which creates a new memory stack and loads the indicated narrative.
    • (narrative:pop) which pops the current narrative (frees memory too).
    • (narrative:pop_until_any tag_list) which pops narrative until there is a narrative with at least one tag in the tag_list.
    • (narrative:pop_until_all tag_list) which pops narrative until there is a narrative with all the tags in the tag_list.
    • (narrative:pop_while_any tag_list)
    • (narrative:pop_while_all tag_list)
    • (narrative:switch filename tag_list) which pops the current narrative and pushes the new one.
    • (narrative:add_tag tag)
    • (narrative:remove_tag tag)
  • Add the following computation:
    • (narrative:tag_list)
  • Add the shared variable category of issue Sharing memory over multiple narratives #20. They are stored separately as they do not get freed when narrative switch.
  • Addresses should reflect the narrative memory stack system.

Example of things that could use separate narratives:

  • Menus.
  • Instantiated areas (random dungeon).
@nsensfel nsensfel added enhancement New feature or request fate Issues relating to the Fate language wyrd Issues relating to the Wyrd language interpreter labels Oct 3, 2023
@nsensfel nsensfel added this to the Future Version milestone Oct 3, 2023
@nsensfel nsensfel self-assigned this Oct 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request fate Issues relating to the Fate language interpreter wyrd Issues relating to the Wyrd language
Projects
None yet
Development

No branches or pull requests

1 participant