1
0
mirror of https://github.com/tobspr/shapez.io.git synced 2026-10-09 13:03:39 +00:00
Files
tobspr_shapez.io/res/ui/icons/notification_warning.png

22 lines
4.1 KiB
Plaintext
Raw Normal View History

Mod Support - 1.5.0 Update (#1361) * initial modloader draft * modloader features * Refactor mods to use signals * Add support for modifying and registering new transltions * Minor adjustments * Support for string building ids for mods * Initial support for adding new buildings * Refactor how mods are loaded to resolve circular dependencies and prepare for future mod loading * Lazy Load mods to make sure all dependencies are loaded * Expose all exported members automatically to mods * Fix duplicate exports * Allow loading mods from standalone * update changelog * Fix mods folder incorrect path * Fix modloading in standalone * Fix sprites not getting replaced, update demo mod * Load dev mod via raw loader * Improve mod developing so mods are directly ready to be deployed, load mods from local file server * Proper mods ui * Allow mods to register game systems and draw stuff * Change mods path * Fix sprites not loading * Minor adjustments, closes #1333 * Add support for loading atlases via mods * Add support for loading mods from external sources in DEV * Add confirmation when loading mods * Fix circular dependency * Minor Keybindings refactor, add support for keybindings to mods, add support for dialogs to mods * Add some mod signals * refactor game loading states * Make shapez exports global * Start to make mods safer * Refactor file system electron event handling * Properly isolate electron renderer process * Update to latest electron * Show errors when loading mods * Update confirm dialgo * Minor restructure, start to add mod examples * Allow adding custom themesw * Add more examples and allow defining custom item processor operations * Add interface to register new buildings * Fixed typescript type errors (#1335) * Refactor building registry, make it easier for mods to add new buildings * Allow overriding existing methods * Add more examples and more features * More mod examples * Make mod loading simpler * Add example how to add custom drawings * Remove unused code * Minor modloader adjustments * Support for rotation variants in mods (was broken previously) * Allow mods to replace builtin sub shapes * Add helper methods to extend classes * Fix menu bar on mac os * Remember window state * Add support for paste signals * Add example how to add custom components and systems * Support for mod settings * Add example for adding a new item type * Update class extensions * Minor adjustments * Fix typo * Add notification blocks mod example * Add small tutorial * Update readme * Add better instructions * Update JSDoc for Replacing Methods (#1336) * upgraded types for overriding methods * updated comments Co-authored-by: Edward Badel <you@example.com> * Direction lock now indicates when there is a building inbetween * Fix mod examples * Fix linter error * Game state register (#1341) * Added a gamestate register helper Added a gamestate register helper * Update mod_interface.js * export build options * Fix runBeforeMethod and runAfterMethod * Minor game system code cleanup * Belt path drawing optimization * Fix belt path optimization * Belt drawing improvements, again * Do not render belts in statics disabled view * Allow external URL to load more than one mod (#1337) * Allow external URL to load more than one mod Instead of loading the text returned from the remote server, load a JSON object with a `mods` field, containing strings of all the mods. This lets us work on more than one mod at a time or without separate repos. This will break tooling such as `create-shapezio-mod` though. * Update modloader.js * Prettier fixes * Added link to create-shapezio-mod npm page (#1339) Added link to create-shapezio-mod npm page: https://www.npmjs.com/package/create-shapezio-mod * allow command line switch to load more than one mod (#1342) * Fixed class handle type (#1345) * Fixed class handle type * Fixed import game state * Minor adjustments * Refactor item acceptor to allow only single direction slots * Allow specifying minimumGameVersion * Add sandbox example * Replaced concatenated strings with template literals (#1347) * Mod improvements * Make wired pins component optional on the storage * Fix mod examples * Bind `this` for method overriding JSDoc (#1352) * fix entity debugger reaching HTML elements (#1353) * Store mods in savegame and show warning when it differs * Closes #1357 * Fix All Shapez Exports Being Const (#1358) * Allowed setting of variables inside webpack modules * remove console log * Fix stringification of things inside of eval Co-authored-by: Edward Badel <you@example.com> * Fix building placer intersection warning * Add example for storing data in the savegame * Fix double painter bug (#1349) * Add example on how to extend builtin buildings * update readme * Disable steam achievements when playing with mods * Update translations Co-authored-by: Thomas (DJ1TJOO) <44841260+DJ1TJOO@users.noreply.github.com> Co-authored-by: Bagel03 <70449196+Bagel03@users.noreply.github.com> Co-authored-by: Edward Badel <you@example.com> Co-authored-by: Emerald Block <69981203+EmeraldBlock@users.noreply.github.com> Co-authored-by: saile515 <63782477+saile515@users.noreply.github.com> Co-authored-by: Sense101 <67970865+Sense101@users.noreply.github.com>
2022-02-01 16:35:49 +01:00
<EFBFBD>PNG

IHDR@@<00>iq<69>tEXtSoftwareAdobe ImageReadyq<79>e<&iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 7.1-c000 79.dabacbb, 2021/04/14-00:39:44 "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmp:CreatorTool="Adobe Photoshop 23.0 (Macintosh)" xmpMM:InstanceID="xmp.iid:40FB5BA7706211ECACA3A6B4F1B392AA" xmpMM:DocumentID="xmp.did:40FB5BA8706211ECACA3A6B4F1B392AA"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:40FB5BA5706211ECACA3A6B4F1B392AA" stRef:documentID="xmp.did:40FB5BA6706211ECACA3A6B4F1B392AA"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>$<24><><EFBFBD> <0C>IDATx<54><78>[k<><14><15>nwO<77>cw<63>]<5D>VXQ<58>c<>A<EFBFBD>XƊF-+)<29>2&UIL<49>Jb<4A>T|<7C>P<EFBFBD>D<EFBFBD>|<7C><>|F<><46>)E<>H"J<>/"R<><52><07> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Nߜ{oϻ{<7B><><EFBFBD>2Uv<>g<EFBFBD><67>9<EFBFBD>;<3B><>ιw<19><1C><>K<EFBFBD>a<EFBFBD>:<3A>`<60>㓇<7F>iL'<27><><18> <0B><>{*w^
kҏ<EFBFBD><EFBFBD>6<EFBFBD>v<EFBFBD>K<EFBFBD>]
<EFBFBD><EFBFBD><EFBFBD>S<EFBFBD><EFBFBD>zLr@|<7C><><0F>=<3D><06> `<60><><EFBFBD>a<EFBFBD><61><EFBFBD><EFBFBD><EFBFBD>{<7B>ѵQ t<>N̿<4E>"fv ު<><DEAA>|A<>ўC<D19E><43>>z`<1D><><EFBFBD><EFBFBD><EFBFBD>}<7D> <0C><><EFBFBD><EFBFBD><EFBFBD>}<7D><>3<EFBFBD>)Pw<50><77>Xt<58>Q<EFBFBD>YV<59>8<>.<2E>F<><46><EFBFBD><18>y!<21>^T<>3<EFBFBD>h<EFBFBD><06><><0E><07><>hE<68>?<3F><><1E>k<EFBFBD><6B>C<EFBFBD><43>D<EFBFBD><44>`UW<55><1C><><EFBFBD><EFBFBD>W<EFBFBD>a<EFBFBD><61>90g<30><67>g|<7C><>1D<31>
G<EFBFBD>x}<18><19><>Ī
<EFBFBD>4<EFBFBD><04>QE<51> <09>bE{_<><1C>o<EFBFBD>A<EFBFBD>(<28><>I{p<><70><EFBFBD>'&z<>ބ<EFBFBD>߽V}<7D><>\<5C>0<>Y<EFBFBD>'<27>5<EFBFBD>?<3F><><10>]u<><1D><><00><15><><EFBFBD>Xtg#|<7C><><EFBFBD><EFBFBD>Won<6F>96<02><><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><10>W<EFBFBD>`<60><><EFBFBD><EFBFBD><EFBFBD>,k<>]<5D>עu<D7A2><75><EFBFBD>m<><6D>&<02>F<EFBFBD>a<EFBFBD><61>g 6<14><><15><><EFBFBD><1A>:<3A><>w<EFBFBD>ZkX<><58><18>g"<22>W<EFBFBD> <09><><02>B<EFBFBD>4a<34> <0C>xr&<26>5<EFBFBD><35>w<EFBFBD><77>T<><54><EFBFBD>/<2F>1<31><7F><EFBFBD>R<18>xB<>%<25><>H<EFBFBD>W_#֏<><D68F><EFBFBD><EFBFBD>C<>әA< <0A>bA<62>6<EFBFBD>ǹ<EFBFBD><C7B9>d8<64><38><EFBFBD><EFBFBD>B<EFBFBD><42><EFBFBD><EFBFBD>"ԺSc<53>'D#d<><00>j*:<3A>k5W<><57>w`<60> &C!a|<7C>6|<7C>F<EFBFBD><46><1F>3<><33><EFBFBD>" <0A><><EFBFBD>h<><68>t<vo&\*9 <20><>b<EFBFBD><62><10><><EFBFBD><EFBFBD>&S<>L<><eD<65>5<EFBFBD><35><EFBFBD>8<EFBFBD>z%
<EFBFBD>r<>)>\wyP<79> <0C><m<><6D>*<16>[<5B><><EFBFBD><EFBFBD>T<EFBFBD><54>
h^Z<><5A>+5<12>o<6F>O2<4F>鵙<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>:<3A>k<EFBFBD>F<EFBFBD>7`ad<61>c՟#X}<7D><>B<EFBFBD><42><EFBFBD>U<EFBFBD>C<EFBFBD><1E>O-<2D><><EFBFBD><EFBFBD>R#Y<0E>e<EFBFBD>Ȉ)<29>3<EFBFBD>g)I<>o<11>g<EFBFBD><67>I<06>Yغ3<D8BA><33>f <0A><>5ԓ<35>K<EFBFBD><4B>x<EFBFBD><78>&<0E>S<EFBFBD><53>Q<>Y$<24>w<1E><><EFBFBD>/<2F><16>]<5D><08><><EFBFBD>dWe<57>O<EFBFBD>]<5D><>"ne<6E><65>+#<23><>=Ź<>c<EFBFBD><63>Rz<52><7A><EFBFBD><EFBFBD><18> <0B> \<5C><>dx<64><78>P<><50>y2 *<15><>9<EFBFBD>|<7C>
<EFBFBD><EFBFBD><EFBFBD>T<EFBFBD><EFBFBD>8<13><>9M<39><1C> <0C>H<EFBFBD> <0A><>IѝvK<76> t<08><>r<EFBFBD>Ҿ&<26>?<3F><><EFBFBD>W~<7E>Y<EFBFBD>~<7E><><EFBFBD>b<EFBFBD>@9@*e.<2E>L{b<>z<EFBFBD><7A>_<EFBFBD>h<><68><EFBFBD>\-<2D><>3Xi<58>,<2C><><EFBFBD><1A>V<EFBFBD>*<2A>5h:<3A>!<21>M<EFBFBD>RlE<6C><45>r@<40>B<>$<24><>~<7E> <0C>:<16>9<EFBFBD>Ƨ<EFBFBD>#=<3D><10>H8E<38>܄<EFBFBD>(<28><1A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>T(݄x<05>l<EFBFBD><6C>0<><30>Y<EFBFBD><59>U<EFBFBD><55><EFBFBD>|<7C>l|p<17>'<27>¤,<2C><>9 <0A><>Zn<>U(˾<>o@<40>wnE<6E>%<25>:Y<><59><EFBFBD>N<EFBFBD>S<EFBFBD><0F><>b}<7D>^<5E><><EFBFBD>Z<EFBFBD>k<EFBFBD><6B><10>r <20>1<EFBFBD>sh<13>j<EFBFBD>R<><52>Mt=<3D>;<3B><>F24<34><7F><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD>O<EFBFBD>W<EFBFBD><1C><><EFBFBD>9<EFBFBD>=<04>sW<><57><EFBFBD>g<EFBFBD>^<5E>{
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>7<EFBFBD><EFBFBD><EFBFBD>5<EFBFBD>Ս<EFBFBD>l<EFBFBD><EFBFBD>D<EFBFBD><EFBFBD>RIcL}K<>?<3F>"<22><>.W?ci<63>*0<>! V<>x<><78><EFBFBD>t<14>
>רȺM]<5D><02>%C<><43><EFBFBD>L<EFBFBD><4C>1<>,I<><49>.O <20>F<EFBFBD><00>P<><50><13>J<EFBFBD>؞<EFBFBD>?C<><43>W!pd<70><64>1<EFBFBD><31>E<EFBFBD>&Q <19>w<><77><EFBFBD><EFBFBD>G7bⳀ<62><E2B380><EFBFBD>Z<EFBFBD><0E>l<0E><08><><13>U<EFBFBD>ö<07><><EFBFBD>Kٿ\<5C>@<40>BH<䀱<><E480B1>I<EFBFBD>^ <0C><>{<7B>.`<60><>t<><13>Q0<51><30><EFBFBD>$<24><>G<EFBFBD><47><EFBFBD><EFBFBD>VZi;Cc<43>S<EFBFBD><53><EFBFBD><EFBFBD>M<EFBFBD><4D><EFBFBD>i<>-<2D><><EFBFBD>A<EFBFBD><41>T<EFBFBD><54>B<1A>,<2C> 7LB<>w<q7<71><37><Of<4F>x<EFBFBD>{ f<>v@<40><>8<EFBFBD><17><><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD>yE<79><45>!<08><>f<EFBFBD>\<5C><><07>=<3D><>\<5C>l<EFBFBD> M<><4D>(;GE<47>@ME|<7C><>><3E>_ <09>ޗ<EFBFBD>W<EFBFBD>p<10>.,n?Tr˸-2C^M<><4D><06>+(<28>{<7B><>3.܈P<DC88>M<EFBFBD><4D><EFBFBD>4<EFBFBD><34>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>Φ<EFBFBD>[<5B>S<EFBFBD>8
<18>4<EFBFBD>a <0A>^/<2F>W<>L<EFBFBD>7<EFBFBD>~=z<><7A><EFBFBD>蔞*<2A>B<1E>]S<>صy<D8B5><79><EFBFBD>lPp<50><70>q &C S.0r
<EFBFBD><EFBFBD>pN<EFBFBD>{<7B><><EFBFBD>ӿq<0F>F<EFBFBD><46>eV<02>z<EFBFBD>I<EFBFBD>K<05><>0g<30><67><EFBFBD><1E>/<2F><>)<29><EFBFBD>v3<76><05><><EFBFBD><EFBFBD>P<17>.<2E>F?<3F><><EFBFBD>-<2D>-ʞ$<02><> <08><>m<>[<5B><><EFBFBD><EFBFBD>neKZ<4B>C<><43><EFBFBD><EFBFBD><EFBFBD>щ<04>R<14><>{ˍ8<CB8D>kw<6B><08>)<29><>G<04>*+<2B> <20>a6<03>I<7F>w<EFBFBD><77><1E><><EFBFBD><EFBFBD><EFBFBD><16>j,<2C> <0A><10>BB<42><42>iB"<22><>o<>!-<1A><><EFBFBD><EFBFBD>7R$<24><>y8<79>ZR<5A>~Ua<55><61><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1>~R<14>2<EFBFBD>%<25><>d<01>gK vZ<76><5A>z"<22>6K'<27>,<2C><>)h;`2<><10><><EFBFBD><EFBFBD>?`l_P<5F><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><14>E<EFBFBD><45>, <0A>
<1E>w2<K"G<>E(<28>Q<EFBFBD>S<)<29><><00><><18><><EFBFBD>K#(<28><<3C>R<EFBFBD><52><EFBFBD>r<EFBFBD><72>DU<08><05>p<EFBFBD><70><EFBFBD><EFBFBD>9DKZ<>V<EFBFBD>EhX<68><10>{<10><><EFBFBD>Y0
e<EFBFBD>hpy<70><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>D'<27><>>,oK>[<5B><>gI),<11>X<1E><><EFBFBD><0E><>bG<62><47><EFBFBD>0<><30>3$<17>X)B(<28>Z<EFBFBD><5A>g<>.<2E><><EFBFBD><EFBFBD>o<EFBFBD><6F>٤<EFBFBD>F&8<>@ <09><08>m<EFBFBD><6D>2<EFBFBD><32><EFBFBD>Eq<45><71><EFBFBD><EFBFBD>y<>DIv<49><76>w<EFBFBD>1u<><75>{ щ<>Cjlq<6C><71>K<EFBFBD>Sƒ'<27><><EFBFBD>W<18><>NLA<><41>8<> 0T<30><54><EFBFBD><EFBFBD><EFBFBD><EFBFBD><18>~v<1D>ǝ.3<EFBFBD>K<EFBFBD>j<EFBFBD><12>΍}q<>!<21><>^s@f<01><03><>X<EFBFBD>PɢI<C9A2>@{<E4<45><34><EFBFBD> M<>,$gw[<5B>(`<0E>'<27><,<2C><><EFBFBD><EFBFBD><EFBFBD>31<33><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD><65>,<2C><13><>O<13><><EFBFBD>6<EFBFBD><36>9<08>U<EFBFBD><55><EFBFBD><EFBFBD>\y<>g<EFBFBD>Nh<4E><68>uvn<1B><><EFBFBD><EFBFBD><EFBFBD>P<>3\<5C><>'<27>dt<64><74>=Xp<58>"<22>@<40>&p<>6*<04>pf <0C>V<EFBFBD><56>{'<27><EFBFBD>9J<39>Z<EFBFBD>ʌg<CA8C>XC\<5C><>a<EFBFBD>F<EFBFBD>5x<35><78>Br;]<17>3<EFBFBD>ѻ<EFBFBD><18>u <1A>orj<72>h<EFBFBD>4(F<><46> Pѱ<50>^i<>f<EFBFBD>z<EFBFBD>{<7B><><EFBFBD><EFBFBD>IG<49><47> 2<><32>07<30><37><EFBFBD> DV<11><><EFBFBD><EFBFBD>:)<29>E96<39>9<>b<>R<EFBFBD><52><EFBFBD><1D>b<EFBFBD><62><13>̏ v[A<><41>Ml=<3D>2<EFBFBD>8$!H<><48>HS<16><<16>}t<>L<EFBFBD><4C><EFBFBD>B<EFBFBD>ab<61>y<EFBFBD><01>I<EFBFBD>an=<3D><><<3C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͸w<CDB8><77>"Vj<56><6A>Y<EFBFBD><59><04><><11>E"`<60> ꀄ!<21><>^8C<>b<><62><EFBFBD><08>n<EFBFBD><6E><EFBFBD><EFBFBD>Jr<4A>̪D<><44><EFBFBD><EFBFBD>˨<EFBFBD>i<EFBFBD><69>x<><78><EFBFBD><EFBFBD>J0<4A>دaX}<7D>8V<38><56><EFBFBD><EFBFBD> =<3D>WoǯoS<><53>_"
<EFBFBD>ƒ'<27><0E>л<EFBFBD><D0BB>j/<2F><><EFBFBD>Py<50>}c<><63>~J <0A><>)<15>n+4MC<4D><43>8λf<CEBB><66>/<2F>><3E><><EFBFBD>Sq<53><71><1E><>7<EFBFBD>bɩ<62><C9A9>{<7B><>n<13>FiN<69>8nS_xHr)`-<05>$<24><><EFBFBD><EFBFBD> "{`f<19><Tg^V<><56>th<74>#6<><11><><EFBFBD>)<29>q
<EFBFBD><EFBFBD>.O<>T<EFBFBD>%<25>X<EFBFBD>L<17><>x<>I<><49><EFBFBD>`{cDW<44><57><EFBFBD><EFBFBD>W˺<57>+<2B>pL<4C><7F>G-<2D>qt<71><74>}-R<>\*<2A><>:,47h8~<7E><><EFBFBD>+<2B><>i<EFBFBD>r<EFBFBD><72>Wc<57><63>^<5E><>TCD><3E>v=<3D><><EFBFBD><<3C>[<5B>k<EFBFBD>1<><31>2<EFBFBD>#<23>5<EFBFBD><35><EFBFBD>E#<23>@@íWנ~<7E><><EFBFBD>̣<>ݜ <20>eq.<2E>k<EFBFBD>Z<EFBFBD>nSR<53>'L<>?k\<5C>|<7C><>ԗo2><3E>fa<66>kQ<6B>uL<75><4C><EFBFBD><EFBFBD>N<EFBFBD><<3C><><EFBFBD><EFBFBD>IU-.<2E>k!j<><6A>X!<21>cӵT7<54>
<EFBFBD><EFBFBD><EFBFBD>˕:<3A>'<27>H<EFBFBD><0F><14><>A\<5C><> <20>Z4y<34><79>ϊ$<24>d&
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>jp<EFBFBD><EFBFBD>Ȟ<><C89E><EFBFBD>v!<21>[Jf<10>P<08><>x<EFBFBD><0E><>~<7E>R<EFBFBD>hd<68> )h<<3C><19>wC<77>|#KM<4B><4D>d<EFBFBD><64><EFBFBD><EFBFBD>C-K#<23>J <1F>F<EFBFBD><03><>!|<7C><>L <0C>ߒJ<1D>̕<EFBFBD>@<40>.K<><4B>̅<EFBFBD><CC85><EFBFBD>B<EFBFBD>-Y<>
<EFBFBD><EFBFBD><EFBFBD>43<34><33>_,G<><47><EFBFBD>eo@Jc<4A><63><EFBFBD><EFBFBD>4<34><7F><<3C><>'j<>X<EFBFBD><58>Eļ<15> <0B>Ӕ`<60><><EFBFBD>D>71<37><31><EFBFBD>0<EFBFBD><30>2L<32><4C><EFBFBD><EFBFBD>g<EFBFBD>+<2B><1C><><EFBFBD><EFBFBD>Pő<50> <0C><>(<28><><EFBFBD>Y<EFBFBD>6<EFBFBD><36> 5 <0B><><EFBFBD>f<>8<>_<EFBFBD><5F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><01>`<00><><EFBFBD><EFBFBD>B<1C>IEND<4E>B`<60>