80c65f68ca
Avoid false positives
2020-04-15 16:44:06 +01:00
acb7882549
Do some more file format spelunking
...
`WarHammer.ani` turns out to be a regular `obj` file; `WarHammer.idx`
is partially decoded, but I'm struggling to link it to the former in
a reasonable way at the moment.
2020-04-15 00:27:43 +01:00
e2ad8f61c1
Add a couple of FIXMEs
2020-04-14 18:59:57 +01:00
2f65cd312a
Wire up inventory select to ship state
...
Also mixed into this commit:
* Use returning drivers where possible
* Make the credits screen returnable via click
2020-04-14 15:11:25 +01:00
26c976353f
Fix inventorySelect
2020-04-14 12:25:25 +01:00
82d3849402
Increase dialogue modality, display keyboard dialogue
2020-04-14 12:12:37 +01:00
786d261f98
Allow dialogues to be hidden or shown
...
To do this, MENU and SUBMENU are split into two types (at last), and
a Widget type is introduced. This should allow lots of code to be
removed at some point.
2020-04-14 03:14:49 +01:00
dc131939f4
Make include directives work in .mnu files
2020-04-13 21:03:54 +01:00
76bf8438b0
Display MainGame.mnu and map in ordoor simultaneously
...
It's a complete mess for now - many things are out of place or shown
when they shouldn't be - and we can't move around the game map. But,
it's a good start.
2020-04-11 01:01:05 +01:00
5f8606377a
Integrate view-map into ordoor
...
Now we can view scenario maps from the main game interface. We can't
cancel out of a scenario yet, though.
2020-04-11 00:13:28 +01:00
0025daf8dd
Move internal/ordoor/flow to internal/flow
2020-04-10 22:50:01 +01:00
f3fea83173
Reimplement cursor as a query operation
2020-04-10 20:54:58 +01:00
bb3ddc4896
First pass at custom cursor display
2020-04-10 19:55:16 +01:00
d99a5b9ec3
Instantiate a ship on startup
2020-04-10 19:24:03 +01:00
fd73f03aa5
Initial outline of a Ship
2020-04-02 01:23:04 +01:00
df1f116b3d
Clean up the options flow handlers a tiny bit
2020-04-02 01:22:53 +01:00
aa43011e8d
Set options from defaults on first start
...
Data/GenericData.dat specifies what the default values for some options
should be. Respect them on startup if the options in config are unset.
2020-04-02 01:21:32 +01:00
8ce24ce5f8
Display listbox text
2020-04-01 19:45:57 +01:00
7935f78acc
Add a partial listbox implementation
2020-04-01 01:38:42 +01:00
31da40e772
Move inventorySelect to its own file
2020-04-01 00:03:43 +01:00
c1925697c9
Refactor inventorySelect to build it hierarchically
2020-03-31 23:45:11 +01:00
2ae3611d7f
Allow menu records to be processed hierarchically by the UI driver
...
Nothing is actually processed in this way yet, but there is a new
assertion forbidding certain types of records from having children.
Because of this new assertion, our menutype tweaks must be moved up a
layer into internal/menus. They fit better there anyway.
2020-03-31 23:29:43 +01:00
7586b90f8a
Update go.mod
2020-03-31 22:31:10 +01:00
b5a722eef0
Make a start on font rendering
...
I was hopeful I could use ebiten/text, but font.Face doesn't seem set
up for fixed-colour fonts.
2020-03-30 00:15:19 +01:00
27fbccdc5f
Get the briefing menu linked up
...
Yes, that means hypertext is now a clickable.
2020-03-27 02:16:54 +00:00
c090fd32e9
Link various screens accessible from the bridge
...
This kind of linking is starting to creak...
2020-03-27 02:07:28 +00:00
316db89148
Get the bridge door animations running
2020-03-27 00:54:57 +00:00
79bfab7d6b
We can reach the bridge \o/
2020-03-26 23:35:34 +00:00
e4ce932324
Display overlay text in the UI
...
We still have fonts to do, so this is very ugly, but it at least shows
*something* on the screen now.
2020-03-26 22:09:26 +00:00
a0fd653c24
Add some information about sound
2020-03-26 20:47:05 +00:00
3d3a55af9d
Break flow out of ordoor
2020-03-25 02:12:17 +00:00
4eb4b6e69f
More menu navigation
2020-03-25 00:48:09 +00:00
7824396c24
Add stubs for unknown widget types
2020-03-25 00:23:28 +00:00
b986359047
Draw overlays
2020-03-24 23:26:21 +00:00
d376d9850c
Wire the sliders into the config file
...
Not yet the game itself. That's still TODO.
2020-03-24 23:11:37 +00:00
20ad9ae6f8
Add a slider UI widget
...
I'm not too happy with how I have to configure the step for each one
separately, but it's the best I can do at the moment.
2020-03-24 22:33:26 +00:00
69971b2825
Rework the UI framework
...
Interface is now Driver, and Widget is now a set of interfaces with a
struct per widget type. This should make it easier to add other types.
2020-03-24 20:21:55 +00:00
bcee07e8f7
Make animations work in the options screen
2020-03-23 00:33:29 +00:00
c67ee206cd
Implement hypertext (badly)
2020-03-22 23:29:40 +00:00
971b3178d6
Implement the options menu, part 1
...
This commit implements loading and saving options from/to config, and
enough UI toolkit magic to allow changes to boolean options to be
persisted.
We now respect the "play movies" setting and take screen resolution
from the config file.
2020-03-22 22:12:59 +00:00
0adbfaa573
Remove the -win-x and -win-y options for the ordoor binary
2020-03-22 22:12:20 +00:00
cfa56a0e12
Implement the main menu for the ordoor binary
...
In this commit, we also remove code that doesn't properly belong in
view-menu
2020-03-22 19:12:44 +00:00
d4d8a50ce4
Catch one more use of WH40K
2020-03-22 17:56:24 +00:00
3cb32b8962
Adjustments following kind discussion with LunarJetman on IRC
2020-03-22 17:19:26 +00:00
ba7c06e5fd
Show tooltips when hovering
2020-03-22 15:37:48 +00:00
bfe9fbdf7d
Start work on menu interactivity.
...
With this commit, we get a ui.Interface and ui.Widget type. The
interface monitors hover and mouse click state and tells the widgets
about them; the widgets execute code specified by the application when
events occur.
Next step: have wh40k load the main menu and play sound, etc.
2020-03-22 02:58:52 +00:00
bcaf3d9b58
Get view-menu to play the interface sound
2020-03-21 23:45:51 +00:00
83aa1c4768
Remove unwanted debugging prints
2020-03-21 23:14:15 +00:00
46925c09d1
Make the menu buttons work
2020-03-21 18:50:26 +00:00
be4229b8fe
Remove internal/conv
...
This sets font rendering back a little bit, but not much.
2020-03-21 13:37:20 +00:00