diff --git a/menu.ts b/menu.ts new file mode 100644 index 0000000..12a03c3 --- /dev/null +++ b/menu.ts @@ -0,0 +1,39 @@ + +namespace miniMenu{ + + + function createMenuAndPauseGame(items: miniMenu.MenuItem[]): miniMenu.MenuSprite{ + let img = image.screenImage().clone(); + game.pushScene(); + scene.setBackgroundImage(img) + let myMenu = miniMenu.createMenuFromArray(items); + myMenu.onButtonPressed(controller.A, function (selection: string, selectedIndex: number) { + myMenu.close(); + game.popScene(); + }) + return myMenu + } + + /** + * Creates and returns a menu from an array of menu items passed in. Can toggle if the game is paused or not + */ + //% blockId=createPauseableMenu + //% block="create menu from $items where pause is $isPaused" + //% blockSetVariable=myMenu + //% items.shadow=lists_create_with + //% items.defl=mini_menu_create_menu_item + //% group="Create" + //% weight=99 + + export function createPauseableMenu(isPaused: boolean, items: miniMenu.MenuItem[]): miniMenu.MenuSprite{ + let myMenu: miniMenu.MenuSprite; + if (isPaused){ + myMenu = createMenuAndPauseGame(items); + } + else{ + myMenu = createMenuFromArray(items); + } + return myMenu + } + +} \ No newline at end of file diff --git a/pxt.json b/pxt.json index 3090a68..07983c2 100644 --- a/pxt.json +++ b/pxt.json @@ -1,18 +1,14 @@ { - "name": "with music", + "name": "Menu Extension", "description": "", "dependencies": { "device": "*", "arcade-mini-menu": "github:riknoll/arcade-mini-menu#96cf1014271246d15b85368b45f298bd8c6609c4" }, "files": [ - "main.blocks", "main.ts", "README.md", - "assets.json", - "main.py", - "tilemap.g.jres", - "tilemap.g.ts" + "menu.ts" ], "testFiles": [ "test.ts"