Duncan Brown
3727f82fbf
fix: allows for string joining that's compatible with pre-3.5 Godot
2022-12-28 18:35:45 +01:00
Duncan Brown
6842ed48ea
fix: necessary in order to prevent error message from printing out
2022-12-28 00:10:59 -05:00
Duncan Brown
7f1add6505
fix: missing this check to see if the item needs to be combined with something or not
2022-12-28 00:04:16 -05:00
Duncan Brown
b827092176
fix: clears tooltip when event is finished
2022-12-28 00:04:16 -05:00
Duncan Brown
2db581861a
fix: changes the registering of items already in a room from ERROR to WARN.
2022-12-15 17:14:40 -05:00
Duncan Brown
9398ce96c3
fix: restores state on returning; for some reason, previously state was modified but never restored.
2022-12-09 10:43:15 +01:00
Duncan Brown
328e5efdd9
fix: returns an appropriate RC code when no more options are left at a particular dialog level; this has the somewhat beneficial side effect of moving up a level in dialog if there is one, although this requires a 'stop' command to be present in at least one of the top-most dialog options.
2022-12-09 10:43:15 +01:00
Duncan Brown
0ff35136ba
fix: disallows dialog blocks that aren't properly indented; however, this also changes how dialog options are parsed and will require substantial testing.
2022-12-09 10:41:11 +01:00
Duncan Brown
13a600598f
feat: adds option to sync talking animation finishing with either audio or text; if with text, now finishes when text is done rendering.
2022-12-04 18:36:00 +01:00
Duncan Brown
f64b59621d
feat: adds warnings w/ defaults when using settings; uses same calculation basis for text speeds/times; changes time units to ms
2022-12-04 18:36:00 +01:00
Duncan Brown
e4414141cb
fix: prevents illegal WPM values and uses default in those cases.
2022-12-04 18:36:00 +01:00
Duncan Brown
d676e50284
feat: adds additional options to dialog manager, including a left-click action option and a text skipping option
2022-12-04 18:36:00 +01:00
Duncan Brown
d955e2ef1b
chore: speech stops immediately when skipping/interrupting
2022-12-04 18:36:00 +01:00
Duncan Brown
bd2f28214b
feat: allows for the skipping of dialogue after the text is fully visible; still need to look at integrating with user options
2022-12-04 18:36:00 +01:00
Duncan Brown
064973f0a9
fix: allows for colons to be placed anywhere in the dialogue being spoken.
2022-12-04 17:45:30 +01:00
Duncan Brown
a3da01e4cc
feat: adds adjustable reading speed/display time
2022-11-13 16:38:45 +01:00
Duncan Brown
595bbed870
fix: makes this button usable again
2022-11-13 16:38:15 +01:00
Duncan Brown
9f2cfd0dd0
fix: yield a frame for any tweening period in case camera commands are back-to-back, resulting in a potential race condition.
2022-11-13 16:38:15 +01:00
Duncan Brown
20f1aee6c2
feat: adds blocking versions of camera commands that can tween/transition.
2022-11-13 16:38:15 +01:00
Duncan Brown
0a0a57bd02
First pass at blocking camera command.
2022-11-13 16:38:15 +01:00
Duncan Brown
d5b15b3f5c
chore: fills in missing docstrings; adds new base class for cameras to avoid duplication of viewport warnings.
2022-10-31 16:44:53 -04:00
Duncan Brown
3009fe1242
fix: camera_push now validates against camera_node like ESCCamera.
2022-10-31 16:44:53 -04:00
Duncan Brown
e807044e45
fix: cleaning up and updating validation code.
2022-10-31 16:44:53 -04:00
Duncan Brown
3673977d5c
Start of cleanup. Previous changes look to be holding up according to testing.
2022-10-31 16:44:53 -04:00
Duncan Brown
6d0e9e5326
WIP: Iterating on warning message. Clamping set_target target in case of target being too close to limits.
2022-10-31 16:44:53 -04:00
Duncan Brown
ec33580d73
WIP: Correcting for switched camera limits. Updating validation for camera methods, although this is a WIP.
2022-10-31 16:44:53 -04:00
Duncan Brown
d95d26ff5f
fix: updates camera limit checking in commands to respect viewport limits (i.e. taking into account camera centre and half-screen limits); also updates warning message and no longer fails on limit violation.
2022-10-31 16:44:53 -04:00
Duncan Brown
9842feea33
Fixed up math for compensation. It looks as though no other limit clamping or checking should be needed.
2022-10-31 16:44:53 -04:00
Duncan Brown
cc74206e6c
fix: Updates those camera commands that make use of translation to compensate for drag margins.
2022-10-31 16:44:53 -04:00
Duncan Brown
b11e196d4b
feat: adds in additional information concerning failed statement.
2022-10-31 16:17:15 -04:00
Duncan Brown
4065b5c83e
feat: includes most-currently run statement when signalling a statement's/event's completion to aid in debugging messages
2022-10-31 16:17:15 -04:00
Duncan Brown
88214e4611
fix: ensures a failed command/event doesn't leave the game in a state where it isn't accepting inputs.
2022-10-30 19:10:39 +01:00
Duncan Brown
950ee463d8
fix: fixes background image blowing up to 1:1 size; also small cleanup
2022-10-25 00:00:34 +02:00
Duncan Brown
f74cb48b3d
fix: small UI touchups/fixes
2022-10-25 00:00:34 +02:00
Duncan Brown
62c2920439
fix: UI should now highlight proper verb instead of always going back to an item's default action
2022-09-14 08:50:36 +02:00
Duncan Brown
7201f02304
fix: adds proper player selectable checking in click events; also properly orders hover_stack in ascending z_index order
2022-09-13 19:27:03 -04:00
Duncan Brown
169a5b501a
fix: focuses the 'topmost' element from hover_stack inline with what hotspot_focused already is
2022-09-13 19:27:03 -04:00
Duncan Brown
5f4c97ca99
feat: allows for command to specify the currently active player for saying things
2022-09-13 19:27:03 -04:00
Duncan Brown
895700870d
feat: allows for default/fallback actions to be specified
2022-09-13 19:27:03 -04:00
Duncan Brown
6e220e7e64
fix: clears tooltip after any action has finished regardless of success
2022-09-13 19:27:03 -04:00
Duncan Brown
d04c46c14d
fix: guards against scenes with no player set or loaded
2022-08-26 13:44:41 -04:00
Duncan Brown
210f0d25e4
fix: ignores mouse enter events for non-actionable items (i.e. non-interactive or not active)
2022-08-24 22:37:34 +02:00
Duncan Brown
5be887cdf5
fix: disallows the use of specified strings in the name argument for these commands
2022-08-24 22:36:15 +02:00
Duncan Brown
308d72d5aa
fix: accounts for item offsets, i.e. those not at (0, 0)
2022-08-23 18:48:16 -04:00
Duncan Brown
689062989b
fix: puts these items back at the origin which is necessary so their positions in the scene can be used
2022-08-23 18:48:16 -04:00
Duncan Brown
5b315bb0ee
fix: allows inactive/non-interactive item clicks to pass through to appropriate background click event
2022-08-23 18:48:16 -04:00
Duncan Brown
813495051b
fix: blocks actions on inputs for non-interactive and/or non-active items/objects
2022-08-23 18:48:16 -04:00
Duncan Brown
e633966727
fix: prevents a channel from being cleared out when there are event exceptions
2022-08-09 18:14:55 -04:00
Duncan Brown
4a6f02b7ae
fix: has_point() is exclusive of right-/bottom-edge, so we need to account for that
2022-08-09 22:10:35 +02:00
Duncan Brown
e4bb111cb9
fix: changes camera target vs limit errors to warnings and makes sure they're in the right places
2022-08-09 22:10:35 +02:00
Duncan Brown
abb01b7f0b
feat: validates updated camera position against current camera limits; also some messaging updates
2022-08-09 22:10:35 +02:00
Duncan Brown
6a223ca199
fix: prevents changing scenes to the same scene as is current ( #619 )
2022-08-09 21:48:57 +02:00
Duncan Brown
c30d109645
fix: forces immediate animation start in order to avoid 'flashing' or delayed start
2022-07-19 18:32:50 -04:00
Duncan Brown
0944f601f4
fix: changes 'scenery' node from Node to Node2D so it will respect the visibility of the root (i.e. the room).
2022-07-19 18:32:50 -04:00
Duncan Brown
4991ff3423
fix: logs a warning if the avatar path isn't set or if the avatar itself can't be found
2022-07-18 19:29:22 -04:00
Duncan Brown
c4afb59121
fix: puts a default avatar path back as it had gone missing for some reason
2022-07-18 19:29:22 -04:00
Duncan Brown
2966502806
feat: appends the global ID or node name of the item/player to any warning messages
2022-07-16 00:24:01 -04:00
Duncan Brown
db85689668
feat: performs basic validation for ESCAnimationResource in-editor and in-game
2022-07-16 00:24:01 -04:00
Duncan Brown
653e336383
fix: handles translation keys that have only one word (i.e. no spaces… ( #596 )
...
* fix: handles translation keys that have only one word (i.e. no spaces) in the actual dialogue
* fix: fixes dialogue that starts with a space
* fix: issues warning if translation key cannot be found (same for a voice file that can't be found) and uses the untranslated text in this case
2022-06-23 11:27:04 +02:00
Duncan Brown
0fd0ba45ae
fix: prevents duplicate item registration ( #587 )
...
* fix: prevents duplicate item registration and also ensures that the player is forcibly registered
* updates ESCLocation to respect duplicate registration rules
2022-05-13 10:49:14 +02:00
Duncan Brown
77ba581398
fix: room breaks since it wasn't positioned correctly
2022-05-11 19:18:05 +02:00
Duncan Brown
f7c8b98f3b
chore: changing logging level of this message to something more appropriate
2022-05-11 19:18:05 +02:00
Duncan Brown
aeffe09e34
fix: avoids being able to pause during transitions; also moves pausing request responsibility to UI; also fixes issue w/ trying to pause during intro and main menu
2022-05-11 19:18:05 +02:00
Duncan Brown
ff178541fc
fix: avoids crashes in case of input when room is run directly and interrupted; may look at updating room manager in the future
2022-05-11 19:18:05 +02:00
Duncan Brown
9e247a9218
fix: checks to make sure target_object after a walk to an object is the proper one in case action manager is already yielding and expecting a particular one; change to proper interrupt method name; clears out pending events
2022-05-11 19:18:05 +02:00
Duncan Brown
954e014cbf
feat: changed approach for disabling input during scene transitions; this should be cleaner and also delays re-enabling of input until after transition in is finished (if there is one)
2022-05-11 19:18:05 +02:00
Duncan Brown
85947794b9
fix: necessary guard in case 'run' hasn't been executed yet
2022-05-11 19:18:05 +02:00
Duncan Brown
c9c7cd2dfa
feat: disallows user input during scene changes
2022-05-11 19:18:05 +02:00
Duncan Brown
acfb3d9ddd
fix: iterating on method outlined in ticket; blocks events/commands from being queued during scene changes, which should prevent stray/untimely events from being queued for an old room when in a new room
2022-05-11 19:18:05 +02:00
Duncan Brown
64ac7654f4
fix: repeating fix from another branch; these will be merged anyway
2022-05-11 19:18:05 +02:00
Duncan Brown
05ca4c1795
wip: initial implementation, but has issues with interrupting other running events like play_snd
2022-05-11 19:18:05 +02:00
Duncan Brown
738ce0debc
fix: implement varargs for ESC commands. 'custom' makes use of this #592
2022-05-02 22:50:57 +02:00
Duncan Brown
0468817812
fix: prevents the same event from being queued multiple times in a row
2022-05-02 22:49:06 +02:00
Duncan Brown
f9e39af798
fix: avoids crashing when selected_action is null ( #586 )
...
* fix: avoids crashing when selected_action is null
* fix: more robust handling suggested by @straton
2022-04-30 21:50:55 +02:00
Duncan Brown
5d23bb1af1
fix: avoids brief flickering to current scene during scene transition; can be moved since these were left in place pre-transition overhaul
2022-04-30 20:06:13 +02:00
Duncan Brown
f69b29da29
fix: eliminates intermittent flicker with UI; NO_UI shouldn't be allowed for :setup events
2022-04-30 20:06:13 +02:00
Duncan Brown
eeb7042d11
fix: adds control node to ESCGame for UI that must be populated, along with Escoria-only UI methods; this helps to avoid display issues on startup
2022-04-30 20:06:13 +02:00
Duncan Brown
6afff99e7c
fix: allows for transition to be disabled on init; still has issue w/ UI showing up for fraction of a second
2022-04-30 20:06:13 +02:00
Duncan Brown
3acf5ebe2a
fix: incorrect dialog player type
2022-04-23 19:19:53 +02:00
Duncan Brown
9db27c6a74
fix: fixes issue w/ bottle from room9 and inventory across rooms; fixes issue w/ room10 and text rendering
2022-04-19 16:25:26 +02:00
Duncan Brown
0cf4672161
fix: needs instantiation; also small cleanup
2022-04-19 16:25:26 +02:00
Duncan Brown
0175342a61
wip: splits out camera from UI game scene; makes camera a per-room thing; updated check for running rooms directly; corrected timing issue w/ updating state immediately by ensuring animation player does seek with immediate animation update
2022-04-19 16:25:26 +02:00
Duncan Brown
8d1b00bb90
fix: moves game scene removal/addition to room until after transition; still needs testing, especially w instant transitions
2022-04-19 16:25:26 +02:00
Duncan Brown
eac4385b81
wip: moving camera setup closer to actual :setup event post-transition out to allow for more setup to be done 'under the hood'
2022-04-19 16:25:26 +02:00
Duncan Brown
b985c42e08
fix: change hotspots Node to Node2D to allow for proper room visibility swapping
2022-04-19 16:25:26 +02:00
Duncan Brown
4b3b96b688
fix: missing this parameter
2022-04-19 16:25:26 +02:00
Duncan Brown
92e23beb00
fix: should now block for yielding events but only on the same channel
2022-04-19 16:25:26 +02:00
Duncan Brown
3ff3849232
fix: prevents async (i.e. events that are yielded to) from overlapping
2022-04-19 16:25:26 +02:00
Duncan Brown
c92c4edacf
fix: remove duplicate transition out (needs testing)
2022-04-19 16:25:26 +02:00
Duncan Brown
768f65d929
fix: allows for bare decimals (no leading 0) to be properly interpreted; also adds in additional validation for 'wait' command
2022-04-19 07:55:09 +02:00
Duncan Brown
7050a8a2fb
feat: adds in max args checking; also removes duplicate command validation and now properly validates min_args; re-orders validation to allow argument descriptor validation to always be done first; misc. cleanup of error strings
2022-04-19 07:55:09 +02:00
Duncan Brown
b1b301d917
WIP: added max args checking; working on fixing min args checking and validation in general as commands are validating on prepared args and therefore cannot validate on original user args currently
2022-04-19 07:55:09 +02:00
Duncan Brown
157c2f564c
fix: properly validate min_args and remove superfluous validation call to argument descriptor
2022-04-19 07:55:09 +02:00
Duncan Brown
baee79f5a0
feat: reports source of ESC errors when possible ( #568 )
2022-04-09 16:13:09 +02:00
Duncan Brown
6d98e7bdce
fix: should now also prevent areas from spawning events; also removes a superfluous variable
2022-04-08 21:18:57 +02:00
Duncan Brown
85b86f38be
fix: handles the case where no coroutines are run as part of room creation; also fixes a small bug in ESCCamera
2022-04-08 21:18:57 +02:00
Duncan Brown
503d6134dd
fix: eliminates the need to run two batches of ESC commands for loading games by introducing an extra ESC command; also corrects situations where transitions that are mixed and matched don't work together; and additional cleanup
2022-04-08 21:18:57 +02:00
Duncan Brown
114ef2fc55
wip: rough attempt at properly incorporating existing coroutines to correctly place room swapping.
2022-04-08 21:18:57 +02:00
Duncan Brown
c87e853ba6
fix: add code to handle scenes run directly from the Godot editor and allow for the current room to be set in the object manager, allowing proper setup
2022-04-08 21:18:57 +02:00
Duncan Brown
2508786cde
fix: break loading up into two batches so objects can be loaded and accessed by other code in the loading method here
2022-04-08 21:18:57 +02:00