From c4cb822bac5b6207b90aadd28d9af24bc1f9ca39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davy=20H=C3=A9lard?= Date: Tue, 10 Feb 2026 21:51:33 +0100 Subject: [PATCH] [Reviewed] [Game over dialog] Allow to move sprites for transitions --- extensions/reviewed/LeaderboardDialog.json | 357 +++++++++++++++++++-- 1 file changed, 339 insertions(+), 18 deletions(-) diff --git a/extensions/reviewed/LeaderboardDialog.json b/extensions/reviewed/LeaderboardDialog.json index 6d1403a28..c6adc6b92 100644 --- a/extensions/reviewed/LeaderboardDialog.json +++ b/extensions/reviewed/LeaderboardDialog.json @@ -2,21 +2,23 @@ "author": "", "category": "User interface", "extensionNamespace": "", - "fullName": "Leaderboard dialog", + "fullName": "Game over dialog", "gdevelopVersion": "", "helpPath": "", - "iconUrl": "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0ibWRpLXRyb3BoeSIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik0xOCAyQzE3LjEgMiAxNiAzIDE2IDRIOEM4IDMgNi45IDIgNiAySDJWMTFDMiAxMiAzIDEzIDQgMTNINi4yQzYuNiAxNSA3LjkgMTYuNyAxMSAxN1YxOS4wOEM4IDE5LjU0IDggMjIgOCAyMkgxNkMxNiAyMiAxNiAxOS41NCAxMyAxOS4wOFYxN0MxNi4xIDE2LjcgMTcuNCAxNSAxNy44IDEzSDIwQzIxIDEzIDIyIDEyIDIyIDExVjJIMThNNiAxMUg0VjRINlYxMU0yMCAxMUgxOFY0SDIwVjExWiIgLz48L3N2Zz4=", + "iconUrl": "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMy4wLjMsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iSWNvbnMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMzIgMzIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDMyIDMyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KCS5zdDB7ZmlsbDpub25lO3N0cm9rZTojMDAwMDAwO3N0cm9rZS13aWR0aDoyO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9DQo8L3N0eWxlPg0KPHBhdGggY2xhc3M9InN0MCIgZD0iTTI4LDE0LjhDMjgsOC4zLDIyLjYsMywxNiwzUzQsOC4zLDQsMTQuOGMwLDEuMywwLjIsMi41LDAuNiwzLjZDNC4yLDE5LjEsNCwxOS45LDQsMjAuN2MwLDIuNiwyLjEsNC43LDQuOCw0LjcNCgljMC40LDAsMC44LTAuMSwxLjItMC4yVjI5aDEydi0zLjdjMC40LDAuMSwwLjgsMC4yLDEuMiwwLjJjMi43LDAsNC44LTIuMSw0LjgtNC43YzAtMC44LTAuMi0xLjYtMC42LTIuM0MyNy44LDE3LjMsMjgsMTYuMSwyOCwxNC44DQoJeiIvPg0KPHBvbHlsaW5lIGNsYXNzPSJzdDAiIHBvaW50cz0iMTgsMjQgMTYsMjIgMTQsMjQgIi8+DQo8Y2lyY2xlIGNsYXNzPSJzdDAiIGN4PSIyMC41IiBjeT0iMTguNSIgcj0iMi41Ii8+DQo8Y2lyY2xlIGNsYXNzPSJzdDAiIGN4PSIxMS41IiBjeT0iMTguNSIgcj0iMi41Ii8+DQo8L3N2Zz4NCg==", "name": "LeaderboardDialog", - "previewIconUrl": "https://asset-resources.gdevelop.io/public-resources/Icons/4b89b420c0ed9c540a7f00c5735a31af0db2160679d3fab2170df3681c3ac38c_trophy.svg", - "shortDescription": "Display the player score and allow to submit it to a leaderboard.", - "version": "1.0.1", - "description": "Display the player score and allow to submit it to a leaderboard.", - "origin": { - "identifier": "LeaderboardDialog", - "name": "gdevelop-extension-store" - }, + "previewIconUrl": "https://asset-resources.gdevelop.io/public-resources/Icons/Line Hero Pack/Master/SVG/Halloween/4bffa50f979bde55e4a0e49b67bf51aac30f4de5e1e12ab13952aa25773363b2_Halloween_skull.svg", + "shortDescription": "Display the score and let players choose what to do next.", + "version": "1.1.0", + "description": [ + "Display the score and let players choose what to do next:", + "- Submit the score to a leaderboard", + "- Retry", + "- Go back to the main menu" + ], "tags": [ - "" + "leaderboard", + "score" ], "authorIds": [ "IWykYNRvhCZBN3vEgKEbBPOR3Oc2" @@ -363,9 +365,9 @@ "areaMinY": 0, "areaMinZ": 0, "assetStoreTag": "game over dialogs", - "defaultName": "LeaderboardDialog", - "description": "Displays the player score and allows to submit it to a leaderboard.", - "fullName": "Leaderboard dialog", + "defaultName": "GameOverDialog", + "description": "Display the score and let players choose what to do next.", + "fullName": "Game over dialog", "isInnerAreaFollowingParentSize": true, "isUsingLegacyInstancesRenderer": false, "name": "LeaderboardDialog", @@ -765,6 +767,51 @@ "align": "left", "verticalTextAlignment": "top" } + }, + { + "adaptCollisionMaskAutomatically": true, + "assetStoreId": "", + "name": "Decoration", + "type": "Sprite", + "updateIfNotVisible": false, + "variables": [], + "effects": [], + "behaviors": [ + { + "name": "Anchor", + "type": "AnchorBehavior::AnchorBehavior", + "bottomEdgeAnchor": 0, + "leftEdgeAnchor": 0, + "rightEdgeAnchor": 0, + "topEdgeAnchor": 0, + "relativeToOriginalWindowSize": true, + "useLegacyBottomAndRightAnchors": false + }, + { + "name": "Tween", + "type": "Tween::TweenBehavior" + }, + { + "name": "TweenIntoView", + "type": "TweenIntoView::TweenIntoView", + "TweenDirection": "Above", + "TweenDuration": 1, + "TweenDistance": 0, + "UponCreation_TweenIn": true, + "TweenEasing_In": "easeFromTo", + "TweenEasing_Out": "easeOutQuad", + "Upon_TweenOut_Delete": true, + "WhileTweening_FadeOpacity": true, + "Initialized": false, + "StartingX": 0, + "StartingY": 0, + "Opacity": "Opacity", + "Tween": "Tween", + "ShouldFade": false, + "ShouldMove": false + } + ], + "animations": [] } ], "objectsFolderStructure": { @@ -813,6 +860,9 @@ }, { "objectName": "Panel" + }, + { + "objectName": "Decoration" } ] }, @@ -870,6 +920,7 @@ "ambientLightColorB": 200, "ambientLightColorG": 200, "ambientLightColorR": 200, + "camera2DPlaneMaxDrawingDistance": 5000, "camera3DFarPlaneDistance": 10000, "camera3DFieldOfView": 45, "camera3DNearPlaneDistance": 3, @@ -980,14 +1031,17 @@ "gridType": "rectangular", "gridWidth": 32, "gridHeight": 32, + "gridDepth": 32, "gridOffsetX": 0, "gridOffsetY": 0, + "gridOffsetZ": 0, "gridColor": 10401023, "gridAlpha": 0.8, "snap": false, - "zoomFactor": 1.0174418604651163, + "zoomFactor": 0.7548872383151299, "windowMask": false, - "selectedLayer": "" + "selectedLayer": "", + "gameEditorMode": "instances-editor" }, "eventsFunctions": [ { @@ -1036,6 +1090,17 @@ "", "" ] + }, + { + "type": { + "value": "SceneInstancesCount" + }, + "parameters": [ + "", + "SubmitTextButton", + ">", + "0" + ] } ], "actions": [ @@ -1083,6 +1148,23 @@ ] } ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "TweenIntoView::TweenIntoView::SetShouldBeDeleted" + }, + "parameters": [ + "Decoration", + "TweenIntoView", + "no", + "" + ] + } + ] } ], "parameters": [ @@ -1113,6 +1195,17 @@ "", "" ] + }, + { + "type": { + "value": "SceneInstancesCount" + }, + "parameters": [ + "", + "SubmitTextButton", + ">", + "0" + ] } ], "actions": [], @@ -2017,6 +2110,190 @@ } ], "objectGroups": [] + }, + { + "description": "Fade in the decoration objects of the dialog.", + "fullName": "Fade in decorations", + "functionType": "Action", + "name": "TweenIn", + "sentence": "Fade in the decorations of _PARAM0_", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "TweenIntoView::TweenIntoView::TweenIn" + }, + "parameters": [ + "Decoration", + "TweenIntoView", + "" + ] + } + ] + } + ], + "parameters": [ + { + "description": "Object", + "name": "Object", + "supplementaryInformation": "LeaderboardDialog::LeaderboardDialog", + "type": "object" + } + ], + "objectGroups": [] + }, + { + "description": "Fade out the decoration objects of the dialog.", + "fullName": "Fade out decorations", + "functionType": "Action", + "name": "TweenOut", + "sentence": "Fade out the decorations of _PARAM0_", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "TweenIntoView::TweenIntoView::TweenOut" + }, + "parameters": [ + "Decoration", + "TweenIntoView", + "" + ] + } + ] + } + ], + "parameters": [ + { + "description": "Object", + "name": "Object", + "supplementaryInformation": "LeaderboardDialog::LeaderboardDialog", + "type": "object" + } + ], + "objectGroups": [] + }, + { + "description": "Check if the fade in animation of the decorations is finished.", + "fullName": "Decorations are faded in", + "functionType": "Condition", + "name": "HasTweenedIn", + "sentence": "Fade in animation of _PARAM0_ is finished", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "inverted": true, + "value": "TweenIntoView::TweenIntoView::IsTweenedIn" + }, + "parameters": [ + "Decoration", + "TweenIntoView", + "" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "False" + ] + } + ] + } + ], + "parameters": [ + { + "description": "Object", + "name": "Object", + "supplementaryInformation": "LeaderboardDialog::LeaderboardDialog", + "type": "object" + } + ], + "objectGroups": [] + }, + { + "description": "Check if the fade out animation of the decorations is finished.", + "fullName": "Decorations are faded out", + "functionType": "Condition", + "name": "HasTweenedOut", + "sentence": "Fade out animation of _PARAM0_ is finished", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "inverted": true, + "value": "TweenIntoView::TweenIntoView::IsTweenedOut" + }, + "parameters": [ + "Decoration", + "TweenIntoView", + "" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "False" + ] + } + ] + } + ], + "parameters": [ + { + "description": "Object", + "name": "Object", + "supplementaryInformation": "LeaderboardDialog::LeaderboardDialog", + "type": "object" + } + ], + "objectGroups": [] } ], "propertyDescriptors": [ @@ -2122,13 +2399,57 @@ "label": "Best score label", "name": "BestScoreLabelText" } - ] + ], + "propertiesFolderStructure": { + "folderName": "__ROOT", + "children": [ + { + "propertyName": "DefaultPlayerName" + }, + { + "propertyName": "LeaderboardId" + }, + { + "propertyName": "Score" + }, + { + "propertyName": "BestScore" + }, + { + "folderName": "Score format", + "children": [ + { + "propertyName": "Format" + }, + { + "propertyName": "Prefix" + }, + { + "propertyName": "Suffix" + }, + { + "propertyName": "NumberDecimalPoint" + } + ] + }, + { + "propertyName": "ScoreLabelText" + }, + { + "propertyName": "BestScoreLabelText" + } + ] + } } ], "requiredExtensions": [ { "extensionName": "PanelSpriteButton", - "extensionVersion": "2.1.1" + "extensionVersion": "2.2.0" + }, + { + "extensionName": "TweenIntoView", + "extensionVersion": "1.0.0" } ] } \ No newline at end of file