Replies: 7 comments 5 replies
-
Personally, I think it should be considered a bug and be made blocking as the fix. |
Beta Was this translation helpful? Give feedback.
-
I've done quite a bit of asynchronous loading of stuff in prototypes, and it'd be convenient if the loadscreen would block execution. Instead of having to wait for resolution inside passages, a global block would be much easier to work with. |
Beta Was this translation helpful? Give feedback.
-
So basically the first passage wouldn't start loading until after the loading screen was dismissed? I don't think that would have any effect on any of the stuff I've made. Would be nice to have an event that triggers on the load screen being dismissed either way. Nearest thing to that right now is a one-time passage display event. |
Beta Was this translation helpful? Give feedback.
-
Correct. |
Beta Was this translation helpful? Give feedback.
-
I don't think the loading screen should preclude passage rendering: There may be some instances where a dev wants a loading screen while a computationally heavy passage renders. Rather, I think there should be a separate way to halt passage rendering until the program is told to resume the passage rendering, which, admittedly, would be similar to the loading screen. |
Beta Was this translation helpful? Give feedback.
-
We are having problems with race conditions with an external js file and Sugarcube's js I think blocking would help us solve this problem |
Beta Was this translation helpful? Give feedback.
-
If anyone would like to test the blocking loadscreen out. As noted above, it blocks only during startup. Download: Changelog
|
Beta Was this translation helpful? Give feedback.
-
Preface: The goal of this discussion is possibly making the loadscreen blocking.
SugarCube's loadscreen, as of v2.36.1, does not block the engine during startup. Meaning, from playing the starting passage and whatever knock-on effects it has.
In various situations this behavior requires users to jump through hoops they would ordinarily not have to. For example, when using the asynchronous
importScripts()
orimportStyles()
functions to load code necessary within passages, including the starting passage.Thus the point of this discussion. Should the lockscreen not blocking be considered a bug, so that it can be changed to be blocking as part of a minor version bump—e.g.,
v2.37.0
? If not, then it would need to wait for a major version bump—e.g.,v3.x.x
.I don't think any existing user code should be affected by the change, but it's possible that someone has oddball code that would be.
Beta Was this translation helpful? Give feedback.
All reactions