| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
|
|
|
| |
This allows common functions to be stored in not per-map script files. Which is useful for code that we're going to want in a lot of places -- i.e. how every underwater map is going to have a copy of the same exit area function.
|
| |
|
| |
|
| |
|
|
|
|
| |
Also spruced up the event that takes you there. Also fixed an issue where transplantParty wouldn't take the medium of the new position into consideration. Also added a constructor to the lua version of vec2i.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
The resurfacing animation seems pretty good actually. Not sure about the sound effect for him submerging. Also gotta fix the issue with cutscenes in non-normal media.
|
|
|
|
| |
Map scripts also now actually run in their own lua thread.
|
|
|
|
| |
This allows walking through solid objects. It can be enabled and disabled using StartClipping() and StopClipping() in the debug console. It should not be used in any actual scripts.
|
| |
|
|
|
|
|
|
| |
Map layers can have a flag on them that specifies that they should be rendered as part of the upper set (rendered above the normal sprite layer but below the above sprite layer).
Also added map connections between hallucination_interior and hallucination_cliff. And named the layers in the map files bc why not.
|
| |
|
|
|
|
|
|
| |
The hallucination cliff area and the hot spring map have also been dumped now, but they have not been tested and likely need work because they use a third layer, which is not yet supported. However these all share a tileset now, yay! I added collision and run sounds back to the tiles and hopefully it matches up with what it was before. Also the maps have nicer names now.
i.e. big change with no noticeable effects
|
|
|
|
|
|
| |
The player's party will be set to "frozen" at the start of a cutscene and "still" at the end. "frozen" doesn't include idle animations, which are weird to show up during tense exchanges.
A CutsceneOptions enum was introduced to be able to modify the growing number of things that StartCutscene() and HideCutsceneBars() do. Currently the lightning mailbox event uses it so that Lucas's animation is not reset to still (instead of the collapsed animation) after he's electrocuted.
|
|
|
|
|
|
| |
All sprites are now paused when a cutscene starts and unpaused when it ends. Pausing means that the CharacterSystem and BehaviourSystem will not process them in their tick. This allows specific sprites to be unpaused during cutscenes if movement is needed.
The player character is halted and made non-controllable by the script when the cutscene starts and made controllable again when it ends. It is important to remember that if interacting with a sprite that might be moving, you have to manually call Halt() on them in their script to make them stop moving.
|
| |
|
| |
|
|
|
|
|
|
| |
The player party characters are now initialised at the start of the game and are no longer re-created after every map change. The script system takes care of moving the player into the correct position on the new map.
Deleted sprite IDs are now reused the next time a sprite is created, instead of throwing out everything between maps.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Things to note about her: she does not have walking animations in the intercardinal directions. Also her disappearing animation needs a higher frame rate than the 30 FPS we currently have.
|
| |
|
|
|
|
| |
Screen fadeouts and map fadeouts are now handled by the effect system.
|
| |
|
|
|
|
|
|
|
|
| |
Sprites can be destroyed now, which really just means that their index is removed from the list of active sprites. The actual memory is not freed until all sprites are deleted on map change.
Sprite layers are introduced. All sprites by default are on layer 0 (Normal) which renders them in between the lower and upper map layers. There is also a layer 1 (Above) that renders above the upper map layer, and the sprite for the lightning strike uses this layer in order to not be hidden by the trees.
Fixed a bug where waiting for the end of a non-looping animation would trip the flag immediately upon the final frame activating, instead of waiting the length of the last frame.
|
|
|
|
| |
Lucas can get electrocuted now.
|
|
|
|
| |
These are used when you want a solid, interactable object that is part of the map instead of sprite animated (e.g. the mailboxes).
|
| |
|
| |
|
| |
|
|
|
|
| |
"A presses" are also no longer special values in the lines list, but are rather a field on the MessageLine object.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Also moved script system first in the loop so that the camera can catch up before rendering. Also added a map change from map 2 back to map 1.
|
|
|
|
| |
Also removed some dependencies on the Renderer. More changes need to be made. Fading to black before the change would be good. And making sure the characters are facing the right direction. Maybe that code shouldn't live in Game, either. Later we also want to combine the tilesets for these two maps (and any others that are on Tanetane).
|
|
|
|
| |
Walking into a trigger zone runs a script.
|
|
|
|
| |
\n in a text message just indicates a newline. \n\f is a newline with an A press.
|
| |
|
| |
|