diff --git a/examples/3d-lane-runner/3d-lane-runner.json b/examples/3d-lane-runner/3d-lane-runner.json new file mode 100644 index 000000000..1bcf553a3 --- /dev/null +++ b/examples/3d-lane-runner/3d-lane-runner.json @@ -0,0 +1,8037 @@ +{ + "firstLayout": "", + "gdVersion": { + "build": 99, + "major": 4, + "minor": 0, + "revision": 0 + }, + "properties": { + "adaptGameResolutionAtRuntime": true, + "antialiasingMode": "MSAA", + "antialisingEnabledOnMobile": false, + "folderProject": false, + "orientation": "portrait", + "packageName": "com.example.lanerunner3d", + "pixelsRounding": false, + "projectUuid": "a5068a89-0e36-4078-b699-f2556c1d52e7", + "scaleMode": "linear", + "sizeOnStartupMode": "adaptWidth", + "templateSlug": "", + "useExternalSourceFiles": false, + "version": "1.0.0", + "name": "3d lane runner", + "description": "This 3D lane runner game shows the basics of adjusting a 3D camera, variables, sound effects, saving and loading a highscore, and how to use the platformer behavior in a 3D space.", + "author": "", + "windowWidth": 720, + "windowHeight": 1280, + "latestCompilationDirectory": "", + "maxFPS": 60, + "minFPS": 20, + "verticalSync": false, + "platformSpecificAssets": { + "android-icon-144": "android-icon-144.png", + "android-icon-192": "android-icon-192.png", + "android-icon-36": "android-icon-36.png", + "android-icon-48": "android-icon-48.png", + "android-icon-72": "android-icon-72.png", + "android-icon-96": "android-icon-96.png", + "android-windowSplashScreenAnimatedIcon": "android-windowSplashScreenAnimatedIcon.png", + "desktop-icon-512": "desktop-icon-512.png", + "ios-icon-100": "ios-icon-100.png", + "ios-icon-1024": "ios-icon-1024.png", + "ios-icon-114": "ios-icon-114.png", + "ios-icon-120": "ios-icon-120.png", + "ios-icon-144": "ios-icon-144.png", + "ios-icon-152": "ios-icon-152.png", + "ios-icon-167": "ios-icon-167.png", + "ios-icon-180": "ios-icon-180.png", + "ios-icon-20": "ios-icon-20.png", + "ios-icon-29": "ios-icon-29.png", + "ios-icon-40": "ios-icon-40.png", + "ios-icon-50": "ios-icon-50.png", + "ios-icon-57": "ios-icon-57.png", + "ios-icon-58": "ios-icon-58.png", + "ios-icon-60": "ios-icon-60.png", + "ios-icon-72": "ios-icon-72.png", + "ios-icon-76": "ios-icon-76.png", + "ios-icon-80": "ios-icon-80.png", + "ios-icon-87": "ios-icon-87.png", + "liluo-thumbnail": "thumbnail.png" + }, + "loadingScreen": { + "backgroundColor": 0, + "backgroundFadeInDuration": 0.2, + "backgroundImageResourceName": "", + "gdevelopLogoStyle": "light", + "logoAndProgressFadeInDuration": 0.2, + "logoAndProgressLogoFadeInDelay": 0.2, + "minDuration": 1.5, + "progressBarColor": 16777215, + "progressBarHeight": 20, + "progressBarMaxWidth": 200, + "progressBarMinWidth": 40, + "progressBarWidthPercent": 30, + "showGDevelopSplash": true, + "showProgressBar": true + }, + "watermark": { + "placement": "bottom-left", + "showWatermark": true + }, + "authorIds": [], + "authorUsernames": [], + "categories": [], + "playableDevices": [], + "extensionProperties": [], + "platforms": [ + { + "name": "GDevelop JS platform" + } + ], + "currentPlatform": "GDevelop JS platform" + }, + "resources": { + "resources": [ + { + "file": "assets/Femal Casual 2.glb", + "kind": "model3D", + "metadata": "", + "name": "Femal Casual 2.glb", + "userAdded": false, + "origin": { + "identifier": "https://asset-resources.gdevelop.io/public-resources/3D Animated Characters/47e5b2e823e06394b2ab56b1eae5acfedc4c103410e820ff6e3f34ea70af698f_Femal Casual 2.glb", + "name": "Femal Casual 2.glb" + } + }, + { + "alwaysLoaded": false, + "file": "assets/Marker.png", + "kind": "image", + "metadata": "{\"extension\":\".png\"}", + "name": "NewSprite", + "smoothed": true, + "userAdded": false + }, + { + "file": "assets/Spike Group.glb", + "kind": "model3D", + "metadata": "", + "name": "Spike Group.glb", + "userAdded": false, + "origin": { + "identifier": "https://asset-resources.gdevelop.io/public-resources/3D Platformer Pack/3ef4bfbd11eec5e235f8b998aa40d68de16876fd2aa1db6739763333cd44caec_Spike Group.glb", + "name": "Spike Group.glb" + } + }, + { + "alwaysLoaded": false, + "file": "assets/TrailDrop.png", + "kind": "image", + "metadata": "", + "name": "TrailDrop.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "assets/Trail.png", + "kind": "image", + "metadata": "", + "name": "Trail3.png", + "smoothed": true, + "userAdded": true + }, + { + "file": "assets/Coin.glb", + "kind": "model3D", + "metadata": "", + "name": "Coin.glb", + "userAdded": false, + "origin": { + "identifier": "https://asset-resources.gdevelop.io/public-resources/3D Platformer Pack/3fe79dfd594d2b86f224f3225e0615bbd458a5ede6e46050d23d0d61da37a4b0_Coin.glb", + "name": "Coin.glb" + } + }, + { + "file": "assets/CoinPickUp.wav", + "kind": "audio", + "metadata": "{\"extension\":\".wav\",\"jfxr\":{\"data\":\"{\\\"_version\\\":1,\\\"_name\\\":\\\"Jump 1\\\",\\\"_locked\\\":[],\\\"sampleRate\\\":44100,\\\"attack\\\":0,\\\"sustain\\\":0.03,\\\"sustainPunch\\\":30,\\\"decay\\\":0.18,\\\"tremoloDepth\\\":0,\\\"tremoloFrequency\\\":10,\\\"frequency\\\":700,\\\"frequencySweep\\\":0,\\\"frequencyDeltaSweep\\\":0,\\\"repeatFrequency\\\":0,\\\"frequencyJump1Onset\\\":25,\\\"frequencyJump1Amount\\\":45,\\\"frequencyJump2Onset\\\":66,\\\"frequencyJump2Amount\\\":0,\\\"harmonics\\\":0,\\\"harmonicsFalloff\\\":0.5,\\\"waveform\\\":\\\"sine\\\",\\\"interpolateNoise\\\":true,\\\"vibratoDepth\\\":0,\\\"vibratoFrequency\\\":10,\\\"squareDuty\\\":5,\\\"squareDutySweep\\\":-30,\\\"flangerOffset\\\":0,\\\"flangerOffsetSweep\\\":0,\\\"bitCrush\\\":16,\\\"bitCrushSweep\\\":0,\\\"lowPassCutoff\\\":22050,\\\"lowPassCutoffSweep\\\":0,\\\"highPassCutoff\\\":0,\\\"highPassCutoffSweep\\\":0,\\\"compression\\\":1,\\\"normalization\\\":true,\\\"amplification\\\":100}\",\"name\":\"CoinPickUp\"}}", + "name": "CoinPickUp", + "preloadAsMusic": false, + "preloadAsSound": false, + "preloadInCache": false, + "userAdded": true + }, + { + "file": "assets/DeathSound.wav", + "kind": "audio", + "metadata": "{\"extension\":\".wav\",\"jfxr\":{\"data\":\"{\\\"_version\\\":1,\\\"_name\\\":\\\"Jump 1\\\",\\\"_locked\\\":[],\\\"sampleRate\\\":44100,\\\"attack\\\":0,\\\"sustain\\\":0.13,\\\"sustainPunch\\\":30,\\\"decay\\\":0.76,\\\"tremoloDepth\\\":15,\\\"tremoloFrequency\\\":9,\\\"frequency\\\":2200,\\\"frequencySweep\\\":-1600,\\\"frequencyDeltaSweep\\\":800,\\\"repeatFrequency\\\":0,\\\"frequencyJump1Onset\\\":35,\\\"frequencyJump1Amount\\\":10,\\\"frequencyJump2Onset\\\":66,\\\"frequencyJump2Amount\\\":0,\\\"harmonics\\\":0,\\\"harmonicsFalloff\\\":0.5,\\\"waveform\\\":\\\"sine\\\",\\\"interpolateNoise\\\":true,\\\"vibratoDepth\\\":60,\\\"vibratoFrequency\\\":10,\\\"squareDuty\\\":55,\\\"squareDutySweep\\\":-10,\\\"flangerOffset\\\":0,\\\"flangerOffsetSweep\\\":0,\\\"bitCrush\\\":16,\\\"bitCrushSweep\\\":0,\\\"lowPassCutoff\\\":21300,\\\"lowPassCutoffSweep\\\":0,\\\"highPassCutoff\\\":0,\\\"highPassCutoffSweep\\\":-800,\\\"compression\\\":1.5,\\\"normalization\\\":true,\\\"amplification\\\":100}\",\"name\":\"DeathSound\"}}", + "name": "DeathSound", + "preloadAsMusic": false, + "preloadAsSound": false, + "preloadInCache": false, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "assets/TrailWall.png", + "kind": "image", + "metadata": "", + "name": "TrailWall.png", + "smoothed": true, + "userAdded": true + }, + { + "file": "assets/Roboto-Bold.ttf", + "kind": "font", + "metadata": "", + "name": "3bd40ac788d44626fd640ec67ef04ab0364816b5e8c831f2077bff8805cfe689_Roboto-Bold.ttf", + "userAdded": true, + "origin": { + "identifier": "https://asset-resources.gdevelop.io/public-resources/Menu buttons/3bd40ac788d44626fd640ec67ef04ab0364816b5e8c831f2077bff8805cfe689_Roboto-Bold.ttf", + "name": "gdevelop-asset-store" + } + }, + { + "alwaysLoaded": false, + "file": "thumbnail.png", + "kind": "image", + "metadata": "", + "name": "thumbnail.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "desktop-icon-512.png", + "kind": "image", + "metadata": "", + "name": "desktop-icon-512.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "android-icon-192.png", + "kind": "image", + "metadata": "", + "name": "android-icon-192.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "android-icon-144.png", + "kind": "image", + "metadata": "", + "name": "android-icon-144.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "android-icon-96.png", + "kind": "image", + "metadata": "", + "name": "android-icon-96.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "android-icon-72.png", + "kind": "image", + "metadata": "", + "name": "android-icon-72.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "android-icon-48.png", + "kind": "image", + "metadata": "", + "name": "android-icon-48.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "android-icon-36.png", + "kind": "image", + "metadata": "", + "name": "android-icon-36.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "android-windowSplashScreenAnimatedIcon.png", + "kind": "image", + "metadata": "", + "name": "android-windowSplashScreenAnimatedIcon.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-1024.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-1024.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-180.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-180.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-167.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-167.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-152.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-152.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-144.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-144.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-120.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-120.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-114.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-114.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-100.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-100.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-87.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-87.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-80.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-80.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-76.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-76.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-72.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-72.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-60.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-60.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-58.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-58.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-57.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-57.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-50.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-50.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-40.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-40.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-29.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-29.png", + "smoothed": true, + "userAdded": true + }, + { + "alwaysLoaded": false, + "file": "ios-icon-20.png", + "kind": "image", + "metadata": "", + "name": "ios-icon-20.png", + "smoothed": true, + "userAdded": true + } + ], + "resourceFolders": [] + }, + "objects": [], + "objectsGroups": [], + "variables": [], + "layouts": [ + { + "b": 223, + "disableInputWhenNotFocused": true, + "mangledName": "Untitled_32scene", + "name": "Untitled scene", + "r": 226, + "standardSortMethod": true, + "stopSoundsOnStartup": false, + "title": "", + "v": 226, + "uiSettings": { + "grid": true, + "gridType": "rectangular", + "gridWidth": 32, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridColor": 10401023, + "gridAlpha": 0.8, + "snap": true, + "zoomFactor": 0.36732575450588595, + "windowMask": false + }, + "objectsGroups": [ + { + "name": "Platforms", + "objects": [ + { + "name": "Ground" + }, + { + "name": "GroundElevated" + } + ] + }, + { + "name": "Collison", + "objects": [ + { + "name": "Coin" + }, + { + "name": "SpikeGroup" + } + ] + }, + { + "name": "AllObjects", + "objects": [ + { + "name": "Ground" + }, + { + "name": "GroundElevated" + }, + { + "name": "SpikeGroup" + }, + { + "name": "Coin" + } + ] + } + ], + "variables": [ + { + "folded": true, + "name": "Randomizer", + "type": "number", + "value": 0 + }, + { + "folded": true, + "name": "RisingPitch", + "type": "number", + "value": 0.8 + }, + { + "name": "Coins", + "type": "number", + "value": 0 + }, + { + "folded": true, + "name": "HighScore", + "type": "number", + "value": 0 + } + ], + "instances": [ + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "name": "Camera", + "persistentUuid": "48ad2bba-6062-4941-9415-85c3908b26de", + "width": 0, + "x": 64, + "y": 160, + "z": 160, + "zOrder": 1, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "", + "name": "Player", + "persistentUuid": "386469df-5174-48d4-bd2b-7c45a143a091", + "width": 0, + "x": 431, + "y": 329, + "z": 160, + "zOrder": 2, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "c8a38113-3d6f-4ca7-bec2-a2df28af857a", + "width": 64, + "x": 1376, + "y": 224, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "5ced9dfc-1568-4fcc-aaaf-dec2dfca285b", + "width": 1024, + "x": 1376, + "y": 416, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "56284b4a-71e8-4b60-a4af-21e78d55302e", + "width": 1024, + "x": 1376, + "y": 416, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "08d9081e-0557-416d-95f4-877058c91ddb", + "width": 1024, + "x": 1376, + "y": 416, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "FallDeath", + "persistentUuid": "c3c5b001-89db-4894-9608-ee3d21165eab", + "width": 320, + "x": 352, + "y": 576, + "zOrder": 7, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "642779f9-45f5-4a44-93c5-72c58c7de433", + "width": 1024, + "x": 352, + "y": 416, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "9ac6dbab-a854-48da-929f-642f569887a2", + "width": 1024, + "x": 352, + "y": 416, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "f58781dc-993a-4a9f-947e-0779cb3018a2", + "width": 1024, + "x": 352, + "y": 416, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "be3d413d-e99f-4e57-ba14-1fcf2aa38771", + "width": 64, + "x": 352, + "y": 224, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "6ee347e0-30d4-4513-b3d3-c70d65192bc9", + "width": 64, + "x": 1664, + "y": 352, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 96, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "dcf1f51f-659e-44af-997c-5b1597ed431d", + "width": 448, + "x": 832, + "y": 320, + "z": 80, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "8f060032-c37a-4092-aa92-cf802eca0b83", + "width": 64, + "x": 1408, + "y": 352, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "8afc0352-bf3a-44a5-b347-8a3fdfd9cca2", + "width": 64, + "x": 1536, + "y": 352, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 96, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "bbc4ba56-ae80-44c0-8bf0-fd41e8e5dca5", + "width": 768, + "x": 1472, + "y": 320, + "z": -80, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 96, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "54d6e161-ad60-4334-bf40-b58225b191ad", + "width": 768, + "x": 1472, + "y": 320, + "z": 240, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "9fa1cdd4-179f-4353-99de-958ed8bc5c65", + "width": 64, + "x": 1920, + "y": 256, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "89b1e9c1-9530-497f-9509-1def5f104cdd", + "width": 64, + "x": 2176, + "y": 256, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "a35cd0ca-f211-4740-b6e7-c362d980054b", + "width": 64, + "x": 1920, + "y": 256, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "ba36f151-93dd-4fb1-bab3-214d6be4d34b", + "width": 64, + "x": 2176, + "y": 256, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "d941556c-58df-4f34-8217-2be06911035a", + "width": 64, + "x": 2048, + "y": 256, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "089b8a11-f0cf-4183-a73c-e37887b17032", + "width": 64, + "x": 2048, + "y": 256, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": -45, + "customSize": true, + "depth": 160, + "height": 136, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "1e0a5571-77b9-4e01-90b3-5738ac4a6715", + "width": 136, + "x": 764, + "y": 348, + "z": 80, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": -45, + "customSize": true, + "depth": 160, + "height": 136, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "1ad043c7-85f6-4e02-bb52-07e49faf7749", + "width": 136, + "x": 1404, + "y": 348, + "z": -80, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": -45, + "customSize": true, + "depth": 160, + "height": 136, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "d40dc4f6-0f8e-4f03-93ed-d414d912f846", + "width": 136, + "x": 1404, + "y": 348, + "z": 240, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": false, + "height": 160, + "layer": "UI", + "name": "CoinsScore", + "persistentUuid": "032a72df-d7e0-4d5f-a88e-4fe597c6ee0a", + "width": 512, + "x": 8, + "y": 0, + "zOrder": 9, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 0, + "layer": "UI", + "name": "TutorialText", + "persistentUuid": "5b278fb7-e28f-4668-8575-d5794c7a8550", + "width": 0, + "x": 8, + "y": 1218, + "zOrder": 10, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": false, + "height": 57, + "layer": "UI", + "name": "HighScore", + "persistentUuid": "8376ce96-1bed-45b6-8b3c-d2b50a1207d9", + "width": 291, + "x": 8, + "y": 57, + "zOrder": 11, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + } + ], + "objects": [ + { + "assetStoreId": "", + "name": "Camera", + "tags": "", + "type": "Scene3D::Cube3DObject", + "variables": [ + { + "folded": true, + "name": "StartXPosition", + "type": "number", + "value": 0 + } + ], + "effects": [], + "behaviors": [], + "content": { + "width": 30, + "height": 30, + "depth": 30, + "enableTextureTransparency": false, + "facesOrientation": "Y", + "frontFaceResourceName": "", + "backFaceResourceName": "", + "backFaceUpThroughWhichAxisRotation": "X", + "leftFaceResourceName": "", + "rightFaceResourceName": "", + "topFaceResourceName": "", + "bottomFaceResourceName": "", + "frontFaceVisible": true, + "backFaceVisible": false, + "leftFaceVisible": true, + "rightFaceVisible": true, + "topFaceVisible": true, + "bottomFaceVisible": true, + "frontFaceResourceRepeat": false, + "backFaceResourceRepeat": false, + "leftFaceResourceRepeat": false, + "rightFaceResourceRepeat": false, + "topFaceResourceRepeat": false, + "bottomFaceResourceRepeat": false, + "materialType": "Basic" + } + }, + { + "assetStoreId": "54b38ee3a7082557b70bfd9a5c139b4ed7327c9f1fd846c861b8d45970a2b127", + "name": "Player", + "tags": "", + "type": "Scene3D::Model3DObject", + "variables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + }, + { + "folded": true, + "name": "TargetedLane", + "type": "number", + "value": 1 + } + ], + "effects": [], + "behaviors": [ + { + "name": "PlatformerObject", + "type": "PlatformBehavior::PlatformerObjectBehavior", + "ignoreDefaultControls": true, + "acceleration": 2000, + "gravity": 1000, + "jumpSpeed": 750, + "jumpSustainTime": 0, + "maxFallingSpeed": 300, + "maxSpeed": 500, + "canGoDownFromJumpthru": true, + "canGrabPlatforms": false, + "canGrabWithoutMoving": true, + "deceleration": 1500, + "ladderClimbingSpeed": 150, + "slopeMaxAngle": 60, + "useLegacyTrajectory": false, + "xGrabTolerance": 10, + "yGrabOffset": 0 + }, + { + "name": "Tween", + "type": "Tween::TweenBehavior" + } + ], + "content": { + "centerLocation": "ObjectCenter", + "depth": 143, + "height": 143, + "keepAspectRatio": true, + "materialType": "StandardWithoutMetalness", + "modelResourceName": "Femal Casual 2.glb", + "originLocation": "ObjectCenter", + "rotationX": 0, + "rotationY": 90, + "rotationZ": 0, + "width": 143, + "animations": [ + { + "loop": true, + "name": "Run", + "source": "Run" + }, + { + "loop": true, + "name": "Idle", + "source": "Idle" + }, + { + "loop": false, + "name": "Death", + "source": "Death" + }, + { + "loop": true, + "name": "RunLeft", + "source": "Run_Left" + }, + { + "loop": true, + "name": "RunRight", + "source": "Run_Right" + } + ] + } + }, + { + "assetStoreId": "", + "name": "StartMarker", + "tags": "", + "type": "Sprite", + "updateIfNotVisible": false, + "variables": [], + "effects": [], + "behaviors": [], + "animations": [ + { + "name": "NewSprite", + "useMultipleDirections": false, + "directions": [ + { + "looping": false, + "metadata": "{\"pskl\":{}}", + "timeBetweenFrames": 0.08, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "NewSprite", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [] + } + ] + } + ] + } + ] + }, + { + "assetStoreId": "", + "name": "FallDeath", + "tags": "", + "type": "Sprite", + "updateIfNotVisible": false, + "variables": [], + "effects": [], + "behaviors": [], + "animations": [ + { + "name": "NewSprite", + "useMultipleDirections": false, + "directions": [ + { + "looping": false, + "metadata": "{\"pskl\":{}}", + "timeBetweenFrames": 0.08, + "sprites": [ + { + "hasCustomCollisionMask": false, + "image": "NewSprite", + "points": [], + "originPoint": { + "name": "origine", + "x": 0, + "y": 0 + }, + "centerPoint": { + "automatic": true, + "name": "centre", + "x": 0, + "y": 0 + }, + "customCollisionMask": [] + } + ] + } + ] + } + ] + }, + { + "assetStoreId": "", + "name": "Ground", + "tags": "", + "type": "Scene3D::Cube3DObject", + "variables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ], + "effects": [], + "behaviors": [ + { + "name": "Platform", + "type": "PlatformBehavior::PlatformBehavior", + "canBeGrabbed": true, + "platformType": "NormalPlatform", + "yGrabOffset": 0 + } + ], + "content": { + "width": 100, + "height": 100, + "depth": 100, + "enableTextureTransparency": true, + "facesOrientation": "Y", + "frontFaceResourceName": "", + "backFaceResourceName": "", + "backFaceUpThroughWhichAxisRotation": "X", + "leftFaceResourceName": "TrailDrop.png", + "rightFaceResourceName": "", + "topFaceResourceName": "Trail3.png", + "bottomFaceResourceName": "", + "frontFaceVisible": false, + "backFaceVisible": false, + "leftFaceVisible": true, + "rightFaceVisible": false, + "topFaceVisible": true, + "bottomFaceVisible": false, + "frontFaceResourceRepeat": true, + "backFaceResourceRepeat": false, + "leftFaceResourceRepeat": false, + "rightFaceResourceRepeat": false, + "topFaceResourceRepeat": true, + "bottomFaceResourceRepeat": false, + "materialType": "StandardWithoutMetalness" + } + }, + { + "assetStoreId": "", + "name": "GroundElevated", + "tags": "", + "type": "Scene3D::Cube3DObject", + "variables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ], + "effects": [], + "behaviors": [ + { + "name": "Platform", + "type": "PlatformBehavior::PlatformBehavior", + "canBeGrabbed": true, + "platformType": "NormalPlatform", + "yGrabOffset": 0 + } + ], + "content": { + "width": 100, + "height": 100, + "depth": 100, + "enableTextureTransparency": true, + "facesOrientation": "Y", + "frontFaceResourceName": "TrailWall.png", + "backFaceResourceName": "TrailWall.png", + "backFaceUpThroughWhichAxisRotation": "X", + "leftFaceResourceName": "TrailDrop.png", + "rightFaceResourceName": "", + "topFaceResourceName": "Trail3.png", + "bottomFaceResourceName": "", + "frontFaceVisible": true, + "backFaceVisible": true, + "leftFaceVisible": true, + "rightFaceVisible": false, + "topFaceVisible": true, + "bottomFaceVisible": false, + "frontFaceResourceRepeat": false, + "backFaceResourceRepeat": false, + "leftFaceResourceRepeat": false, + "rightFaceResourceRepeat": false, + "topFaceResourceRepeat": true, + "bottomFaceResourceRepeat": false, + "materialType": "StandardWithoutMetalness" + } + }, + { + "assetStoreId": "e3f504ba9b05bd7bbb1e24348772eb7d4509175e93fe55f3f1c39e4f3903967c", + "name": "SpikeGroup", + "tags": "", + "type": "Scene3D::Model3DObject", + "variables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ], + "effects": [], + "behaviors": [], + "content": { + "centerLocation": "ObjectCenter", + "depth": 99, + "height": 99, + "keepAspectRatio": true, + "materialType": "KeepOriginal", + "modelResourceName": "Spike Group.glb", + "originLocation": "ObjectCenter", + "rotationX": 0, + "rotationY": 0, + "rotationZ": 0, + "width": 99, + "animations": [] + } + }, + { + "assetStoreId": "b8200f0619b25c76e3d392f1d0d16d7547bf1c96097bc23af81b68cf11e57677", + "name": "Coin", + "tags": "", + "type": "Scene3D::Model3DObject", + "variables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ], + "effects": [], + "behaviors": [], + "content": { + "centerLocation": "ModelOrigin", + "depth": 31, + "height": 31, + "keepAspectRatio": true, + "materialType": "KeepOriginal", + "modelResourceName": "Coin.glb", + "originLocation": "ModelOrigin", + "rotationX": 0, + "rotationY": 0, + "rotationZ": 0, + "width": 31, + "animations": [] + } + }, + { + "assetStoreId": "", + "bold": false, + "italic": false, + "name": "CoinsScore", + "smoothed": true, + "tags": "", + "type": "TextObject::Text", + "underlined": false, + "variables": [], + "effects": [], + "behaviors": [], + "string": "Coins: 0", + "font": "3bd40ac788d44626fd640ec67ef04ab0364816b5e8c831f2077bff8805cfe689_Roboto-Bold.ttf", + "textAlignment": "left", + "characterSize": 50, + "color": { + "b": 255, + "g": 255, + "r": 255 + } + }, + { + "assetStoreId": "", + "bold": false, + "italic": false, + "name": "HighScore", + "smoothed": true, + "tags": "", + "type": "TextObject::Text", + "underlined": false, + "variables": [], + "effects": [], + "behaviors": [], + "string": "HighScore: 0", + "font": "3bd40ac788d44626fd640ec67ef04ab0364816b5e8c831f2077bff8805cfe689_Roboto-Bold.ttf", + "textAlignment": "left", + "characterSize": 50, + "color": { + "b": 255, + "g": 255, + "r": 255 + } + }, + { + "assetStoreId": "", + "bold": false, + "italic": false, + "name": "TutorialText", + "smoothed": true, + "tags": "", + "type": "TextObject::Text", + "underlined": false, + "variables": [], + "effects": [], + "behaviors": [], + "string": "Controls: Arrow keys and space bar.", + "font": "3bd40ac788d44626fd640ec67ef04ab0364816b5e8c831f2077bff8805cfe689_Roboto-Bold.ttf", + "textAlignment": "left", + "characterSize": 50, + "color": { + "b": 255, + "g": 255, + "r": 255 + } + } + ], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "DepartScene" + }, + "parameters": [ + "" + ] + } + ], + "actions": [ + { + "type": { + "value": "ModVarSceneTxt" + }, + "parameters": [ + "GameState", + "=", + "\"Playing\"" + ] + }, + { + "type": { + "value": "SceneBackground" + }, + "parameters": [ + "", + "\"0;0;0\"" + ] + }, + { + "type": { + "value": "SwipeGesture::EnableSwipeDetection" + }, + "parameters": [ + "", + "True", + "" + ] + }, + { + "type": { + "value": "SwipeGesture::SetLayer" + }, + "parameters": [ + "", + "=", + "\"UI\"", + "" + ] + }, + { + "type": { + "value": "Scene3D::Model3DObject::SetAnimationSpeedScale" + }, + "parameters": [ + "Player", + "=", + "1.3" + ] + } + ], + "events": [ + { + "type": "BuiltinCommonInstructions::Link", + "include": { + "includeConfig": 0 + }, + "target": "LaneCheck" + }, + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Loading the highscore variable in to the game to be used for the CoinScore text object." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "LireFichierExp" + }, + "parameters": [ + "\"GameHighscore\"", + "\"GameHighscore\"", + "", + "HighScore" + ] + }, + { + "type": { + "value": "TextObject::String" + }, + "parameters": [ + "CoinsScore", + "=", + "\"Coins: \" + ToString(Variable(Coins))" + ] + }, + { + "type": { + "value": "TextObject::String" + }, + "parameters": [ + "HighScore", + "=", + "\"Highscore: \" + ToString(Variable(HighScore))" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Adjusting the tutorial text for a mobile game." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SystemInfo::IsMobile" + }, + "parameters": [] + } + ], + "actions": [ + { + "type": { + "value": "TextObject::String" + }, + "parameters": [ + "TutorialText", + "=", + "\"Swipe to move and jump.\"" + ] + }, + { + "type": { + "value": "TextObject::Text::SetFontSize" + }, + "parameters": [ + "TutorialText", + "=", + "40" + ] + } + ] + } + ] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Camera controls", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Adjusting the default camera position." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "DepartScene" + }, + "parameters": [ + "" + ] + } + ], + "actions": [ + { + "type": { + "value": "Scene3D::SetCameraZ" + }, + "parameters": [ + "", + "=", + "Camera.Z() + 5", + "", + "" + ] + }, + { + "type": { + "value": "CentreCamera" + }, + "parameters": [ + "", + "Camera", + "", + "", + "" + ] + }, + { + "type": { + "value": "Scene3D::TurnCameraTowardObject" + }, + "parameters": [ + "", + "Player", + "", + "", + "" + ] + }, + { + "type": { + "value": "Scene3D::SetCameraRotationY" + }, + "parameters": [ + "", + "=", + "-90", + "", + "" + ] + }, + { + "type": { + "value": "ModVarObjet" + }, + "parameters": [ + "Camera", + "StartXPosition", + "=", + "Camera.X() - Player.X()" + ] + }, + { + "type": { + "value": "SetCameraCenterY" + }, + "parameters": [ + "", + "-", + "100", + "", + "" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Constant camera movement to follow the player." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "Scene3D::SetCameraZ" + }, + "parameters": [ + "", + "=", + "lerp(Scene3D::CameraZ(), Player.Z(), 0.05 * 60 * TimeDelta())", + "", + "" + ] + }, + { + "type": { + "value": "SetCameraCenterX" + }, + "parameters": [ + "", + "=", + "Camera.X()", + "", + "" + ] + }, + { + "type": { + "value": "MettreX" + }, + "parameters": [ + "Camera", + "=", + "Player.X() + Camera.Variable(StartXPosition)" + ] + } + ] + } + ], + "parameters": [] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarSceneTxt" + }, + "parameters": [ + "GameState", + "=", + "\"Playing\"" + ] + } + ], + "actions": [], + "events": [ + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "When the game is playing", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Player movement controls", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "PlatformBehavior::SimulateControl" + }, + "parameters": [ + "Player", + "PlatformerObject", + "\"Right\"" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::Or" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "KeyPressed" + }, + "parameters": [ + "", + "Space" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::And" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "SwipeGesture::SwipeDirection_4way" + }, + "parameters": [ + "", + "\"Up\"", + "" + ] + }, + { + "type": { + "value": "SwipeGesture::Distance" + }, + "parameters": [ + "", + ">", + "100", + "" + ] + }, + { + "type": { + "value": "SwipeGesture::HasSwipeJustEnded" + }, + "parameters": [ + "", + "" + ] + } + ] + } + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::Once" + }, + "parameters": [] + } + ], + "actions": [ + { + "type": { + "value": "PlatformBehavior::SimulateControl" + }, + "parameters": [ + "Player", + "PlatformerObject", + "\"Jump\"" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Lane change end" + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarObjet" + }, + "parameters": [ + "Player", + "Lane", + "!=", + "Player.Variable(TargetedLane)" + ] + }, + { + "type": { + "value": "Tween::HasFinished" + }, + "parameters": [ + "Player", + "Tween", + "\"Move\"" + ] + } + ], + "actions": [ + { + "type": { + "value": "ModVarObjet" + }, + "parameters": [ + "Player", + "Lane", + "=", + "Player.Variable(TargetedLane)" + ] + }, + { + "type": { + "value": "Tween::RemoveTween" + }, + "parameters": [ + "Player", + "Tween", + "\"Move\"" + ] + } + ], + "events": [ + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Checking which objects are valid after the player changes lanes." + }, + { + "type": "BuiltinCommonInstructions::Link", + "include": { + "includeConfig": 0 + }, + "target": "LaneCheck" + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarObjet" + }, + "parameters": [ + "Player", + "Lane", + "=", + "Player.Variable(TargetedLane)" + ] + }, + { + "type": { + "inverted": true, + "value": "CollisionNP" + }, + "parameters": [ + "Player", + "GroundElevated", + "", + "", + "yes" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::Or" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "KeyPressed" + }, + "parameters": [ + "", + "d" + ] + }, + { + "type": { + "value": "KeyPressed" + }, + "parameters": [ + "", + "Right" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::And" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "SwipeGesture::SwipeDirection_4way" + }, + "parameters": [ + "", + "\"Right\"", + "" + ] + }, + { + "type": { + "value": "SwipeGesture::Distance" + }, + "parameters": [ + "", + ">", + "100", + "" + ] + }, + { + "type": { + "value": "SwipeGesture::HasSwipeJustEnded" + }, + "parameters": [ + "", + "" + ] + } + ] + } + ] + }, + { + "type": { + "value": "VarObjet" + }, + "parameters": [ + "Player", + "Lane", + "<", + "2" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::Once" + }, + "parameters": [] + } + ], + "actions": [ + { + "type": { + "value": "ModVarObjet" + }, + "parameters": [ + "Player", + "TargetedLane", + "+", + "1" + ] + }, + { + "type": { + "value": "Scene3D::Model3DObject::SetAnimationName" + }, + "parameters": [ + "Player", + "=", + "\"RunRight\"" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::Or" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "KeyPressed" + }, + "parameters": [ + "", + "a" + ] + }, + { + "type": { + "value": "KeyPressed" + }, + "parameters": [ + "", + "Left" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::And" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "SwipeGesture::SwipeDirection_4way" + }, + "parameters": [ + "", + "\"Left\"", + "" + ] + }, + { + "type": { + "value": "SwipeGesture::Distance" + }, + "parameters": [ + "", + ">", + "100", + "" + ] + }, + { + "type": { + "value": "SwipeGesture::HasSwipeJustEnded" + }, + "parameters": [ + "", + "" + ] + } + ] + } + ] + }, + { + "type": { + "value": "VarObjet" + }, + "parameters": [ + "Player", + "Lane", + ">", + "0" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::Once" + }, + "parameters": [] + } + ], + "actions": [ + { + "type": { + "value": "ModVarObjet" + }, + "parameters": [ + "Player", + "TargetedLane", + "-", + "1" + ] + }, + { + "type": { + "value": "Scene3D::Model3DObject::SetAnimationName" + }, + "parameters": [ + "Player", + "=", + "\"RunLeft\"" + ] + } + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Avoid to cut animation when players move from 2 lanes in a row" + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarObjet" + }, + "parameters": [ + "Player", + "Lane", + "=", + "Player.Variable(TargetedLane)" + ] + }, + { + "type": { + "value": "Scene3D::Model3DObject::AnimationName" + }, + "parameters": [ + "Player", + "!=", + "\"Run\"" + ] + } + ], + "actions": [ + { + "type": { + "value": "Scene3D::Model3DObject::SetAnimationName" + }, + "parameters": [ + "Player", + "=", + "\"Run\"" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Lane change start" + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarObjet" + }, + "parameters": [ + "Player", + "Lane", + "!=", + "Player.Variable(TargetedLane)" + ] + }, + { + "type": { + "inverted": true, + "value": "Tween::Exists" + }, + "parameters": [ + "Player", + "Tween", + "\"Move\"" + ] + } + ], + "actions": [ + { + "type": { + "value": "Tween::AddObjectPositionZTween" + }, + "parameters": [ + "Player", + "Tween", + "\"Move\"", + "Player.Variable(TargetedLane) * 160", + "\"linear\"", + "300", + "" + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Coins", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Collision checks if objects are in the proper lane." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarObjet" + }, + "parameters": [ + "Coin", + "Lane", + "=", + "Player.Variable(Lane)" + ] + }, + { + "type": { + "value": "CollisionNP" + }, + "parameters": [ + "Coin", + "Player", + "", + "", + "" + ] + } + ], + "actions": [ + { + "type": { + "value": "PlaySound" + }, + "parameters": [ + "", + "CoinPickUp", + "", + "50", + "Variable(RisingPitch)" + ] + }, + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "RisingPitch", + "*", + "1.03" + ] + }, + { + "type": { + "value": "Delete" + }, + "parameters": [ + "Coin", + "" + ] + }, + { + "type": { + "value": "ResetTimer" + }, + "parameters": [ + "", + "\"RisingPitch\"" + ] + }, + { + "type": { + "value": "ChangeTimeScale" + }, + "parameters": [ + "", + "TimeScale() * 1.003" + ] + }, + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "Coins", + "+", + "1" + ] + }, + { + "type": { + "value": "TextObject::String" + }, + "parameters": [ + "CoinsScore", + "=", + "\"Coins: \" + ToString(Variable(Coins))" + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Death", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Player falling." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "PosY" + }, + "parameters": [ + "Player", + ">", + "FallDeath.Y()" + ] + } + ], + "actions": [ + { + "type": { + "value": "ModVarSceneTxt" + }, + "parameters": [ + "GameState", + "=", + "\"GameOver\"" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Collision checks if objects are in the proper lane." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarObjet" + }, + "parameters": [ + "SpikeGroup", + "Lane", + "=", + "Player.Variable(Lane)" + ] + }, + { + "type": { + "value": "CollisionNP" + }, + "parameters": [ + "SpikeGroup", + "Player", + "", + "", + "" + ] + } + ], + "actions": [ + { + "type": { + "value": "ModVarSceneTxt" + }, + "parameters": [ + "GameState", + "=", + "\"GameOver\"" + ] + } + ] + } + ], + "parameters": [] + } + ], + "parameters": [] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarSceneTxt" + }, + "parameters": [ + "GameState", + "=", + "\"GameOver\"" + ] + } + ], + "actions": [], + "events": [ + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "When the game is over", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::Once" + }, + "parameters": [] + } + ], + "actions": [ + { + "type": { + "value": "PlaySound" + }, + "parameters": [ + "", + "DeathSound", + "", + "50", + "0.7" + ] + }, + { + "type": { + "value": "Scene3D::Model3DObject::SetAnimationName" + }, + "parameters": [ + "Player", + "=", + "\"Death\"" + ] + }, + { + "type": { + "value": "ChangeTimeScale" + }, + "parameters": [ + "", + "0.5" + ] + } + ], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarScene" + }, + "parameters": [ + "Coins", + ">", + "Variable(HighScore)" + ] + } + ], + "actions": [ + { + "type": { + "value": "EcrireFichierExp" + }, + "parameters": [ + "\"GameHighscore\"", + "\"GameHighscore\"", + "Variable(Coins)" + ] + }, + { + "type": { + "value": "TextObject::ChangeColor" + }, + "parameters": [ + "CoinsScore", + "\"248;231;28\"" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "Wait" + }, + "parameters": [ + "1" + ] + }, + { + "type": { + "value": "Scene" + }, + "parameters": [ + "", + "\"Untitled scene\"", + "" + ] + } + ] + } + ] + } + ], + "parameters": [] + } + ] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Object collisions and behaviors", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Rotating the coins in game." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "Scene3D::Model3DObject::SetRotationY" + }, + "parameters": [ + "Coin", + "+", + "60 * TimeDelta()" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Reseting the rising pitch variable after being adjusted in the coin collision event." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "CompareTimer" + }, + "parameters": [ + "", + "\"RisingPitch\"", + ">", + "1" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::Once" + }, + "parameters": [] + } + ], + "actions": [ + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "RisingPitch", + "=", + "0.8" + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Spawning/Deleting levels", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Picking a random layout from the list and creating it ahead of the player." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "PosX" + }, + "parameters": [ + "StartMarker", + "<", + "Player.X()" + ] + } + ], + "actions": [ + { + "type": { + "value": "Delete" + }, + "parameters": [ + "StartMarker", + "" + ] + } + ], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "PickNearest" + }, + "parameters": [ + "StartMarker", + "Player.X()", + "Player.Y()", + "" + ] + } + ], + "actions": [ + { + "type": { + "value": "BuiltinExternalLayouts::CreateObjectsFromExternalLayout" + }, + "parameters": [ + "", + "\"Layout\" + ToString(RandomInRange(1, 9))", + "StartMarker.X()+2048", + "StartMarker.Y()" + ] + } + ], + "events": [ + { + "type": "BuiltinCommonInstructions::Link", + "include": { + "includeConfig": 0 + }, + "target": "LaneCheck" + } + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Deleting objects that go too far behind the player to improve performance." + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "PosX" + }, + "parameters": [ + "AllObjects", + "<", + "Player.X() - 1060" + ] + } + ], + "actions": [ + { + "type": { + "value": "Delete" + }, + "parameters": [ + "AllObjects", + "" + ] + } + ] + } + ], + "parameters": [] + } + ], + "layers": [ + { + "ambientLightColorB": 200, + "ambientLightColorG": 200, + "ambientLightColorR": 200, + "camera3DFarPlaneDistance": 10000, + "camera3DFieldOfView": 45, + "camera3DNearPlaneDistance": 0.1, + "followBaseLayerCamera": false, + "isLightingLayer": false, + "isLocked": false, + "name": "", + "renderingType": "2d+3d", + "visibility": true, + "cameras": [ + { + "defaultSize": true, + "defaultViewport": true, + "height": 0, + "viewportBottom": 1, + "viewportLeft": 0, + "viewportRight": 1, + "viewportTop": 0, + "width": 0 + } + ], + "effects": [ + { + "effectType": "Scene3D::HemisphereLight", + "name": "Effect", + "doubleParameters": { + "elevation": 45, + "intensity": 0.8, + "rotation": 0 + }, + "stringParameters": { + "groundColor": "255;255;255", + "skyColor": "253;255;219", + "top": "Y-" + }, + "booleanParameters": {} + }, + { + "effectType": "Scene3D::LinearFog", + "name": "Effect2", + "doubleParameters": { + "far": 2500, + "near": 200 + }, + "stringParameters": { + "color": "0;0;0" + }, + "booleanParameters": {} + }, + { + "effectType": "Scene3D::DirectionalLight", + "name": "Effect3", + "doubleParameters": { + "elevation": 45, + "intensity": 0.3, + "rotation": 0 + }, + "stringParameters": { + "color": "254;255;235", + "top": "Y-" + }, + "booleanParameters": {} + } + ] + }, + { + "ambientLightColorB": 200, + "ambientLightColorG": 200, + "ambientLightColorR": 200, + "camera3DFarPlaneDistance": 10000, + "camera3DFieldOfView": 45, + "camera3DNearPlaneDistance": 0.1, + "followBaseLayerCamera": false, + "isLightingLayer": false, + "isLocked": false, + "name": "UI", + "renderingType": "", + "visibility": true, + "cameras": [], + "effects": [] + } + ], + "behaviorsSharedData": [ + { + "name": "Platform", + "type": "PlatformBehavior::PlatformBehavior" + }, + { + "name": "PlatformerObject", + "type": "PlatformBehavior::PlatformerObjectBehavior" + }, + { + "name": "Tween", + "type": "Tween::TweenBehavior" + } + ] + } + ], + "externalEvents": [ + { + "associatedLayout": "Untitled scene", + "lastChangeTimeStamp": 0, + "name": "LaneCheck", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarObjet" + }, + "parameters": [ + "Platforms", + "Lane", + "!=", + "Player.Variable(Lane)" + ] + } + ], + "actions": [ + { + "type": { + "value": "ActivateBehavior" + }, + "parameters": [ + "Platforms", + "Platform", + "" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "VarObjet" + }, + "parameters": [ + "Platforms", + "Lane", + "=", + "Player.Variable(Lane)" + ] + } + ], + "actions": [ + { + "type": { + "value": "ActivateBehavior" + }, + "parameters": [ + "Platforms", + "Platform", + "yes" + ] + } + ] + } + ] + } + ], + "eventsFunctionsExtensions": [ + { + "author": "@e1e5en", + "category": "Input", + "extensionNamespace": "", + "fullName": "Swipe Gesture", + "helpPath": "", + "iconUrl": "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0ibWRpLWdlc3R1cmUtc3dpcGUtcmlnaHQiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTAsOUExLDEgMCAwLDEgMTEsOEExLDEgMCAwLDEgMTIsOVYxMy40N0wxMy4yMSwxMy42TDE4LjE1LDE1Ljc5QzE4LjY4LDE2LjAzIDE5LDE2LjU2IDE5LDE3LjE0VjIxLjVDMTguOTcsMjIuMzIgMTguMzIsMjIuOTcgMTcuNSwyM0gxMUMxMC42MiwyMyAxMC4yNiwyMi44NSAxMCwyMi41N0w1LjEsMTguMzdMNS44NCwxNy42QzYuMDMsMTcuMzkgNi4zLDE3LjI4IDYuNTgsMTcuMjhINi44TDEwLDE5VjlNMTIsNEw5LDFWM0gzVjVIOVY3TDEyLDRaIiAvPjwvc3ZnPg==", + "name": "SwipeGesture", + "previewIconUrl": "https://resources.gdevelop-app.com/assets/Icons/gesture-swipe-right.svg", + "shortDescription": "Detect swipe gestures based on their distance and duration.", + "version": "1.0.0", + "description": [ + "Use the \"Enable swipe detection\" action at the beginning of your scene.", + "", + "Note: This extension does NOT support multitouch.", + "", + "Expressions:", + "", + "- `StartX`, `StartY`: Position where the swipe started", + "- `EndX`, `EndY`: Position where the swipe ended", + "- `Distance`: Length of the swipe, in pixels", + "- `DistanceX`, `DistanceY`: Distance the swipe moved in each axis", + "- `Angle`: Direction the swipe moved towards. Range (-180, 180)", + "- `Layer`: Layer used to detect swipe gestures", + "", + "Conditions:", + "", + "- `Is swipe detection enabled`", + "- `Is swipe in progress?` - A swipe starts when the mouse click or touch begins", + "- `Has swipe just ended?` - When the mouse or touch is released, this condition is true for one frame ", + "- `Swipe moved in a direction (4-way movement)` - the direction value for 4 sides (UP, DOWN, LEFT, RIGHT). In this case, the “circle” is divided into 4 segments of 90 degrees", + "- `Swipe moved in a direction (8-way movement)` - the direction value for 8 sides (UP, DOWN, LEFT, RIGHT, UP-LEFT, UP-RIGHT, DOWN-LEFT, DOWN-RIGHT). In this case, the “circle” is divided into 8 segments of 45 degrees." + ], + "origin": { + "identifier": "SwipeGesture", + "name": "gdevelop-extension-store" + }, + "tags": [ + "swipe", + "mobile", + "touch", + "screen", + "gesture" + ], + "authorIds": [ + "ZbWY0gyCDgMG9QdiCs0SAHeJ9Hp1", + "gqDaZjCfevOOxBYkK6zlhtZnXCg1" + ], + "dependencies": [], + "eventsFunctions": [ + { + "fullName": "", + "functionType": "Action", + "name": "onScenePreEvents", + "sentence": "", + "events": [ + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Reset \"swipe just ended\" detection" + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetSceneVariableAsBoolean" + }, + "parameters": [ + "__SwipeGesture.SwipeJustEnded", + "False" + ] + } + ] + }, + { + "colorB": 224, + "colorG": 16, + "colorR": 189, + "creationTime": 0, + "name": "Detect if a swipe has ended", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SwipeGesture::IsSwipeInProgress" + }, + "parameters": [ + "", + "" + ] + }, + { + "type": { + "value": "MouseButtonReleased" + }, + "parameters": [ + "", + "Left" + ] + } + ], + "actions": [], + "events": [ + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Save final position", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "__SwipeGesture.EndPointX", + "=", + "MouseX(VariableString(__SwipeGesture.Layer),0)" + ] + }, + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "__SwipeGesture.EndPointY", + "=", + "MouseY(VariableString(__SwipeGesture.Layer),0)" + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Update variables and timer", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "PauseTimer" + }, + "parameters": [ + "", + "\"__SwipeGesture.TouchDuration\"" + ] + }, + { + "type": { + "value": "SetSceneVariableAsBoolean" + }, + "parameters": [ + "__SwipeGesture.SwipeInProgress", + "False" + ] + }, + { + "type": { + "value": "SetSceneVariableAsBoolean" + }, + "parameters": [ + "__SwipeGesture.SwipeJustEnded", + "True" + ] + } + ] + } + ], + "parameters": [] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 224, + "colorG": 16, + "colorR": 189, + "creationTime": 0, + "name": "Detect if a new swipe started", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SwipeGesture::IsSwipeDetectionEnabled" + }, + "parameters": [ + "", + "True" + ] + }, + { + "type": { + "value": "MouseButtonPressed" + }, + "parameters": [ + "", + "Left" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::Once" + }, + "parameters": [] + } + ], + "actions": [], + "events": [ + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Clear previous final position", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "__SwipeGesture.EndPointX", + "=", + "0" + ] + }, + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "__SwipeGesture.EndPointY", + "=", + "0" + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Save start position", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "__SwipeGesture.StartPointX", + "=", + "MouseX(VariableString(__SwipeGesture.Layer),0)" + ] + }, + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "__SwipeGesture.StartPointY", + "=", + "MouseY(VariableString(__SwipeGesture.Layer),0)" + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Update variables and timer", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "ResetTimer" + }, + "parameters": [ + "", + "\"__SwipeGesture.TouchDuration\"" + ] + }, + { + "type": { + "value": "UnPauseTimer" + }, + "parameters": [ + "", + "\"__SwipeGesture.TouchDuration\"" + ] + }, + { + "type": { + "value": "SetSceneVariableAsBoolean" + }, + "parameters": [ + "__SwipeGesture.SwipeInProgress", + "True" + ] + } + ] + } + ], + "parameters": [] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 224, + "colorG": 16, + "colorR": 189, + "creationTime": 0, + "name": "Update swipe", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SwipeGesture::IsSwipeInProgress" + }, + "parameters": [ + "", + "" + ] + } + ], + "actions": [], + "events": [ + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Distance", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "__SwipeGesture.Distance", + "=", + "DistanceBetweenPositions(Variable(__SwipeGesture.StartPointX), Variable(__SwipeGesture.StartPointY), MouseX(VariableString(__SwipeGesture.Layer),0), MouseY(VariableString(__SwipeGesture.Layer),0))" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "__SwipeGesture.DistanceX", + "=", + "abs(Variable(__SwipeGesture.StartPointX) - MouseX(VariableString(__SwipeGesture.Layer),0))" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "__SwipeGesture.DistanceY", + "=", + "abs(Variable(__SwipeGesture.StartPointY) - MouseY(VariableString(__SwipeGesture.Layer),0))" + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Angle", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "ModVarScene" + }, + "parameters": [ + "__SwipeGesture.Angle", + "=", + "AngleBetweenPositions(Variable(__SwipeGesture.StartPointX), Variable(__SwipeGesture.StartPointY), MouseX(VariableString(__SwipeGesture.Layer),0), MouseY(VariableString(__SwipeGesture.Layer),0))" + ] + } + ] + } + ], + "parameters": [] + } + ] + } + ], + "parameters": [] + } + ], + "parameters": [], + "objectGroups": [] + }, + { + "description": "Enable (or disable) swipe gesture detection.", + "fullName": "Enable (or disable) swipe gesture detection", + "functionType": "Action", + "name": "EnableSwipeDetection", + "sentence": "Enable swipe detection: _PARAM1_", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "inverted": true, + "value": "GetArgumentAsBoolean" + }, + "parameters": [ + "\"Value\"" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetSceneVariableAsBoolean" + }, + "parameters": [ + "__SwipeGesture.Enabled", + "False" + ] + }, + { + "type": { + "value": "SetSceneVariableAsBoolean" + }, + "parameters": [ + "__SwipeGesture.SwipeInProgress", + "False" + ] + }, + { + "type": { + "value": "PauseTimer" + }, + "parameters": [ + "", + "\"__SwipeGesture.TouchDuration\"" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "GetArgumentAsBoolean" + }, + "parameters": [ + "\"Value\"" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetSceneVariableAsBoolean" + }, + "parameters": [ + "__SwipeGesture.Enabled", + "True" + ] + } + ] + } + ], + "parameters": [ + { + "description": "Enable swipe detection", + "name": "Value", + "type": "trueorfalse" + } + ], + "objectGroups": [] + }, + { + "description": "Draw a line that indicates the current swipe gesture. Edit \"Outline Size\" of the shape painter to adjust the thickness of the line.", + "fullName": "Draw swipe gesture", + "functionType": "Action", + "name": "DrawSwipe", + "sentence": "Draw a line with _PARAM1_ that shows the current swipe", + "events": [ + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Enforce shape painter properties", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Comment", + "color": { + "b": 109, + "g": 230, + "r": 255, + "textB": 0, + "textG": 0, + "textR": 0 + }, + "comment": "Create a shape painter if one does not already exist" + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SceneInstancesCount" + }, + "parameters": [ + "", + "ShapePainterObject", + "=", + "0" + ] + } + ], + "actions": [ + { + "type": { + "value": "Create" + }, + "parameters": [ + "", + "ShapePainterObject", + "0", + "0", + "VariableString(__SwipeGesture.Layer)" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "PrimitiveDrawing::ClearBetweenFrames" + }, + "parameters": [ + "ShapePainterObject", + "" + ] + } + ] + }, + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "PrimitiveDrawing::UseRelativeCoordinates" + }, + "parameters": [ + "ShapePainterObject", + "no" + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Draw line", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SwipeGesture::IsSwipeInProgress" + }, + "parameters": [ + "", + "" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "PrimitiveDrawing::LineV2" + }, + "parameters": [ + "ShapePainterObject", + "Variable(__SwipeGesture.StartPointX)", + "Variable(__SwipeGesture.StartPointY)", + "MouseX(VariableString(__SwipeGesture.Layer),0)", + "MouseY(VariableString(__SwipeGesture.Layer),0)", + "ShapePainterObject.OutlineSize()" + ] + } + ] + } + ] + } + ], + "parameters": [] + } + ], + "parameters": [ + { + "description": "Shape painter used to draw swipe", + "name": "ShapePainterObject", + "supplementaryInformation": "PrimitiveDrawing::Drawer", + "type": "objectList" + } + ], + "objectGroups": [] + }, + { + "description": "Change the layer used to detect swipe gestures.", + "fullName": "Layer used to detect swipe gestures", + "functionType": "ActionWithOperator", + "getterName": "Layer", + "name": "SetLayer", + "sentence": "Use layer _PARAM1_ to detect swipe gestures", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "ModVarSceneTxt" + }, + "parameters": [ + "__SwipeGesture.Layer", + "=", + "GetArgumentAsString(\"Value\")" + ] + } + ] + } + ], + "parameters": [ + { + "description": "Layer", + "name": "Layer", + "type": "layer" + } + ], + "objectGroups": [] + }, + { + "description": "the Layer used to detect swipe gestures.", + "fullName": "Layer used to detect swipe gestures", + "functionType": "ExpressionAndCondition", + "name": "Layer", + "sentence": "the Layer used to detect swipe gestures", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnString" + }, + "parameters": [ + "VariableString(__SwipeGesture.Layer)" + ] + } + ] + } + ], + "expressionType": { + "type": "layer" + }, + "parameters": [], + "objectGroups": [] + }, + { + "description": "Swipe angle (degrees).", + "fullName": "Swipe angle (degrees)", + "functionType": "ExpressionAndCondition", + "name": "Angle", + "sentence": "the swipe angle (degrees)", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnNumber" + }, + "parameters": [ + "Variable(__SwipeGesture.Angle)" + ] + } + ] + } + ], + "expressionType": { + "type": "expression" + }, + "parameters": [], + "objectGroups": [] + }, + { + "description": "Swipe distance (pixels).", + "fullName": "Swipe distance (pixels)", + "functionType": "ExpressionAndCondition", + "name": "Distance", + "sentence": "the swipe distance (pixels)", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnNumber" + }, + "parameters": [ + "Variable(__SwipeGesture.Distance)" + ] + } + ] + } + ], + "expressionType": { + "type": "expression" + }, + "parameters": [], + "objectGroups": [] + }, + { + "description": "Swipe distance in horizontal direction (pixels).", + "fullName": "Swipe distance in horizontal direction (pixels)", + "functionType": "ExpressionAndCondition", + "name": "DistanceX", + "sentence": "the swipe distance in horizontal direction (pixels)", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnNumber" + }, + "parameters": [ + "Variable(__SwipeGesture.DistanceX)" + ] + } + ] + } + ], + "expressionType": { + "type": "expression" + }, + "parameters": [], + "objectGroups": [] + }, + { + "description": "Swipe distance in vertical direction (pixels).", + "fullName": "Swipe distance in vertical direction (pixels)", + "functionType": "ExpressionAndCondition", + "name": "DistanceY", + "sentence": "the swipe distance in vertical direction (pixels)", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnNumber" + }, + "parameters": [ + "Variable(__SwipeGesture.DistanceY)" + ] + } + ] + } + ], + "expressionType": { + "type": "expression" + }, + "parameters": [], + "objectGroups": [] + }, + { + "description": "Start point of the swipe X position.", + "fullName": "Start point of the swipe X position", + "functionType": "ExpressionAndCondition", + "name": "StartX", + "sentence": "the start point of the swipe X position", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnNumber" + }, + "parameters": [ + "Variable(__SwipeGesture.StartPointX)" + ] + } + ] + } + ], + "expressionType": { + "type": "expression" + }, + "parameters": [], + "objectGroups": [] + }, + { + "description": "Start point of the swipe Y position.", + "fullName": "Start point of the swipe Y position", + "functionType": "ExpressionAndCondition", + "name": "StartY", + "sentence": "the start point of the swipe Y position", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnNumber" + }, + "parameters": [ + "Variable(__SwipeGesture.StartPointY)" + ] + } + ] + } + ], + "expressionType": { + "type": "expression" + }, + "parameters": [], + "objectGroups": [] + }, + { + "description": "End point of the swipe X position.", + "fullName": "End point of the swipe X position", + "functionType": "ExpressionAndCondition", + "name": "EndX", + "sentence": "the end point of the swipe X position", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnNumber" + }, + "parameters": [ + "Variable(__SwipeGesture.EndPointX)" + ] + } + ] + } + ], + "expressionType": { + "type": "expression" + }, + "parameters": [], + "objectGroups": [] + }, + { + "description": "End point of the swipe Y position.", + "fullName": "End point of the swipe Y position", + "functionType": "ExpressionAndCondition", + "name": "EndY", + "sentence": "the end point of the swipe Y position", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnNumber" + }, + "parameters": [ + "Variable(__SwipeGesture.EndPointY)" + ] + } + ] + } + ], + "expressionType": { + "type": "expression" + }, + "parameters": [], + "objectGroups": [] + }, + { + "description": "Swipe duration (seconds).", + "fullName": "Swipe duration (seconds)", + "functionType": "ExpressionAndCondition", + "name": "Duration", + "sentence": "swipe duration (seconds)", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [], + "actions": [ + { + "type": { + "value": "SetReturnNumber" + }, + "parameters": [ + "TimerElapsedTime(\"__SwipeGesture.TouchDuration\")" + ] + } + ] + } + ], + "expressionType": { + "type": "expression" + }, + "parameters": [], + "objectGroups": [] + }, + { + "description": "Check if a swipe is currently in progress.", + "fullName": "Swipe is in progress", + "functionType": "Condition", + "name": "IsSwipeInProgress", + "sentence": "Swipe is in progress", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SceneVariableAsBoolean" + }, + "parameters": [ + "__SwipeGesture.SwipeInProgress", + "True" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ], + "parameters": [], + "objectGroups": [] + }, + { + "description": "Check if swipe detection is enabled.", + "fullName": "Is swipe detection enabled", + "functionType": "Condition", + "name": "IsSwipeDetectionEnabled", + "sentence": "Swipe detection is enabled", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SceneVariableAsBoolean" + }, + "parameters": [ + "__SwipeGesture.Enabled", + "True" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ], + "parameters": [], + "objectGroups": [] + }, + { + "description": "Check if the swipe has just ended.", + "fullName": "Swipe just ended", + "functionType": "Condition", + "name": "HasSwipeJustEnded", + "sentence": "Swipe has just ended", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SceneVariableAsBoolean" + }, + "parameters": [ + "__SwipeGesture.SwipeJustEnded", + "True" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ], + "parameters": [], + "objectGroups": [] + }, + { + "description": "Check if swipe moved in a given direction.", + "fullName": "Swipe moved in a direction (4-way movement)", + "functionType": "Condition", + "name": "SwipeDirection_4way", + "sentence": "Swipe moved in direction _PARAM1_", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SwipeGesture::Distance" + }, + "parameters": [ + "", + ">", + "0", + "" + ] + } + ], + "actions": [], + "events": [ + { + "colorB": 224, + "colorG": 16, + "colorR": 189, + "creationTime": 0, + "name": "Range (-180 to 180)", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Up", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"Up\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "-135" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "-45" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Down", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"Down\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "45" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "135" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Left", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"Left\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::Or" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "BuiltinCommonInstructions::And" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "-180" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "-135" + ] + } + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::And" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "135" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "180" + ] + } + ] + } + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Right", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"Right\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "-45" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "45" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + } + ], + "parameters": [] + } + ] + } + ], + "parameters": [ + { + "description": "Direction", + "name": "Direction", + "supplementaryInformation": "[\"Up\",\"Down\",\"Left\",\"Right\"]", + "type": "stringWithSelector" + } + ], + "objectGroups": [] + }, + { + "description": "Check if swipe moved in a given direction.", + "fullName": "Swipe moved in a direction (8-way movement)", + "functionType": "Condition", + "name": "SwipeDirection_8way", + "sentence": "Swipe moved in direction _PARAM1_", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "SwipeGesture::Distance" + }, + "parameters": [ + "", + ">", + "0", + "" + ] + } + ], + "actions": [], + "events": [ + { + "colorB": 224, + "colorG": 16, + "colorR": 189, + "creationTime": 0, + "name": "Range (-180 to 180)", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Up", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"Up\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "-112.5" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "-67.5" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Down", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"Down\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "67.5" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "112.5" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Left", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"Left\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::Or" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "BuiltinCommonInstructions::And" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "-180" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "-157.5" + ] + } + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::And" + }, + "parameters": [], + "subInstructions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "157.5" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "180" + ] + } + ] + } + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "Right", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"Right\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "-22.5" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "22.5" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "UpRight", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"UpRight\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "-67.5" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "-22.5" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "UpLeft", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"UpLeft\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "-157.5" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "-112.5" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "DownLeft", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"DownLeft\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "112.5" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "157.5" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + }, + { + "colorB": 228, + "colorG": 176, + "colorR": 74, + "creationTime": 0, + "name": "DownRight", + "source": "", + "type": "BuiltinCommonInstructions::Group", + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareStrings" + }, + "parameters": [ + "GetArgumentAsString(\"Direction\")", + "=", + "\"DownRight\"" + ] + } + ], + "actions": [], + "events": [ + { + "type": "BuiltinCommonInstructions::Standard", + "conditions": [ + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + ">=", + "22.5" + ] + }, + { + "type": { + "value": "BuiltinCommonInstructions::CompareNumbers" + }, + "parameters": [ + "SwipeGesture::Angle()", + "<", + "67.5" + ] + } + ], + "actions": [ + { + "type": { + "value": "SetReturnBoolean" + }, + "parameters": [ + "True" + ] + } + ] + } + ] + } + ], + "parameters": [] + } + ], + "parameters": [] + } + ] + } + ], + "parameters": [ + { + "description": "Direction", + "name": "Direction", + "supplementaryInformation": "[\"Up\",\"Down\",\"Left\",\"Right\",\"UpLeft\",\"UpRight\",\"DownLeft\",\"DownRight\"]", + "type": "stringWithSelector" + } + ], + "objectGroups": [] + } + ], + "eventsBasedBehaviors": [], + "eventsBasedObjects": [] + } + ], + "externalLayouts": [ + { + "associatedLayout": "Untitled scene", + "name": "Layout1", + "instances": [ + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "e13b9837-4ab4-475d-a1ab-5f727ead59da", + "width": 1024, + "x": 0, + "y": 192, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "556b77d2-6dc6-417c-8192-60501f4ec644", + "width": 1024, + "x": 0, + "y": 192, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "9cf32052-9522-451a-b8b2-564788873f4a", + "width": 1024, + "x": 0, + "y": 192, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "98cde4eb-fbdc-4ecf-9b4b-12c22f86dcd0", + "width": 64, + "x": 0, + "y": 0, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 80, + "height": 80, + "layer": "", + "name": "SpikeGroup", + "persistentUuid": "1af66394-f474-4aec-8fab-861cd0542aa6", + "width": 96, + "x": 688, + "y": 152, + "z": 160, + "zOrder": 5, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 80, + "height": 80, + "layer": "", + "name": "SpikeGroup", + "persistentUuid": "1bfd08fc-6991-4146-b94f-3355a73b0a77", + "width": 96, + "x": 688, + "y": 152, + "zOrder": 5, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 80, + "height": 80, + "layer": "", + "name": "SpikeGroup", + "persistentUuid": "5143812a-0b9e-4b26-9e94-51032ca22316", + "width": 96, + "x": 688, + "y": 152, + "z": 320, + "zOrder": 5, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "3eba5768-f945-4e72-92c7-c0098f6bb675", + "width": 64, + "x": 352, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "35a8297d-c18b-4daa-af27-6b89f69bfa83", + "width": 64, + "x": 512, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "81b0a462-89cc-4903-ac03-5082f0c6c04a", + "width": 64, + "x": 192, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + } + ], + "editionSettings": { + "grid": true, + "gridType": "rectangular", + "gridWidth": 32, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridColor": 10401023, + "gridAlpha": 0.8, + "snap": true, + "zoomFactor": 0.4633111824513984, + "windowMask": false + } + }, + { + "associatedLayout": "Untitled scene", + "name": "Layout2", + "instances": [ + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "e13b9837-4ab4-475d-a1ab-5f727ead59da", + "width": 1024, + "x": 0, + "y": 192, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "556b77d2-6dc6-417c-8192-60501f4ec644", + "width": 1024, + "x": 0, + "y": 192, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "9cf32052-9522-451a-b8b2-564788873f4a", + "width": 1024, + "x": 0, + "y": 192, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "98cde4eb-fbdc-4ecf-9b4b-12c22f86dcd0", + "width": 64, + "x": 0, + "y": 0, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 80, + "height": 80, + "layer": "", + "name": "SpikeGroup", + "persistentUuid": "9d761244-9671-4777-aafa-e4b653bd0d00", + "width": 96, + "x": 688, + "y": 152, + "z": 160, + "zOrder": 5, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "d71c8cd5-3553-4875-8783-4401ba0642a1", + "width": 64, + "x": 512, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "c7c73351-9fb2-482c-807d-cd1d7d6b0ac1", + "width": 64, + "x": 352, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "0751c083-6231-411d-b880-3bc317f19826", + "width": 64, + "x": 192, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "0c6ce33b-2b5a-45d8-8ee6-c59f14676f78", + "width": 64, + "x": 192, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "577c0e44-3523-4cf6-a403-1cd5c08f467d", + "width": 64, + "x": 352, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + } + ], + "editionSettings": { + "grid": true, + "gridType": "rectangular", + "gridWidth": 32, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridColor": 10401023, + "gridAlpha": 0.8, + "snap": true, + "zoomFactor": 0.4633111824513984, + "windowMask": false + } + }, + { + "associatedLayout": "Untitled scene", + "name": "Layout3", + "instances": [ + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "e13b9837-4ab4-475d-a1ab-5f727ead59da", + "width": 1024, + "x": 0, + "y": 192, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "556b77d2-6dc6-417c-8192-60501f4ec644", + "width": 1024, + "x": 0, + "y": 192, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "9cf32052-9522-451a-b8b2-564788873f4a", + "width": 1024, + "x": 0, + "y": 192, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "98cde4eb-fbdc-4ecf-9b4b-12c22f86dcd0", + "width": 64, + "x": 0, + "y": 0, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "3cfb0b79-5527-430b-9f58-65653ac8171a", + "width": 64, + "x": 64, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "7d9777f9-a5dd-4456-8a50-63a8b9392b26", + "width": 64, + "x": 224, + "y": 32, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "9e3958af-4338-4888-bed2-f1169dc6fb42", + "width": 64, + "x": 352, + "y": 32, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "ab4e4d4a-effd-4855-a1e5-b24676a489ca", + "width": 64, + "x": 896, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": -45, + "customSize": true, + "depth": 160, + "height": 136, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "ddd2936c-ded2-4fec-a216-cd5b2b57df3f", + "width": 136, + "x": 124, + "y": 124, + "z": 80, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "34804264-c3a8-47bc-94dc-f88e3f3498b6", + "width": 64, + "x": 768, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "c6eb1b47-f6a6-423b-ae9a-99b620249b4f", + "width": 64, + "x": 608, + "y": 32, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "f0880dec-c78e-4d3e-afca-bdcaaaf20e9a", + "width": 64, + "x": 480, + "y": 32, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 96, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "270f9ebf-1b95-4114-8c7f-985a2d6768b0", + "width": 448, + "x": 192, + "y": 96, + "z": 80, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + } + ], + "editionSettings": { + "grid": true, + "gridType": "rectangular", + "gridWidth": 32, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridColor": 10401023, + "gridAlpha": 0.8, + "snap": true, + "zoomFactor": 0.8700232859857299, + "windowMask": false + } + }, + { + "associatedLayout": "Untitled scene", + "name": "Layout4", + "instances": [ + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "e13b9837-4ab4-475d-a1ab-5f727ead59da", + "width": 1024, + "x": 0, + "y": 192, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "556b77d2-6dc6-417c-8192-60501f4ec644", + "width": 480, + "x": 544, + "y": 192, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "9cf32052-9522-451a-b8b2-564788873f4a", + "width": 480, + "x": 544, + "y": 192, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "98cde4eb-fbdc-4ecf-9b4b-12c22f86dcd0", + "width": 64, + "x": 0, + "y": 0, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "0f9ab667-093e-4cb1-9767-9758486f0ba8", + "width": 224, + "x": 0, + "y": 192, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "83b20036-e69d-4a55-b2dc-2db1a4e59eca", + "width": 224, + "x": 0, + "y": 192, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "82379e82-5bfc-46c5-8555-5ed9b8b1cfae", + "width": 64, + "x": 864, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "c734aa0b-23af-42f6-b29a-b36ecc5a2a7e", + "width": 64, + "x": 160, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "381ac4c6-c06c-4350-960a-19b78344e899", + "width": 64, + "x": 320, + "y": 32, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "11031e02-89f9-41bd-93ca-f601c6b0664a", + "width": 64, + "x": 448, + "y": 32, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "c8d43540-339c-40b4-b806-c73cb214cb19", + "width": 64, + "x": 160, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "1a342051-9852-40a1-8516-a98d7b17fbf4", + "width": 64, + "x": 320, + "y": 32, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "c3b62340-8c68-45ca-950e-b7908e16d8ad", + "width": 64, + "x": 448, + "y": 32, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "465d2b3c-4a71-4ccf-8f3d-8d8a6ab87bb4", + "width": 64, + "x": 864, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "a8e3ee1b-f547-41d4-9d77-ca2e17f53fb3", + "width": 64, + "x": 608, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "4db5dd8e-a5ac-45c6-9cd4-4bd905afea02", + "width": 64, + "x": 608, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "87fbeae7-576a-471c-b62a-9b7e8b1f9e3b", + "width": 64, + "x": 736, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "1dc84750-9423-46c6-893f-eb737fe2717b", + "width": 64, + "x": 736, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + } + ], + "editionSettings": { + "grid": true, + "gridType": "rectangular", + "gridWidth": 32, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridColor": 10401023, + "gridAlpha": 0.8, + "snap": true, + "zoomFactor": 0.35534345588169847, + "windowMask": false + } + }, + { + "associatedLayout": "Untitled scene", + "name": "Layout5", + "instances": [ + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "e13b9837-4ab4-475d-a1ab-5f727ead59da", + "width": 1024, + "x": 0, + "y": 192, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "556b77d2-6dc6-417c-8192-60501f4ec644", + "width": 1024, + "x": 0, + "y": 192, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "9cf32052-9522-451a-b8b2-564788873f4a", + "width": 1024, + "x": 0, + "y": 192, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "98cde4eb-fbdc-4ecf-9b4b-12c22f86dcd0", + "width": 64, + "x": 0, + "y": 0, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 80, + "height": 80, + "layer": "", + "name": "SpikeGroup", + "persistentUuid": "1af66394-f474-4aec-8fab-861cd0542aa6", + "width": 96, + "x": 688, + "y": 152, + "z": 160, + "zOrder": 5, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 80, + "height": 80, + "layer": "", + "name": "SpikeGroup", + "persistentUuid": "1bfd08fc-6991-4146-b94f-3355a73b0a77", + "width": 96, + "x": 688, + "y": 152, + "zOrder": 5, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 80, + "height": 80, + "layer": "", + "name": "SpikeGroup", + "persistentUuid": "5143812a-0b9e-4b26-9e94-51032ca22316", + "width": 96, + "x": 688, + "y": 152, + "z": 320, + "zOrder": 5, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "3eba5768-f945-4e72-92c7-c0098f6bb675", + "width": 64, + "x": 352, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "ccbe5c16-fd57-4f55-b58c-c4f8b95eb171", + "width": 64, + "x": 512, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "35a8297d-c18b-4daa-af27-6b89f69bfa83", + "width": 64, + "x": 192, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + } + ], + "editionSettings": { + "grid": true, + "gridType": "rectangular", + "gridWidth": 32, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridColor": 10401023, + "gridAlpha": 0.8, + "snap": true, + "zoomFactor": 0.4789341884535246, + "windowMask": false + } + }, + { + "associatedLayout": "Untitled scene", + "name": "Layout6", + "instances": [ + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "e13b9837-4ab4-475d-a1ab-5f727ead59da", + "width": 256, + "x": 0, + "y": 192, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "98cde4eb-fbdc-4ecf-9b4b-12c22f86dcd0", + "width": 64, + "x": 0, + "y": 0, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "0f9ab667-093e-4cb1-9767-9758486f0ba8", + "width": 1024, + "x": 0, + "y": 192, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "83b20036-e69d-4a55-b2dc-2db1a4e59eca", + "width": 1024, + "x": 0, + "y": 192, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "35843c40-c437-4151-8486-1272fb8734c6", + "width": 448, + "x": 576, + "y": 192, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "100d8ba2-873b-4e80-9cef-fcfb5c723528", + "width": 64, + "x": 192, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "0859f0c1-0208-4487-a8d8-3a9d38905937", + "width": 64, + "x": 352, + "y": 32, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "d6dda353-d34a-4200-973b-61f501d2a7ce", + "width": 64, + "x": 480, + "y": 32, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "0ef18cb7-7258-488a-a15b-59ee2419bb6a", + "width": 64, + "x": 896, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "4390fffc-67ee-453f-8853-53bd9b201f81", + "width": 64, + "x": 640, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "d7b5a171-ef87-47e5-be4f-68ba46f958b1", + "width": 64, + "x": 768, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + } + ], + "editionSettings": { + "grid": true, + "gridType": "rectangular", + "gridWidth": 32, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridColor": 10401023, + "gridAlpha": 0.8, + "snap": true, + "zoomFactor": 0.43357743047023733, + "windowMask": false + } + }, + { + "associatedLayout": "Untitled scene", + "name": "Layout7", + "instances": [ + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "e13b9837-4ab4-475d-a1ab-5f727ead59da", + "width": 1024, + "x": 0, + "y": 192, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "556b77d2-6dc6-417c-8192-60501f4ec644", + "width": 1024, + "x": 0, + "y": 192, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "9cf32052-9522-451a-b8b2-564788873f4a", + "width": 1024, + "x": 0, + "y": 192, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "98cde4eb-fbdc-4ecf-9b4b-12c22f86dcd0", + "width": 64, + "x": 0, + "y": 0, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 96, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "ddd2936c-ded2-4fec-a216-cd5b2b57df3f", + "width": 768, + "x": 96, + "y": 96, + "z": -80, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 96, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "03b1b229-88a8-4251-9391-06709d296f53", + "width": 768, + "x": 96, + "y": 96, + "z": 240, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "437548f9-00c6-477f-aa24-cfe99d6f4a83", + "width": 64, + "x": 128, + "y": 32, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "1a3088ee-944d-46f7-9a29-2859c16808e0", + "width": 64, + "x": 384, + "y": 32, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "a1508b08-5925-403b-862c-f4edddf7a490", + "width": 64, + "x": 512, + "y": 32, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "30fdc1dc-7fc3-42fe-a1fe-50c35e07c3c4", + "width": 64, + "x": 640, + "y": 32, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "b900ce41-dd28-4f7f-84e5-611057c1e184", + "width": 64, + "x": 128, + "y": 32, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "f5fcdb75-c5ea-4edc-a8a5-c68c09a63762", + "width": 64, + "x": 384, + "y": 32, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "e843c8c8-1b7a-4938-b6f8-10fe240021c5", + "width": 64, + "x": 512, + "y": 32, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "ef30178d-045b-471e-b5a5-1d4107d438a2", + "width": 64, + "x": 640, + "y": 32, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "05de4693-f941-4e43-8826-f359c013667d", + "width": 64, + "x": 256, + "y": 32, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "8bf17fd3-c9a0-4510-87e4-6aee6172a45b", + "width": 64, + "x": 256, + "y": 32, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "3880eaa6-c754-4fe7-882e-1e8c2a92413d", + "width": 64, + "x": 768, + "y": 32, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "ddd4b84d-d080-41b0-a7aa-ed4e7b007bd2", + "width": 64, + "x": 768, + "y": 32, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": -45, + "customSize": true, + "depth": 160, + "height": 136, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "60e4c3e1-04d9-4c37-87b4-4f90dcb8e276", + "width": 136, + "x": 28, + "y": 124, + "z": -80, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": -45, + "customSize": true, + "depth": 160, + "height": 136, + "layer": "", + "name": "GroundElevated", + "persistentUuid": "773fd33b-a388-4680-86dc-d09e126a9abc", + "width": 136, + "x": 28, + "y": 124, + "z": 240, + "zOrder": 8, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + } + ], + "editionSettings": { + "grid": true, + "gridType": "rectangular", + "gridWidth": 32, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridColor": 10401023, + "gridAlpha": 0.8, + "snap": true, + "zoomFactor": 0.3325387091250777, + "windowMask": false + } + }, + { + "associatedLayout": "Untitled scene", + "name": "Layout8", + "instances": [ + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "e13b9837-4ab4-475d-a1ab-5f727ead59da", + "width": 96, + "x": 0, + "y": 192, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "556b77d2-6dc6-417c-8192-60501f4ec644", + "width": 1024, + "x": 0, + "y": 192, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "9cf32052-9522-451a-b8b2-564788873f4a", + "width": 1024, + "x": 0, + "y": 192, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "98cde4eb-fbdc-4ecf-9b4b-12c22f86dcd0", + "width": 64, + "x": 0, + "y": 0, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "437548f9-00c6-477f-aa24-cfe99d6f4a83", + "width": 64, + "x": 128, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "1a3088ee-944d-46f7-9a29-2859c16808e0", + "width": 64, + "x": 384, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "a1508b08-5925-403b-862c-f4edddf7a490", + "width": 64, + "x": 512, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "b900ce41-dd28-4f7f-84e5-611057c1e184", + "width": 64, + "x": 128, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "f5fcdb75-c5ea-4edc-a8a5-c68c09a63762", + "width": 64, + "x": 384, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "e843c8c8-1b7a-4938-b6f8-10fe240021c5", + "width": 64, + "x": 512, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "05de4693-f941-4e43-8826-f359c013667d", + "width": 64, + "x": 256, + "y": 128, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "8bf17fd3-c9a0-4510-87e4-6aee6172a45b", + "width": 64, + "x": 256, + "y": 128, + "z": 320, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 80, + "height": 80, + "layer": "", + "name": "SpikeGroup", + "persistentUuid": "25318c82-d38a-4c3c-9a2f-47f536716a2f", + "width": 96, + "x": 784, + "y": 152, + "zOrder": 5, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 80, + "height": 80, + "layer": "", + "name": "SpikeGroup", + "persistentUuid": "30d33585-77b7-415c-9c0e-94f8954f7b02", + "width": 96, + "x": 784, + "y": 152, + "z": 320, + "zOrder": 5, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + } + ], + "editionSettings": { + "grid": true, + "gridType": "rectangular", + "gridWidth": 32, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridColor": 10401023, + "gridAlpha": 0.8, + "snap": true, + "zoomFactor": 0.5290357402156846, + "windowMask": false + } + }, + { + "associatedLayout": "Untitled scene", + "name": "Layout9", + "instances": [ + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "e13b9837-4ab4-475d-a1ab-5f727ead59da", + "width": 1024, + "x": 0, + "y": 192, + "z": 80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 0, + "height": 64, + "layer": "", + "name": "StartMarker", + "persistentUuid": "98cde4eb-fbdc-4ecf-9b4b-12c22f86dcd0", + "width": 64, + "x": 0, + "y": 0, + "zOrder": 3, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "0f9ab667-093e-4cb1-9767-9758486f0ba8", + "width": 96, + "x": 0, + "y": 192, + "z": 240, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 2 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 160, + "height": 160, + "layer": "", + "name": "Ground", + "persistentUuid": "83b20036-e69d-4a55-b2dc-2db1a4e59eca", + "width": 96, + "x": 0, + "y": 192, + "z": -80, + "zOrder": 4, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 0 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "100d8ba2-873b-4e80-9cef-fcfb5c723528", + "width": 64, + "x": 128, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "0859f0c1-0208-4487-a8d8-3a9d38905937", + "width": 64, + "x": 256, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "d6dda353-d34a-4200-973b-61f501d2a7ce", + "width": 64, + "x": 512, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 10, + "height": 64, + "layer": "", + "name": "Coin", + "persistentUuid": "1c95f325-9227-4ad4-9c22-70c0456833bc", + "width": 64, + "x": 384, + "y": 128, + "z": 160, + "zOrder": 6, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + }, + { + "angle": 0, + "customSize": true, + "depth": 80, + "height": 80, + "layer": "", + "name": "SpikeGroup", + "persistentUuid": "f60aba27-0158-42c5-af61-9e6c43ed3598", + "width": 96, + "x": 784, + "y": 152, + "z": 160, + "zOrder": 5, + "numberProperties": [], + "stringProperties": [], + "initialVariables": [ + { + "folded": true, + "name": "Lane", + "type": "number", + "value": 1 + } + ] + } + ], + "editionSettings": { + "grid": true, + "gridType": "rectangular", + "gridWidth": 32, + "gridHeight": 32, + "gridOffsetX": 0, + "gridOffsetY": 0, + "gridColor": 10401023, + "gridAlpha": 0.8, + "snap": true, + "zoomFactor": 0.5843784410740929, + "windowMask": false + } + } + ], + "externalSourceFiles": [] +} \ No newline at end of file diff --git a/examples/3d-lane-runner/README.md b/examples/3d-lane-runner/README.md new file mode 100644 index 000000000..bebb6da37 --- /dev/null +++ b/examples/3d-lane-runner/README.md @@ -0,0 +1 @@ +A 3D lane runner game that shows how to use the platformer behavior in a 3D space. \ No newline at end of file diff --git a/examples/3d-lane-runner/TAGS.md b/examples/3d-lane-runner/TAGS.md new file mode 100644 index 000000000..2a7e58efe --- /dev/null +++ b/examples/3d-lane-runner/TAGS.md @@ -0,0 +1 @@ +game, simple \ No newline at end of file diff --git a/examples/3d-lane-runner/Untitled242422.png b/examples/3d-lane-runner/Untitled242422.png new file mode 100644 index 000000000..5c61ee6b9 Binary files /dev/null and b/examples/3d-lane-runner/Untitled242422.png differ diff --git a/examples/3d-lane-runner/android-icon-144.png b/examples/3d-lane-runner/android-icon-144.png new file mode 100644 index 000000000..1a998005c Binary files /dev/null and b/examples/3d-lane-runner/android-icon-144.png differ diff --git a/examples/3d-lane-runner/android-icon-192.png b/examples/3d-lane-runner/android-icon-192.png new file mode 100644 index 000000000..d2fdf666a Binary files /dev/null and b/examples/3d-lane-runner/android-icon-192.png differ diff --git a/examples/3d-lane-runner/android-icon-36.png b/examples/3d-lane-runner/android-icon-36.png new file mode 100644 index 000000000..65d9f81cb Binary files /dev/null and b/examples/3d-lane-runner/android-icon-36.png differ diff --git a/examples/3d-lane-runner/android-icon-48.png b/examples/3d-lane-runner/android-icon-48.png new file mode 100644 index 000000000..c710f4a14 Binary files /dev/null and b/examples/3d-lane-runner/android-icon-48.png differ diff --git a/examples/3d-lane-runner/android-icon-72.png b/examples/3d-lane-runner/android-icon-72.png new file mode 100644 index 000000000..33e99b27c Binary files /dev/null and b/examples/3d-lane-runner/android-icon-72.png differ diff --git a/examples/3d-lane-runner/android-icon-96.png b/examples/3d-lane-runner/android-icon-96.png new file mode 100644 index 000000000..231b2676e Binary files /dev/null and b/examples/3d-lane-runner/android-icon-96.png differ diff --git a/examples/3d-lane-runner/android-windowSplashScreenAnimatedIcon.png b/examples/3d-lane-runner/android-windowSplashScreenAnimatedIcon.png new file mode 100644 index 000000000..dd51db0e4 Binary files /dev/null and b/examples/3d-lane-runner/android-windowSplashScreenAnimatedIcon.png differ diff --git a/examples/3d-lane-runner/assets/Coin.glb b/examples/3d-lane-runner/assets/Coin.glb new file mode 100644 index 000000000..15139c750 Binary files /dev/null and b/examples/3d-lane-runner/assets/Coin.glb differ diff --git a/examples/3d-lane-runner/assets/CoinPickUp.wav b/examples/3d-lane-runner/assets/CoinPickUp.wav new file mode 100644 index 000000000..476b604e1 Binary files /dev/null and b/examples/3d-lane-runner/assets/CoinPickUp.wav differ diff --git a/examples/3d-lane-runner/assets/DeathSound.wav b/examples/3d-lane-runner/assets/DeathSound.wav new file mode 100644 index 000000000..d99428ff1 Binary files /dev/null and b/examples/3d-lane-runner/assets/DeathSound.wav differ diff --git a/examples/3d-lane-runner/assets/Femal Casual 2.glb b/examples/3d-lane-runner/assets/Femal Casual 2.glb new file mode 100644 index 000000000..2b7842417 Binary files /dev/null and b/examples/3d-lane-runner/assets/Femal Casual 2.glb differ diff --git a/examples/3d-lane-runner/assets/Marker.png b/examples/3d-lane-runner/assets/Marker.png new file mode 100644 index 000000000..49b035d27 Binary files /dev/null and b/examples/3d-lane-runner/assets/Marker.png differ diff --git a/examples/3d-lane-runner/assets/Roboto-Bold.ttf b/examples/3d-lane-runner/assets/Roboto-Bold.ttf new file mode 100644 index 000000000..43da14d84 Binary files /dev/null and b/examples/3d-lane-runner/assets/Roboto-Bold.ttf differ diff --git a/examples/3d-lane-runner/assets/Spike Group.glb b/examples/3d-lane-runner/assets/Spike Group.glb new file mode 100644 index 000000000..5df88154c Binary files /dev/null and b/examples/3d-lane-runner/assets/Spike Group.glb differ diff --git a/examples/3d-lane-runner/assets/Trail.png b/examples/3d-lane-runner/assets/Trail.png new file mode 100644 index 000000000..28be0d228 Binary files /dev/null and b/examples/3d-lane-runner/assets/Trail.png differ diff --git a/examples/3d-lane-runner/assets/TrailDrop.png b/examples/3d-lane-runner/assets/TrailDrop.png new file mode 100644 index 000000000..34b85d37d Binary files /dev/null and b/examples/3d-lane-runner/assets/TrailDrop.png differ diff --git a/examples/3d-lane-runner/assets/TrailWall.png b/examples/3d-lane-runner/assets/TrailWall.png new file mode 100644 index 000000000..3cacf5318 Binary files /dev/null and b/examples/3d-lane-runner/assets/TrailWall.png differ diff --git a/examples/3d-lane-runner/desktop-icon-512.png b/examples/3d-lane-runner/desktop-icon-512.png new file mode 100644 index 000000000..a51b51443 Binary files /dev/null and b/examples/3d-lane-runner/desktop-icon-512.png differ diff --git a/examples/3d-lane-runner/ios-icon-100.png b/examples/3d-lane-runner/ios-icon-100.png new file mode 100644 index 000000000..1efe591b3 Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-100.png differ diff --git a/examples/3d-lane-runner/ios-icon-1024.png b/examples/3d-lane-runner/ios-icon-1024.png new file mode 100644 index 000000000..c90801cb4 Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-1024.png differ diff --git a/examples/3d-lane-runner/ios-icon-114.png b/examples/3d-lane-runner/ios-icon-114.png new file mode 100644 index 000000000..1a8b9d1df Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-114.png differ diff --git a/examples/3d-lane-runner/ios-icon-120.png b/examples/3d-lane-runner/ios-icon-120.png new file mode 100644 index 000000000..f632cc3ad Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-120.png differ diff --git a/examples/3d-lane-runner/ios-icon-144.png b/examples/3d-lane-runner/ios-icon-144.png new file mode 100644 index 000000000..1a998005c Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-144.png differ diff --git a/examples/3d-lane-runner/ios-icon-152.png b/examples/3d-lane-runner/ios-icon-152.png new file mode 100644 index 000000000..43be39ba0 Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-152.png differ diff --git a/examples/3d-lane-runner/ios-icon-167.png b/examples/3d-lane-runner/ios-icon-167.png new file mode 100644 index 000000000..474a7aaba Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-167.png differ diff --git a/examples/3d-lane-runner/ios-icon-180.png b/examples/3d-lane-runner/ios-icon-180.png new file mode 100644 index 000000000..b99fef7f2 Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-180.png differ diff --git a/examples/3d-lane-runner/ios-icon-20.png b/examples/3d-lane-runner/ios-icon-20.png new file mode 100644 index 000000000..3049e6a71 Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-20.png differ diff --git a/examples/3d-lane-runner/ios-icon-29.png b/examples/3d-lane-runner/ios-icon-29.png new file mode 100644 index 000000000..4a9d6de61 Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-29.png differ diff --git a/examples/3d-lane-runner/ios-icon-40.png b/examples/3d-lane-runner/ios-icon-40.png new file mode 100644 index 000000000..69b029b27 Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-40.png differ diff --git a/examples/3d-lane-runner/ios-icon-50.png b/examples/3d-lane-runner/ios-icon-50.png new file mode 100644 index 000000000..3ea8b3f5a Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-50.png differ diff --git a/examples/3d-lane-runner/ios-icon-57.png b/examples/3d-lane-runner/ios-icon-57.png new file mode 100644 index 000000000..8a927915e Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-57.png differ diff --git a/examples/3d-lane-runner/ios-icon-58.png b/examples/3d-lane-runner/ios-icon-58.png new file mode 100644 index 000000000..e79c2bcae Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-58.png differ diff --git a/examples/3d-lane-runner/ios-icon-60.png b/examples/3d-lane-runner/ios-icon-60.png new file mode 100644 index 000000000..e58c3cbce Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-60.png differ diff --git a/examples/3d-lane-runner/ios-icon-72.png b/examples/3d-lane-runner/ios-icon-72.png new file mode 100644 index 000000000..33e99b27c Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-72.png differ diff --git a/examples/3d-lane-runner/ios-icon-76.png b/examples/3d-lane-runner/ios-icon-76.png new file mode 100644 index 000000000..0a91937d1 Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-76.png differ diff --git a/examples/3d-lane-runner/ios-icon-80.png b/examples/3d-lane-runner/ios-icon-80.png new file mode 100644 index 000000000..f3fbfc3e6 Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-80.png differ diff --git a/examples/3d-lane-runner/ios-icon-87.png b/examples/3d-lane-runner/ios-icon-87.png new file mode 100644 index 000000000..870b469b6 Binary files /dev/null and b/examples/3d-lane-runner/ios-icon-87.png differ diff --git a/examples/3d-lane-runner/thumbnail.png b/examples/3d-lane-runner/thumbnail.png new file mode 100644 index 000000000..46d155950 Binary files /dev/null and b/examples/3d-lane-runner/thumbnail.png differ