mirror of
https://github.com/RandomityGuy/MBHaxe.git
synced 2025-10-30 08:11:25 +00:00
fix few js bugs
This commit is contained in:
parent
6945dd4acc
commit
ea2f4d790c
4 changed files with 62 additions and 4 deletions
|
|
@ -185,7 +185,8 @@ class MarbleGame {
|
|||
world.update(dt * Debug.timeScale);
|
||||
}
|
||||
if (((Key.isPressed(Key.ESCAPE) #if js && paused #end) || Gamepad.isPressed(["start"]))
|
||||
&& world.finishTime == null && world._ready) {
|
||||
&& world.finishTime == null
|
||||
&& world._ready) {
|
||||
paused = !paused;
|
||||
handlePauseGame();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -88,17 +88,26 @@ class Marbleland {
|
|||
goldMissions.sort((x, y) -> x.title > y.title ? 1 : (x.title < y.title ? -1 : 0));
|
||||
for (i in 0...goldMissions.length - 1) {
|
||||
@:privateAccess goldMissions[i].next = goldMissions[i + 1];
|
||||
goldMissions[i].index = i;
|
||||
}
|
||||
@:privateAccess goldMissions[goldMissions.length - 1].next = goldMissions[0];
|
||||
goldMissions[goldMissions.length - 1].index = goldMissions.length - 1;
|
||||
case 'platinum':
|
||||
platinumMissions.sort((x, y) -> x.title > y.title ? 1 : (x.title < y.title ? -1 : 0));
|
||||
for (i in 0...platinumMissions.length - 1) {
|
||||
@:privateAccess platinumMissions[i].next = platinumMissions[i + 1];
|
||||
platinumMissions[i].index = i;
|
||||
}
|
||||
@:privateAccess platinumMissions[platinumMissions.length - 1].next = platinumMissions[0];
|
||||
platinumMissions[platinumMissions.length - 1].index = platinumMissions.length - 1;
|
||||
case 'ultra':
|
||||
ultraMissions.sort((x, y) -> x.title > y.title ? 1 : (x.title < y.title ? -1 : 0));
|
||||
for (i in 0...ultraMissions.length - 1) {
|
||||
@:privateAccess ultraMissions[i].next = ultraMissions[i + 1];
|
||||
ultraMissions[i].index = i;
|
||||
}
|
||||
@:privateAccess ultraMissions[ultraMissions.length - 1].next = ultraMissions[0];
|
||||
ultraMissions[ultraMissions.length - 1].index = ultraMissions.length - 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -410,6 +410,55 @@ class ResourceLoader {
|
|||
return null;
|
||||
}
|
||||
|
||||
public static function getImagePixels(path:String) {
|
||||
if (zipFilesystem.exists(path.toLowerCase())) {
|
||||
if (StringTools.endsWith(path.toLowerCase(), ".bmp")) { // Handle bmp specially
|
||||
var bmpContents = zipFilesystem.get(path.toLowerCase());
|
||||
var bmpreader = new format.bmp.Reader(new haxe.io.BytesInput(bmpContents.getBytes()));
|
||||
var bmpdata = bmpreader.read();
|
||||
|
||||
var bbuf = new haxe.io.BytesBuffer();
|
||||
var i = 0;
|
||||
while (i < bmpdata.pixels.length) {
|
||||
bbuf.addByte(bmpdata.pixels.get(i));
|
||||
bbuf.addByte(bmpdata.pixels.get(i + 1));
|
||||
bbuf.addByte(bmpdata.pixels.get(i + 2));
|
||||
bbuf.addByte(1);
|
||||
i += 3;
|
||||
}
|
||||
|
||||
var pixs = new hxd.Pixels(bmpdata.header.width, bmpdata.header.height, bbuf.getBytes(), hxd.PixelFormat.BGRA);
|
||||
return pixs;
|
||||
} else {
|
||||
var img = new hxd.res.Image(zipFilesystem.get(path.toLowerCase()));
|
||||
return img.getPixels();
|
||||
}
|
||||
}
|
||||
if (fileSystem.exists(path)) {
|
||||
if (StringTools.endsWith(path.toLowerCase(), ".bmp")) { // Handle bmp specially
|
||||
var bmpContents = zipFilesystem.get(path.toLowerCase());
|
||||
var bmpreader = new format.bmp.Reader(new haxe.io.BytesInput(bmpContents.getBytes()));
|
||||
var bmpdata = bmpreader.read();
|
||||
|
||||
var bbuf = new haxe.io.BytesBuffer();
|
||||
var i = 0;
|
||||
while (i < bmpdata.pixels.length) {
|
||||
bbuf.addByte(bmpdata.pixels.get(i));
|
||||
bbuf.addByte(bmpdata.pixels.get(i + 1));
|
||||
bbuf.addByte(bmpdata.pixels.get(i + 2));
|
||||
bbuf.addByte(1);
|
||||
i += 3;
|
||||
}
|
||||
var pixs = new hxd.Pixels(bmpdata.header.width, bmpdata.header.height, bbuf.getBytes(), hxd.PixelFormat.BGRA);
|
||||
return pixs;
|
||||
} else {
|
||||
var img = loader.load(path).toImage();
|
||||
return img.getPixels();
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static function getImage(path:String) {
|
||||
#if (js || android)
|
||||
path = StringTools.replace(path, "data/", "");
|
||||
|
|
|
|||
|
|
@ -122,10 +122,9 @@ class Sky extends Object {
|
|||
fnames.push("");
|
||||
Console.error("Skybox image " + filenames[0] + " does not exist");
|
||||
} else {
|
||||
var pixels = ResourceLoader.getTexture(filenames[0]).resource.capturePixels(0, 0);
|
||||
// var pixels = ResourceLoader.getTexture(filenames[0]).resource.capturePixels(0, 0);
|
||||
fnames.push(filenames[0]);
|
||||
// var image = ResourceLoader.getResource(filenames[0], ResourceLoader.getImage, this.imageResources).toBitmap();
|
||||
// var pixels = image.getPixels();
|
||||
var pixels = ResourceLoader.getImagePixels(filenames[0]);
|
||||
skyboxImages.push(pixels);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue