Commit graph

2450 commits

Author SHA1 Message Date
Jordan Eldredge
f51e51eea2 Use hooks for main context window 2019-11-30 13:42:53 -08:00
Jordan Eldredge
f4230553a8 Type PlaylistTogggleButton 2019-11-30 13:42:53 -08:00
Jordan Eldredge
e7c474e7f6 Inline style 2019-11-30 13:42:53 -08:00
Jordan Eldredge
e345d07e41 Use react-redux hooks for Marquee 2019-11-30 13:42:53 -08:00
Jordan Eldredge
822391c401 Clean up unused type 2019-11-30 13:42:53 -08:00
Jordan Eldredge
f32de1e653 Use react-redux hooks in a few more places 2019-11-30 13:42:53 -08:00
Jordan Eldredge
d6454510a9 Refactor Marquee to use hooks
This actually removes a bunch of edgecases/race conditions
2019-11-30 13:42:53 -08:00
jberg
b2cc88ae0b add button left/rightclick functions (#878) 2019-11-30 13:42:53 -08:00
jberg
943078f256 Add delete opcode (#869) 2019-11-30 13:42:53 -08:00
jberg
e9950e83ce Add some unimplemented methods to classes (#872)
* Add some unimplemented methods to classes

* fix test
2019-11-30 13:42:53 -08:00
jberg
f633e676ce Pass store into skin loading (#875) 2019-11-30 13:42:53 -08:00
jberg
2ffc3ee237 Add more nodes to initialize (#873) 2019-11-30 13:42:53 -08:00
jberg
b732613826 Add some more methods to classes (#871)
* Add some more methods to classes

* fix test
2019-11-30 13:42:53 -08:00
jberg
19b3132ade First check object type for subclass (#870) 2019-11-30 13:42:53 -08:00
jberg
0297eb726a Convert null MAKI objects to global NULL value (#866)
* Coerce null MAKI objects to 0

* use global NULL value
2019-11-30 13:42:53 -08:00
Jordan Eldredge
e58647964b Add a simple way to change skins 2019-11-30 13:42:53 -08:00
jberg
920ed4558c Add more modern skins that partially render (#867)
* Add more modern skins that partially render

* Use skinUrls from archive instead of including skin zips

* add a few more skins from archive
2019-11-30 13:42:53 -08:00
Jordan Eldredge
a85baef757 Custom ESLint rule to validate Maki classes (#868) 2019-11-30 13:42:53 -08:00
Jordan Eldredge
0aeeff413d Add unique ID to each node in the state tree 2019-11-30 13:42:53 -08:00
Jordan Eldredge
d1dedf01c5 Add glob dependency and allow rules that only warn 2019-11-30 13:42:53 -08:00
Jordan Eldredge
9702c92b2e no-else-return 2019-11-30 13:42:53 -08:00
Jordan Eldredge
56ff4153ba eqeqeq 2019-11-30 13:42:53 -08:00
Jordan Eldredge
c1162dd74b Don't return await from async func 2019-11-30 13:42:53 -08:00
Jordan Eldredge
dfe7797c7f Don't ignore undefined variables 2019-11-30 13:42:53 -08:00
Jordan Eldredge
cc0aa9682f Prefer const in modern 2019-11-30 13:42:53 -08:00
Jordan Eldredge
5e048bc4f0 Clean up unused variables 2019-11-30 13:42:53 -08:00
Jordan Eldredge
c1d6b64b9f Remove dupes 2019-11-30 13:42:53 -08:00
Jordan Eldredge
23a9d7e906 Turn back on linting for modern 2019-11-30 13:42:53 -08:00
Jordan Eldredge
73b025bf12 Ensure ESLint is running on Travis
It used to run as part of Jest. When I moved it back to its own thing,
I guess I forgot to add it back to Travis.
2019-11-30 13:42:53 -08:00
jberg
d8e3383d2b Remove xml schema and warn instead of error for missing parsers (#865) 2019-11-30 13:42:53 -08:00
jberg
a762dea981 fix container after inheritance change (#859)
* fix container after inheritance change

* fix missing method test
2019-11-30 13:42:53 -08:00
jberg
13cb4e773f Dont need to render certain MAKI nodes (#864) 2019-11-30 13:42:53 -08:00
jberg
ba338543b1 handle Layout where we dont have background images or dont draw them (#862) 2019-11-30 13:42:53 -08:00
jberg
bf4e1ad043 Render text nodes (#863)
* Render text nodes

* add TODO about displaying text node info
2019-11-30 13:42:53 -08:00
Jordan Eldredge
563e9cbb64 Ensure we have no extra methods (#861) 2019-11-30 13:42:53 -08:00
Jordan Eldredge
a14276daf9 Track all missing methods 2019-11-30 13:42:53 -08:00
jberg
8eb1549983 MakiObject classname really should be Object (#860) 2019-11-30 13:42:53 -08:00
jberg
7a27248626 Handle MAKI functions that need input, implement popupmenu (#854)
* initial test for generator class functions

* return promise from functions that need async

* move null check into isPromise and fix condition

* implementing popmenu

* fix dynamic node creation in prod build

* remove unnecessary async/await

* rename function with js_ prefix

* TODO to fix styles
2019-11-30 13:42:53 -08:00
Jordan Eldredge
3b6cc77db5 Test that our runtime implementaiton matches the object definitions we got from the decompiler (#857)
Eventually it would be nice to test against std.mi
2019-11-30 13:42:53 -08:00
jberg
d77d7a92b6 Add all the remaining MAKI classes (#855) 2019-11-30 13:42:53 -08:00
Jordan Eldredge
01ab985b8c Use mage-rendering: pixelated; 2019-11-30 13:42:53 -08:00
Jordan Eldredge
b8026b9a4e Use background for showing images
This prevents images which are larger than the element from having their
image squished.
2019-11-30 13:42:53 -08:00
Jordan Eldredge
9ed01e9b89 Type Emitter 2019-11-30 13:42:53 -08:00
Jordan Eldredge
c99fd098ef Add more nodes to the initialization schema 2019-11-30 13:42:53 -08:00
Jordan Eldredge
31ac65eb18 Use a Set for checking if a value exists in a collection 2019-11-30 13:42:53 -08:00
Jordan Eldredge
1ebfb0ada7 Allow dragging files into Modern demo and allow Debugger to live on the same page
Note that the debugger is not yet actually connected to the maki code running in the skin
2019-11-30 13:42:53 -08:00
Jordan Eldredge
3a63481a8f Merge modern into the main Webpack config 2019-11-30 13:42:53 -08:00
Jordan Eldredge
ac423e6aee Add bare XML state to Redux 2019-11-30 13:42:53 -08:00
Jordan Eldredge
bdd54d51ce Move volume into Redux 2019-11-30 13:42:53 -08:00
Jordan Eldredge
c1f02c9a2f Add missing import 2019-11-30 13:42:53 -08:00