Commit Graph

71 Commits

Author SHA1 Message Date
Daan Vanden Bosch
20885cb0f2 Simplified Widget.finalize_construction. Added game state to QuestRunner and modified execution flow to enable loading of area/entity models. Split QuestModelManager into two different classes so a different loading strategy can used in the quest runner view. Quest runner view is now automatically created when running a quest. 2019-12-19 18:54:01 +01:00
Daan Vanden Bosch
fcff6a2cd6 Almost all quest editor UI elements are now disabled when running a quest in the VM. 2019-12-19 00:11:42 +01:00
Daan Vanden Bosch
3bd3be8c4a Moved Thread to its own file and renamed vm/index.ts to vm/VirtualMachine.ts. 2019-12-18 23:40:38 +01:00
Daan Vanden Bosch
786e83ad99 Put breakpoints in script editor gutter behind feature flag. 2019-12-18 23:03:29 +01:00
Daan Vanden Bosch
2366cb3aa0 Refactored script debugging code to avoid circular dependencies and separate concerns. 2019-12-18 22:37:26 +01:00
Daan Vanden Bosch
c0e9856d8a Using Select instead of DropDown in RegistersView. Only use monospace font in register container. 2019-12-18 20:20:32 +01:00
Daan Vanden Bosch
28b8fa03d9 Simplified quest logging system. 2019-12-18 20:06:09 +01:00
Daan Vanden Bosch
4ee4de95fa *Fully* put new VM views behind feature flag. 2019-12-17 22:12:55 +01:00
Daan Vanden Bosch
b9ca58ee16 Fixed bug in area mesh loading. Put new VM views behind feature flag. 2019-12-17 22:09:15 +01:00
jtuu
8c102976a8 Added a VM registers viewer. 2019-11-21 23:04:16 +02:00
jtuu
8582a25bc3 Lint 2019-11-16 18:07:21 +02:00
jtuu
918d8f7bdc The script editor is now set to readonly mode when a quest is running. 2019-11-16 17:35:20 +02:00
jtuu
0365b40e55 Added stop button. 2019-11-15 20:17:24 +02:00
jtuu
6e41b6fb79 Reworked script editor decorations.
Breakpoints now move correctly when script is edited.
2019-11-15 19:59:05 +02:00
jtuu
8c4e0c2ed2 Hooked up the stepping buttons to their respective methods in QuestRunner. 2019-11-15 19:59:05 +02:00
jtuu
a219200291 Added buttons for VM controls.
Also added new icons.
2019-11-15 19:59:05 +02:00
jtuu
911bde2bd9 Highlight the source location currently being executed when VM pauses. 2019-11-14 00:34:07 +02:00
jtuu
144e9513ac Added toggleable icons that represent breakpoints in the script editor. 2019-11-13 21:51:30 +02:00
jtuu
7e99857baf Added a message log in the quest editor.
QuestEditorStore was extended to hold the state of the message log. The view is handled by a new core GUI class MessageLog.
2019-11-08 15:07:46 +02:00
Daan Vanden Bosch
9545f056ab Added QuestRunner for managing game state, orchestrating the VM and controlling the visual aspects of a virtual quest run. 2019-11-05 21:07:17 +01:00
Daan Vanden Bosch
8212348a81 Made event rendering more robust. Added call_now option to ListProperty.observe_list. 2019-11-04 17:19:57 +01:00
Daan Vanden Bosch
af5c27a565 Removed unnecessary console.log statements. 2019-10-31 19:11:58 +01:00
Daan Vanden Bosch
f1fa19238d Event DAG edges are now shown with lines. 2019-10-31 19:11:14 +01:00
Daan Vanden Bosch
5f1b3d5ff1 Quest events are now grouped in DAGs. 2019-10-29 15:22:46 +01:00
Daan Vanden Bosch
dff39bd194 Improved events view UI. 2019-10-27 23:21:58 +01:00
Daan Vanden Bosch
2ed9659d9b Only the current area's event chains are now shown. 2019-10-27 22:40:26 +01:00
Daan Vanden Bosch
ff8f02fe5b Refactored events model and added a basic view for it behind a feature flag. 2019-10-10 23:11:52 +02:00
Daan Vanden Bosch
345c9ab0dc Improved typing of ListProperty. 2019-10-07 18:26:45 +02:00
Daan Vanden Bosch
0583b7499e Added ASM editor history navigation with mouse buttons and keyboard. 2019-10-05 21:11:58 +02:00
Daan Vanden Bosch
971444f847 F5 keybinding for "Run in VM". Bugfix for feature flags. 2019-10-02 21:15:35 +02:00
jtuu
1a7e9ee9ac [VM] Put the "run in VM" button behind a feature flag called "vm". 2019-10-02 21:46:20 +03:00
jtuu
80a4aa784f [VM] Added a button to run the current quest in the VM.
Made the VM work with output from the assembler.
Added some comments to the VM and cleaned it up a little bit.
2019-10-02 21:43:53 +03:00
Daan Vanden Bosch
edc6428a3d Fixed regression. 2019-10-01 18:36:35 +02:00
Daan Vanden Bosch
9b3d280e4f Upgraded all dependencies and fixed linting warnings/errors resulting from eslint upgrade. 2019-10-01 18:30:26 +02:00
Daan Vanden Bosch
c64ba16c7a The ASM editor command palette can now be opened with ctrl-shift-p. 2019-10-01 17:41:28 +02:00
Daan Vanden Bosch
4bf2148b39 Entities can be rotated via the entity info view. 2019-09-29 18:53:01 +02:00
Daan Vanden Bosch
9e2858dae2 Entities can now be rotated around their y-axis by right-click dragging. 2019-09-28 21:11:57 +02:00
Daan Vanden Bosch
d97872d528 The selected entity can now be deleted with the delete key. 2019-09-24 19:47:22 +02:00
Daan Vanden Bosch
9859e15806 Objects area now filtered based on the selected area. Fixed some typos in object names. 2019-09-22 16:14:38 +02:00
Daan Vanden Bosch
f40b1fb168 NPCs in the NPC list are now filtered according to the selected area. Objects can now be added via drag and drop from the object list. 2019-09-22 15:18:46 +02:00
Daan Vanden Bosch
f0d474ad40 The EntityListView now shows renders of entities instead of green squares. 2019-09-21 21:47:00 +02:00
Daan Vanden Bosch
6e666b0ea5 Entity drag and drop code doesn't use custom events anymore for increased performance and simplicity. Made code more typesafe and decoupled. Fixed some bugs. 2019-09-20 22:27:19 +02:00
Daan Vanden Bosch
4293a3862b Fixed visual bug due to order of model loading. 2019-09-19 22:30:39 +02:00
Daan Vanden Bosch
7ae4ad428c Basic entity creation via drag and drop. 2019-09-19 22:20:17 +02:00
Daan Vanden Bosch
859d85da45 ASM editor view is now sized correctly again. 2019-09-17 12:47:03 +02:00
Daan Vanden Bosch
7d941aa0e4 Undo is now reset when toggling "Inline args mode". 2019-09-15 23:16:11 +02:00
jtuu
fa78f5f95b Lint 2019-09-15 21:47:13 +03:00
jtuu
f1e6a31f0e Merge branch 'master' into script-editor-settings 2019-09-15 21:44:31 +03:00
jtuu
0618ca0b87 Added a checkbox for enabling inline arguments transformation mode to the script editor toolbar. 2019-09-15 20:59:51 +03:00
Daan Vanden Bosch
87c6ae37e4 Widget's element property is now abstract and is overridden in every concrete subclass. This often simplifies widget code. 2019-09-15 19:32:34 +02:00