From f115b6607faf8e5d1bd1b49d41191e4d63e72a49 Mon Sep 17 00:00:00 2001 From: Florian Rival Date: Sun, 21 Jan 2018 22:11:24 +0100 Subject: [PATCH] Add PhysicsBehavior support to newIDE, with an example --- .vscode/c_cpp_properties.json | 3 +- .vscode/settings.json | 5 +- Extensions/CMakeLists.txt | 4 +- Extensions/PathfindingBehavior/Extension.cpp | 379 +- .../PathfindingBehavior/JsExtension.cpp | 2 +- Extensions/PhysicsBehavior/Extension.cpp | 1151 +++--- Extensions/PhysicsBehavior/JsExtension.cpp | 25 +- .../PhysicsBehavior/PhysicsBehavior.cpp | 79 +- Extensions/PhysicsBehavior/PhysicsBehavior.h | 3 + GDJS/GDJS/Extensions/JsPlatform.cpp | 2 + .../examples/physics/2DSmallWoodBox.jpg | Bin 0 -> 1598 bytes .../resources/examples/physics/2DWoodBox.jpg | Bin 0 -> 4265 bytes .../examples/physics/BlackSphere.png | Bin 0 -> 1040 bytes .../examples/physics/ConcreteWall.png | Bin 0 -> 84843 bytes .../physics/FullskiesBlueClear0007_1_M.jpg | Bin 0 -> 219356 bytes .../resources/examples/physics/physics.json | 3145 +++++++++++++++++ .../EnumerateInstructions.spec.js.snap | 247 ++ .../src/ProjectCreation/BrowserExamples.js | 13 + .../app/src/ProjectCreation/LocalExamples.js | 6 + .../ProjectsStorage/BrowserProjectOpener.js | 3 + newIDE/app/src/PropertiesEditor/index.js | 2 + newIDE/app/src/fixtures/physics/physics.json | 3145 +++++++++++++++++ 22 files changed, 7454 insertions(+), 760 deletions(-) create mode 100644 newIDE/app/resources/examples/physics/2DSmallWoodBox.jpg create mode 100644 newIDE/app/resources/examples/physics/2DWoodBox.jpg create mode 100644 newIDE/app/resources/examples/physics/BlackSphere.png create mode 100644 newIDE/app/resources/examples/physics/ConcreteWall.png create mode 100644 newIDE/app/resources/examples/physics/FullskiesBlueClear0007_1_M.jpg create mode 100644 newIDE/app/resources/examples/physics/physics.json create mode 100644 newIDE/app/src/fixtures/physics/physics.json diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json index 4a18c70f00..c54f77984c 100644 --- a/.vscode/c_cpp_properties.json +++ b/.vscode/c_cpp_properties.json @@ -13,6 +13,7 @@ "/usr/local/lib/wx/include/osx_cocoa-unicode-3.0", "/usr/local/include/wx-3.0", "/usr/include/machine", + "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include", "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1", "/usr/local/include", "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/8.0.0/include", @@ -86,4 +87,4 @@ } ], "version": 3 -} \ No newline at end of file +} diff --git a/.vscode/settings.json b/.vscode/settings.json index c2369f29bc..3fc99caa3d 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -67,7 +67,10 @@ "__functional_base": "cpp", "__functional_base_03": "cpp", "chrono": "cpp", - "ratio": "cpp" + "ratio": "cpp", + "atomic": "cpp", + "locale": "cpp", + "string_view": "cpp" }, "files.exclude": { "Binaries/*build*": true, diff --git a/Extensions/CMakeLists.txt b/Extensions/CMakeLists.txt index 9d724fdc28..33afaed2b6 100644 --- a/Extensions/CMakeLists.txt +++ b/Extensions/CMakeLists.txt @@ -37,9 +37,7 @@ IF (NOT EMSCRIPTEN) ADD_SUBDIRECTORY(PathBehavior) ENDIF() ADD_SUBDIRECTORY(PathfindingBehavior) -IF (NOT EMSCRIPTEN) - ADD_SUBDIRECTORY(PhysicsBehavior) -ENDIF() +ADD_SUBDIRECTORY(PhysicsBehavior) ADD_SUBDIRECTORY(PlatformBehavior) ADD_SUBDIRECTORY(PrimitiveDrawing) ADD_SUBDIRECTORY(Shopify) diff --git a/Extensions/PathfindingBehavior/Extension.cpp b/Extensions/PathfindingBehavior/Extension.cpp index b87dac1310..f59b2178f9 100644 --- a/Extensions/PathfindingBehavior/Extension.cpp +++ b/Extensions/PathfindingBehavior/Extension.cpp @@ -10,36 +10,36 @@ This project is released under the MIT License. #include "PathfindingBehavior.h" #include "PathfindingObstacleBehavior.h" -void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) +void DeclarePathfindingBehaviorExtension(gd::PlatformExtension& extension) { extension.SetExtensionInformation("PathfindingBehavior", - _("Pathfinding behavior"), - _("Compute paths for objects avoiding obstacles."), - "Florian Rival", - "Open source (MIT License)"); + _("Pathfinding behavior"), + _("Compute paths for objects avoiding obstacles."), + "Florian Rival", + "Open source (MIT License)"); { - gd::BehaviorMetadata &aut = extension.AddBehavior("PathfindingBehavior", - _("Pathfinding"), - "Pathfinding", - _("With this, characters will move while avoiding all objects that are flagged as obstacles."), - "", - "CppPlatform/Extensions/AStaricon.png", - "PathfindingBehavior", - std::make_shared(), - std::make_shared()); + gd::BehaviorMetadata& aut = extension.AddBehavior("PathfindingBehavior", + _("Pathfinding"), + "Pathfinding", + _("With this, characters will move while avoiding all objects that are flagged as obstacles."), + "", + "CppPlatform/Extensions/AStaricon.png", + "PathfindingBehavior", + std::make_shared(), + std::make_shared()); #if defined(GD_IDE_ONLY) aut.SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("SetDestination", - _("Move to a position"), - _("Move the object to a position"), - _("Move _PARAM0_ to _PARAM3_;_PARAM4_"), - _(""), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Move to a position"), + _("Move the object to a position"), + _("Move _PARAM0_ to _PARAM3_;_PARAM4_"), + _(""), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") .AddCodeOnlyParameter("currentScene", "") @@ -50,12 +50,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("PathFound", - _("Path found"), - _("Return true if a path has been found."), - _("A path has been found for _PARAM0_"), - _(""), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Path found"), + _("Return true if a path has been found."), + _("A path has been found for _PARAM0_"), + _(""), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -63,12 +63,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("DestinationReached", - _("Destination reached"), - _("Return true if the destination was reached."), - _("_PARAM0_ reached its destination"), - _(""), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Destination reached"), + _("Return true if the destination was reached."), + _("_PARAM0_ reached its destination"), + _(""), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -76,12 +76,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("CellWidth", - _("Width of the cells"), - _("Change the width of the cells of the virtual grid."), - _("Do _PARAM2__PARAM3_ to the width of the virtual cells of _PARAM0_"), - _("Virtual grid"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Width of the cells"), + _("Change the width of the cells of the virtual grid."), + _("Do _PARAM2__PARAM3_ to the width of the virtual cells of _PARAM0_"), + _("Virtual grid"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -93,12 +93,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("CellWidth", - _("Width of the virtual grid"), - _("Compare the width of the cells of the virtual grid."), - _("Width of the virtual cells of _PARAM0_ is _PARAM2__PARAM3_"), - _("Virtual grid"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Width of the virtual grid"), + _("Compare the width of the cells of the virtual grid."), + _("Width of the virtual cells of _PARAM0_ is _PARAM2__PARAM3_"), + _("Virtual grid"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -109,12 +109,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("CellHeight", - _("Height of the cells"), - _("Change the height of the cells of the virtual grid."), - _("Do _PARAM2__PARAM3_ to the height of the virtual cells of _PARAM0_"), - _("Virtual grid"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Height of the cells"), + _("Change the height of the cells of the virtual grid."), + _("Do _PARAM2__PARAM3_ to the height of the virtual cells of _PARAM0_"), + _("Virtual grid"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -126,12 +126,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("CellHeight", - _("Height of the virtual grid"), - _("Compare the height of the cells of the virtual grid."), - _("Height of the virtual cells of _PARAM0_ is _PARAM2__PARAM3_"), - _("Virtual grid"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Height of the virtual grid"), + _("Compare the height of the cells of the virtual grid."), + _("Height of the virtual cells of _PARAM0_ is _PARAM2__PARAM3_"), + _("Virtual grid"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -142,12 +142,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("Acceleration", - _("Acceleration"), - _("Change the acceleration when moving the object"), - _("Do _PARAM2__PARAM3_ to the acceleration of _PARAM0_ on the path"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Acceleration"), + _("Change the acceleration when moving the object"), + _("Do _PARAM2__PARAM3_ to the acceleration of _PARAM0_ on the path"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -159,12 +159,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("Acceleration", - _("Acceleration"), - _("Compare the acceleration when moving the object"), - _("Acceleration of _PARAM0_ is _PARAM2__PARAM3_"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Acceleration"), + _("Compare the acceleration when moving the object"), + _("Acceleration of _PARAM0_ is _PARAM2__PARAM3_"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -175,12 +175,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("MaxSpeed", - _("Maximum speed"), - _("Change the maximum speed when moving the object"), - _("Do _PARAM2__PARAM3_ to the max. speed of _PARAM0_ on the path"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Maximum speed"), + _("Change the maximum speed when moving the object"), + _("Do _PARAM2__PARAM3_ to the max. speed of _PARAM0_ on the path"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -192,12 +192,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("MaxSpeed", - _("Maximum speed"), - _("Compare the maximum speed when moving the object"), - _("Max. speed of _PARAM0_ is _PARAM2__PARAM3_"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Maximum speed"), + _("Compare the maximum speed when moving the object"), + _("Max. speed of _PARAM0_ is _PARAM2__PARAM3_"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -208,12 +208,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("Speed", - _("Speed"), - _("Change the speed of the object on the path"), - _("Do _PARAM2__PARAM3_ to the speed of _PARAM0_ on the path"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Speed"), + _("Change the speed of the object on the path"), + _("Do _PARAM2__PARAM3_ to the speed of _PARAM0_ on the path"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -225,12 +225,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("Speed", - _("Speed"), - _("Compare the speed of the object on the path"), - _("Speed of _PARAM0_ is _PARAM2__PARAM3_"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Speed"), + _("Compare the speed of the object on the path"), + _("Speed of _PARAM0_ is _PARAM2__PARAM3_"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -241,12 +241,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("AngularMaxSpeed", - _("Angular maximum speed"), - _("Change the maximum angular speed when moving the object"), - _("Do _PARAM2__PARAM3_ to the max. angular speed of _PARAM0_ on the path"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Angular maximum speed"), + _("Change the maximum angular speed when moving the object"), + _("Do _PARAM2__PARAM3_ to the max. angular speed of _PARAM0_ on the path"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -258,12 +258,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("AngularMaxSpeed", - _("Angular maximum speed"), - _("Compare the maximum angular speed when moving the object"), - _("Max. angular speed of _PARAM0_ is _PARAM2__PARAM3_"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Angular maximum speed"), + _("Compare the maximum angular speed when moving the object"), + _("Max. angular speed of _PARAM0_ is _PARAM2__PARAM3_"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -274,12 +274,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("AngleOffset", - _("Rotation offset"), - _("Change the rotation offset applied when moving the object"), - _("Do _PARAM2__PARAM3_ to the rotation offset of _PARAM0_ on the path"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Rotation offset"), + _("Change the rotation offset applied when moving the object"), + _("Do _PARAM2__PARAM3_ to the rotation offset of _PARAM0_ on the path"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -291,12 +291,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("AngleOffset", - _("Rotation offset"), - _("Compare the rotation offset when moving the object"), - _("Rotation offset of _PARAM0_ is _PARAM2__PARAM3_"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Rotation offset"), + _("Compare the rotation offset when moving the object"), + _("Rotation offset of _PARAM0_ is _PARAM2__PARAM3_"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -307,12 +307,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("ExtraBorder", - _("Extra border"), - _("Change the size of the extra border applied to the object when planning a path"), - _("Do _PARAM2__PARAM3_ to the extra border of _PARAM0_ on the path"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Extra border"), + _("Change the size of the extra border applied to the object when planning a path"), + _("Do _PARAM2__PARAM3_ to the extra border of _PARAM0_ on the path"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -324,12 +324,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("ExtraBorder", - _("Extra border"), - _("Compare the size of the extra border applied to the object when planning a path"), - _("Size of the extra border applied to _PARAM0_ is _PARAM2__PARAM3_"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Extra border"), + _("Compare the size of the extra border applied to the object when planning a path"), + _("Size of the extra border applied to _PARAM0_ is _PARAM2__PARAM3_"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -340,12 +340,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("AllowDiagonals", - _("Diagonals moves"), - _("Allow or restrict diagonal movement on the path"), - _("Allow diagonal movement for _PARAM0_ on the path: _PARAM2_"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Diagonals moves"), + _("Allow or restrict diagonal movement on the path"), + _("Allow diagonal movement for _PARAM0_ on the path: _PARAM2_"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -354,12 +354,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("DiagonalsAllowed", - _("Diagonals moves"), - _("Return true if the object is allowed to move diagonally on the path"), - _("Diagonal moves allowed for _PARAM0_"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Diagonals moves"), + _("Return true if the object is allowed to move diagonally on the path"), + _("Diagonal moves allowed for _PARAM0_"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -367,12 +367,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddAction("RotateObject", - _("Rotate the object"), - _("Enable or disable rotation of the object on the path"), - _("Enable rotation of _PARAM0_ on the path: _PARAM2_"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Rotate the object"), + _("Enable or disable rotation of the object on the path"), + _("Enable rotation of _PARAM0_ on the path: _PARAM2_"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -381,12 +381,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingBehavior.h"); aut.AddCondition("ObjectRotated", - _("Object rotated"), - _("Return true if the object is rotated when traveling on its path."), - _("_PARAM0_ is rotated when traveling on its path"), - _("Path"), - "CppPlatform/Extensions/AStaricon24.png", - "CppPlatform/Extensions/AStaricon16.png") + _("Object rotated"), + _("Return true if the object is rotated when traveling on its path."), + _("_PARAM0_ is rotated when traveling on its path"), + _("Path"), + "CppPlatform/Extensions/AStaricon24.png", + "CppPlatform/Extensions/AStaricon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingBehavior") @@ -506,26 +506,26 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) #endif } { - gd::BehaviorMetadata &aut = extension.AddBehavior("PathfindingObstacleBehavior", - _("Obstacle for pathfinding"), - "PathfindingObstacle", - _("Flag the object as being an obstacle for pathfinding."), - "", - "CppPlatform/Extensions/pathfindingobstacleicon.png", - "PathfindingObstacleBehavior", - std::make_shared(), - std::make_shared()); + gd::BehaviorMetadata& aut = extension.AddBehavior("PathfindingObstacleBehavior", + _("Obstacle for pathfinding"), + "PathfindingObstacle", + _("Flag the object as being an obstacle for pathfinding."), + "", + "CppPlatform/Extensions/pathfindingobstacleicon.png", + "PathfindingObstacleBehavior", + std::make_shared(), + std::make_shared()); #if defined(GD_IDE_ONLY) aut.SetIncludeFile("PathfindingBehavior/PathfindingObstacleBehavior.h"); aut.AddAction("Cost", - _("Cost"), - _("Change the cost of going through the object."), - _("Do _PARAM2__PARAM3_ to the cost of _PARAM0_"), - _("Obstacles"), - "CppPlatform/Extensions/pathfindingobstacleicon24.png", - "CppPlatform/Extensions/pathfindingobstacleicon16.png") + _("Cost"), + _("Change the cost of going through the object."), + _("Do _PARAM2__PARAM3_ to the cost of _PARAM0_"), + _("Obstacles"), + "CppPlatform/Extensions/pathfindingobstacleicon24.png", + "CppPlatform/Extensions/pathfindingobstacleicon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingObstacleBehavior") @@ -537,12 +537,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingObstacleBehavior.h"); aut.AddCondition("Cost", - _("Cost"), - _("Compare the cost of going through the object"), - _("Cost of _PARAM0_ is _PARAM2__PARAM3_"), - _("Obstacles"), - "CppPlatform/Extensions/pathfindingobstacleicon24.png", - "CppPlatform/Extensions/pathfindingobstacleicon16.png") + _("Cost"), + _("Compare the cost of going through the object"), + _("Cost of _PARAM0_ is _PARAM2__PARAM3_"), + _("Obstacles"), + "CppPlatform/Extensions/pathfindingobstacleicon24.png", + "CppPlatform/Extensions/pathfindingobstacleicon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingObstacleBehavior") @@ -553,12 +553,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingObstacleBehavior.h"); aut.AddAction("SetImpassable", - _("Should object be impassable?"), - _("Decide if the object is an impassable obstacle"), - _("Set _PARAM0_ as an impassable obstacle: _PARAM2_"), - _("Obstacles"), - "CppPlatform/Extensions/pathfindingobstacleicon24.png", - "CppPlatform/Extensions/pathfindingobstacleicon16.png") + _("Should object be impassable?"), + _("Decide if the object is an impassable obstacle"), + _("Set _PARAM0_ as an impassable obstacle: _PARAM2_"), + _("Obstacles"), + "CppPlatform/Extensions/pathfindingobstacleicon24.png", + "CppPlatform/Extensions/pathfindingobstacleicon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingObstacleBehavior") @@ -567,12 +567,12 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) .SetIncludeFile("PathfindingBehavior/PathfindingObstacleBehavior.h"); aut.AddCondition("IsImpassable", - _("Is object impassable?"), - _("Return true if the obstacle is impassable"), - _("_PARAM0_ is impassable"), - _("Obstacles"), - "CppPlatform/Extensions/pathfindingobstacleicon24.png", - "CppPlatform/Extensions/pathfindingobstacleicon16.png") + _("Is object impassable?"), + _("Return true if the obstacle is impassable"), + _("_PARAM0_ is impassable"), + _("Obstacles"), + "CppPlatform/Extensions/pathfindingobstacleicon24.png", + "CppPlatform/Extensions/pathfindingobstacleicon16.png") .AddParameter("object", _("Object")) .AddParameter("behavior", _("Behavior"), "PathfindingObstacleBehavior") @@ -592,9 +592,8 @@ void DeclarePathfindingBehaviorExtension(gd::PlatformExtension &extension) /** * \brief This class declares information about the extension. */ -class PathfindingBehaviorCppExtension : public ExtensionBase -{ - public: +class PathfindingBehaviorCppExtension : public ExtensionBase { +public: /** * Constructor of an extension declares everything the extension contains: objects, actions, conditions and expressions. */ @@ -607,7 +606,7 @@ class PathfindingBehaviorCppExtension : public ExtensionBase }; #if defined(ANDROID) -extern "C" ExtensionBase *CreateGDCppPathfindingBehaviorExtension() +extern "C" ExtensionBase* CreateGDCppPathfindingBehaviorExtension() { return new PathfindingBehaviorCppExtension; } @@ -616,7 +615,7 @@ extern "C" ExtensionBase *CreateGDCppPathfindingBehaviorExtension() * Used by GDevelop to create the extension class * -- Do not need to be modified. -- */ -extern "C" ExtensionBase *GD_EXTENSION_API CreateGDExtension() +extern "C" ExtensionBase* GD_EXTENSION_API CreateGDExtension() { return new PathfindingBehaviorCppExtension; } diff --git a/Extensions/PathfindingBehavior/JsExtension.cpp b/Extensions/PathfindingBehavior/JsExtension.cpp index 5ef6c4ff74..4e25e51537 100644 --- a/Extensions/PathfindingBehavior/JsExtension.cpp +++ b/Extensions/PathfindingBehavior/JsExtension.cpp @@ -7,7 +7,6 @@ This project is released under the MIT License. #if defined(GD_IDE_ONLY) #include "GDCore/Extensions/PlatformExtension.h" #include "GDCore/Tools/Localization.h" -#include void DeclarePathfindingBehaviorExtension(gd::PlatformExtension & extension); @@ -99,6 +98,7 @@ public: } StripUnimplementedInstructionsAndExpressions(); + GD_COMPLETE_EXTENSION_COMPILATION_INFORMATION(); }; }; diff --git a/Extensions/PhysicsBehavior/Extension.cpp b/Extensions/PhysicsBehavior/Extension.cpp index fdf442b6a3..9780d68d0d 100644 --- a/Extensions/PhysicsBehavior/Extension.cpp +++ b/Extensions/PhysicsBehavior/Extension.cpp @@ -6,573 +6,627 @@ This project is released under the MIT License. */ /** * Contributors to the extension: - * Victor Levasseur ( Collisions using custom polygons, fixed time step fix ) + * Victor Levasseur (Collisions using custom polygons, fixed time step fix) */ - +#include "GDCpp/Extensions/ExtensionBase.h" #include "PhysicsBehavior.h" #include "ScenePhysicsDatas.h" -#include "GDCpp/Extensions/ExtensionBase.h" +void DeclarePhysicsBehaviorExtension(gd::PlatformExtension& extension) +{ + extension.SetExtensionInformation("PhysicsBehavior", + _("Physics behavior"), + _("This extension enables the movement of objects as if they are subject to the laws of physics."), + "Florian Rival", + "Open source (MIT License)"); + + { + gd::BehaviorMetadata& aut = extension.AddBehavior("PhysicsBehavior", + _("Physics engine"), + _("Physics"), + _("Make objects move as if they are subject to the laws of physics."), + "", + "res/physics32.png", + "PhysicsBehavior", + std::make_shared(), + std::make_shared()); + +#if defined(GD_IDE_ONLY) + aut.SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetStatic", + _("Make the object static"), + _("Make the object immovable."), + _("Make _PARAM0_ static"), + _("Movement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetStatic") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetDynamic", + _("Make the object dynamic"), + _("Make the object dynamic ( affected by forces and other objects )."), + _("Make _PARAM0_ dynamic"), + _("Movement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetDynamic") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("IsDynamic", + _("The object is dynamic"), + _("Test if an object is dynamic ( affected by forces and other objects )."), + _("_PARAM0_ is dynamic"), + _("Movement"), + "res/physics24.png", + "res/physics16.png") + + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .SetFunctionName("IsDynamic") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetFixedRotation", + _("Fix rotation"), + _("Prevent the object from rotating"), + _("Fix rotation of _PARAM0_"), + _("Rotation"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetFixedRotation") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("AddRevoluteJoint", + _("Add a hinge"), + _("Add a hinge that the object will rotate around.\nThe distance between the hinge and the object will remain identical."), + _("Add a hinge to _PARAM0_ at _PARAM2_;_PARAM3_"), + _("Joints"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("Hinge X position")) + .AddParameter("expression", _("Hinge Y position")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("AddRevoluteJoint") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("AddRevoluteJointBetweenObjects", + _("Add a hinge between two objects"), + _("Add a hinge that the object will rotate around."), + _("Add a hinge between _PARAM0_ and _PARAM2_"), + _("Joints"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("objectPtr", _("Object")) + .AddCodeOnlyParameter("currentScene", "") + .AddParameter("expression", _("X position of the hinge, from the first object mass center"), "", true) + .SetDefaultValue("0") + .AddParameter("expression", _("Y position of the hinge, from the first object mass center"), "", true) + .SetDefaultValue("0") + .SetFunctionName("AddRevoluteJointBetweenObjects") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("ActAddGearJointBetweenObjects", + _("Add a gear between two objects"), + _("Add a virtual gear between two objects."), + _("Add a gear between _PARAM0_ and _PARAM2_"), + _("Joints"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("objectPtr", _("Object")) + .AddParameter("expression", _("Ratio"), "", true) + .SetDefaultValue("1") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("AddGearJointBetweenObjects") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetFreeRotation", + _("Make object's rotation free"), + _("Allows the object to rotate."), + _("Allow _PARAM0_ to rotate"), + _("Rotation"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetFreeRotation") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("IsFixedRotation", + _("Fixed rotation"), + _("Test if the object's rotation is fixed."), + _("The rotation of _PARAM0_ is fixed."), + _("Rotation"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("IsFixedRotation") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetAsBullet", + _("Treat object like a bullet."), + _("Treat the object like a bullet, so it will have better collision handling."), + _("Consider _PARAM0_ as a bullet"), + _("Other"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetAsBullet") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("DontSetAsBullet", + _("Do not treat object like a bullet"), + _("Do not treat the object like a bullet, so it will use standard collision handling."), + _("Do not consider _PARAM0_ as a bullet."), + _("Other"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("DontSetAsBullet") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("IsBullet", + _("Object is treated like a bullet"), + _("Test if the object is treated like a bullet"), + _("_PARAM0_ is considered as a bullet"), + _("Other"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("IsBullet") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("ApplyImpulse", + _("Apply an impulse"), + _("Apply an impulse to the object."), + _("Apply to _PARAM0_ impulse _PARAM2_;_PARAM3_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("X component ( Newtons/Seconds )")) + .AddParameter("expression", _("Y component ( Newtons/Seconds )")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("ApplyImpulse") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("ApplyImpulseUsingPolarCoordinates", + _("Apply an impulse (angle)"), + _("Apply an impulse to an object, using an angle and a length as coordinates."), + _("Apply to _PARAM0_ impulse _PARAM3_ with angle: _PARAM2_\302\260"), //\302\260 <=> DEGREE SIGN + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("Angle")) + .AddParameter("expression", _("Impulse value ( Newton/seconds )")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("ApplyImpulseUsingPolarCoordinates") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("ApplyImpulseTowardPosition", + _("Apply an impulse toward a position"), + _("Apply an impulse, directed toward a position, to the object."), + _("Apply to _PARAM0_ impulse _PARAM4_ toward position _PARAM2_;_PARAM3_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("X position")) + .AddParameter("expression", _("Y position")) + .AddParameter("expression", _("Impulse value ( Newton/seconds )")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("ApplyImpulseTowardPosition") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("ApplyForce", + _("Add a force"), + _("Add a force to the object"), + _("Apply to _PARAM0_ force _PARAM2_;_PARAM3_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("X component ( Newtons )")) + .AddParameter("expression", _("Y component ( Newtons )")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("ApplyForce") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("ApplyForceUsingPolarCoordinates", + _("Apply a force ( angle )"), + _("Apply a force to an object, using an angle and a length as coordinates."), + _("Apply to _PARAM0_ force _PARAM3_ at angle _PARAM2_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("Angle")) + .AddParameter("expression", _("Length of the force ( Newtons )")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("ApplyForceUsingPolarCoordinates") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("ApplyForceTowardPosition", + _("Apply a force toward a position"), + _("Apply a force, directed toward a position, to the object."), + _("Add to _PARAM0_ force _PARAM4_ toward position _PARAM2_;_PARAM3_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("X position")) + .AddParameter("expression", _("Y position")) + .AddParameter("expression", _("Length of the force ( Newtons )")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("ApplyForceTowardPosition") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("ApplyTorque", + _("Add a torque (a rotation)"), + _("Add a torque (a rotation) to the object."), + _("Add to _PARAM0_ torque _PARAM2_"), + _("Rotation"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("Torque value")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("ApplyTorque") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetLinearVelocity", + _("Linear velocity"), + _("Modify the velocity of an object."), + _("Set linear velocity of _PARAM0_ to _PARAM2_;_PARAM3_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("X Coordinate")) + .AddParameter("expression", _("Y Coordinate")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetLinearVelocity") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("LinearVelocityX", + _("X component"), + _("Compare the linear velocity on the X axis of the object."), + _("Linear velocity on X axis of _PARAM0_ is _PARAM2__PARAM3_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("relationalOperator", _("Comparison sign")) + .AddParameter("expression", _("Value to test")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetLinearVelocityX") + .SetManipulatedType("number") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("LinearVelocityY", + _("Y component"), + _("Compare the linear velocity on the Y axis of the object."), + _("Linear velocity on Y axis of _PARAM0_ is _PARAM2__PARAM3_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("relationalOperator", _("Comparison sign")) + .AddParameter("expression", _("Value to test")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetLinearVelocityY") + .SetManipulatedType("number") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("LinearVelocity", + _("Linear speed"), + _("Compare the linear velocity of the object."), + _("Linear velocity of _PARAM0_ is _PARAM2__PARAM3_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("relationalOperator", _("Comparison sign")) + .AddParameter("expression", _("Value to test")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetLinearVelocity") + .SetManipulatedType("number") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetAngularVelocity", + _("Angular speed"), + _("Modify the angular velocity of the object."), + _("Set angular speed of _PARAM0_ to _PARAM2_"), + _("Rotation"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("New value")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetAngularVelocity") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("AngularVelocity", + _("Angular speed"), + _("Compare the angular speed of the object."), + _("Angular speed of _PARAM0_ is _PARAM2__PARAM3_"), + _("Rotation"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("relationalOperator", _("Comparison sign")) + .AddParameter("expression", _("Value to test")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetAngularVelocity") + .SetManipulatedType("number") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("LinearDamping", + _("Linear damping"), + _("Compare the linear damping of the object."), + _("Linear damping of _PARAM0_ is _PARAM2__PARAM3_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("relationalOperator", _("Comparison sign")) + .AddParameter("expression", _("Value to test")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetLinearDamping") + .SetManipulatedType("number") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("CollisionWith", + _("Collision"), + _("Test if two objects are colliding.\nAttention! Only objects specified in the first parameter will be taken into account by the next actions and conditions, if they are colliding with the other objects."), + _("_PARAM0_ is in collision with a _PARAM2_"), + _(""), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("objectList", _("Object")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("CollisionWith") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetLinearDamping", + _("Linear damping"), + _("Modify the linear damping of the object."), + _("Set linear damping of _PARAM0_ to _PARAM2_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("Value")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetLinearDamping") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("AngularDamping", + _("Angular damping"), + _("Test the object's angular damping"), + _("Angular damping of _PARAM0_ is _PARAM2__PARAM3_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("relationalOperator", _("Comparison sign")) + .AddParameter("expression", _("Value to test")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetAngularDamping") + .SetManipulatedType("number") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetAngularDamping", + _("Angular damping"), + _("Modify the angular damping of the object."), + _("Set angular damping of _PARAM0_ to _PARAM2_"), + _("Displacement"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("Value")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetAngularDamping") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetGravity", + _("Gravity"), + _("Modify the gravity"), + _("Set gravity force to _PARAM2_;_PARAM3_"), + _("Global options"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("X Coordinate")) + .AddParameter("expression", _("Y Coordinate")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetGravity") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetPolygonScaleX", + _("Change the X scale of a collision polygon"), + _("Change the X scale of the polygon. Use a value greater than 1 to enlarge the polygon, less than 1 to reduce it."), + _("Change the X scale of the collision polygon of _PARAM0_ to _PARAM2_"), + _("Collision polygon"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("Scale")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetPolygonScaleX") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddAction("SetPolygonScaleY", + _("Change the Y scale of a collision polygon"), + _("Change the Y scale of the polygon. Use a value greater than 1 to enlarge the polygon, less than 1 to reduce it."), + _("Change the Y scale of the collision polygon of _PARAM0_ Y to _PARAM2_"), + _("Collision polygon"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("expression", _("Scale")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("SetPolygonScaleY") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("GetPolygonScaleX", + _("Collision polygon X scale"), + _("Test the value of the X scale of the collision polygon."), + _("The X scale of the collision polygon of _PARAM0_ is _PARAM2__PARAM3_"), + _("Collision polygon"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("relationalOperator", _("Comparison sign")) + .AddParameter("expression", _("Value to test")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetPolygonScaleX") + .SetManipulatedType("number") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddCondition("GetPolygonScaleY", + _("Collision polygon Y scale"), + _("Test the value of the Y scale of the collision polygon."), + _("The Y scale of the collision polygon of _PARAM0_ is _PARAM2__PARAM3_"), + _("Collision polygon"), + "res/physics24.png", + "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddParameter("relationalOperator", _("Comparison sign")) + .AddParameter("expression", _("Value to test")) + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetPolygonScaleY") + .SetManipulatedType("number") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddExpression("PolygonScaleX", _("Collision polygon X scale"), _("Collision polygon X scale"), _("Collision polygon"), "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetPolygonScaleX") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddExpression("PolygonScaleY", _("Collision polygon Y scale"), _("Collision polygon Y scale"), _("Collision polygon"), "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetPolygonScaleY") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddExpression("LinearVelocity", _("Linear speed"), _("Linear speed"), _("Displacement"), "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetLinearVelocity") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddExpression("LinearVelocityX", _("X component"), _("X component"), _("Displacement"), "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetLinearVelocityX") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddExpression("LinearVelocityY", _("Y component"), _("Y component"), _("Displacement"), "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetLinearVelocityY") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddExpression("AngularVelocity", _("Angular speed"), _("Angular speed"), _("Rotation"), "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetAngularVelocity") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddExpression("LinearDamping", _("Linear damping"), _("Linear damping"), _("Displacement"), "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetLinearDamping") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + + aut.AddExpression("AngularDamping", _("Angular damping"), _("Angular damping"), _("Rotation"), "res/physics16.png") + .AddParameter("object", _("Object")) + .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") + .AddCodeOnlyParameter("currentScene", "") + .SetFunctionName("GetAngularDamping") + .SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); + +#endif + } +} /** * \brief This class declares information about the extension. */ -class PhysicsBehaviorCppExtension : public ExtensionBase -{ +class PhysicsBehaviorCppExtension : public ExtensionBase { public: - /** * Constructor of an extension declares everything the extension contains: objects, actions, conditions and expressions. */ PhysicsBehaviorCppExtension() { - SetExtensionInformation("PhysicsBehavior", - _("Physics behavior"), - _("This extension enables the movement of objects as if they are subject to the laws of physics."), - "Florian Rival", - "Open source (MIT License)"); - - { - gd::BehaviorMetadata & aut = AddBehavior("PhysicsBehavior", - _("Physics engine"), - _("Physics"), - _("Make objects move as if they are subject to the laws of physics."), - "", - "res/physics32.png", - "PhysicsBehavior", - std::make_shared(), - std::make_shared()); - - #if defined(GD_IDE_ONLY) - aut.SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetStatic", - _("Make the object static"), - _("Make the object immovable."), - _("Make _PARAM0_ static"), - _("Movement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetStatic").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetDynamic", - _("Make the object dynamic"), - _("Make the object dynamic ( affected by forces and other objects )."), - _("Make _PARAM0_ dynamic"), - _("Movement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetDynamic").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("IsDynamic", - _("The object is dynamic"), - _("Test if an object is dynamic ( affected by forces and other objects )."), - _("_PARAM0_ is dynamic"), - _("Movement"), - "res/physics24.png", - "res/physics16.png") - - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .SetFunctionName("IsDynamic").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetFixedRotation", - _("Fix rotation"), - _("Prevent the object from rotating"), - _("Fix rotation of _PARAM0_"), - _("Rotation"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetFixedRotation").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("AddRevoluteJoint", - _("Add a hinge"), - _("Add a hinge that the object will rotate around.\nThe distance between the hinge and the object will remain identical."), - _("Add a hinge to _PARAM0_ at _PARAM2_;_PARAM3_"), - _("Joints"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("Hinge X position")) - .AddParameter("expression", _("Hinge Y position")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("AddRevoluteJoint").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("AddRevoluteJointBetweenObjects", - _("Add a hinge between two objects"), - _("Add a hinge that the object will rotate around."), - _("Add a hinge between _PARAM0_ and _PARAM2_"), - _("Joints"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("objectPtr", _("Object")) - .AddCodeOnlyParameter("currentScene", "") - .AddParameter("expression", _("X position of the hinge, from the first object mass center"), "", true).SetDefaultValue("0") - .AddParameter("expression", _("Y position of the hinge, from the first object mass center"), "", true).SetDefaultValue("0") - .SetFunctionName("AddRevoluteJointBetweenObjects").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("ActAddGearJointBetweenObjects", - _("Add a gear between two objects"), - _("Add a virtual gear between two objects."), - _("Add a gear between _PARAM0_ and _PARAM2_"), - _("Joints"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("objectPtr", _("Object")) - .AddParameter("expression", _("Ratio"), "", true).SetDefaultValue("1") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("AddGearJointBetweenObjects").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetFreeRotation", - _("Make object's rotation free"), - _("Allows the object to rotate."), - _("Allow _PARAM0_ to rotate"), - _("Rotation"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetFreeRotation").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("IsFixedRotation", - _("Fixed rotation"), - _("Test if the object's rotation is fixed."), - _("The rotation of _PARAM0_ is fixed."), - _("Rotation"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("IsFixedRotation").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetAsBullet", - _("Treat object like a bullet."), - _("Treat the object like a bullet, so it will have better collision handling."), - _("Consider _PARAM0_ as a bullet"), - _("Other"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetAsBullet").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("DontSetAsBullet", - _("Do not treat object like a bullet"), - _("Do not treat the object like a bullet, so it will use standard collision handling."), - _("Do not consider _PARAM0_ as a bullet."), - _("Other"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("DontSetAsBullet").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("IsBullet", - _("Object is treated like a bullet"), - _("Test if the object is treated like a bullet"), - _("_PARAM0_ is considered as a bullet"), - _("Other"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("IsBullet").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("ApplyImpulse", - _("Apply an impulse"), - _("Apply an impulse to the object."), - _("Apply to _PARAM0_ impulse _PARAM2_;_PARAM3_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("X component ( Newtons/Seconds )")) - .AddParameter("expression", _("Y component ( Newtons/Seconds )")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("ApplyImpulse").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("ApplyImpulseUsingPolarCoordinates", - _("Apply an impulse (angle)"), - _("Apply an impulse to an object, using an angle and a length as coordinates."), - _("Apply to _PARAM0_ impulse _PARAM3_ with angle: _PARAM2_\302\260"), //\302\260 <=> DEGREE SIGN - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("Angle")) - .AddParameter("expression", _("Impulse value ( Newton/seconds )")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("ApplyImpulseUsingPolarCoordinates").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("ApplyImpulseTowardPosition", - _("Apply an impulse toward a position"), - _("Apply an impulse, directed toward a position, to the object."), - _("Apply to _PARAM0_ impulse _PARAM4_ toward position _PARAM2_;_PARAM3_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("X position")) - .AddParameter("expression", _("Y position")) - .AddParameter("expression", _("Impulse value ( Newton/seconds )")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("ApplyImpulseTowardPosition").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("ApplyForce", - _("Add a force"), - _("Add a force to the object"), - _("Apply to _PARAM0_ force _PARAM2_;_PARAM3_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("X component ( Newtons )")) - .AddParameter("expression", _("Y component ( Newtons )")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("ApplyForce").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("ApplyForceUsingPolarCoordinates", - _("Apply a force ( angle )"), - _("Apply a force to an object, using an angle and a length as coordinates."), - _("Apply to _PARAM0_ force _PARAM3_ at angle _PARAM2_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("Angle")) - .AddParameter("expression", _("Length of the force ( Newtons )")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("ApplyForceUsingPolarCoordinates").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("ApplyForceTowardPosition", - _("Apply a force toward a position"), - _("Apply a force, directed toward a position, to the object."), - _("Add to _PARAM0_ force _PARAM4_ toward position _PARAM2_;_PARAM3_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("X position")) - .AddParameter("expression", _("Y position")) - .AddParameter("expression", _("Length of the force ( Newtons )")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("ApplyForceTowardPosition").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("ApplyTorque", - _("Add a torque (a rotation)"), - _("Add a torque (a rotation) to the object."), - _("Add to _PARAM0_ torque _PARAM2_"), - _("Rotation"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("Torque value")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("ApplyTorque").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetLinearVelocity", - _("Linear velocity"), - _("Modify the velocity of an object."), - _("Set linear velocity of _PARAM0_ to _PARAM2_;_PARAM3_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("X Coordinate")) - .AddParameter("expression", _("Y Coordinate")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetLinearVelocity").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("LinearVelocityX", - _("X component"), - _("Compare the linear velocity on the X axis of the object."), - _("Linear velocity on X axis of _PARAM0_ is _PARAM2__PARAM3_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("relationalOperator", _("Comparison sign")) - .AddParameter("expression", _("Value to test")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetLinearVelocityX").SetManipulatedType("number").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("LinearVelocityY", - _("Y component"), - _("Compare the linear velocity on the Y axis of the object."), - _("Linear velocity on Y axis of _PARAM0_ is _PARAM2__PARAM3_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("relationalOperator", _("Comparison sign")) - .AddParameter("expression", _("Value to test")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetLinearVelocityY").SetManipulatedType("number").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("LinearVelocity", - _("Linear speed"), - _("Compare the linear velocity of the object."), - _("Linear velocity of _PARAM0_ is _PARAM2__PARAM3_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("relationalOperator", _("Comparison sign")) - .AddParameter("expression", _("Value to test")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetLinearVelocity").SetManipulatedType("number").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetAngularVelocity", - _("Angular speed"), - _("Modify the angular velocity of the object."), - _("Set angular speed of _PARAM0_ to _PARAM2_"), - _("Rotation"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("New value")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetAngularVelocity").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("AngularVelocity", - _("Angular speed"), - _("Compare the angular speed of the object."), - _("Angular speed of _PARAM0_ is _PARAM2__PARAM3_"), - _("Rotation"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("relationalOperator", _("Comparison sign")) - .AddParameter("expression", _("Value to test")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetAngularVelocity").SetManipulatedType("number").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("LinearDamping", - _("Linear damping"), - _("Compare the linear damping of the object."), - _("Linear damping of _PARAM0_ is _PARAM2__PARAM3_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("relationalOperator", _("Comparison sign")) - .AddParameter("expression", _("Value to test")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetLinearDamping").SetManipulatedType("number").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("CollisionWith", - _("Collision"), - _("Test if two objects are colliding.\nAttention! Only objects specified in the first parameter will be taken into account by the next actions and conditions, if they are colliding with the other objects."), - _("_PARAM0_ is in collision with a _PARAM2_"), - _(""), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("objectList", _("Object")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("CollisionWith").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetLinearDamping", - _("Linear damping"), - _("Modify the linear damping of the object."), - _("Set linear damping of _PARAM0_ to _PARAM2_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("Value")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetLinearDamping").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("AngularDamping", - _("Angular damping"), - _("Test the object's angular damping"), - _("Angular damping of _PARAM0_ is _PARAM2__PARAM3_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("relationalOperator", _("Comparison sign")) - .AddParameter("expression", _("Value to test")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetAngularDamping").SetManipulatedType("number").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetAngularDamping", - _("Angular damping"), - _("Modify the angular damping of the object."), - _("Set angular damping of _PARAM0_ to _PARAM2_"), - _("Displacement"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("Value")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetAngularDamping").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetGravity", - _("Gravity"), - _("Modify the gravity"), - _("Set gravity force to _PARAM2_;_PARAM3_"), - _("Global options"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("X Coordinate")) - .AddParameter("expression", _("Y Coordinate")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetGravity").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetPolygonScaleX", - _("Change the X scale of a collision polygon"), - _("Change the X scale of the polygon. Use a value greater than 1 to enlarge the polygon, less than 1 to reduce it."), - _("Change the X scale of the collision polygon of _PARAM0_ to _PARAM2_"), - _("Collision polygon"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("Scale")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetPolygonScaleX").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddAction("SetPolygonScaleY", - _("Change the Y scale of a collision polygon"), - _("Change the Y scale of the polygon. Use a value greater than 1 to enlarge the polygon, less than 1 to reduce it."), - _("Change the Y scale of the collision polygon of _PARAM0_ Y to _PARAM2_"), - _("Collision polygon"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("expression", _("Scale")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("SetPolygonScaleY").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("GetPolygonScaleX", - _("Collision polygon X scale"), - _("Test the value of the X scale of the collision polygon."), - _("The X scale of the collision polygon of _PARAM0_ is _PARAM2__PARAM3_"), - _("Collision polygon"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("relationalOperator", _("Comparison sign")) - .AddParameter("expression", _("Value to test")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetPolygonScaleX").SetManipulatedType("number").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddCondition("GetPolygonScaleY", - _("Collision polygon Y scale"), - _("Test the value of the Y scale of the collision polygon."), - _("The Y scale of the collision polygon of _PARAM0_ is _PARAM2__PARAM3_"), - _("Collision polygon"), - "res/physics24.png", - "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddParameter("relationalOperator", _("Comparison sign")) - .AddParameter("expression", _("Value to test")) - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetPolygonScaleY").SetManipulatedType("number").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddExpression("PolygonScaleX", _("Collision polygon X scale"), _("Collision polygon X scale"), _("Collision polygon"), "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetPolygonScaleX").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddExpression("PolygonScaleY", _("Collision polygon Y scale"), _("Collision polygon Y scale"), _("Collision polygon"), "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetPolygonScaleY").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddExpression("LinearVelocity", _("Linear speed"), _("Linear speed"), _("Displacement"), "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetLinearVelocity").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddExpression("LinearVelocityX", _("X component"), _("X component"), _("Displacement"), "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetLinearVelocityX").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddExpression("LinearVelocityY", _("Y component"), _("Y component"), _("Displacement"), "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetLinearVelocityY").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddExpression("AngularVelocity", _("Angular speed"), _("Angular speed"), _("Rotation"), "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetAngularVelocity").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddExpression("LinearDamping", _("Linear damping"), _("Linear damping"), _("Displacement"), "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetLinearDamping").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - aut.AddExpression("AngularDamping", _("Angular damping"), _("Angular damping"), _("Rotation"), "res/physics16.png") - .AddParameter("object", _("Object")) - .AddParameter("behavior", _("Behavior"), "PhysicsBehavior") - .AddCodeOnlyParameter("currentScene", "") - .SetFunctionName("GetAngularDamping").SetIncludeFile("PhysicsBehavior/PhysicsBehavior.h"); - - #endif - - } - + DeclarePhysicsBehaviorExtension(*this); GD_COMPLETE_EXTENSION_COMPILATION_INFORMATION(); }; }; #if defined(ANDROID) -extern "C" ExtensionBase * CreateGDCppPhysicsBehaviorExtension() { +extern "C" ExtensionBase* CreateGDCppPhysicsBehaviorExtension() +{ return new PhysicsBehaviorCppExtension; } #elif !defined(EMSCRIPTEN) @@ -580,7 +634,8 @@ extern "C" ExtensionBase * CreateGDCppPhysicsBehaviorExtension() { * Used by GDevelop to create the extension class * -- Do not need to be modified. -- */ -extern "C" ExtensionBase * GD_EXTENSION_API CreateGDExtension() { +extern "C" ExtensionBase* GD_EXTENSION_API CreateGDExtension() +{ return new PhysicsBehaviorCppExtension; } #endif diff --git a/Extensions/PhysicsBehavior/JsExtension.cpp b/Extensions/PhysicsBehavior/JsExtension.cpp index 90bcf479f1..fea2e7bd6f 100644 --- a/Extensions/PhysicsBehavior/JsExtension.cpp +++ b/Extensions/PhysicsBehavior/JsExtension.cpp @@ -6,29 +6,23 @@ This project is released under the MIT License. */ #if defined(GD_IDE_ONLY) #include "GDCore/Extensions/PlatformExtension.h" - - -#include #include "GDCore/Tools/Localization.h" +void DeclarePhysicsBehaviorExtension(gd::PlatformExtension & extension); + /** * \brief This class declares information about the JS extension. */ -class JsExtension : public gd::PlatformExtension +class PhysicsBehaviorJsExtension : public gd::PlatformExtension { public: /** * \brief Constructor of an extension declares everything the extension contains: objects, actions, conditions and expressions. */ - JsExtension() + PhysicsBehaviorJsExtension() { - SetExtensionInformation("PhysicsBehavior", - _("Physics behavior"), - _("Behavior allowing to move objects as if they were subject to the laws of physics."), - "Florian Rival", - "Open source (MIT License)"); - CloneExtension("GDevelop C++ platform", "PhysicsBehavior"); + DeclarePhysicsBehaviorExtension(*this); GetBehaviorMetadata("PhysicsBehavior::PhysicsBehavior") .SetIncludeFile("Extensions/PhysicsBehavior/box2djs/box2d.js") @@ -145,14 +139,21 @@ public: */ StripUnimplementedInstructionsAndExpressions(); + GD_COMPLETE_EXTENSION_COMPILATION_INFORMATION(); }; }; +#if defined(EMSCRIPTEN) +extern "C" gd::PlatformExtension * CreateGDJSPhysicsBehaviorExtension() { + return new PhysicsBehaviorJsExtension; +} +#else /** * Used by GDevelop to create the extension class * -- Do not need to be modified. -- */ extern "C" gd::PlatformExtension * GD_EXTENSION_API CreateGDJSExtension() { - return new JsExtension; + return new PhysicsBehaviorJsExtension; } #endif +#endif diff --git a/Extensions/PhysicsBehavior/PhysicsBehavior.cpp b/Extensions/PhysicsBehavior/PhysicsBehavior.cpp index be1263e16b..8f8cb45e0a 100644 --- a/Extensions/PhysicsBehavior/PhysicsBehavior.cpp +++ b/Extensions/PhysicsBehavior/PhysicsBehavior.cpp @@ -7,6 +7,7 @@ This project is released under the MIT License. #include "PhysicsBehavior.h" #include +#include "GDCore/Tools/Localization.h" #include "Box2D/Box2D.h" #include "Triangulation/triangulate.h" #include "GDCpp/Runtime/RuntimeScene.h" @@ -17,6 +18,10 @@ This project is released under the MIT License. #include "GDCpp/Runtime/Project/Project.h" #include "GDCpp/Runtime/Project/Layout.h" #include "RuntimeScenePhysicsDatas.h" +#if defined(GD_IDE_ONLY) +#include +#include "GDCore/IDE/Dialogs/PropertyDescriptor.h" +#endif #undef GetObject @@ -100,10 +105,6 @@ void PhysicsBehavior::DoStepPostEvents(RuntimeScene & scene) float newHeight = object->GetHeight(); if ( (int)objectOldWidth != (int)newWidth || (int)objectOldHeight != (int)newHeight ) { - /*std::cout << "Changed:" << (int)objectOldWidth << "!=" << (int)newWidth << std::endl; - std::cout << "Changed:" << (int)objectOldHeight << "!=" << (int)newHeight << std::endl; - std::cout << "( Object name:" << object->GetName() << std::endl;*/ - double oldAngularVelocity = body->GetAngularVelocity(); b2Vec2 oldVelocity = body->GetLinearVelocity(); @@ -700,6 +701,76 @@ void PhysicsBehavior::UnserializeFrom(const gd::SerializerElement & element) SetPolygonCoords(PhysicsBehavior::GetCoordsVectorFromString(coordsStr, '/', ';')); } +#if defined(GD_IDE_ONLY) +std::map PhysicsBehavior::GetProperties(gd::Project & project) const +{ + std::map properties; + + gd::String shapeTypeStr = _("Box (rectangle)"); + if (shapeType == Box) shapeTypeStr = _("Box (rectangle)"); + else if (shapeType == Circle) shapeTypeStr = _("Circle"); + else if (shapeType == CustomPolygon) shapeTypeStr = _("Custom polygon"); + + properties[_("Shape")] + .SetValue(shapeTypeStr) + .SetType("Choice") + .AddExtraInfo(_("Box (rectangle)")) + .AddExtraInfo(_("Circle")); + + properties[_("Dynamic object")].SetValue(dynamic ? "true" : "false").SetType("Boolean"); + properties[_("Fixed rotation")].SetValue(fixedRotation ? "true" : "false").SetType("Boolean"); + properties[_("Consider as bullet (better collision handling)")].SetValue(isBullet ? "true" : "false").SetType("Boolean"); + properties[_("Mass density")].SetValue(gd::String::From(massDensity)); + properties[_("Friction")].SetValue(gd::String::From(averageFriction)); + properties[_("Restitution (elasticity)")].SetValue(gd::String::From(averageRestitution)); + properties[_("Linear Damping")].SetValue(gd::String::From(linearDamping)); + properties[_("Angular Damping")].SetValue(gd::String::From(angularDamping)); + properties[_("PLEASE_ALSO_SHOW_EDIT_BUTTON_THANKS")].SetValue(""); + + return properties; +} + +bool PhysicsBehavior::UpdateProperty(const gd::String & name, const gd::String & value, gd::Project & project) +{ + if (name == _("Shape")) + { + if (value == _("Box (rectangle)")) + shapeType = Box; + else if (value == _("Circle")) + shapeType = Circle; + else if (value == _("Custom polygon")) + shapeType = CustomPolygon; + } + if ( name == _("Dynamic object") ) { + dynamic = (value != "0"); + } + if ( name == _("Fixed rotation") ) { + fixedRotation = (value != "0"); + } + if ( name == _("Consider as bullet (better collision handling)") ) { + isBullet = (value != "0"); + } + if ( name == _("Mass density") ) { + massDensity = value.To(); + } + if ( name == _("Friction") ) { + averageFriction = value.To(); + } + if ( name == _("Restitution (elasticity)") ) { + averageRestitution = value.To(); + } + if ( name == _("Linear Damping") ) { + if ( value.To() < 0 ) return false; + linearDamping = value.To(); + } + if ( name == _("Angular Damping") ) { + if ( value.To() < 0 ) return false; + angularDamping = value.To(); + } + + return true; +} +#endif gd::String PhysicsBehavior::GetStringFromCoordsVector(const std::vector &vec, char32_t coordsSep, char32_t composantSep) { diff --git a/Extensions/PhysicsBehavior/PhysicsBehavior.h b/Extensions/PhysicsBehavior/PhysicsBehavior.h index 2820a35f97..79eb963c07 100644 --- a/Extensions/PhysicsBehavior/PhysicsBehavior.h +++ b/Extensions/PhysicsBehavior/PhysicsBehavior.h @@ -56,6 +56,9 @@ public: * Called when user wants to edit the behavior. */ virtual void EditBehavior( wxWindow* parent, gd::Project & project_, gd::Layout * layout_, gd::MainFrameWrapper & mainFrameWrapper_ ); + + virtual std::map GetProperties(gd::Project & project) const; + virtual bool UpdateProperty(const gd::String & name, const gd::String & value, gd::Project & project); #endif /** diff --git a/GDJS/GDJS/Extensions/JsPlatform.cpp b/GDJS/GDJS/Extensions/JsPlatform.cpp index 1a1425fa75..bbb909df7f 100644 --- a/GDJS/GDJS/Extensions/JsPlatform.cpp +++ b/GDJS/GDJS/Extensions/JsPlatform.cpp @@ -138,6 +138,7 @@ gd::PlatformExtension * CreateGDJSLinkedObjectsExtension(); gd::PlatformExtension * CreateGDJSSystemInfoExtension(); gd::PlatformExtension * CreateGDJSShopifyExtension(); gd::PlatformExtension * CreateGDJSPathfindingBehaviorExtension(); +gd::PlatformExtension * CreateGDJSPhysicsBehaviorExtension(); } #endif @@ -185,6 +186,7 @@ JsPlatform::JsPlatform() : AddExtension(std::shared_ptr(CreateGDJSSystemInfoExtension())); std::cout.flush(); AddExtension(std::shared_ptr(CreateGDJSShopifyExtension())); std::cout.flush(); AddExtension(std::shared_ptr(CreateGDJSPathfindingBehaviorExtension())); std::cout.flush(); + AddExtension(std::shared_ptr(CreateGDJSPhysicsBehaviorExtension())); std::cout.flush(); #endif std::cout << "done." << std::endl; }; diff --git a/newIDE/app/resources/examples/physics/2DSmallWoodBox.jpg b/newIDE/app/resources/examples/physics/2DSmallWoodBox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..db2203cfc1077ff46d398c968b38cb4dad75eb9d GIT binary patch literal 1598 zcmex=X!XqN1l2cOC(lau%ic3n% z$}1|Xnp;}i+B-VCCQY6)b=ve9GiNPYykzOJeA&aSFc^aar4&0M~|O8efIpt%U2&ieg5+G+xH(oe}VkP$iNH_GKkO6{3QtV7ZVE$ zGYdP&UyMxUAdd^Ouqqm|2{{I`Cl(4T88vc8f z2KE_o9%~}YXK;@p{B?_ghnW!=dCYy8ng}aSTT>N2vG%K-SwMdcn ze0h1}Q#}%Yb~3Vf?{YZkW)~Co;p)_R(GMrg^>FP9vyh9^j)&~sFs-EdcnZ>MPwNZG6XhYey+>VxY zEMB7j8Dy8UZ<@UAKLfA5?%ZGZzuw(ew=pQp^V7ZGc3InAt`58X{BxCTN}ba6l9Q=z zCu@ugmwS9XD%pH+`bN_|g^P3A#Qa6?#vEI__wEvLpV(_cZlR0gPTEAS{X6N2+dQF9 zv1Yn+=1C`JstF$2bg=l5b>^}R?-p}mZ#_;you%ISKfA-a4@s3wj6C~cR-{kslkM5u z^6kc)r3DVRa#L5=PQ9msea~{=txxycd_jH7j_UrlPZ4exJ-6OEesF@-j?U!H zFzZ^kREEur3io7Ia7g_7aA~gEtj*Qhzo)#vbiQ`$m-@!JmUsVX-u=FE?XB49dB5zA z?~nQ6@7k6r?e}qe_u5&!t$I&C@^`$?TRO4k#O>Ox&(;fcN%;L(G%d6(lrdDnGAgBe zi)-Gk`8|2MZx`RJI$ga~WmdCJ;gOe&xp9%oZd{)asW+u{v~EvVoEGxTbmkW6vtr-u z-`aN<+<$d_n%RWAj*E{be7vQ7(k5ub`9oCD*k;hkxp4>g~5ty`8`<4H10szfAg^~aO literal 0 HcmV?d00001 diff --git a/newIDE/app/resources/examples/physics/2DWoodBox.jpg b/newIDE/app/resources/examples/physics/2DWoodBox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7579f4c8d501a97775f741d767807e3a943ac344 GIT binary patch literal 4265 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 becpjjKbMy``CP@q%C9DENmH5QbE^IW09;X( literal 0 HcmV?d00001 diff --git a/newIDE/app/resources/examples/physics/ConcreteWall.png b/newIDE/app/resources/examples/physics/ConcreteWall.png new file mode 100644 index 0000000000000000000000000000000000000000..010987196a59f65d892d6e6a5a51bd0c231cf889 GIT binary patch literal 84843 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 z¤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 literal 0 HcmV?d00001 diff --git a/newIDE/app/resources/examples/physics/FullskiesBlueClear0007_1_M.jpg b/newIDE/app/resources/examples/physics/FullskiesBlueClear0007_1_M.jpg new file mode 100644 index 0000000000000000000000000000000000000000..57ad9744059b3ae950adb5d5d78143c5f9455cc2 GIT binary patch literal 219356 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 z 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 literal 0 HcmV?d00001 diff --git a/newIDE/app/resources/examples/physics/physics.json b/newIDE/app/resources/examples/physics/physics.json new file mode 100644 index 0000000000..c1ff445b10 --- /dev/null +++ b/newIDE/app/resources/examples/physics/physics.json @@ -0,0 +1,3145 @@ +{ + "firstLayout": "", + "gdVersion": { + "build": 96, + "major": 4, + "minor": 0, + "revision": 0 + }, + "properties": { + "folderProject": false, + "linuxExecutableFilename": "", + "macExecutableFilename": "", + "packageName": "com.example.physics", + "projectFile": "/Users/florian/Desktop/physics/physics.json", + "useExternalSourceFiles": false, + "winExecutableFilename": "", + "winExecutableIconFile": "", + "name": "Physics Example", + "author": "", + "windowWidth": 800, + "windowHeight": 600, + "latestCompilationDirectory": "", + "maxFPS": -1, + "minFPS": 10, + "verticalSync": false, + "extensions": [ + { + "name": "BuiltinObject" + }, + { + "name": "BuiltinAudio" + }, + { + "name": "BuiltinVariables" + }, + { + "name": "BuiltinTime" + }, + { + "name": "BuiltinMouse" + }, + { + "name": "BuiltinKeyboard" + }, + { + "name": "BuiltinJoystick" + }, + { + "name": "BuiltinCamera" + }, + { + "name": "BuiltinWindow" + }, + { + "name": "BuiltinFile" + }, + { + "name": "BuiltinNetwork" + }, + { + "name": "BuiltinScene" + }, + { + "name": "BuiltinAdvanced" + }, + { + "name": "Sprite" + }, + { + "name": "BuiltinCommonInstructions" + }, + { + "name": "BuiltinCommonConversions" + }, + { + "name": "BuiltinStringInstructions" + }, + { + "name": "BuiltinMathematicalTools" + }, + { + "name": "BuiltinExternalLayouts" + }, + { + "name": "TextObject" + }, + { + "name": "PhysicsBehavior" + } + ], + "platforms": [ + { + "name": "GDevelop JS platform" + } + ], + "currentPlatform": "GDevelop JS platform" + }, + "resources": { + "resources": [ + { + "alwaysLoaded": false, + "file": "2DWoodBox.jpg", + "kind": "image", + "name": "2DWoodBox.jpg", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "2DSmallWoodBox.jpg", + "kind": "image", + "name": "2DSmallWoodBox.jpg", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "BlackSphere.png", + "kind": "image", + "name": "BlackSphere.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ConcreteWall.png", + "kind": "image", + "name": "ConcreteWall.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "FullskiesBlueClear0007_1_M.jpg", + "kind": "image", + "name": "FullskiesBlueClear0007_1_M.jpg", + "smoothed": true, + "userAdded": true + } + ], + "resourceFolders": [] + }, + "objects": [], + "objectsGroups": [], + "variables": [], + "layouts": [ + { + "b": 125, + "disableInputWhenNotFocused": true, + "mangledName": "Scene_321", + "name": "Scene 1", + "oglFOV": 90, + "oglZFar": 500, + "oglZNear": 1, + "r": 125, + "standardSortMethod": true, + "stopSoundsOnStartup": true, + "title": "", + "v": 125, + "uiSettings": { + "grid": false, + "gridB": 255, + "gridG": 180, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridR": 158, + "gridWidth": 32, + "snap": true, + "windowMask": false, + "zoomFactor": 1 + }, + "objectsGroups": [], + "variables": [], + "instances": [ + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "Floor", + "width": 0, + "x": 0, + "y": 500, + "zOrder": 0, + "numberProperties": [ + { + "name": "animation", + "value": 0 + } + ], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "Background", + "width": 0, + "x": 0, + "y": 0, + "zOrder": -100, + "numberProperties": [ + { + "name": "animation", + "value": 0 + } + ], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "height": 40, + "layer": "", + "locked": false, + "name": "BlackSphere", + "width": 40, + "x": 8.5, + "y": -31.5, + "zOrder": 0, + "numberProperties": [ + { + "name": "animation", + "value": 0 + } + ], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 5, + "customSize": true, + "height": 52, + "layer": "", + "locked": false, + "name": "Floor", + "width": 427, + "x": -174.5, + "y": 53, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": -1, + "customSize": true, + "height": 18, + "layer": "", + "locked": false, + "name": "Lever", + "width": 107, + "x": 309, + "y": 238, + "zOrder": 0, + "numberProperties": [ + { + "name": "animation", + "value": 0 + } + ], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "BlackSphere", + "width": 0, + "x": 252, + "y": 271, + "zOrder": 0, + "numberProperties": [ + { + "name": "animation", + "value": 2679780 + } + ], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "height": 31, + "layer": "", + "locked": false, + "name": "Floor", + "width": 313, + "x": -31, + "y": 305, + "zOrder": 0, + "numberProperties": [ + { + "name": "animation", + "value": 2679780 + } + ], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "SmallBox", + "width": 0, + "x": 37, + "y": 236, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "SmallBox", + "width": 0, + "x": 31, + "y": 201, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "SmallBox", + "width": 0, + "x": 21, + "y": 164, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "SmallBox", + "width": 0, + "x": 42, + "y": 271, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "height": 175, + "layer": "", + "locked": false, + "name": "BigBox", + "width": 6, + "x": 155, + "y": 128.5, + "zOrder": 0, + "numberProperties": [ + { + "name": "animation", + "value": 0 + } + ], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "BigBox", + "width": 0, + "x": 722, + "y": 434, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": -36, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "BigBox", + "width": 0, + "x": 615, + "y": -1406, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 24, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "BigBox", + "width": 0, + "x": 693, + "y": -1998, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": -35, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "BigBox", + "width": 0, + "x": 734, + "y": -1637, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 125, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "BigBox", + "width": 0, + "x": 596, + "y": -1824, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "BigBox", + "width": 0, + "x": 723, + "y": 360, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "BigBox", + "width": 0, + "x": 725, + "y": 277, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "New_object", + "width": 0, + "x": 531, + "y": 30, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "Text", + "width": 0, + "x": 611, + "y": 97, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 24, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "BigBox", + "width": 0, + "x": 681, + "y": -2657, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": -35, + "customSize": false, + "height": 0, + "layer": "", + "locked": false, + "name": "BigBox", + "width": 0, + "x": 584, + "y": -2248, + "zOrder": 0, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + } + ], + "objects": [ + { + "name": "BigBox", + "type": "Sprite", + "updateIfNotVisible": true, + "variables": [], + "behaviors": [ + { + "angularDamping": 0.1, + "autoResizing": true, + "averageFriction": 0.8, + "averageRestitution": 0, + "coordsList": "", + "dynamic": true, + "fixedRotation": false, + "isBullet": false, + "linearDamping": 0.1, + "massDensity": 0.5, + "name": "Physics", + "polygonHeight": 200, + "polygonWidth": 200, + "positioning": "OnOrigin", + "shapeType": "Box", + "type": "PhysicsBehavior::PhysicsBehavior" + } + ], + "animations": [ + { + "name": "", + "useMultipleDirections": false, + "directions": [ + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + } + ] + } + ] + }, + { + "name": "SmallBox", + "type": "Sprite", + "updateIfNotVisible": true, + "variables": [], + "behaviors": [ + { + "angularDamping": 0.1, + "autoResizing": true, + "averageFriction": 0.8, + "averageRestitution": 0, + "coordsList": "", + "dynamic": true, + "fixedRotation": false, + "isBullet": false, + "linearDamping": 0.1, + "massDensity": 0.2, + "name": "Physics", + "polygonHeight": 200, + "polygonWidth": 200, + "positioning": "OnOrigin", + "shapeType": "Box", + "type": "PhysicsBehavior::PhysicsBehavior" + } + ], + "animations": [ + { + "name": "", + "useMultipleDirections": false, + "directions": [ + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DSmallWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DSmallWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DSmallWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DSmallWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DSmallWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DSmallWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DSmallWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DSmallWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + } + ] + } + ] + }, + { + "name": "BlackSphere", + "type": "Sprite", + "updateIfNotVisible": true, + "variables": [], + "behaviors": [ + { + "angularDamping": 0.1, + "autoResizing": true, + "averageFriction": 0.8, + "averageRestitution": 0, + "coordsList": "", + "dynamic": true, + "fixedRotation": false, + "isBullet": true, + "linearDamping": 0.1, + "massDensity": 1, + "name": "Physics", + "polygonHeight": 200, + "polygonWidth": 200, + "positioning": "OnOrigin", + "shapeType": "Circle", + "type": "PhysicsBehavior::PhysicsBehavior" + } + ], + "animations": [ + { + "name": "", + "useMultipleDirections": false, + "directions": [ + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + } + ] + } + ] + }, + { + "name": "Floor", + "type": "Sprite", + "updateIfNotVisible": true, + "variables": [], + "behaviors": [ + { + "angularDamping": 0.1, + "autoResizing": true, + "averageFriction": 0.8, + "averageRestitution": 0, + "coordsList": "", + "dynamic": false, + "fixedRotation": false, + "isBullet": false, + "linearDamping": 0.1, + "massDensity": 1, + "name": "Physics", + "polygonHeight": 200, + "polygonWidth": 200, + "positioning": "OnOrigin", + "shapeType": "Box", + "type": "PhysicsBehavior::PhysicsBehavior" + } + ], + "animations": [ + { + "name": "", + "useMultipleDirections": false, + "directions": [ + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "ConcreteWall.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "ConcreteWall.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "ConcreteWall.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "ConcreteWall.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "ConcreteWall.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "ConcreteWall.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "ConcreteWall.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "ConcreteWall.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + } + ] + } + ] + }, + { + "name": "Background", + "type": "Sprite", + "updateIfNotVisible": true, + "variables": [], + "behaviors": [], + "animations": [ + { + "name": "", + "useMultipleDirections": true, + "directions": [ + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "FullskiesBlueClear0007_1_M.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [] + } + ] + } + ] + }, + { + "name": "Lever", + "type": "Sprite", + "updateIfNotVisible": true, + "variables": [], + "behaviors": [ + { + "angularDamping": 0.1, + "autoResizing": true, + "averageFriction": 0.8, + "averageRestitution": 0, + "coordsList": "", + "dynamic": true, + "fixedRotation": false, + "isBullet": false, + "linearDamping": 0.1, + "massDensity": 5, + "name": "Physics", + "polygonHeight": 200, + "polygonWidth": 200, + "positioning": "OnOrigin", + "shapeType": "Box", + "type": "PhysicsBehavior::PhysicsBehavior" + } + ], + "animations": [ + { + "name": "", + "useMultipleDirections": false, + "directions": [ + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 32, + "y": 32 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 32, + "y": 32 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 32, + "y": 32 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 32, + "y": 32 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 32, + "y": 32 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 32, + "y": 32 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 32, + "y": 32 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "2DWoodBox.jpg", + "points": [], + "originPoint": { + "name": "origine", + "x": 32, + "y": 32 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + } + ] + } + ] + }, + { + "name": "HeavyBlackSphere", + "type": "Sprite", + "updateIfNotVisible": true, + "variables": [], + "behaviors": [ + { + "angularDamping": 0.1, + "autoResizing": true, + "averageFriction": 0, + "averageRestitution": 0, + "coordsList": "", + "dynamic": true, + "fixedRotation": false, + "isBullet": true, + "linearDamping": 0.1, + "massDensity": 300, + "name": "Physics", + "polygonHeight": 200, + "polygonWidth": 200, + "positioning": "OnOrigin", + "shapeType": "Circle", + "type": "PhysicsBehavior::PhysicsBehavior" + } + ], + "animations": [ + { + "name": "", + "useMultipleDirections": false, + "directions": [ + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + }, + { + "looping": false, + "timeBetweenFrames": 1, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "BlackSphere.png", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [ + [ + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + }, + { + "x": 0, + "y": 0 + } + ] + ] + } + ] + } + ] + } + ] + }, + { + "bold": false, + "italic": false, + "name": "Text", + "smoothed": true, + "type": "TextObject::Text", + "underlined": false, + "variables": [], + "behaviors": [ + { + "angularDamping": 0.1, + "autoResizing": true, + "averageFriction": 0.8, + "averageRestitution": 0, + "coordsList": "", + "dynamic": false, + "fixedRotation": false, + "isBullet": false, + "linearDamping": 0.1, + "massDensity": 1, + "name": "Physics", + "polygonHeight": 200, + "polygonWidth": 200, + "positioning": "OnOrigin", + "shapeType": "Box", + "type": "PhysicsBehavior::PhysicsBehavior" + } + ], + "string": "Physics engine example", + "font": "", + "characterSize": 14, + "color": { + "b": 0, + "g": 0, + "r": 64 + } + } + ], + "events": [ + { + "disabled": false, + "folded": false, + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Add a hinge to the lever", + "comment2": "" + }, + { + "disabled": false, + "folded": false, + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "inverted": false, + "value": "DepartScene" + }, + "parameters": [], + "subInstructions": [] + } + ], + "actions": [ + { + "type": { + "inverted": false, + "value": "PhysicsBehavior::AddRevoluteJoint" + }, + "parameters": [ + "Lever", + "Physics", + "309", + "243" + ], + "subInstructions": [] + } + ], + "events": [] + }, + { + "disabled": false, + "folded": false, + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Add box with left click", + "comment2": "" + }, + { + "disabled": false, + "folded": false, + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "inverted": false, + "value": "SourisBouton" + }, + "parameters": [ + "", + "Left" + ], + "subInstructions": [] + }, + { + "type": { + "inverted": false, + "value": "BuiltinCommonInstructions::Once" + }, + "parameters": [], + "subInstructions": [] + } + ], + "actions": [ + { + "type": { + "inverted": false, + "value": "Create" + }, + "parameters": [ + "", + "BigBox", + "MouseX()", + "MouseY()", + "" + ], + "subInstructions": [] + } + ], + "events": [] + }, + { + "disabled": false, + "folded": false, + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Add a force to objects", + "comment2": "" + }, + { + "disabled": false, + "folded": false, + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "inverted": false, + "value": "SourisBouton" + }, + "parameters": [ + "", + "Right" + ], + "subInstructions": [] + } + ], + "actions": [ + { + "type": { + "inverted": false, + "value": "PhysicsBehavior::ApplyForce" + }, + "parameters": [ + "BlackSphere", + "Physics", + "15", + "-5" + ], + "subInstructions": [] + } + ], + "events": [] + }, + { + "disabled": false, + "folded": false, + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Collisions", + "comment2": "" + }, + { + "disabled": false, + "folded": false, + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "inverted": false, + "value": "PhysicsBehavior::CollisionWith" + }, + "parameters": [ + "Text", + "Physics", + "BigBox" + ], + "subInstructions": [] + } + ], + "actions": [ + { + "type": { + "inverted": false, + "value": "PhysicsBehavior::SetDynamic" + }, + "parameters": [ + "Text", + "Physics" + ], + "subInstructions": [] + } + ], + "events": [] + } + ], + "layers": [ + { + "name": "", + "visibility": true, + "cameras": [ + { + "defaultSize": true, + "defaultViewport": true, + "height": 0, + "viewportBottom": 1, + "viewportLeft": 0, + "viewportRight": 1, + "viewportTop": 0, + "width": 0 + } + ], + "effects": [] + } + ], + "behaviorsSharedData": [ + { + "gravityX": 0, + "gravityY": 9, + "name": "Physics", + "scaleX": 100, + "scaleY": 100, + "type": "PhysicsBehavior::PhysicsBehavior" + } + ] + } + ], + "externalEvents": [], + "externalLayouts": [], + "externalSourceFiles": [] +} \ No newline at end of file diff --git a/newIDE/app/src/EventsSheet/InstructionEditor/InstructionOrExpressionSelector/__snapshots__/EnumerateInstructions.spec.js.snap b/newIDE/app/src/EventsSheet/InstructionEditor/InstructionOrExpressionSelector/__snapshots__/EnumerateInstructions.spec.js.snap index 8f0ffd1125..d6875be204 100644 --- a/newIDE/app/src/EventsSheet/InstructionEditor/InstructionOrExpressionSelector/__snapshots__/EnumerateInstructions.spec.js.snap +++ b/newIDE/app/src/EventsSheet/InstructionEditor/InstructionOrExpressionSelector/__snapshots__/EnumerateInstructions.spec.js.snap @@ -503,6 +503,78 @@ Object { }, }, }, + "Physics behavior": Object { + "Collision": Object { + "displayedName": "Collision", + "fullGroupName": "Physics behavior/", + "type": "PhysicsBehavior::CollisionWith", + }, + "Collision polygon": Object { + "Collision polygon X scale": Object { + "displayedName": "Collision polygon X scale", + "fullGroupName": "Physics behavior/Collision polygon", + "type": "PhysicsBehavior::GetPolygonScaleX", + }, + "Collision polygon Y scale": Object { + "displayedName": "Collision polygon Y scale", + "fullGroupName": "Physics behavior/Collision polygon", + "type": "PhysicsBehavior::GetPolygonScaleY", + }, + }, + "Displacement": Object { + "Angular damping": Object { + "displayedName": "Angular damping", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::AngularDamping", + }, + "Linear damping": Object { + "displayedName": "Linear damping", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::LinearDamping", + }, + "Linear speed": Object { + "displayedName": "Linear speed", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::LinearVelocity", + }, + "X component": Object { + "displayedName": "X component", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::LinearVelocityX", + }, + "Y component": Object { + "displayedName": "Y component", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::LinearVelocityY", + }, + }, + "Movement": Object { + "The object is dynamic": Object { + "displayedName": "The object is dynamic", + "fullGroupName": "Physics behavior/Movement", + "type": "PhysicsBehavior::IsDynamic", + }, + }, + "Other": Object { + "Object is treated like a bullet": Object { + "displayedName": "Object is treated like a bullet", + "fullGroupName": "Physics behavior/Other", + "type": "PhysicsBehavior::IsBullet", + }, + }, + "Rotation": Object { + "Angular speed": Object { + "displayedName": "Angular speed", + "fullGroupName": "Physics behavior/Rotation", + "type": "PhysicsBehavior::AngularVelocity", + }, + "Fixed rotation": Object { + "displayedName": "Fixed rotation", + "fullGroupName": "Physics behavior/Rotation", + "type": "PhysicsBehavior::IsFixedRotation", + }, + }, + }, "Platform Behavior": Object { "Is falling": Object { "displayedName": "Is falling", @@ -1846,6 +1918,121 @@ Array [ "fullGroupName": "Pathfinding behavior/Obstacles", "type": "PathfindingBehavior::SetImpassable", }, + Object { + "displayedName": "Add a gear between two objects", + "fullGroupName": "Physics behavior/Joints", + "type": "PhysicsBehavior::ActAddGearJointBetweenObjects", + }, + Object { + "displayedName": "Add a hinge", + "fullGroupName": "Physics behavior/Joints", + "type": "PhysicsBehavior::AddRevoluteJoint", + }, + Object { + "displayedName": "Add a hinge between two objects", + "fullGroupName": "Physics behavior/Joints", + "type": "PhysicsBehavior::AddRevoluteJointBetweenObjects", + }, + Object { + "displayedName": "Add a force", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::ApplyForce", + }, + Object { + "displayedName": "Apply a force toward a position", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::ApplyForceTowardPosition", + }, + Object { + "displayedName": "Apply a force ( angle )", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::ApplyForceUsingPolarCoordinates", + }, + Object { + "displayedName": "Apply an impulse", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::ApplyImpulse", + }, + Object { + "displayedName": "Apply an impulse toward a position", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::ApplyImpulseTowardPosition", + }, + Object { + "displayedName": "Apply an impulse (angle)", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::ApplyImpulseUsingPolarCoordinates", + }, + Object { + "displayedName": "Add a torque (a rotation)", + "fullGroupName": "Physics behavior/Rotation", + "type": "PhysicsBehavior::ApplyTorque", + }, + Object { + "displayedName": "Do not treat object like a bullet", + "fullGroupName": "Physics behavior/Other", + "type": "PhysicsBehavior::DontSetAsBullet", + }, + Object { + "displayedName": "Angular damping", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::SetAngularDamping", + }, + Object { + "displayedName": "Angular speed", + "fullGroupName": "Physics behavior/Rotation", + "type": "PhysicsBehavior::SetAngularVelocity", + }, + Object { + "displayedName": "Treat object like a bullet.", + "fullGroupName": "Physics behavior/Other", + "type": "PhysicsBehavior::SetAsBullet", + }, + Object { + "displayedName": "Make the object dynamic", + "fullGroupName": "Physics behavior/Movement", + "type": "PhysicsBehavior::SetDynamic", + }, + Object { + "displayedName": "Fix rotation", + "fullGroupName": "Physics behavior/Rotation", + "type": "PhysicsBehavior::SetFixedRotation", + }, + Object { + "displayedName": "Make object's rotation free", + "fullGroupName": "Physics behavior/Rotation", + "type": "PhysicsBehavior::SetFreeRotation", + }, + Object { + "displayedName": "Gravity", + "fullGroupName": "Physics behavior/Global options", + "type": "PhysicsBehavior::SetGravity", + }, + Object { + "displayedName": "Linear damping", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::SetLinearDamping", + }, + Object { + "displayedName": "Linear velocity", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::SetLinearVelocity", + }, + Object { + "displayedName": "Change the X scale of a collision polygon", + "fullGroupName": "Physics behavior/Collision polygon", + "type": "PhysicsBehavior::SetPolygonScaleX", + }, + Object { + "displayedName": "Change the Y scale of a collision polygon", + "fullGroupName": "Physics behavior/Collision polygon", + "type": "PhysicsBehavior::SetPolygonScaleY", + }, + Object { + "displayedName": "Make the object static", + "fullGroupName": "Physics behavior/Movement", + "type": "PhysicsBehavior::SetStatic", + }, ] `; @@ -2591,5 +2778,65 @@ Array [ "fullGroupName": "Pathfinding behavior/Obstacles", "type": "PathfindingBehavior::IsImpassable", }, + Object { + "displayedName": "Angular damping", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::AngularDamping", + }, + Object { + "displayedName": "Angular speed", + "fullGroupName": "Physics behavior/Rotation", + "type": "PhysicsBehavior::AngularVelocity", + }, + Object { + "displayedName": "Collision", + "fullGroupName": "Physics behavior/", + "type": "PhysicsBehavior::CollisionWith", + }, + Object { + "displayedName": "Collision polygon X scale", + "fullGroupName": "Physics behavior/Collision polygon", + "type": "PhysicsBehavior::GetPolygonScaleX", + }, + Object { + "displayedName": "Collision polygon Y scale", + "fullGroupName": "Physics behavior/Collision polygon", + "type": "PhysicsBehavior::GetPolygonScaleY", + }, + Object { + "displayedName": "Object is treated like a bullet", + "fullGroupName": "Physics behavior/Other", + "type": "PhysicsBehavior::IsBullet", + }, + Object { + "displayedName": "The object is dynamic", + "fullGroupName": "Physics behavior/Movement", + "type": "PhysicsBehavior::IsDynamic", + }, + Object { + "displayedName": "Fixed rotation", + "fullGroupName": "Physics behavior/Rotation", + "type": "PhysicsBehavior::IsFixedRotation", + }, + Object { + "displayedName": "Linear damping", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::LinearDamping", + }, + Object { + "displayedName": "Linear speed", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::LinearVelocity", + }, + Object { + "displayedName": "X component", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::LinearVelocityX", + }, + Object { + "displayedName": "Y component", + "fullGroupName": "Physics behavior/Displacement", + "type": "PhysicsBehavior::LinearVelocityY", + }, ] `; diff --git a/newIDE/app/src/ProjectCreation/BrowserExamples.js b/newIDE/app/src/ProjectCreation/BrowserExamples.js index 1e2969f39c..edeaf2136b 100644 --- a/newIDE/app/src/ProjectCreation/BrowserExamples.js +++ b/newIDE/app/src/ProjectCreation/BrowserExamples.js @@ -46,6 +46,19 @@ export default class LocalCreateDialog extends Component { }} /> Examples + + Example showing how to configure physics behavior on objects and use events to detect collisions. +

+ } + secondaryTextLines={2} + onClick={() => { + sendNewGameCreated('physics'); + this.props.onOpen('internal://physics'); + }} + /> this.createEmptyGame()} /> Examples + Example showing how to configure physics behavior on objects and use events to detect collisions.

} + secondaryTextLines={2} + onClick={() => this.createFromExample('physics')} + /> Example showing how to move a tank avoiding obstacles on the battlefield.

} diff --git a/newIDE/app/src/ProjectsStorage/BrowserProjectOpener.js b/newIDE/app/src/ProjectsStorage/BrowserProjectOpener.js index cad69aca26..02370bc451 100644 --- a/newIDE/app/src/ProjectsStorage/BrowserProjectOpener.js +++ b/newIDE/app/src/ProjectsStorage/BrowserProjectOpener.js @@ -1,6 +1,7 @@ import platformer from '../fixtures/platformer/platformer.json'; import spaceShooter from '../fixtures/space-shooter/space-shooter.json'; import pathfinding from '../fixtures/pathfinding/pathfinding.json'; +import physics from '../fixtures/physics/physics.json'; export default class BrowserProjectOpener { static readInternalFile(url) { @@ -10,6 +11,8 @@ export default class BrowserProjectOpener { return Promise.resolve(spaceShooter); } else if (url === 'internal://pathfinding') { return Promise.resolve(pathfinding); + } else if (url === 'internal://physics') { + return Promise.resolve(physics); } return Promise.reject(`Unknown built-in game with URL ${url}`); diff --git a/newIDE/app/src/PropertiesEditor/index.js b/newIDE/app/src/PropertiesEditor/index.js index 9a15c80326..7de369ac50 100644 --- a/newIDE/app/src/PropertiesEditor/index.js +++ b/newIDE/app/src/PropertiesEditor/index.js @@ -35,6 +35,8 @@ export default class PropertiesEditor extends Component { } _renderEditField = field => { + if (field.name === 'PLEASE_ALSO_SHOW_EDIT_BUTTON_THANKS') return null; // This special property was used in GDevelop 4 IDE to ask for a Edit button to be shown, ignore it. + if (field.valueType === 'boolean') { return (