Code-only Proto Model

Reporter: RobertBColton  |  Status: closed  |  Last Modified: December 28, 2018, 12:40:29 AM

Alright, fundies asked me to do this. Simple change here to convert the old drag and drop actions to code as soon as they are read by the GMK or GMX readers. He also wanted Event message to not have integer ids and subids but instead use a string name like the SOG format.

  • Proto2ES does NOT do the actions->gml conversion now
  • GMK/GMX converts the actions->gml with some special handling (they are emplaced at the back of a vector that is passed to Actions2Code)
  • Actions2Code logic was moved from emake/Proto2ES.cpp to its own source in libEGM/action.cpp and libEGM/action.h
  • A header CommandLine/Util.h was created so that we don't keep copying and pasting string_replace_all everywhere
  • Event no longer has integer based ids and has only a string name based on the same one used by SOG
  • GMK/GMX use the shared event parser to convert their integer event ids into a string name
  • Proto2ES builds a map like SOG in order to convert the event string names back into ids that are usable by EnigmaStruct

The idea here is that we do not plan on serializing or implementing the old drag and drop format anywhere in the UI. We still want people to be able to run games, so we keep the converted code for them. The new action format, if we get around to doing it, will use JDI to parse the GML and comments into a UI like GMS2.

>Codecov Report

Merging #1379 into master will increase coverage by 0.08%.
The diff coverage is 35.15%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #1379      +/-   ##
+ Coverage   16.74%   16.82%   +0.08%     
  Files         164      165       +1     
  Lines       17095    17307     +212     
+ Hits         2862     2912      +50     
- Misses      14233    14395     +162
Impacted Files Coverage Δ
...system/SHELL/Graphics_Systems/OpenGL1/GLmatrix.cpp 13.95% <ø> (ø)
...system/SHELL/Graphics_Systems/OpenGL1/GLstdraw.cpp 0.91% <ø> (ø) ⬆️
...em/SHELL/Graphics_Systems/OpenGL1/GLSamplerState.h 55.76% <ø> (ø) ⬆️
...tem/SHELL/Platforms/General/POSIX/POSIXthreads.cpp 0% <ø> (ø) ⬆️
...system/SHELL/Graphics_Systems/OpenGL1/GLshader.cpp 1.69% <ø> (ø) ⬆️
...system/SHELL/Graphics_Systems/OpenGL1/GLscreen.cpp 49.29% <ø> (ø) ⬆️
...system/SHELL/Graphics_Systems/OpenGL1/GLsprite.cpp 0% <ø> (ø) ⬆️
...em/SHELL/Platforms/General/POSIX/POSIXproccess.cpp 0% <ø> (ø) ⬆️
...MAsystem/SHELL/Graphics_Systems/General/GSstdraw.h 0% <ø> (ø) ⬆️
...ystem/SHELL/Graphics_Systems/OpenGL1/GLsurface.cpp 0.4% <ø> (ø) ⬆️
... and 51 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 950036a...0e0e13c. Read the comment docs.


still named wrong
Please sign in to post comments, or you can view this issue on GitHub.