diff --git a/data/ui/xbox/platform_android_white.png b/data/ui/xbox/platform_android_white.png new file mode 100644 index 00000000..342dd87b Binary files /dev/null and b/data/ui/xbox/platform_android_white.png differ diff --git a/data/ui/xbox/platform_desktop_white.png b/data/ui/xbox/platform_desktop_white.png new file mode 100644 index 00000000..319801d0 Binary files /dev/null and b/data/ui/xbox/platform_desktop_white.png differ diff --git a/data/ui/xbox/platform_mac_white.png b/data/ui/xbox/platform_mac_white.png new file mode 100644 index 00000000..90907af5 Binary files /dev/null and b/data/ui/xbox/platform_mac_white.png differ diff --git a/data/ui/xbox/platform_unknown_white.png b/data/ui/xbox/platform_unknown_white.png new file mode 100644 index 00000000..07f54b8f Binary files /dev/null and b/data/ui/xbox/platform_unknown_white.png differ diff --git a/data/ui/xbox/platform_web_white.png b/data/ui/xbox/platform_web_white.png new file mode 100644 index 00000000..d1e087d1 Binary files /dev/null and b/data/ui/xbox/platform_web_white.png differ diff --git a/src/Console.hx b/src/Console.hx index bba551de..0dad0f96 100644 --- a/src/Console.hx +++ b/src/Console.hx @@ -197,6 +197,10 @@ class Console { MarbleGame.instance.fpsLimit = scale; MarbleGame.instance.limitingFps = true; log("Set FPS to " + scale); + } else if (cmdType == 'reload') { + #if sys + hl.Api.checkReload(); + #end } else { error("Unknown command"); } diff --git a/src/Marble.hx b/src/Marble.hx index f8c1f7e8..67325e47 100644 --- a/src/Marble.hx +++ b/src/Marble.hx @@ -1784,6 +1784,8 @@ class Marble extends GameObject { this.megaMarbleUseTick = p.megaTick; // this.currentUp = p.gravityDirection; this.level.setUp(cast this, p.gravityDirection, this.level.timeState); + if (this.outOfBounds && !p.oob && this.controllable) + @:privateAccess this.level.playGui.setCenterText(''); this.outOfBounds = p.oob; this.camera.oob = p.oob; if (p.powerUpId == 0x1FF) { diff --git a/src/gui/MPServerListGui.hx b/src/gui/MPServerListGui.hx index 0365aef0..1f436a05 100644 --- a/src/gui/MPServerListGui.hx +++ b/src/gui/MPServerListGui.hx @@ -64,15 +64,15 @@ class MPServerListGui extends GuiImage { case "notready": return ResourceLoader.getResource("data/ui/xbox/NotReady.png", ResourceLoader.getImage, this.imageResources).toTile(); case "pc": - return ResourceLoader.getResource("data/ui/xbox/platform_desktop.png", ResourceLoader.getImage, this.imageResources).toTile(); + return ResourceLoader.getResource("data/ui/xbox/platform_desktop_white.png", ResourceLoader.getImage, this.imageResources).toTile(); case "mac": - return ResourceLoader.getResource("data/ui/xbox/platform_mac.png", ResourceLoader.getImage, this.imageResources).toTile(); + return ResourceLoader.getResource("data/ui/xbox/platform_mac_white.png", ResourceLoader.getImage, this.imageResources).toTile(); case "web": - return ResourceLoader.getResource("data/ui/xbox/platform_web.png", ResourceLoader.getImage, this.imageResources).toTile(); + return ResourceLoader.getResource("data/ui/xbox/platform_web_white.png", ResourceLoader.getImage, this.imageResources).toTile(); case "android": - return ResourceLoader.getResource("data/ui/xbox/platform_android.png", ResourceLoader.getImage, this.imageResources).toTile(); + return ResourceLoader.getResource("data/ui/xbox/platform_android_white.png", ResourceLoader.getImage, this.imageResources).toTile(); case "unknown": - return ResourceLoader.getResource("data/ui/xbox/platform_unknown.png", ResourceLoader.getImage, this.imageResources).toTile(); + return ResourceLoader.getResource("data/ui/xbox/platform_unknown_white.png", ResourceLoader.getImage, this.imageResources).toTile(); } return null; } @@ -84,9 +84,9 @@ class MPServerListGui extends GuiImage { var serverList = new GuiMLTextListCtrl(arial14, serverDisplays, imgLoader); serverList.selectedColor = 0xF29515; - serverList.selectedFillColor = 0xEBEBEB; + serverList.selectedFillColor = 0x858585; serverList.position = new Vector(25, 22); - serverList.extent = new Vector(550, 480); + serverList.extent = new Vector(680, 480); serverList.scrollable = true; serverList.onSelectedFunc = (sel) -> { curSelection = sel; @@ -97,7 +97,7 @@ class MPServerListGui extends GuiImage { var platformToString = ["unknown", "pc", "mac", "web", "android"]; function updateServerListDisplay() { - serverDisplays = ourServerList.map(x -> return '${x.name}'); + serverDisplays = ourServerList.map(x -> return '${x.name}'); serverList.setTexts(serverDisplays); } @@ -124,6 +124,20 @@ class MPServerListGui extends GuiImage { backButton.pressedAction = (e) -> MarbleGame.canvas.setContent(new MainMenuGui()); bottomBar.addChild(backButton); + var refreshButton = new GuiXboxButton("Refresh", 220); + refreshButton.position = new Vector(750, 0); + refreshButton.vertSizing = Bottom; + refreshButton.horizSizing = Right; + refreshButton.pressedAction = (e) -> { + MasterServerClient.connectToMasterServer(() -> { + MasterServerClient.instance.getServerList((servers) -> { + ourServerList = servers; + updateServerListDisplay(); + }); + }); + } + bottomBar.addChild(refreshButton); + var nextButton = new GuiXboxButton("Join", 160); nextButton.position = new Vector(960, 0); nextButton.vertSizing = Bottom;