Commit Graph

50 Commits

Author SHA1 Message Date
Florian Rival 5d2e0786ee Sort actions/conditions in categories add icons to their groups (#3583)
* This should make it easier to identify and find actions/conditions. Categories give more clarity and icons help to identify what's available without reading everything.
2022-02-03 11:45:53 +01:00
Florian Rival 43d55112cc Display objects in categories when creating a new object (#3562)
Don't show in changelog
2022-01-29 16:02:34 +00:00
D8H 0fd9173069 Improve consistency of behavior descriptions by starting them with a verb. (#3484) 2022-01-17 17:05:37 +00:00
D8H b3e0540fed Group properties in some behaviors for enhanced clarity (#3373)
* Also allow custom behaviors made in the editor to define property groups.
2021-12-22 17:10:06 +00:00
Arthur Pacaud bc606ed1be Add a console to the games debugger (#2770)
* When launching the Debugger to inspect a game, open the Console to see internal messages sent by the game, JavaScript code or the game engine.
* This is an advanced feature that is useful to find issues in your game or to see if your game is displaying any internal error.
2021-10-21 19:47:28 +01:00
Harsimran Singh Virk 599ccb677f Add support for visual effects ("shaders") on objects. (#2901)
* This allows to generate interesting visual effects, which can be controlled by events. For example, you can use an outline on an object to highlight, make the player glow when launching a spell, blur objects, etc...
* A new "effects" tab is now present in the objects editor. From there, you can add visual effects, that were already available for layers, customize them from this editor.
* Actions and conditions are available to manipulate effects and change their parameters during the game.
* Learn more on the wiki: http://wiki.compilgames.net/doku.php/gdevelop5/objects/effects

Co-authored-by: Florian Rival <Florian.Rival@gmail.com>
2021-08-20 15:01:06 +02:00
Arthur Pacaud 068fbe653a Add new lines between functions back in TS files (#2859)
Only show in developer changelog
2021-08-03 14:35:07 +02:00
Florian Rival 54ef7482cf Fix performance issues on iOS by upgrading internal rendering engine to PixiJS v6 (#2447)
* Thanks @Bouh and @arthuro555 for the help!

Co-authored-by: Bouh <bouh.vivez@gmail.com>
2021-04-09 23:58:18 +01:00
Florian Rival 741c457d7f Use double for instances position/angle/size instead of float and various other fields
Fix issues with precision of serialized JSON after the switch to RapidJSON

Don't show in changelog
2021-03-13 21:34:53 +00:00
Florian Rival 4b2cd90320 Add documentation of extensions in the generated GDJS documentation
Only show in developer changelog
2021-01-14 21:32:13 +00:00
Florian Rival 65d3688052 Fix duplicate classes in the generated GDJS documentation
Don't show in changelog
2021-01-08 19:55:20 +01:00
Florian Rival 7ef2e40066 Add more various fixes for TypeScript and code style
Don't show in changelog
2021-01-08 19:55:01 +01:00
Florian Rival d0dba2a713 Fix typings in TypeScript files
Don't show in changelog
2021-01-08 19:54:56 +01:00
Florian Rival d639e0ea6e Translate more files to TypeScript
Don't show in changelog
2021-01-08 19:54:52 +01:00
Florian Rival 326ebb231c Translate all objects to TypeScript
Don't show in changelog
2021-01-08 19:54:47 +01:00
Florian Rival 11d69e46ed Translate all behaviors to TypeScript
Also adapt custom behavior code generation to use a (partial) ES6 class (methods are still added using prototype)

Don't show in changelog
2021-01-08 19:54:41 +01:00
Florian Rival d83ce0ed9d Rework objects recycling to be opt-in with a reinitialize method
Only show in developer changelog
2021-01-08 17:09:42 +01:00
Florian Rival 59c9812208 Only add the AdMob plugin when the AdMob App Id is set (#1940)
Don't show in changelog
2020-08-24 22:54:51 +01:00
Arthur Pacaud cafa0d512f Allow extensions to declare dependencies (npm, cordova...) and custom properties in the project (#1717)
Only show in developer changelog
2020-08-24 20:51:10 +01:00
Florian Rival 3a9f896f04 Add hot reloader (electron app only) 2020-07-25 14:23:00 +01:00
Florian Rival 9b178bc985 Fix "Remove Unused Images" removing images used by BBText object
Don't show the rest in changelog:
* More generally, fix resources exposed by any object declared in JavaScript
* Refactored GetProperties (and UpdateProperty) across behavior/object/behavior shared data to remove the dependency on gd::Project.
2020-06-23 22:40:38 +01:00
Florian Rival 0f30c2d614 Fix memory leak leading to a crash in the editor when having a BB Text in the scene.
* Also fix similar smaller memory leak when using other features.

Don't show the rest in changelog:
This avoids calling new gd.PropertyDescriptor every time properties of an object/behavior are accessed, which would result in these gd.PropertyDescriptor to be never destroyed. This would fill up the memory, especially quickly with the BB Text object as properties are queried to render the instances on screen.
"getOrCreate" is now exposed for the map of properties, which is cleaner and memory leak free.
2020-06-20 17:59:27 +01:00
Florian Rival 9d015b9cd1 Add Flow static typing to JsExtension.js files 2020-06-20 16:57:21 +01:00
Florian Rival fc5905b7f4 Update descriptions of extensions
Don't show in changelog
2020-06-20 16:57:21 +01:00
Florian Rival b8ccf02f70 Refactor callbacks registration in GDJS 2020-02-11 23:33:30 +00:00
Arthur Pacaud 054e48227c Make object and behavior registering more explicit (#1379) 2020-01-17 22:49:24 +00:00
Florian Rival 479584c3ef Also show parameter names and descriptions for checkbox in EffectsList 2019-12-27 17:33:26 +01:00
Bouh 42ddf9b41a Add Displacement, ColorMap, Pixelate and Reflection effects (#1329) 2019-12-26 17:38:28 +01:00
Florian Rival 50adbfaae9 Add support for booleans in effects parameters 2019-12-21 15:16:15 +01:00
Florian Rival ec9a629124 Add optional description to effect properties 2019-12-21 12:04:08 +01:00
Florian Rival 977dc27bd0 Add update for effects + colors and resources for effect parameters 2019-12-21 12:04:08 +01:00
Florian Rival 81aa68e69d Add back existing effects as an "Effect" extension
* Add tests for EnumerateEffects.
* Ensure fake effects are present for Storybook stories.
2019-12-17 09:04:00 +00:00
Florian Rival 8891c91d61 Add EffectMetadata and AddEffect to extensions
* Allow extensions to store EffectMetadata.
* Rework gdjs.PixiFiltersTools to allow new effects to be dynamically registered.
* Update EffectsList to read effects from extensions.
* Update GDJS ExporterHelper to export include files for effects
* Rename effectName to effectType to avoid confusions in gd::Effect
2019-12-17 09:04:00 +00:00
Bouh 76165908fc Add help button for Video object (#1244) 2019-10-02 00:20:21 +02:00
Florian Rival aa7a4a4ff3 Rename onOwnerRemovedFromScene to onDestroy and fix onCreated/onDestroy calls
* Rename onOwnerRemovedFromScene to onDestroy (because it can be now called when a scene is destroyed)
* Fix it being not called when a scene is destroyed (so behavior don't get a chance to clean up what they have created)
* Fix onCreated being called before the object is fully initialized (for custom behaviors or behaviors relying on an object type)
2019-07-28 17:43:50 +01:00
Florian Rival c03b8dd0db Add test for gdjs.RuntimeScene with object and behaviors 2019-07-28 17:43:50 +01:00
Florian Rival 433dc763d1 Separate Behavior into BehaviorContent and Behavior, and add RuntimeBehavior for GDCpp 2019-05-03 22:47:21 +01:00
Florian Rival 20ce83ccfe Add image resource to the dummy example object 2019-02-23 14:58:05 +00:00
Florian Rival 43230003b8 Fix ExampleJsExtension broken after internationalization 2019-02-09 14:08:22 +00:00
Florian Rival 02c65bcf66 [WIP] Add translations support, using js-lingui, to newIDE (including libGD.js)
* Upgrade to Flow 0.92 and make fixes for it
* Convert all extensions to use _("...") instead of t("...") for translations,
  to be able to be parsed by gettext
* Handle translation in JS extensions
* Move Providers out of MainFrame
* Remove i18next
* Adapt ExtractTranslations script to handle js files (for extensions)
2019-02-09 14:08:22 +00:00
Florian Rival 6ddace1ec4 Add an example of an object action in ExampleJsExtension 2019-02-06 23:34:43 +00:00
Florian Rival 50ebf6e5a2 Add support for creating objects in JS extensions + example 2019-01-05 12:03:24 +00:00
Florian Rival f61f525e61 Update GitHub links from 4ian/GD to 4ian/GDevelop 2018-09-09 22:29:32 +01:00
Florian Rival 303a489a41 Adapt JsExtensionsLoader to allow it to be used from Node.js 2018-08-24 16:57:37 +01:00
Florian Rival 91ff59e846 Switch back to ES5 for JsExtension.js 2018-07-11 22:28:31 +01:00
Florian Rival 6b850e82e7 Add extensions sanity tests 2018-07-11 19:33:47 +01:00
Florian Rival 896446f640 Fix missing calls to t("...") in ExampleJsExtension 2018-07-09 22:21:20 +01:00
Florian Rival 0019da90c7 Update documentation about implementing JavaScript extensions 2018-07-05 23:38:51 +01:00
Florian Rival 3be5d85733 Update GDJS docs to use JSDoc 2018-07-04 22:26:02 +01:00
Florian Rival 57fbe470b7 Add ExampleJsExtension 2018-07-04 00:20:03 +01:00