-
Notifications
You must be signed in to change notification settings - Fork 16
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
Level loading #194
Level loading #194
Conversation
It works for my private saves. However,
Maybe later we can evolve that into @KlemKlem - what do you think about good UI of level sharing? |
Thanks for the feedback. changes
extras:
considerations
side-notesAs of CSS linting change that took place in the meantime, merging it made me implement linting work by hand on numerous files, which was very tiresome (the |
Unfortunately, these errors make it hard to pin point the source of the problem, the last one stems out of a typo already fixed. What's even worse, downloading the repo, checking out onto PR branch (as described here), dealing with credentials and Let me know what does Vuex inspection bring around (an error, level Object consoled out?), or perhaps if you have any other ideas about possible source of the discrepancy. edit: the image above shows the last publicly shared level record in the old format. Please try loading any other level. |
@JStrebeyko I tested it again, and it works. A few remarks:
For now, we don't need t care about backward compatibility. Not many things saved, and the level schema will change at some point. |
@stared re UI of level sharing - do you mean a public page where all the levels created by users are available? I would definitely go for something like a thumbnail of the whole board, maybe some hashtags / categories to choose that would describe the levels? Otherwise, it'll be impossible to browse. |
Right now, when we start things, "public by default" makes the most sense. We just won't list some. (So just filtering 'public' when showing.) In the long run - I think something similar to https://jsfiddle.net/, with |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I accept as it is. There are more things to do (all mentioned) but the current state is an improvement, and does not break stuff, so let's merge that. (Prefer not to wait, as it would be harder to merge it.)
The PR makes it possible to:
It required turning userStore into a Vuex store module rather than having it entirely decoupled. An additional field appeared there, to cover for an asynchronously loaded level data. In the future, this logic should be probably moved into a dedicated module, but as it was only one function, I kept it where the rest of our db fetching level is, so the
userStore
module.There are some steps that should be tackled next, like styling the login page, linking to
/savedlevels
page, ensuring that game does not throw on level being loaded, ConsistentErrorHandling, LoadingIndication.