diff --git a/battle_srv/models/room.go b/battle_srv/models/room.go index 8259456..b25d6ad 100644 --- a/battle_srv/models/room.go +++ b/battle_srv/models/room.go @@ -252,7 +252,7 @@ func (pR *Room) ChooseStage() error { } rand.Seed(time.Now().Unix()) - stageNameList := []string{"simple" /* "richsoil" */} + stageNameList := []string{"dungeon" /*"dungeon", "simple", "richsoil" */} chosenStageIndex := rand.Int() % len(stageNameList) // Hardcoded temporarily. -- YFLu pR.StageName = stageNameList[chosenStageIndex] diff --git a/collider_visualizer/main.go b/collider_visualizer/main.go index 67c554a..d972b7e 100644 --- a/collider_visualizer/main.go +++ b/collider_visualizer/main.go @@ -85,7 +85,7 @@ type Game struct { func NewGame() *Game { - // stageName := "simple" // Use this for calibration + // stageName := "simple" // Use this for calibration in isometric orientation // stageName := "richsoil" stageName := "dungeon" stageDiscreteW, stageDiscreteH, stageTileW, stageTileH, playerPosMap, barrierMap, err := parseStage(stageName) diff --git a/dnmshared/tmx_parser.go b/dnmshared/tmx_parser.go index 99d8344..7e9f81e 100644 --- a/dnmshared/tmx_parser.go +++ b/dnmshared/tmx_parser.go @@ -409,7 +409,7 @@ func (pTmxMapIns *TmxMap) continuousObjLayerVecToContinuousMapNodeVec(continuous if "orthogonal" == pTmxMapIns.Orientation { return Vec2D{ X: continuousObjLayerVec.X, - Y: continuousObjLayerVec.Y, + Y: -continuousObjLayerVec.Y, } } var tileRectilinearSize TileRectilinearSize @@ -434,29 +434,24 @@ func (pTmxMapIns *TmxMap) continuousObjLayerVecToContinuousMapNodeVec(continuous } func (pTmxMapIns *TmxMap) continuousObjLayerOffsetToContinuousMapNodePos(continuousObjLayerOffset *Vec2D) Vec2D { + var layerOffset Vec2D if "orthogonal" == pTmxMapIns.Orientation { - layerOffset := Vec2D{ - X: float64(pTmxMapIns.Width*pTmxMapIns.TileWidth) * 0.5, + layerOffset = Vec2D{ + X: -float64(pTmxMapIns.Width*pTmxMapIns.TileWidth) * 0.5, Y: float64(pTmxMapIns.Height*pTmxMapIns.TileHeight) * 0.5, } - return Vec2D{ - X: continuousObjLayerOffset.X - layerOffset.X, - Y: continuousObjLayerOffset.Y - layerOffset.Y, + } else { + // "isometric" == pTmxMapIns.Orientation + layerOffset = Vec2D{ + X: 0, + Y: float64(pTmxMapIns.Height*pTmxMapIns.TileHeight) * 0.5, } } - // "isometric" == pTmxMapIns.Orientation - layerOffset := Vec2D{ - X: 0, - Y: float64(pTmxMapIns.Height*pTmxMapIns.TileHeight) * 0.5, - } - calibratedVec := continuousObjLayerOffset - convertedVec := pTmxMapIns.continuousObjLayerVecToContinuousMapNodeVec(calibratedVec) + convertedVec := pTmxMapIns.continuousObjLayerVecToContinuousMapNodeVec(continuousObjLayerOffset) - toRet := Vec2D{ + return Vec2D{ X: layerOffset.X + convertedVec.X, Y: layerOffset.Y + convertedVec.Y, } - - return toRet } diff --git a/frontend/assets/resources/map/simple/BackgroundMap.meta b/frontend/assets/resources/map/dungeon.meta similarity index 63% rename from frontend/assets/resources/map/simple/BackgroundMap.meta rename to frontend/assets/resources/map/dungeon.meta index f301090..14976f6 100644 --- a/frontend/assets/resources/map/simple/BackgroundMap.meta +++ b/frontend/assets/resources/map/dungeon.meta @@ -1,6 +1,6 @@ { "ver": "1.0.1", - "uuid": "51c54820-d753-4be8-a855-5760eed8f7ef", + "uuid": "5650b341-a420-4d79-a969-39a461e13378", "isSubpackage": false, "subpackageName": "", "subMetas": {} diff --git a/frontend/assets/resources/map/dungeon/map.tmx.meta b/frontend/assets/resources/map/dungeon/map.tmx.meta new file mode 100644 index 0000000..32d2e36 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/map.tmx.meta @@ -0,0 +1,5 @@ +{ + "ver": "2.0.2", + "uuid": "8dbb6475-bf99-4389-b801-e39a6e589019", + "subMetas": {} +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/tiles0.tsx.meta b/frontend/assets/resources/map/dungeon/tiles0.tsx.meta new file mode 100644 index 0000000..1c03664 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/tiles0.tsx.meta @@ -0,0 +1,5 @@ +{ + "ver": "2.0.0", + "uuid": "2e5e29c8-23e1-4d61-b062-955242414301", + "subMetas": {} +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/tiles1.tsx.meta b/frontend/assets/resources/map/dungeon/tiles1.tsx.meta new file mode 100644 index 0000000..86429ba --- /dev/null +++ b/frontend/assets/resources/map/dungeon/tiles1.tsx.meta @@ -0,0 +1,5 @@ +{ + "ver": "2.0.0", + "uuid": "e9172691-ac9b-4c61-878d-0731cf937d42", + "subMetas": {} +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files.meta new file mode 100644 index 0000000..cd59308 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files.meta @@ -0,0 +1,7 @@ +{ + "ver": "1.0.1", + "uuid": "7c0b803c-602b-4be7-a765-a19771d9a8a1", + "isSubpackage": false, + "subpackageName": "", + "subMetas": {} +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/LICENSE.txt.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/LICENSE.txt.meta new file mode 100644 index 0000000..4d028e6 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/LICENSE.txt.meta @@ -0,0 +1,5 @@ +{ + "ver": "2.0.0", + "uuid": "a1a1e271-39fe-4eed-9759-10b0bb9312f1", + "subMetas": {} +} \ No newline at end of file diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/amulet.png.meta similarity index 61% rename from frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.png.meta rename to frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/amulet.png.meta index 5e7d764..c2edc63 100644 --- a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.png.meta +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/amulet.png.meta @@ -1,6 +1,6 @@ { "ver": "2.3.3", - "uuid": "d8e6c175-1f17-48df-a0aa-cdd9785f4d3a", + "uuid": "21ccce17-52d6-4cc6-bda6-476faa53ba9d", "type": "sprite", "wrapMode": "clamp", "filterMode": "bilinear", @@ -9,21 +9,21 @@ "packable": true, "platformSettings": {}, "subMetas": { - "Tile_W256_H256_S01": { + "amulet": { "ver": "1.0.4", - "uuid": "4a23290b-bf5a-4849-ac19-6ebd4b7daa59", - "rawTextureUuid": "d8e6c175-1f17-48df-a0aa-cdd9785f4d3a", + "uuid": "8946357a-148c-408d-a46b-20e62ffcba67", + "rawTextureUuid": "21ccce17-52d6-4cc6-bda6-476faa53ba9d", "trimType": "auto", "trimThreshold": 1, "rotated": false, "offsetX": 0, "offsetY": 0, "trimX": 0, - "trimY": 64, - "width": 1280, - "height": 896, - "rawWidth": 1280, - "rawHeight": 1024, + "trimY": 0, + "width": 32, + "height": 32, + "rawWidth": 32, + "rawHeight": 32, "borderTop": 0, "borderBottom": 0, "borderLeft": 0, diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/arcs1.png.meta similarity index 61% rename from frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.png.meta rename to frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/arcs1.png.meta index 9e0b5d4..f4914a7 100644 --- a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.png.meta +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/arcs1.png.meta @@ -1,6 +1,6 @@ { "ver": "2.3.3", - "uuid": "136d09e9-c33c-45dc-abb7-e367d730c814", + "uuid": "39cf9642-3f75-4c2d-87d0-eb007c87a695", "type": "sprite", "wrapMode": "clamp", "filterMode": "bilinear", @@ -9,21 +9,21 @@ "packable": true, "platformSettings": {}, "subMetas": { - "Tile_W256_H128_S01": { + "arcs1": { "ver": "1.0.4", - "uuid": "7acc48f5-d9c9-4438-8794-57a85590bd97", - "rawTextureUuid": "136d09e9-c33c-45dc-abb7-e367d730c814", + "uuid": "014ef6f6-690e-422c-a19b-c770c204e84a", + "rawTextureUuid": "39cf9642-3f75-4c2d-87d0-eb007c87a695", "trimType": "auto", "trimThreshold": 1, "rotated": false, "offsetX": 0, - "offsetY": 831, + "offsetY": 0, "trimX": 0, "trimY": 0, - "width": 2048, - "height": 386, - "rawWidth": 2048, - "rawHeight": 2048, + "width": 32, + "height": 32, + "rawWidth": 32, + "rawHeight": 32, "borderTop": 0, "borderBottom": 0, "borderLeft": 0, diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/arcs2.png.meta similarity index 56% rename from frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.png.meta rename to frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/arcs2.png.meta index 5f2b118..c887f84 100644 --- a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.png.meta +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/arcs2.png.meta @@ -1,6 +1,6 @@ { "ver": "2.3.3", - "uuid": "74245e28-6cec-4960-ac41-5b482ad8fd13", + "uuid": "576972a2-2f4a-4808-b812-5dd242b33dce", "type": "sprite", "wrapMode": "clamp", "filterMode": "bilinear", @@ -9,21 +9,21 @@ "packable": true, "platformSettings": {}, "subMetas": { - "Tile_W256_H256_S02": { + "arcs2": { "ver": "1.0.4", - "uuid": "8fc46c1f-6fb4-4290-99f3-b773b92312b7", - "rawTextureUuid": "74245e28-6cec-4960-ac41-5b482ad8fd13", + "uuid": "0e8c4639-b65d-4b95-82fc-5ad48d3bfd50", + "rawTextureUuid": "576972a2-2f4a-4808-b812-5dd242b33dce", "trimType": "auto", "trimThreshold": 1, "rotated": false, - "offsetX": 19.5, - "offsetY": 3.5, - "trimX": 89, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, "trimY": 0, - "width": 1409, - "height": 251, - "rawWidth": 1548, - "rawHeight": 258, + "width": 64, + "height": 64, + "rawWidth": 64, + "rawHeight": 64, "borderTop": 0, "borderBottom": 0, "borderLeft": 0, diff --git a/frontend/assets/resources/map/simple/Tile_W300_H300_S01.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/avatars.png.meta similarity index 53% rename from frontend/assets/resources/map/simple/Tile_W300_H300_S01.png.meta rename to frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/avatars.png.meta index c6f885f..cda194b 100644 --- a/frontend/assets/resources/map/simple/Tile_W300_H300_S01.png.meta +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/avatars.png.meta @@ -1,6 +1,6 @@ { "ver": "2.3.3", - "uuid": "c30bd4d7-efdc-410c-8bdf-4a3dfc77bebd", + "uuid": "38f262b5-0a74-49fc-9136-26847b8c42a3", "type": "sprite", "wrapMode": "clamp", "filterMode": "bilinear", @@ -9,21 +9,21 @@ "packable": true, "platformSettings": {}, "subMetas": { - "Tile_W300_H300_S01": { + "avatars": { "ver": "1.0.4", - "uuid": "66b49304-7b5b-442c-92a5-d2b368abf659", - "rawTextureUuid": "c30bd4d7-efdc-410c-8bdf-4a3dfc77bebd", + "uuid": "941e7171-33f4-4745-ba79-33eb6644b207", + "rawTextureUuid": "38f262b5-0a74-49fc-9136-26847b8c42a3", "trimType": "auto", "trimThreshold": 1, "rotated": false, - "offsetX": 4, - "offsetY": -24.5, - "trimX": 97, - "trimY": 85, - "width": 114, - "height": 179, - "rawWidth": 300, - "rawHeight": 300, + "offsetX": -16.5, + "offsetY": 2, + "trimX": 2, + "trimY": 0, + "width": 91, + "height": 28, + "rawWidth": 128, + "rawHeight": 32, "borderTop": 0, "borderBottom": 0, "borderLeft": 0, diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/badges.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/badges.png.meta new file mode 100644 index 0000000..0ddf42e --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/badges.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "1320ed07-36f9-4693-a289-28db09b560cc", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "badges": { + "ver": "1.0.4", + "uuid": "2a7233e1-fc80-427e-b7aa-a5dcfbad26d5", + "rawTextureUuid": "1320ed07-36f9-4693-a289-28db09b560cc", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 128, + "height": 128, + "rawWidth": 128, + "rawHeight": 128, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/banners.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/banners.png.meta new file mode 100644 index 0000000..c813a53 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/banners.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "3f53159d-4e17-473b-acb9-2224362e06bc", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "banners": { + "ver": "1.0.4", + "uuid": "e0d820ad-cdc9-4e61-ba46-9c2f7e20f723", + "rawTextureUuid": "3f53159d-4e17-473b-acb9-2224362e06bc", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 2.5, + "offsetY": 16.5, + "trimX": 5, + "trimY": 4, + "width": 123, + "height": 215, + "rawWidth": 128, + "rawHeight": 256, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/bat.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/bat.png.meta new file mode 100644 index 0000000..b5f0f0c --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/bat.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "103014cf-2c20-431d-ab6d-7e415f1d7d14", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "bat": { + "ver": "1.0.4", + "uuid": "695b8ae4-af59-44d1-8ba4-f9b8f4e73865", + "rawTextureUuid": "103014cf-2c20-431d-ab6d-7e415f1d7d14", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -12, + "offsetY": 0.5, + "trimX": 0, + "trimY": 0, + "width": 104, + "height": 15, + "rawWidth": 128, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/bee.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/bee.png.meta new file mode 100644 index 0000000..c57e91d --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/bee.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "c5ee3282-b52b-4189-83f1-d5be348762c0", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "bee": { + "ver": "1.0.4", + "uuid": "167d6aa3-1261-46bc-a1e5-625e9f85a801", + "rawTextureUuid": "c5ee3282-b52b-4189-83f1-d5be348762c0", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -40.5, + "offsetY": 0, + "trimX": 2, + "trimY": 0, + "width": 171, + "height": 16, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/blacksmith.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/blacksmith.png.meta new file mode 100644 index 0000000..786029e --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/blacksmith.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "98530f0a-4865-4d74-a28b-0bd14166082d", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "blacksmith": { + "ver": "1.0.4", + "uuid": "e23114ca-3751-47af-a23d-731b646d8540", + "rawTextureUuid": "98530f0a-4865-4d74-a28b-0bd14166082d", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -6.5, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 51, + "height": 16, + "rawWidth": 64, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/brute.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/brute.png.meta new file mode 100644 index 0000000..194a7c1 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/brute.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "df2d8e10-e39b-4473-b4da-032a02325a00", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "brute": { + "ver": "1.0.4", + "uuid": "d744524e-e1cd-403b-93d8-b47b9007c29c", + "rawTextureUuid": "df2d8e10-e39b-4473-b4da-032a02325a00", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -61.5, + "offsetY": 0, + "trimX": 1, + "trimY": 0, + "width": 131, + "height": 32, + "rawWidth": 256, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/buffs.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/buffs.png.meta new file mode 100644 index 0000000..a7d4f8b --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/buffs.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "574dc18f-0b47-46d8-a798-43dc24015044", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "buffs": { + "ver": "1.0.4", + "uuid": "5e8ea5e5-d5ec-42df-aa17-46d50961f3b6", + "rawTextureUuid": "574dc18f-0b47-46d8-a798-43dc24015044", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 128, + "height": 16, + "rawWidth": 128, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/burning_fist.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/burning_fist.png.meta new file mode 100644 index 0000000..b8c4419 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/burning_fist.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "9f47ac9c-26ad-4c5b-8d17-b1a35db8d555", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "burning_fist": { + "ver": "1.0.4", + "uuid": "63dc9fd5-2c94-49c6-b2f9-02f6ae7b8047", + "rawTextureUuid": "9f47ac9c-26ad-4c5b-8d17-b1a35db8d555", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -42.5, + "offsetY": 7.5, + "trimX": 3, + "trimY": 0, + "width": 165, + "height": 17, + "rawWidth": 256, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/chrome.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/chrome.png.meta new file mode 100644 index 0000000..3700016 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/chrome.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "0b854bdc-f8a4-45a5-bc1e-c0f5795ff004", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "chrome": { + "ver": "1.0.4", + "uuid": "af308f08-007e-49dd-9a2d-75d7715d7ddc", + "rawTextureUuid": "0b854bdc-f8a4-45a5-bc1e-c0f5795ff004", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -21, + "offsetY": 0.5, + "trimX": 1, + "trimY": 0, + "width": 84, + "height": 63, + "rawWidth": 128, + "rawHeight": 64, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/crab.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/crab.png.meta new file mode 100644 index 0000000..1e71e4b --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/crab.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "37460170-27cf-42f4-8c21-5b8bd17f4621", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "crab": { + "ver": "1.0.4", + "uuid": "d1540c1d-b55d-4942-b9aa-0ce8da8bdb57", + "rawTextureUuid": "37460170-27cf-42f4-8c21-5b8bd17f4621", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -15.5, + "offsetY": 0, + "trimX": 1, + "trimY": 0, + "width": 223, + "height": 16, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/dashboard.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/dashboard.png.meta new file mode 100644 index 0000000..17da90d --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/dashboard.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "fdc6727a-bfad-4c49-8c1f-4e0b4fedd4d0", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "dashboard": { + "ver": "1.0.4", + "uuid": "62eb561c-196a-4039-a8db-dd374a84c42d", + "rawTextureUuid": "fdc6727a-bfad-4c49-8c1f-4e0b4fedd4d0", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -0.5, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 127, + "height": 32, + "rawWidth": 128, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/demon.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/demon.png.meta new file mode 100644 index 0000000..8493399 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/demon.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "c4597854-2b7b-4749-8e54-88aa97fe23eb", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "demon": { + "ver": "1.0.4", + "uuid": "7b333430-e52b-4c71-bbed-d21ea34e033d", + "rawTextureUuid": "c4597854-2b7b-4749-8e54-88aa97fe23eb", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -2, + "offsetY": 1, + "trimX": 1, + "trimY": 0, + "width": 58, + "height": 14, + "rawWidth": 64, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/dm300.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/dm300.png.meta new file mode 100644 index 0000000..872b679 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/dm300.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "1b8b93fe-3db9-4aff-b97b-c1fce944815c", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "dm300": { + "ver": "1.0.4", + "uuid": "28b7fc8c-8677-4606-b332-bbe45b069473", + "rawTextureUuid": "1b8b93fe-3db9-4aff-b97b-c1fce944815c", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -29, + "offsetY": 6, + "trimX": 0, + "trimY": 0, + "width": 198, + "height": 20, + "rawWidth": 256, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/effects.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/effects.png.meta new file mode 100644 index 0000000..48c4d68 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/effects.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "b50481e3-aa9e-4215-9108-386c84672018", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "effects": { + "ver": "1.0.4", + "uuid": "1b429d45-fa6e-4372-86c7-5b09ebec005e", + "rawTextureUuid": "b50481e3-aa9e-4215-9108-386c84672018", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 4.5, + "trimX": 0, + "trimY": 0, + "width": 32, + "height": 23, + "rawWidth": 32, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/elemental.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/elemental.png.meta new file mode 100644 index 0000000..22f1d63 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/elemental.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "5c92e468-fc4b-4146-9146-a3518f519b73", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "elemental": { + "ver": "1.0.4", + "uuid": "479ea4e3-2d75-40e2-955e-892f3083630d", + "rawTextureUuid": "5c92e468-fc4b-4146-9146-a3518f519b73", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -45.5, + "offsetY": 1, + "trimX": 1, + "trimY": 0, + "width": 163, + "height": 14, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/exp_bar.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/exp_bar.png.meta new file mode 100644 index 0000000..aeb7502 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/exp_bar.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "949838a9-a9d7-4379-b42b-52d7d18554e5", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "exp_bar": { + "ver": "1.0.4", + "uuid": "5594f521-6bd5-4047-bb6a-a1efe0018951", + "rawTextureUuid": "949838a9-a9d7-4379-b42b-52d7d18554e5", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 16, + "height": 1, + "rawWidth": 16, + "rawHeight": 1, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/eye.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/eye.png.meta new file mode 100644 index 0000000..d75a291 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/eye.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "a0855418-f51e-4a37-80f3-7cd77b42a191", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "eye": { + "ver": "1.0.4", + "uuid": "7253ac3b-75d8-4adb-ab33-40b710193c2d", + "rawTextureUuid": "a0855418-f51e-4a37-80f3-7cd77b42a191", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -48, + "offsetY": 7, + "trimX": 0, + "trimY": 0, + "width": 160, + "height": 18, + "rawWidth": 256, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/fireball.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/fireball.png.meta new file mode 100644 index 0000000..b8a6f6b --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/fireball.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "a9ccd853-b739-4ca3-a789-6641888510a5", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "fireball": { + "ver": "1.0.4", + "uuid": "ea2ffab5-4162-44fc-b1cd-1b20ae02bff7", + "rawTextureUuid": "a9ccd853-b739-4ca3-a789-6641888510a5", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -0.5, + "offsetY": 0.5, + "trimX": 4, + "trimY": 0, + "width": 119, + "height": 31, + "rawWidth": 128, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font15x.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font15x.png.meta new file mode 100644 index 0000000..e81da20 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font15x.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "bddfb6c0-cce9-45ff-94d1-32cf98d5c485", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "font15x": { + "ver": "1.0.4", + "uuid": "1f178944-57cf-4150-8c33-2e34083dcc0e", + "rawTextureUuid": "bddfb6c0-cce9-45ff-94d1-32cf98d5c485", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -171, + "offsetY": 2, + "trimX": 5, + "trimY": 0, + "width": 672, + "height": 12, + "rawWidth": 1024, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font1x.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font1x.png.meta new file mode 100644 index 0000000..6a6e3ff --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font1x.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "0a43f894-e0e0-43ff-9aff-dc364d4b36b7", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "font1x": { + "ver": "1.0.4", + "uuid": "2bb0b39b-c61e-43ed-8f3b-0f2f76fa51e5", + "rawTextureUuid": "0a43f894-e0e0-43ff-9aff-dc364d4b36b7", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -231, + "offsetY": 0, + "trimX": 3, + "trimY": 0, + "width": 556, + "height": 8, + "rawWidth": 1024, + "rawHeight": 8, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font25x.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font25x.png.meta new file mode 100644 index 0000000..fdb5d16 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font25x.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "dca181a9-2874-4431-940a-bed999e799ff", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "font25x": { + "ver": "1.0.4", + "uuid": "a624e0c0-3b62-4031-ba1e-1630e41fe503", + "rawTextureUuid": "dca181a9-2874-4431-940a-bed999e799ff", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -67.5, + "offsetY": 7.5, + "trimX": 7, + "trimY": 0, + "width": 875, + "height": 17, + "rawWidth": 1024, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font2x.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font2x.png.meta new file mode 100644 index 0000000..119d193 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font2x.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "49f6d3f7-4ca5-4f2a-8004-4df57ff0bbcb", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "font2x": { + "ver": "1.0.4", + "uuid": "3692c265-cd7f-48ca-8990-48652f88e76c", + "rawTextureUuid": "49f6d3f7-4ca5-4f2a-8004-4df57ff0bbcb", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -133.5, + "offsetY": 1, + "trimX": 6, + "trimY": 0, + "width": 745, + "height": 14, + "rawWidth": 1024, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font3x.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font3x.png.meta new file mode 100644 index 0000000..56e6666 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/font3x.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "9aafd233-eaa7-41fc-a399-6b597a1e20f8", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "font3x": { + "ver": "1.0.4", + "uuid": "f177acc7-b5a4-403e-85b3-9e31a76e3ef6", + "rawTextureUuid": "9aafd233-eaa7-41fc-a399-6b597a1e20f8", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -413.5, + "offsetY": 5, + "trimX": 11, + "trimY": 0, + "width": 1199, + "height": 22, + "rawWidth": 2048, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/ghost.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/ghost.png.meta new file mode 100644 index 0000000..e2eb7cc --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/ghost.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "2ca016e1-71e0-4a41-97b3-e1c9444d6f32", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "ghost": { + "ver": "1.0.4", + "uuid": "35196fa8-9009-471c-ae0c-86c4257fd54f", + "rawTextureUuid": "2ca016e1-71e0-4a41-97b3-e1c9444d6f32", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -2, + "offsetY": 0, + "trimX": 0, + "trimY": 2, + "width": 28, + "height": 12, + "rawWidth": 32, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/gnoll.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/gnoll.png.meta new file mode 100644 index 0000000..0e534c1 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/gnoll.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "4a94222d-6e7f-4feb-8804-6ac9720002cf", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "gnoll": { + "ver": "1.0.4", + "uuid": "b2d6b85e-de6a-46ca-a1ef-e1819624a24b", + "rawTextureUuid": "4a94222d-6e7f-4feb-8804-6ac9720002cf", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -61.5, + "offsetY": 0.5, + "trimX": 1, + "trimY": 0, + "width": 131, + "height": 15, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/golem.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/golem.png.meta new file mode 100644 index 0000000..e717280 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/golem.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "7508662b-0e9f-4dfe-9184-fe92c1ff3c14", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "golem": { + "ver": "1.0.4", + "uuid": "aaadb57e-c7a0-4e10-b14e-8f54fd90af6d", + "rawTextureUuid": "7508662b-0e9f-4dfe-9184-fe92c1ff3c14", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -15.5, + "offsetY": 0, + "trimX": 2, + "trimY": 0, + "width": 221, + "height": 16, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/goo.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/goo.png.meta new file mode 100644 index 0000000..ebd4bcd --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/goo.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "17e7619c-a4f1-49e3-82bf-50aa156432a7", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "goo": { + "ver": "1.0.4", + "uuid": "40f6855f-aee8-4799-a084-69511f39e938", + "rawTextureUuid": "17e7619c-a4f1-49e3-82bf-50aa156432a7", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -57.5, + "offsetY": 1, + "trimX": 3, + "trimY": 0, + "width": 135, + "height": 14, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/hp_bar.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/hp_bar.png.meta new file mode 100644 index 0000000..4d33911 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/hp_bar.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "8134538e-5934-48be-b59e-7590929d65b4", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "hp_bar": { + "ver": "1.0.4", + "uuid": "f1adac20-7fca-4d3e-90ac-e07914a73620", + "rawTextureUuid": "8134538e-5934-48be-b59e-7590929d65b4", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -8.5, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 47, + "height": 4, + "rawWidth": 64, + "rawHeight": 4, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/icons.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/icons.png.meta new file mode 100644 index 0000000..d5fd67a --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/icons.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "eeb70872-7837-4e3b-8f99-4c9ee3814c1a", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "icons": { + "ver": "1.0.4", + "uuid": "86d07d64-7c24-48f7-8d0d-33d0145329be", + "rawTextureUuid": "eeb70872-7837-4e3b-8f99-4c9ee3814c1a", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -1, + "offsetY": 1.5, + "trimX": 0, + "trimY": 0, + "width": 126, + "height": 61, + "rawWidth": 128, + "rawHeight": 64, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/items.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/items.png.meta new file mode 100644 index 0000000..671747e --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/items.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "97289bf5-ad9d-460e-aaff-acb004d89a83", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "items": { + "ver": "1.0.4", + "uuid": "edb89278-1b5d-4b6d-b44e-573dd9322a0c", + "rawTextureUuid": "97289bf5-ad9d-460e-aaff-acb004d89a83", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 128, + "height": 256, + "rawWidth": 128, + "rawHeight": 256, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/king.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/king.png.meta new file mode 100644 index 0000000..26898a1 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/king.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "4615956f-9e7b-47da-b5f0-26577da82477", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "king": { + "ver": "1.0.4", + "uuid": "8818e0b9-3a6d-4872-a20d-0685a669887f", + "rawTextureUuid": "4615956f-9e7b-47da-b5f0-26577da82477", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 1, + "trimY": 0, + "width": 254, + "height": 16, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/large_buffs.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/large_buffs.png.meta new file mode 100644 index 0000000..ff604c8 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/large_buffs.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "ba8b7b9f-3eda-4def-824c-dee0329de839", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "large_buffs": { + "ver": "1.0.4", + "uuid": "de6b1c73-a9b8-4c2e-a995-6ae2eae1ebc8", + "rawTextureUuid": "ba8b7b9f-3eda-4def-824c-dee0329de839", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 256, + "height": 32, + "rawWidth": 256, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/larva.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/larva.png.meta new file mode 100644 index 0000000..9868ac5 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/larva.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "11c790e6-89aa-479c-a940-e8cd04d55a42", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "larva": { + "ver": "1.0.4", + "uuid": "c2b5d2c9-5d32-49f2-838f-58668333855e", + "rawTextureUuid": "11c790e6-89aa-479c-a940-e8cd04d55a42", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -16, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 96, + "height": 8, + "rawWidth": 128, + "rawHeight": 8, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/locked_badge.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/locked_badge.png.meta new file mode 100644 index 0000000..4943c00 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/locked_badge.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "3aac19d3-f407-4db1-9d16-c109b5e03d1f", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "locked_badge": { + "ver": "1.0.4", + "uuid": "aa6183c9-8033-4237-bdbd-c20f25ba45ee", + "rawTextureUuid": "3aac19d3-f407-4db1-9d16-c109b5e03d1f", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 16, + "height": 16, + "rawWidth": 16, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/mage.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/mage.png.meta new file mode 100644 index 0000000..6634f5c --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/mage.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "8533a5ba-6030-4ffb-8c0c-d01a9f53d1a4", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "mage": { + "ver": "1.0.4", + "uuid": "4cfc5971-aaf3-45ce-8d1e-de166ebca3f4", + "rawTextureUuid": "8533a5ba-6030-4ffb-8c0c-d01a9f53d1a4", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -1.5, + "offsetY": 11.5, + "trimX": 1, + "trimY": 0, + "width": 251, + "height": 105, + "rawWidth": 256, + "rawHeight": 128, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/mimic.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/mimic.png.meta new file mode 100644 index 0000000..30b9d8f --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/mimic.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "28339770-e9c7-4b7c-acd1-e0cd9bfdb893", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "mimic": { + "ver": "1.0.4", + "uuid": "5c6021ba-ae75-4bbf-b3cf-feb783a35a75", + "rawTextureUuid": "28339770-e9c7-4b7c-acd1-e0cd9bfdb893", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -48, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 160, + "height": 16, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/monk.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/monk.png.meta new file mode 100644 index 0000000..b8313da --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/monk.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "0cdf178c-7366-4a76-aaea-a44f860b7842", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "monk": { + "ver": "1.0.4", + "uuid": "cc722a7d-8a10-495e-9778-045ac9f0b34e", + "rawTextureUuid": "0cdf178c-7366-4a76-aaea-a44f860b7842", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -1.5, + "offsetY": 2, + "trimX": 1, + "trimY": 0, + "width": 251, + "height": 28, + "rawWidth": 256, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/pet.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/pet.png.meta new file mode 100644 index 0000000..d361e32 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/pet.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "9a79510f-ccf9-4285-bbd8-3f887e35fd7b", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "pet": { + "ver": "1.0.4", + "uuid": "d39870cd-3693-4e82-aaa1-c0d917a1ce13", + "rawTextureUuid": "9a79510f-ccf9-4285-bbd8-3f887e35fd7b", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -8.5, + "offsetY": 0, + "trimX": 1, + "trimY": 0, + "width": 109, + "height": 16, + "rawWidth": 128, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/piranha.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/piranha.png.meta new file mode 100644 index 0000000..1405829 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/piranha.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "2d9afe21-7336-40db-b752-88f90a897ed0", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "piranha": { + "ver": "1.0.4", + "uuid": "cd1b45bc-7b89-458c-91e0-c841f4ed712d", + "rawTextureUuid": "2d9afe21-7336-40db-b752-88f90a897ed0", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -37.5, + "offsetY": 0.5, + "trimX": 1, + "trimY": 0, + "width": 179, + "height": 15, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/plants.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/plants.png.meta new file mode 100644 index 0000000..69f9162 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/plants.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "77e348a7-6179-4ea2-9629-f6838944d57a", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "plants": { + "ver": "1.0.4", + "uuid": "71e50a01-7fb9-4dd1-9809-315aafae28ca", + "rawTextureUuid": "77e348a7-6179-4ea2-9629-f6838944d57a", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0.5, + "offsetY": 0, + "trimX": 1, + "trimY": 0, + "width": 127, + "height": 16, + "rawWidth": 128, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/ranger.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/ranger.png.meta new file mode 100644 index 0000000..5f6b2ec --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/ranger.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "fad2cd4a-0a8d-4afd-be70-b301b1a44a99", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "ranger": { + "ver": "1.0.4", + "uuid": "9d221b3a-b542-4dcd-ab0a-ff4d50c10319", + "rawTextureUuid": "fad2cd4a-0a8d-4afd-be70-b301b1a44a99", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -1.5, + "offsetY": 11.5, + "trimX": 1, + "trimY": 0, + "width": 251, + "height": 105, + "rawWidth": 256, + "rawHeight": 128, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/rat.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/rat.png.meta new file mode 100644 index 0000000..a85b23e --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/rat.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "5d50eca8-e28e-4897-8379-d2948d945ea6", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "rat": { + "ver": "1.0.4", + "uuid": "7f08cc65-6328-40f6-a031-4dc8d23f3397", + "rawTextureUuid": "5d50eca8-e28e-4897-8379-d2948d945ea6", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -8, + "offsetY": 1, + "trimX": 0, + "trimY": 0, + "width": 240, + "height": 30, + "rawWidth": 256, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/ratking.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/ratking.png.meta new file mode 100644 index 0000000..cbf6c46 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/ratking.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "4914fd7d-361d-4c0f-86cb-8be76dec9f97", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "ratking": { + "ver": "1.0.4", + "uuid": "95adc509-8d4f-4844-8d6d-afb5496c9363", + "rawTextureUuid": "4914fd7d-361d-4c0f-86cb-8be76dec9f97", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -8.5, + "offsetY": 0, + "trimX": 1, + "trimY": 0, + "width": 109, + "height": 16, + "rawWidth": 128, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/readme.txt.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/readme.txt.meta new file mode 100644 index 0000000..f3bc1f8 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/readme.txt.meta @@ -0,0 +1,5 @@ +{ + "ver": "2.0.0", + "uuid": "c276c792-58bb-403c-aab0-e14da1b3aa4d", + "subMetas": {} +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/rogue.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/rogue.png.meta new file mode 100644 index 0000000..bb9cf1b --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/rogue.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "e385d039-f5fd-42b4-87e1-49e29e665a54", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "rogue": { + "ver": "1.0.4", + "uuid": "010371c7-5b4d-490c-8c1b-d22f835913b6", + "rawTextureUuid": "e385d039-f5fd-42b4-87e1-49e29e665a54", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -1.5, + "offsetY": 11, + "trimX": 1, + "trimY": 1, + "width": 251, + "height": 104, + "rawWidth": 256, + "rawHeight": 128, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/rotting_fist.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/rotting_fist.png.meta new file mode 100644 index 0000000..b103827 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/rotting_fist.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "b4471062-7bd9-4137-b806-dbec58e76d6b", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "rotting_fist": { + "ver": "1.0.4", + "uuid": "bbe7aa5d-9ef6-4139-8634-fe7ad4e9a9b6", + "rawTextureUuid": "b4471062-7bd9-4137-b806-dbec58e76d6b", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -2.5, + "offsetY": 7.5, + "trimX": 3, + "trimY": 0, + "width": 117, + "height": 17, + "rawWidth": 128, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/scorpio.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/scorpio.png.meta new file mode 100644 index 0000000..71af1ea --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/scorpio.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "bfa778c5-5059-4453-83e9-b742e3722923", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "scorpio": { + "ver": "1.0.4", + "uuid": "46ecbb9e-6903-48ab-96e4-2f74b22ed4c4", + "rawTextureUuid": "bfa778c5-5059-4453-83e9-b742e3722923", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -29.5, + "offsetY": 15, + "trimX": 0, + "trimY": 0, + "width": 197, + "height": 34, + "rawWidth": 256, + "rawHeight": 64, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/shadow.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/shadow.png.meta new file mode 100644 index 0000000..51a2165 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/shadow.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "5b616f9d-b901-416f-8fa7-e3848e5befcf", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "shadow": { + "ver": "1.0.4", + "uuid": "85a7b494-9391-470b-87cb-b8743f419aa8", + "rawTextureUuid": "5b616f9d-b901-416f-8fa7-e3848e5befcf", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 1, + "trimY": 1, + "width": 2, + "height": 2, + "rawWidth": 4, + "rawHeight": 4, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/shaman.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/shaman.png.meta new file mode 100644 index 0000000..86f0788 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/shaman.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "a02a2b71-1991-4b14-b573-258b78531ae0", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "shaman": { + "ver": "1.0.4", + "uuid": "785162da-33f0-40b1-958b-8b4cf3ceeea8", + "rawTextureUuid": "a02a2b71-1991-4b14-b573-258b78531ae0", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -61.5, + "offsetY": 0.5, + "trimX": 1, + "trimY": 0, + "width": 131, + "height": 15, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/sheep.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/sheep.png.meta new file mode 100644 index 0000000..87893eb --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/sheep.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "30019d91-08e8-4325-8202-4eb30147e4ff", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "sheep": { + "ver": "1.0.4", + "uuid": "911a7bcd-9904-452b-998a-07edb6ebbedd", + "rawTextureUuid": "30019d91-08e8-4325-8202-4eb30147e4ff", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0.5, + "trimX": 0, + "trimY": 0, + "width": 64, + "height": 15, + "rawWidth": 64, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/shopkeeper.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/shopkeeper.png.meta new file mode 100644 index 0000000..9d3db49 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/shopkeeper.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "cea2b28f-d15b-4752-9785-97c71970075b", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "shopkeeper": { + "ver": "1.0.4", + "uuid": "b7bcbd9a-e520-4672-98f1-db5fc060a0c6", + "rawTextureUuid": "cea2b28f-d15b-4752-9785-97c71970075b", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -2, + "offsetY": 1, + "trimX": 0, + "trimY": 0, + "width": 28, + "height": 14, + "rawWidth": 32, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/skeleton.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/skeleton.png.meta new file mode 100644 index 0000000..d50d26b --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/skeleton.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "fea12d92-e77a-41cc-bf28-a34037639fd4", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "skeleton": { + "ver": "1.0.4", + "uuid": "33db7070-b30b-4483-9fa6-ca71f54d1228", + "rawTextureUuid": "fea12d92-e77a-41cc-bf28-a34037639fd4", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -25, + "offsetY": 0.5, + "trimX": 2, + "trimY": 0, + "width": 202, + "height": 15, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/specks.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/specks.png.meta new file mode 100644 index 0000000..4051db7 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/specks.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "f4dddbb7-01b9-4640-b463-08aad2d10d5f", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "specks": { + "ver": "1.0.4", + "uuid": "f4cbaf99-6441-413f-b8e0-7dc48c44fe3a", + "rawTextureUuid": "f4dddbb7-01b9-4640-b463-08aad2d10d5f", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -12, + "offsetY": 0.5, + "trimX": 0, + "trimY": 0, + "width": 104, + "height": 7, + "rawWidth": 128, + "rawHeight": 8, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/spell_icons.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/spell_icons.png.meta new file mode 100644 index 0000000..d178bf4 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/spell_icons.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "2859f7c1-a8ec-45b6-9724-82f2ef604f6c", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "spell_icons": { + "ver": "1.0.4", + "uuid": "5e47f163-683c-4dc0-93b2-782e456e343b", + "rawTextureUuid": "2859f7c1-a8ec-45b6-9724-82f2ef604f6c", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -1, + "offsetY": 0, + "trimX": 0, + "trimY": 1, + "width": 62, + "height": 14, + "rawWidth": 64, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/spinner.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/spinner.png.meta new file mode 100644 index 0000000..c560b2a --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/spinner.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "f7c29de6-05a3-4dcb-b3a2-b3553fcbfca2", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "spinner": { + "ver": "1.0.4", + "uuid": "04c111eb-4136-4739-9c24-b712ce4591ff", + "rawTextureUuid": "f7c29de6-05a3-4dcb-b3a2-b3553fcbfca2", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -47, + "offsetY": 0, + "trimX": 2, + "trimY": 0, + "width": 158, + "height": 16, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/statue.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/statue.png.meta new file mode 100644 index 0000000..1c6a552 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/statue.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "0c34b531-e3f7-4370-ab60-f9c3db13c55f", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "statue": { + "ver": "1.0.4", + "uuid": "07aa7406-77f6-40e6-bb4f-93ca84205f80", + "rawTextureUuid": "0c34b531-e3f7-4370-ab60-f9c3db13c55f", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -26, + "offsetY": 0.5, + "trimX": 1, + "trimY": 0, + "width": 202, + "height": 15, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/status_pane.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/status_pane.png.meta new file mode 100644 index 0000000..082acae --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/status_pane.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "30100667-37a7-470b-b4d6-846890b3a0f1", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "status_pane": { + "ver": "1.0.4", + "uuid": "15a977df-f994-4e8d-b5ab-156843de4627", + "rawTextureUuid": "30100667-37a7-470b-b4d6-846890b3a0f1", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 14, + "trimX": 0, + "trimY": 0, + "width": 128, + "height": 36, + "rawWidth": 128, + "rawHeight": 64, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/succubus.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/succubus.png.meta new file mode 100644 index 0000000..97dbf4f --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/succubus.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "8a493967-7723-4fd0-b7bc-14b762e6add4", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "succubus": { + "ver": "1.0.4", + "uuid": "9da2f8c3-4d5c-491e-b306-9f20aca3bc53", + "rawTextureUuid": "8a493967-7723-4fd0-b7bc-14b762e6add4", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -55.5, + "offsetY": 0.5, + "trimX": 1, + "trimY": 0, + "width": 143, + "height": 15, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/surface.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/surface.png.meta new file mode 100644 index 0000000..415623b --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/surface.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "ee69e7ab-a8d1-4038-96a5-041539d322eb", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "surface": { + "ver": "1.0.4", + "uuid": "2365b372-0a3b-4f1d-a3f3-9d0c898c3b55", + "rawTextureUuid": "ee69e7ab-a8d1-4038-96a5-041539d322eb", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -52, + "offsetY": 1.5, + "trimX": 0, + "trimY": 0, + "width": 152, + "height": 125, + "rawWidth": 256, + "rawHeight": 128, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/swarm.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/swarm.png.meta new file mode 100644 index 0000000..22c3547 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/swarm.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "a6254ba1-a7c3-403b-b449-0f09edd5733b", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "swarm": { + "ver": "1.0.4", + "uuid": "60ef4d65-448a-4a9a-b853-130c629895ee", + "rawTextureUuid": "a6254ba1-a7c3-403b-b449-0f09edd5733b", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -9, + "offsetY": 0, + "trimX": 2, + "trimY": 0, + "width": 234, + "height": 16, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tengu.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tengu.png.meta new file mode 100644 index 0000000..edcf557 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tengu.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "1d2f9e16-9443-47dd-835d-7f62716aa249", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "tengu": { + "ver": "1.0.4", + "uuid": "fa084a92-eb45-4746-9f5b-21e3d8cb42ef", + "rawTextureUuid": "1d2f9e16-9443-47dd-835d-7f62716aa249", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -51, + "offsetY": 0, + "trimX": 1, + "trimY": 0, + "width": 152, + "height": 16, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/thief.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/thief.png.meta new file mode 100644 index 0000000..76bfcbc --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/thief.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "7dfabd0c-ee4b-4672-ad65-29fbdd99c35e", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "thief": { + "ver": "1.0.4", + "uuid": "263e8bc6-65aa-465c-9fcc-a3a916ad19c9", + "rawTextureUuid": "7dfabd0c-ee4b-4672-ad65-29fbdd99c35e", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -49.5, + "offsetY": 3, + "trimX": 1, + "trimY": 0, + "width": 155, + "height": 26, + "rawWidth": 256, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles0.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles0.png.meta new file mode 100644 index 0000000..4ce0e34 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles0.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "7857aafe-db70-4c55-9084-508de2c858ec", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "tiles0": { + "ver": "1.0.4", + "uuid": "0faa3c88-ad1a-42d6-b28e-b20ba9bd5f27", + "rawTextureUuid": "7857aafe-db70-4c55-9084-508de2c858ec", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 256, + "height": 64, + "rawWidth": 256, + "rawHeight": 64, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles1.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles1.png.meta new file mode 100644 index 0000000..ac283ad --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles1.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "fde90d10-7748-462e-a4a2-de42260c4b40", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "tiles1": { + "ver": "1.0.4", + "uuid": "2f58ff96-a66b-4b40-b788-38596cce39ce", + "rawTextureUuid": "fde90d10-7748-462e-a4a2-de42260c4b40", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 256, + "height": 64, + "rawWidth": 256, + "rawHeight": 64, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles2.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles2.png.meta new file mode 100644 index 0000000..f8fe279 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles2.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "c37c9c22-f69a-4d96-a7e9-73e2cc92a0ca", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "tiles2": { + "ver": "1.0.4", + "uuid": "5f119db9-438b-4c42-9df4-bb3a19ea2266", + "rawTextureUuid": "c37c9c22-f69a-4d96-a7e9-73e2cc92a0ca", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 256, + "height": 64, + "rawWidth": 256, + "rawHeight": 64, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles3.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles3.png.meta new file mode 100644 index 0000000..45493c4 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles3.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "324facb6-de6e-462e-aaba-10d73c3c2be7", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "tiles3": { + "ver": "1.0.4", + "uuid": "f14a74de-488f-447e-9b6a-46413879e537", + "rawTextureUuid": "324facb6-de6e-462e-aaba-10d73c3c2be7", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 256, + "height": 64, + "rawWidth": 256, + "rawHeight": 64, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles4.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles4.png.meta new file mode 100644 index 0000000..dc83b5d --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/tiles4.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "7ac2a141-d0ce-4165-bfc2-d3a27ab754e1", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "tiles4": { + "ver": "1.0.4", + "uuid": "fad41331-14e2-4369-b44e-761d27f6672a", + "rawTextureUuid": "7ac2a141-d0ce-4165-bfc2-d3a27ab754e1", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 256, + "height": 64, + "rawWidth": 256, + "rawHeight": 64, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/toolbar.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/toolbar.png.meta new file mode 100644 index 0000000..cdd18af --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/toolbar.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "6cb43a86-03f8-4ee4-b2cc-7dfee44ffb56", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "toolbar": { + "ver": "1.0.4", + "uuid": "39af1aad-8a9e-4e74-a183-43d2517dd23b", + "rawTextureUuid": "6cb43a86-03f8-4ee4-b2cc-7dfee44ffb56", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -11.5, + "offsetY": -3.5, + "trimX": 0, + "trimY": 7, + "width": 105, + "height": 25, + "rawWidth": 128, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/undead.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/undead.png.meta new file mode 100644 index 0000000..c96769a --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/undead.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "0ddd60f6-ec12-4cf3-a4dc-b446d26ed32a", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "undead": { + "ver": "1.0.4", + "uuid": "7f0a1297-3604-4e5a-bee5-d5ea8242ce9e", + "rawTextureUuid": "0ddd60f6-ec12-4cf3-a4dc-b446d26ed32a", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -25, + "offsetY": 0, + "trimX": 2, + "trimY": 0, + "width": 202, + "height": 16, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/wandmaker.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/wandmaker.png.meta new file mode 100644 index 0000000..3aa1dbc --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/wandmaker.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "215739c9-ba6d-43d6-b885-eb08b1e5484c", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "wandmaker": { + "ver": "1.0.4", + "uuid": "5b4e9070-04b3-4bab-8f79-63581ecfb7e9", + "rawTextureUuid": "215739c9-ba6d-43d6-b885-eb08b1e5484c", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -7.5, + "offsetY": 1, + "trimX": 2, + "trimY": 0, + "width": 45, + "height": 14, + "rawWidth": 64, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/warlock.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/warlock.png.meta new file mode 100644 index 0000000..a37912f --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/warlock.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "62e6fcea-0e29-4cba-9f99-b6df0514706c", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "warlock": { + "ver": "1.0.4", + "uuid": "f052834d-bf3b-4a81-a4cd-ba892d07f839", + "rawTextureUuid": "62e6fcea-0e29-4cba-9f99-b6df0514706c", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -62, + "offsetY": 0.5, + "trimX": 1, + "trimY": 0, + "width": 130, + "height": 15, + "rawWidth": 256, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/warrior.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/warrior.png.meta new file mode 100644 index 0000000..2bcd92d --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/warrior.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "b3fde93a-94a0-4cef-8169-de4ccfcb349c", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "warrior": { + "ver": "1.0.4", + "uuid": "6bda975c-f0d4-4cb3-84b2-af461756396f", + "rawTextureUuid": "b3fde93a-94a0-4cef-8169-de4ccfcb349c", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -1.5, + "offsetY": 11.5, + "trimX": 1, + "trimY": 0, + "width": 251, + "height": 105, + "rawWidth": 256, + "rawHeight": 128, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water0.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water0.png.meta new file mode 100644 index 0000000..0eb05e7 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water0.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "44d0f4e6-19e9-41f6-be25-d54f2788b396", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "water0": { + "ver": "1.0.4", + "uuid": "cbe8d15a-983e-4d78-bf4b-2e1cf913d79b", + "rawTextureUuid": "44d0f4e6-19e9-41f6-be25-d54f2788b396", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 32, + "height": 32, + "rawWidth": 32, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water1.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water1.png.meta new file mode 100644 index 0000000..fe5618d --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water1.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "20b26615-f012-4487-8e6b-8a657ea497cc", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "water1": { + "ver": "1.0.4", + "uuid": "5dbdd5f2-be3f-49c5-9edb-223030acf4e7", + "rawTextureUuid": "20b26615-f012-4487-8e6b-8a657ea497cc", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 32, + "height": 32, + "rawWidth": 32, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water2.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water2.png.meta new file mode 100644 index 0000000..fc5d7cc --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water2.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "7a8abb97-b5c4-40c6-805d-533e813e1176", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "water2": { + "ver": "1.0.4", + "uuid": "4b793ca8-cd11-4e9f-9c2d-3b1a7d9cc9ec", + "rawTextureUuid": "7a8abb97-b5c4-40c6-805d-533e813e1176", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 32, + "height": 32, + "rawWidth": 32, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water3.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water3.png.meta new file mode 100644 index 0000000..43db166 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water3.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "e7aaefbe-ad7e-45b2-a975-67be0b6c1938", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "water3": { + "ver": "1.0.4", + "uuid": "4578db29-60a4-4381-a6d1-3dc8c0798c99", + "rawTextureUuid": "e7aaefbe-ad7e-45b2-a975-67be0b6c1938", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 32, + "height": 32, + "rawWidth": 32, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water4.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water4.png.meta new file mode 100644 index 0000000..d4adb00 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/water4.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "0cfbb5e4-803d-477a-ab9e-02cbb3cacc2b", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "water4": { + "ver": "1.0.4", + "uuid": "fcf28500-4d91-4188-9931-d47746ba28fb", + "rawTextureUuid": "0cfbb5e4-803d-477a-ab9e-02cbb3cacc2b", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": 0, + "offsetY": 0, + "trimX": 0, + "trimY": 0, + "width": 32, + "height": 32, + "rawWidth": 32, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/wraith.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/wraith.png.meta new file mode 100644 index 0000000..bece7fa --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/wraith.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "8fccff14-0eb0-4bf2-818b-3e2715752f6f", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "wraith": { + "ver": "1.0.4", + "uuid": "f39014a3-b5f4-4e72-89a4-f0d66c3c97c5", + "rawTextureUuid": "8fccff14-0eb0-4bf2-818b-3e2715752f6f", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -9.5, + "offsetY": 1, + "trimX": 0, + "trimY": 0, + "width": 109, + "height": 14, + "rawWidth": 128, + "rawHeight": 16, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/yog.png.meta b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/yog.png.meta new file mode 100644 index 0000000..cbc7592 --- /dev/null +++ b/frontend/assets/resources/map/dungeon/watabou_pixel_dungeon_orig_files/yog.png.meta @@ -0,0 +1,34 @@ +{ + "ver": "2.3.3", + "uuid": "59b24711-ad20-4081-98a0-dd5f749a1adc", + "type": "sprite", + "wrapMode": "clamp", + "filterMode": "bilinear", + "premultiplyAlpha": false, + "genMipmaps": false, + "packable": true, + "platformSettings": {}, + "subMetas": { + "yog": { + "ver": "1.0.4", + "uuid": "138ffbe2-ef69-497a-bdb3-10960b9009cb", + "rawTextureUuid": "59b24711-ad20-4081-98a0-dd5f749a1adc", + "trimType": "auto", + "trimThreshold": 1, + "rotated": false, + "offsetX": -28, + "offsetY": 5.5, + "trimX": 0, + "trimY": 2, + "width": 200, + "height": 17, + "rawWidth": 256, + "rawHeight": 32, + "borderTop": 0, + "borderBottom": 0, + "borderLeft": 0, + "borderRight": 0, + "subMetas": {} + } + } +} \ No newline at end of file diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.png b/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.png deleted file mode 100644 index b651445..0000000 Binary files a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.png and /dev/null differ diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.tsx b/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.tsx deleted file mode 100644 index 2d6b910..0000000 --- a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.tsx +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.tsx.meta b/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.tsx.meta deleted file mode 100644 index 7bf46fd..0000000 --- a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H128_S01.tsx.meta +++ /dev/null @@ -1,5 +0,0 @@ -{ - "ver": "2.0.0", - "uuid": "df775ad6-885e-411b-8b2a-f4bcf70b4fbf", - "subMetas": {} -} \ No newline at end of file diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.png b/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.png deleted file mode 100644 index 45aa8ef..0000000 Binary files a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.png and /dev/null differ diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.tsx b/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.tsx deleted file mode 100644 index b57d090..0000000 --- a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.tsx +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.tsx.meta b/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.tsx.meta deleted file mode 100644 index 2d0a3ba..0000000 --- a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S01.tsx.meta +++ /dev/null @@ -1,5 +0,0 @@ -{ - "ver": "2.0.0", - "uuid": "81508f64-031d-4d00-9aa0-8e9841907d0a", - "subMetas": {} -} \ No newline at end of file diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.png b/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.png deleted file mode 100644 index 8ddf7ff..0000000 Binary files a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.png and /dev/null differ diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.tsx b/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.tsx deleted file mode 100644 index 0f34291..0000000 --- a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.tsx +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.tsx.meta b/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.tsx.meta deleted file mode 100644 index 64e0d82..0000000 --- a/frontend/assets/resources/map/simple/BackgroundMap/Tile_W256_H256_S02.tsx.meta +++ /dev/null @@ -1,5 +0,0 @@ -{ - "ver": "2.0.0", - "uuid": "4e822a8b-f3be-4b83-b61d-9e04c56c5eba", - "subMetas": {} -} \ No newline at end of file diff --git a/frontend/assets/resources/map/simple/BackgroundMap/map.tmx b/frontend/assets/resources/map/simple/BackgroundMap/map.tmx deleted file mode 100644 index 4b1c9cf..0000000 --- a/frontend/assets/resources/map/simple/BackgroundMap/map.tmx +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - - eJztmNsOAyEIRNXem97+/2urSU0MEbs2A9XIwzwtuocJLrjBORdMJpPJtIyeUZeKHhtiaJwWW9I+alfRuVh/ZWJoHJqZY2tpK/dJyPfWOxHcUvxa3Oi6eUUdmHd4sLLv0p570P6h4NbwfHRuzvMZuGuez8Bd83wWbur5LNyZ/fbRyNypz3PfUzR39uPesYZ7lmo692AqNDdyTatHo7mR88m3Po/ktj4/L3fr3jAyt+a5NG7974nN33y9SNzTJObvPD9wdYOS1D+VMgcujyOJaYmuR/bMWj1yefTMdNz5kfIceSZruffk/U9uLRn3etzoO5JxG/cq3P7H/bfu/QamEBWW - - - - - eJztmdEKwyAMRfsXjv7/h449CEWSNNFrvMoOlIHdktMsWtddl8xtHNb7NKx4nhhW7DaHRAk6eK9Lyh/5bCR+SxHyIvB6M+LpQUbevFmR1oP6ankX41wP0XjWOsaM5o3kA473Q+uTmTkRvHkzot2nmdH6mGlOSmtMpjdyjuxQb4mIN9OaYnkzs5t3uyduiXij9ygedqv3k6g3y/xE1zvruk7rEzZ36Xvs3X+vWEueZPxumMHfO5dTvOsYm7tnTaljbO4t1rNaZvcTnxHW82zuXic294gLwh21P4i6MNU96oF0H9mz9zr0+ve6tj02UruVfTOad5U7Iifi/0JtTOsrVL2y647MleU+I8+ddMwge55+AUD0Fwk= - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/frontend/assets/resources/map/simple/BackgroundMap/map.tmx.meta b/frontend/assets/resources/map/simple/BackgroundMap/map.tmx.meta deleted file mode 100644 index fe35ec2..0000000 --- a/frontend/assets/resources/map/simple/BackgroundMap/map.tmx.meta +++ /dev/null @@ -1,5 +0,0 @@ -{ - "ver": "2.0.2", - "uuid": "a9a02975-8df5-42a1-bc25-b0ff7c1c03ba", - "subMetas": {} -} \ No newline at end of file diff --git a/frontend/assets/resources/map/simple/Tile_W300_H300_S01.png b/frontend/assets/resources/map/simple/Tile_W300_H300_S01.png deleted file mode 100644 index 3200517..0000000 Binary files a/frontend/assets/resources/map/simple/Tile_W300_H300_S01.png and /dev/null differ diff --git a/frontend/assets/resources/map/simple/Tile_W300_H300_S01.tsx b/frontend/assets/resources/map/simple/Tile_W300_H300_S01.tsx deleted file mode 100644 index d958003..0000000 --- a/frontend/assets/resources/map/simple/Tile_W300_H300_S01.tsx +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/frontend/assets/resources/map/simple/Tile_W300_H300_S01.tsx.meta b/frontend/assets/resources/map/simple/Tile_W300_H300_S01.tsx.meta deleted file mode 100644 index b71ef1b..0000000 --- a/frontend/assets/resources/map/simple/Tile_W300_H300_S01.tsx.meta +++ /dev/null @@ -1,5 +0,0 @@ -{ - "ver": "2.0.0", - "uuid": "8c8beea4-faa3-4270-aa27-dc5f2b7766c2", - "subMetas": {} -} \ No newline at end of file diff --git a/frontend/assets/resources/map/simple/map.tmx b/frontend/assets/resources/map/simple/map.tmx index 7f28144..ad0329f 100644 --- a/frontend/assets/resources/map/simple/map.tmx +++ b/frontend/assets/resources/map/simple/map.tmx @@ -1,46 +1,63 @@ - + - eJztz0ENACAMALGR4F8zNspyjwronZm7xPlcD0sPSw9LD0sPSw9LD0sPSw9LD0sPSw9LD0sPSw9LD0sPSw9LD0sPSw9LD0sPy7bHBg/ldQwR - + - + - eJzt1jEKgDAQRNE0GtD739fGaQIhqJHdCf81aSz2oyspBQAAAADWcUYPMIEaaugU37TvwbGl9y05tYz2wWFfaMiBhhyNKzRs99n7lzo0SG1OcWqQtsWxQdSwD57L3CCjO4dDg7zd+Yye7nxmajlCp5jD6Y4OAAAA4H8XE6wBrA== + eJztz7ENACAMA0EK9p+ZBQBRIJGEu8qlvzUAAACAM/31gQs0xKAhhioN2Tv6Ymcy+52tZfc3W8uOlpi0xFSpBQAAfjIASDsATQ== - - - - - - - + - + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/frontend/assets/scenes/login.fire b/frontend/assets/scenes/login.fire index 63dcfdb..b8f78ce 100644 --- a/frontend/assets/scenes/login.fire +++ b/frontend/assets/scenes/login.fire @@ -440,7 +440,7 @@ "array": [ 0, 0, - 237.35666382819272, + 378.4531014537997, 0, 0, 0, diff --git a/frontend/assets/scripts/BasePlayer.js b/frontend/assets/scripts/BasePlayer.js index bded266..0839393 100644 --- a/frontend/assets/scripts/BasePlayer.js +++ b/frontend/assets/scripts/BasePlayer.js @@ -74,25 +74,6 @@ module.export = cc.Class({ return ALL_DISCRETE_DIRECTIONS_CLOCKWISE[Math.floor(Math.random() * ALL_DISCRETE_DIRECTIONS_CLOCKWISE.length)]; }, - _generateRandomDirectionExcluding(toExcludeDx, toExcludeDy) { - let randomDirectionList = []; - let exactIdx = null; - for (let ii = 0; ii < ALL_DISCRETE_DIRECTIONS_CLOCKWISE.length; ++ii) { - if (toExcludeDx != ALL_DISCRETE_DIRECTIONS_CLOCKWISE[ii].dx || toExcludeDy != ALL_DISCRETE_DIRECTIONS_CLOCKWISE[ii].dy) continue; - exactIdx = ii; - break; - } - if (null == exactIdx) { - return this._generateRandomDirection(); - } - - for (let ii = 0; ii < ALL_DISCRETE_DIRECTIONS_CLOCKWISE.length; ++ii) { - if (ii == exactIdx || ((ii - 1) % ALL_DISCRETE_DIRECTIONS_CLOCKWISE.length) == exactIdx || ((ii + 1) % ALL_DISCRETE_DIRECTIONS_CLOCKWISE.length) == exactIdx) continue; - randomDirectionList.push(ALL_DISCRETE_DIRECTIONS_CLOCKWISE[ii]); - } - return randomDirectionList[Math.floor(Math.random() * randomDirectionList.length)] - }, - updateSpeed(proposedSpeed) { if (0 == proposedSpeed && 0 < this.speed) { this.startFrozenDisplay(); diff --git a/frontend/assets/scripts/Map.js b/frontend/assets/scripts/Map.js index e3bdf00..7cfd8e2 100644 --- a/frontend/assets/scripts/Map.js +++ b/frontend/assets/scripts/Map.js @@ -352,7 +352,7 @@ cc.Class({ window.mapIns = self; window.forceBigEndianFloatingNumDecoding = self.forceBigEndianFloatingNumDecoding; - self.showCriticalCoordinateLabels = false; + self.showCriticalCoordinateLabels = true; console.warn("+++++++ Map onLoad()"); window.handleClientSessionError = function() { @@ -435,6 +435,7 @@ cc.Class({ const tiledMapIns = self.node.getComponent(cc.TiledMap); + // It's easier to just use the "barrier"s extracted by the backend (all anchor points in world coordinates), but I'd like to verify frontend tmx parser logic as well. const fullPathOfTmxFile = cc.js.formatStr("map/%s/map", parsedBattleColliderInfo.stageName); cc.loader.loadRes(fullPathOfTmxFile, cc.TiledMapAsset, (err, tmxAsset) => { if (null != err) { @@ -472,43 +473,42 @@ cc.Class({ let barrierIdCounter = 0; const boundaryObjs = tileCollisionManager.extractBoundaryObjects(self.node); for (let boundaryObj of boundaryObjs.barriers) { - const x0 = boundaryObj[0].x, - y0 = boundaryObj[0].y; - let pts = []; - for (let i = 0; i < boundaryObj.length; ++i) { - const dx = boundaryObj[i].x - x0; - const dy = boundaryObj[i].y - y0; - pts.push([dx, dy]); - /* - if (self.showCriticalCoordinateLabels) { - const barrierVertLabelNode = new cc.Node(); - switch (i % 4) { - case 0: - barrierVertLabelNode.color = cc.Color.RED; - break; - case 1: - barrierVertLabelNode.color = cc.Color.GRAY; - break; - case 2: - barrierVertLabelNode.color = cc.Color.BLACK; - break; - default: - barrierVertLabelNode.color = cc.Color.MAGENTA; - break; - } - barrierVertLabelNode.setPosition(cc.v2(x0+0.95*dx, y0+0.5*dy)); - const barrierVertLabel = barrierVertLabelNode.addComponent(cc.Label); - barrierVertLabel.fontSize = 20; - barrierVertLabel.lineHeight = 22; - barrierVertLabel.string = `(${boundaryObj[i].x.toFixed(1)}, ${boundaryObj[i].y.toFixed(1)})`; - safelyAddChild(self.node, barrierVertLabelNode); - setLocalZOrder(barrierVertLabelNode, 5); + const x0 = boundaryObj.anchor.x, + y0 = boundaryObj.anchor.y; + + const newBarrier = self.collisionSys.createPolygon(x0, y0, Array.from(boundaryObj, p => { return [p.x, p.y]; })); + + if (self.showCriticalCoordinateLabels) { + for (let i = 0; i < boundaryObj.length; ++i) { + const barrierVertLabelNode = new cc.Node(); + switch (i % 4) { + case 0: + barrierVertLabelNode.color = cc.Color.RED; + break; + case 1: + barrierVertLabelNode.color = cc.Color.GRAY; + break; + case 2: + barrierVertLabelNode.color = cc.Color.BLACK; + break; + default: + barrierVertLabelNode.color = cc.Color.MAGENTA; + break; + } + const wx = boundaryObj.anchor.x + boundaryObj[i].x, + wy = boundaryObj.anchor.y + boundaryObj[i].y; + barrierVertLabelNode.setPosition(cc.v2(wx, wy)); + const barrierVertLabel = barrierVertLabelNode.addComponent(cc.Label); + barrierVertLabel.fontSize = 12; + barrierVertLabel.lineHeight = barrierVertLabel.fontSize+1; + barrierVertLabel.string = `(${wx.toFixed(1)}, ${wy.toFixed(1)})`; + safelyAddChild(self.node, barrierVertLabelNode); + setLocalZOrder(barrierVertLabelNode, 5); + + barrierVertLabelNode.active = true; + } - barrierVertLabelNode.active = true; } - */ - } - const newBarrier = self.collisionSys.createPolygon(x0, y0, pts); // console.log("Created barrier: ", newBarrier); ++barrierIdCounter; const collisionBarrierIndex = (self.collisionBarrierIndexPrefix + barrierIdCounter); @@ -520,27 +520,11 @@ cc.Class({ id: self.selfPlayerInfo.playerId }); - const fullPathOfBackgroundMapTmxFile = cc.js.formatStr("map/%s/BackgroundMap/map", parsedBattleColliderInfo.stageName); - cc.loader.loadRes(fullPathOfBackgroundMapTmxFile, cc.TiledMapAsset, (err, backgroundMapTmxAsset) => { - if (null != err) { - console.error(err); - return; - } - - self.backgroundMapTiledIns.tmxAsset = null; - self.backgroundMapTiledIns.node.removeAllChildren(); - self.backgroundMapTiledIns.tmxAsset = backgroundMapTmxAsset; - const newBackgroundMapSize = self.backgroundMapTiledIns.getMapSize(); - const newBackgroundMapTileSize = self.backgroundMapTiledIns.getTileSize(); - self.backgroundMapTiledIns.node.setContentSize(newBackgroundMapSize.width * newBackgroundMapTileSize.width, newBackgroundMapSize.height * newBackgroundMapTileSize.height); - self.backgroundMapTiledIns.node.setPosition(cc.v2(0, 0)); - - const reqData = window.pb.protos.WsReq.encode({ - msgId: Date.now(), - act: window.UPSYNC_MSG_ACT_PLAYER_COLLIDER_ACK, - }).finish(); - window.sendSafely(reqData); - }); + const reqData = window.pb.protos.WsReq.encode({ + msgId: Date.now(), + act: window.UPSYNC_MSG_ACT_PLAYER_COLLIDER_ACK, + }).finish(); + window.sendSafely(reqData); }); }; diff --git a/frontend/assets/scripts/NPCPlayer.js b/frontend/assets/scripts/NPCPlayer.js index 872e80c..fae2382 100644 --- a/frontend/assets/scripts/NPCPlayer.js +++ b/frontend/assets/scripts/NPCPlayer.js @@ -159,7 +159,7 @@ cc.Class({ start() { BasePlayer.prototype.start.call(this); - this.scheduleNewDirection(this._generateRandomDirectionExcluding(0, 0)); + this.scheduleNewDirection(this._generateRandomDirection()); }, onLoad() { @@ -185,8 +185,7 @@ cc.Class({ self.collisionWithPlayerState = transitStunnedAnimPlayingToPlayed(this.collisionWithPlayerState, true); if (oldCollisionWithPlayerState == self.collisionWithPlayerState || !self.node) return; - // TODO: Be more specific with "toExcludeDx" and "toExcludeDy". - self.scheduleNewDirection(self._generateRandomDirectionExcluding(0, 0)); + self.scheduleNewDirection(self._generateRandomDirection()); self.collisionWithPlayerState = transitStunnedAnimPlayedToWalking(self.collisionWithPlayerState); setTimeout(() => { self.collisionWithPlayerState = transitWalkingConditionallyCollidableToUnconditionallyCollidable(self.collisionWithPlayerState); @@ -257,17 +256,7 @@ cc.Class({ }, update(dt) { - const self = this; - BasePlayer.prototype.update.call(this, dt); - - if (0 < self.contactedBarriers.length) { - self.scheduleNewDirection(self._generateRandomDirectionExcluding(self.scheduledDirection.dx, self.scheduledDirection.dy)); - } - - if (tileCollisionManager.isOutOfMapNode(self.mapNode, self.computedNewDifferentPosLocalToParentWithinCurrentFrame)) { - self.scheduleNewDirection(self._generateRandomDirectionExcluding(self.scheduledDirection.dx, self.scheduledDirection.dy)); - } }, onCollisionEnter(other, self) { diff --git a/frontend/assets/scripts/TileCollisionManagerSingleton.js b/frontend/assets/scripts/TileCollisionManagerSingleton.js index e8181a0..80a2f17 100644 --- a/frontend/assets/scripts/TileCollisionManagerSingleton.js +++ b/frontend/assets/scripts/TileCollisionManagerSingleton.js @@ -1,247 +1,32 @@ "use strict"; -window.ALL_DISCRETE_DIRECTIONS_CLOCKWISE = [{ - dx: 0, - dy: 1 -}, { - dx: 2, - dy: 1 -}, { - dx: 2, - dy: 0 -}, { - dx: 2, - dy: -1 -}, { - dx: 0, - dy: -1 -}, { - dx: -2, - dy: -1 -}, { - dx: -2, - dy: 0 -}, { - dx: -2, - dy: 1 -}]; +function TileCollisionManager() { +} -function TileCollisionManager() { } +TileCollisionManager.prototype.continuousMapNodeVecToContinuousObjLayerVec = function(withTiledMapNode, continuousMapNodeVec) { + const tiledMapIns = withTiledMapNode.getComponent(cc.TiledMap); -TileCollisionManager.prototype._continuousFromCentreOfDiscreteTile = function (tiledMapNode, tiledMapIns, layerIns, discretePosX, discretePosY) { - var mapOrientation = tiledMapIns.getMapOrientation(); - var mapTileRectilinearSize = tiledMapIns.getTileSize(); - var mapAnchorOffset = cc.v2(0, 0); - var tileSize = { - width: 0, - height: 0 - }; - var layerOffset = cc.v2(0, 0); + const mapOrientation = tiledMapIns.getMapOrientation(); + const mapTileRectilinearSize = tiledMapIns.getTileSize(); switch (mapOrientation) { case cc.TiledMap.Orientation.ORTHO: - return null; + return continuousMapNodeVec; case cc.TiledMap.Orientation.ISO: - var tileSizeUnifiedLength = Math.sqrt(mapTileRectilinearSize.width * mapTileRectilinearSize.width / 4 + mapTileRectilinearSize.height * mapTileRectilinearSize.height / 4); - tileSize = { - width: tileSizeUnifiedLength, - height: tileSizeUnifiedLength - }; - var cosineThetaRadian = mapTileRectilinearSize.width / 2 / tileSizeUnifiedLength; - var sineThetaRadian = mapTileRectilinearSize.height / 2 / tileSizeUnifiedLength; - mapAnchorOffset = cc.v2( - tiledMapNode.getContentSize().width * (0.5 - tiledMapNode.getAnchorPoint().x), - tiledMapNode.getContentSize().height * (1 - tiledMapNode.getAnchorPoint().y) - ); - layerOffset = cc.v2(0, 0); - var transMat = [ - [cosineThetaRadian, -cosineThetaRadian], - [-sineThetaRadian, -sineThetaRadian] + const tileSizeUnifiedLength = Math.sqrt(mapTileRectilinearSize.width * mapTileRectilinearSize.width * 0.25 + mapTileRectilinearSize.height * mapTileRectilinearSize.height * 0.25); + const isometricObjectLayerPointOffsetScaleFactor = (tileSizeUnifiedLength / mapTileRectilinearSize.height); + const inverseIsometricObjectLayerPointOffsetScaleFactor = 1 / isometricObjectLayerPointOffsetScaleFactor; + + const cosineThetaRadian = (mapTileRectilinearSize.width * 0.5) / tileSizeUnifiedLength; + const sineThetaRadian = (mapTileRectilinearSize.height * 0.5) / tileSizeUnifiedLength; + + const inverseTransMat = [ + [inverseIsometricObjectLayerPointOffsetScaleFactor * 0.5 * (1 / cosineThetaRadian), -inverseIsometricObjectLayerPointOffsetScaleFactor * 0.5 * (1 / sineThetaRadian)], + [-inverseIsometricObjectLayerPointOffsetScaleFactor * 0.5 * (1 / cosineThetaRadian), -inverseIsometricObjectLayerPointOffsetScaleFactor * 0.5 * (1 / sineThetaRadian)] ]; - var tmpContinuousX = (parseFloat(discretePosX) + 0.5) * tileSizeUnifiedLength; - var tmpContinuousY = (parseFloat(discretePosY) + 0.5) * tileSizeUnifiedLength; - var dContinuousXWrtMapNode = transMat[0][0] * tmpContinuousX + transMat[0][1] * tmpContinuousY; - var dContinuousYWrtMapNode = transMat[1][0] * tmpContinuousX + transMat[1][1] * tmpContinuousY; - return cc.v2(dContinuousXWrtMapNode, dContinuousYWrtMapNode).add(mapAnchorOffset); - - default: - return null; - } -}; - -TileCollisionManager.prototype._continuousToDiscrete = function (tiledMapNode, tiledMapIns, continuousNewPosLocalToMap, continuousOldPosLocalToMap) { - /* - * References - * - http://cocos2d-x.org/docs/api-ref/creator/v1.5/classes/TiledMap.html - * - http://cocos2d-x.org/docs/api-ref/creator/v1.5/classes/TiledLayer.html - * - http://docs.mapeditor.org/en/stable/reference/tmx-map-format/?highlight=orientation#map - */ - var mapOrientation = tiledMapIns.getMapOrientation(); - var mapTileRectilinearSize = tiledMapIns.getTileSize(); - var mapAnchorOffset = { - x: 0, - y: 0 - }; - var tileSize = { - width: 0, - height: 0 - }; - var layerOffset = { - x: 0, - y: 0 - }; - var convertedContinuousOldXInTileCoordinates = null; - var convertedContinuousOldYInTileCoordinates = null; - var convertedContinuousNewXInTileCoordinates = null; - var convertedContinuousNewYInTileCoordinates = null; - var oldWholeMultipleX = 0; - var oldWholeMultipleY = 0; - var newWholeMultipleX = 0; - var newWholeMultipleY = 0; - var discretePosX = 0; - var discretePosY = 0; - var exactBorderX = 0; - var exactBorderY = 0; // These tmp variables are NOT NECESSARILY useful. - - var oldTmpX = 0; - var oldTmpY = 0; - var newTmpX = 0; - var newTmpY = 0; - - switch (mapOrientation) { - case cc.TiledMap.Orientation.ORTHO: - mapAnchorOffset = { - x: -(tiledMapNode.getContentSize().width * tiledMapNode.getAnchorPoint().x), - y: tiledMapNode.getContentSize().height * (1 - tiledMapNode.getAnchorPoint().y) - }; - layerOffset = { - x: 0, - y: 0 - }; - tileSize = mapTileRectilinearSize; - convertedContinuousOldXInTileCoordinates = continuousOldPosLocalToMap.x - layerOffset.x - mapAnchorOffset.x; - convertedContinuousOldYInTileCoordinates = mapAnchorOffset.y - (continuousOldPosLocalToMap.y - layerOffset.y); - convertedContinuousNewXInTileCoordinates = continuousNewPosLocalToMap.x - layerOffset.x - mapAnchorOffset.x; - convertedContinuousNewYInTileCoordinates = mapAnchorOffset.y - (continuousNewPosLocalToMap.y - layerOffset.y); - break; - - case cc.TiledMap.Orientation.ISO: - var tileSizeUnifiedLength = Math.sqrt(mapTileRectilinearSize.width * mapTileRectilinearSize.width / 4 + mapTileRectilinearSize.height * mapTileRectilinearSize.height / 4); - tileSize = { - width: tileSizeUnifiedLength, - height: tileSizeUnifiedLength - }; - var cosineThetaRadian = mapTileRectilinearSize.width / 2 / tileSizeUnifiedLength; - var sineThetaRadian = mapTileRectilinearSize.height / 2 / tileSizeUnifiedLength; - mapAnchorOffset = { - x: tiledMapNode.getContentSize().width * (0.5 - tiledMapNode.getAnchorPoint().x), - y: tiledMapNode.getContentSize().height * (1 - tiledMapNode.getAnchorPoint().y) - }; - layerOffset = { - x: 0, - y: 0 - }; - oldTmpX = continuousOldPosLocalToMap.x - layerOffset.x - mapAnchorOffset.x; - oldTmpY = continuousOldPosLocalToMap.y - layerOffset.y - mapAnchorOffset.y; - newTmpX = continuousNewPosLocalToMap.x - layerOffset.x - mapAnchorOffset.x; - newTmpY = continuousNewPosLocalToMap.y - layerOffset.y - mapAnchorOffset.y; - var transMat = [[1 / (2 * cosineThetaRadian), -1 / (2 * sineThetaRadian)], [-1 / (2 * cosineThetaRadian), -1 / (2 * sineThetaRadian)]]; - convertedContinuousOldXInTileCoordinates = transMat[0][0] * oldTmpX + transMat[0][1] * oldTmpY; - convertedContinuousOldYInTileCoordinates = transMat[1][0] * oldTmpX + transMat[1][1] * oldTmpY; - convertedContinuousNewXInTileCoordinates = transMat[0][0] * newTmpX + transMat[0][1] * newTmpY; - convertedContinuousNewYInTileCoordinates = transMat[1][0] * newTmpX + transMat[1][1] * newTmpY; - break; - - default: - break; - } - - if (null == convertedContinuousOldXInTileCoordinates || null == convertedContinuousOldYInTileCoordinates || null == convertedContinuousNewXInTileCoordinates || null == convertedContinuousNewYInTileCoordinates) { - return null; - } - - oldWholeMultipleX = Math.floor(convertedContinuousOldXInTileCoordinates / tileSize.width); - oldWholeMultipleY = Math.floor(convertedContinuousOldYInTileCoordinates / tileSize.height); - newWholeMultipleX = Math.floor(convertedContinuousNewXInTileCoordinates / tileSize.width); - newWholeMultipleY = Math.floor(convertedContinuousNewYInTileCoordinates / tileSize.height); // Mind that the calculation of `exactBorderY` is different for `convertedContinuousOldYInTileCoordinates <> convertedContinuousNewYInTileCoordinates`. - - if (convertedContinuousOldYInTileCoordinates < convertedContinuousNewYInTileCoordinates) { - exactBorderY = newWholeMultipleY * tileSize.height; - - if (convertedContinuousNewYInTileCoordinates > exactBorderY && convertedContinuousOldYInTileCoordinates <= exactBorderY) { - // Will try to cross the border if (newWholeMultipleY != oldWholeMultipleY). - discretePosY = newWholeMultipleY; - } else { - discretePosY = oldWholeMultipleY; - } - } else if (convertedContinuousOldYInTileCoordinates > convertedContinuousNewYInTileCoordinates) { - exactBorderY = oldWholeMultipleY * tileSize.height; - - if (convertedContinuousNewYInTileCoordinates < exactBorderY && convertedContinuousOldYInTileCoordinates >= exactBorderY) { - // Will try to cross the border if (newWholeMultipleY != oldWholeMultipleY). - discretePosY = newWholeMultipleY; - } else { - discretePosY = oldWholeMultipleY; - } - } else { - discretePosY = oldWholeMultipleY; - } // Mind that the calculation of `exactBorderX` is different for `convertedContinuousOldXInTileCoordinates <> convertedContinuousNewXInTileCoordinates`. - - - if (convertedContinuousOldXInTileCoordinates < convertedContinuousNewXInTileCoordinates) { - exactBorderX = newWholeMultipleX * tileSize.width; - - if (convertedContinuousNewXInTileCoordinates > exactBorderX && convertedContinuousOldXInTileCoordinates <= exactBorderX) { - // Will cross the border if (newWholeMultipleX != oldWholeMultipleX). - discretePosX = newWholeMultipleX; - } else { - discretePosX = oldWholeMultipleX; - } - } else if (convertedContinuousOldXInTileCoordinates > convertedContinuousNewXInTileCoordinates) { - exactBorderX = oldWholeMultipleX * tileSize.width; - - if (convertedContinuousNewXInTileCoordinates < exactBorderX && convertedContinuousOldXInTileCoordinates >= exactBorderX) { - // Will cross the border if (newWholeMultipleX != oldWholeMultipleX). - discretePosX = newWholeMultipleX; - } else { - discretePosX = oldWholeMultipleX; - } - } else { - discretePosX = oldWholeMultipleX; - } - - return { - x: discretePosX, - y: discretePosY - }; -}; - -TileCollisionManager.prototype.continuousMapNodeVecToContinuousObjLayerVec = function (withTiledMapNode, continuousMapNodeVec) { - var tiledMapIns = withTiledMapNode.getComponent(cc.TiledMap); - - var mapOrientation = tiledMapIns.getMapOrientation(); - var mapTileRectilinearSize = tiledMapIns.getTileSize(); - - switch (mapOrientation) { - case cc.TiledMap.Orientation.ORTHO: - // TODO - return null; - - case cc.TiledMap.Orientation.ISO: - var tileSizeUnifiedLength = Math.sqrt(mapTileRectilinearSize.width * mapTileRectilinearSize.width * 0.25 + mapTileRectilinearSize.height * mapTileRectilinearSize.height * 0.25); - var isometricObjectLayerPointOffsetScaleFactor = (tileSizeUnifiedLength / mapTileRectilinearSize.height); - var inverseIsometricObjectLayerPointOffsetScaleFactor = 1 / isometricObjectLayerPointOffsetScaleFactor; - - var cosineThetaRadian = (mapTileRectilinearSize.width * 0.5) / tileSizeUnifiedLength; - var sineThetaRadian = (mapTileRectilinearSize.height * 0.5) / tileSizeUnifiedLength; - - var inverseTransMat = [ - [inverseIsometricObjectLayerPointOffsetScaleFactor * 0.5 * (1 / cosineThetaRadian), - inverseIsometricObjectLayerPointOffsetScaleFactor * 0.5 * (1 / sineThetaRadian)], - [- inverseIsometricObjectLayerPointOffsetScaleFactor * 0.5 * (1 / cosineThetaRadian), - inverseIsometricObjectLayerPointOffsetScaleFactor * 0.5 * (1 / sineThetaRadian)] - ]; - var convertedVecX = inverseTransMat[0][0] * continuousMapNodeVec.x + inverseTransMat[0][1] * continuousMapNodeVec.y; - var convertedVecY = inverseTransMat[1][0] * continuousMapNodeVec.x + inverseTransMat[1][1] * continuousMapNodeVec.y; + const convertedVecX = inverseTransMat[0][0] * continuousMapNodeVec.x + inverseTransMat[0][1] * continuousMapNodeVec.y; + const convertedVecY = inverseTransMat[1][0] * continuousMapNodeVec.x + inverseTransMat[1][1] * continuousMapNodeVec.y; return cc.v2(convertedVecX, convertedVecY); @@ -250,7 +35,7 @@ TileCollisionManager.prototype.continuousMapNodeVecToContinuousObjLayerVec = fun } } -TileCollisionManager.prototype.continuousObjLayerVecToContinuousMapNodeVec = function (withTiledMapNode, continuousObjLayerVec) { +TileCollisionManager.prototype.continuousObjLayerVecToContinuousMapNodeVec = function(withTiledMapNode, continuousObjLayerVec) { var tiledMapIns = withTiledMapNode.getComponent(cc.TiledMap); var mapOrientation = tiledMapIns.getMapOrientation(); @@ -258,22 +43,21 @@ TileCollisionManager.prototype.continuousObjLayerVecToContinuousMapNodeVec = fun switch (mapOrientation) { case cc.TiledMap.Orientation.ORTHO: - // TODO - return null; + return cc.v2(continuousObjLayerVec.x, -continuousObjLayerVec.y); case cc.TiledMap.Orientation.ISO: - var tileSizeUnifiedLength = Math.sqrt(mapTileRectilinearSize.width * mapTileRectilinearSize.width * 0.25 + mapTileRectilinearSize.height * mapTileRectilinearSize.height * 0.25); - var isometricObjectLayerPointOffsetScaleFactor = (tileSizeUnifiedLength / mapTileRectilinearSize.height); + const tileSizeUnifiedLength = Math.sqrt(mapTileRectilinearSize.width * mapTileRectilinearSize.width * 0.25 + mapTileRectilinearSize.height * mapTileRectilinearSize.height * 0.25); + const isometricObjectLayerPointOffsetScaleFactor = (tileSizeUnifiedLength / mapTileRectilinearSize.height); - var cosineThetaRadian = (mapTileRectilinearSize.width * 0.5) / tileSizeUnifiedLength; - var sineThetaRadian = (mapTileRectilinearSize.height * 0.5) / tileSizeUnifiedLength; + const cosineThetaRadian = (mapTileRectilinearSize.width * 0.5) / tileSizeUnifiedLength; + const sineThetaRadian = (mapTileRectilinearSize.height * 0.5) / tileSizeUnifiedLength; - var transMat = [ - [isometricObjectLayerPointOffsetScaleFactor * cosineThetaRadian, - isometricObjectLayerPointOffsetScaleFactor * cosineThetaRadian], - [- isometricObjectLayerPointOffsetScaleFactor * sineThetaRadian, - isometricObjectLayerPointOffsetScaleFactor * sineThetaRadian] + const transMat = [ + [isometricObjectLayerPointOffsetScaleFactor * cosineThetaRadian, -isometricObjectLayerPointOffsetScaleFactor * cosineThetaRadian], + [-isometricObjectLayerPointOffsetScaleFactor * sineThetaRadian, -isometricObjectLayerPointOffsetScaleFactor * sineThetaRadian] ]; - var convertedVecX = transMat[0][0] * continuousObjLayerVec.x + transMat[0][1] * continuousObjLayerVec.y; - var convertedVecY = transMat[1][0] * continuousObjLayerVec.x + transMat[1][1] * continuousObjLayerVec.y; + const convertedVecX = transMat[0][0] * continuousObjLayerVec.x + transMat[0][1] * continuousObjLayerVec.y; + const convertedVecY = transMat[1][0] * continuousObjLayerVec.x + transMat[1][1] * continuousObjLayerVec.y; return cc.v2(convertedVecX, convertedVecY); @@ -282,46 +66,37 @@ TileCollisionManager.prototype.continuousObjLayerVecToContinuousMapNodeVec = fun } } -TileCollisionManager.prototype.continuousObjLayerOffsetToContinuousMapNodePos = function (withTiledMapNode, continuousObjLayerOffset) { - var tiledMapIns = withTiledMapNode.getComponent(cc.TiledMap); - - var mapOrientation = tiledMapIns.getMapOrientation(); +TileCollisionManager.prototype.continuousObjLayerOffsetToContinuousMapNodePos = function(withTiledMapNode, continuousObjLayerOffset) { + const tiledMapIns = withTiledMapNode.getComponent(cc.TiledMap); + const mapOrientation = tiledMapIns.getMapOrientation(); + let layerOffset = null; switch (mapOrientation) { case cc.TiledMap.Orientation.ORTHO: - // TODO - return null; - + layerOffset = cc.v2(-(withTiledMapNode.getContentSize().width * 0.5), +(withTiledMapNode.getContentSize().height * 0.5)); + break; case cc.TiledMap.Orientation.ISO: - const calibratedVec = continuousObjLayerOffset; // TODO: Respect the real offsets! - - // The immediately following statement takes a magic assumption that the anchor of `withTiledMapNode` is (0.5, 0.5) which is NOT NECESSARILY true. - const layerOffset = cc.v2(0, +(withTiledMapNode.getContentSize().height * 0.5)); - - return layerOffset.add(this.continuousObjLayerVecToContinuousMapNodeVec(withTiledMapNode, calibratedVec)); - + layerOffset = cc.v2(0, +(withTiledMapNode.getContentSize().height * 0.5)); + break; default: return null; } + return layerOffset.add(this.continuousObjLayerVecToContinuousMapNodeVec(withTiledMapNode, continuousObjLayerOffset)); } -TileCollisionManager.prototype.continuousMapNodePosToContinuousObjLayerOffset = function (withTiledMapNode, continuousMapNodePos) { - var tiledMapIns = withTiledMapNode.getComponent(cc.TiledMap); - - var mapOrientation = tiledMapIns.getMapOrientation(); - var mapTileRectilinearSize = tiledMapIns.getTileSize(); - +TileCollisionManager.prototype.continuousMapNodePosToContinuousObjLayerOffset = function(withTiledMapNode, continuousMapNodePos) { + const tiledMapIns = withTiledMapNode.getComponent(cc.TiledMap); + const mapOrientation = tiledMapIns.getMapOrientation(); + let layerOffset = null; switch (mapOrientation) { case cc.TiledMap.Orientation.ORTHO: - // TODO - return null; - + layerOffset = cc.v2(+(withTiledMapNode.getContentSize().width * 0.5), +(withTiledMapNode.getContentSize().height * 0.5)); + return cc.v2(continuousMapNodePos.x + layerOffset.x, continuousMapNodePos.y + layerOffset.y); case cc.TiledMap.Orientation.ISO: // The immediately following statement takes a magic assumption that the anchor of `withTiledMapNode` is (0.5, 0.5) which is NOT NECESSARILY true. - var layerOffset = cc.v2(0, +(withTiledMapNode.getContentSize().height * 0.5)); - var calibratedVec = continuousMapNodePos.sub(layerOffset); // TODO: Respect the real offsets! + layerOffset = cc.v2(0, +(withTiledMapNode.getContentSize().height * 0.5)); + const calibratedVec = continuousMapNodePos.sub(layerOffset); // TODO: Respect the real offsets! return this.continuousMapNodeVecToContinuousObjLayerVec(withTiledMapNode, calibratedVec); - default: return null; } @@ -331,129 +106,13 @@ TileCollisionManager.prototype.continuousMapNodePosToContinuousObjLayerOffset = * Note that `TileCollisionManager.extractBoundaryObjects` returns everything with coordinates local to `withTiledMapNode`! */ window.battleEntityTypeNameToGlobalGid = {}; -TileCollisionManager.prototype.extractBoundaryObjects = function (withTiledMapNode) { +TileCollisionManager.prototype.extractBoundaryObjects = function(withTiledMapNode) { let toRet = { barriers: [], - frameAnimations: [], - grandBoundaries: [], }; const tiledMapIns = withTiledMapNode.getComponent(cc.TiledMap); // This is a magic name. - const mapTileSize = tiledMapIns.getTileSize(); - const mapOrientation = tiledMapIns.getMapOrientation(); - - /* - * Copies from https://github.com/cocos-creator/engine/blob/master/cocos2d/tilemap/CCTiledMap.js as a hack to parse advanced info - * of a TSX file. [BEGINS] - */ - const file = tiledMapIns._tmxFile; - const texValues = file.textures; - const texKeys = file.textureNames; - const textures = {}; - for (let texIdx = 0; texIdx < texValues.length; ++texIdx) { - textures[texKeys[texIdx]] = texValues[texIdx]; - } - - const tsxFileNames = file.tsxFileNames; - const tsxFiles = file.tsxFiles; - let tsxMap = {}; - for (let tsxFilenameIdx = 0; tsxFilenameIdx < tsxFileNames.length; ++tsxFilenameIdx) { - if (0 >= tsxFileNames[tsxFilenameIdx].length) continue; - tsxMap[tsxFileNames[tsxFilenameIdx]] = tsxFiles[tsxFilenameIdx].text; - } - - const mapInfo = new cc.TMXMapInfo(file.tmxXmlStr, tsxMap, textures); - const tileSets = mapInfo.getTilesets(); - /* - * Copies from https://github.com/cocos-creator/engine/blob/master/cocos2d/tilemap/CCTiledMap.js as a hack to parse advanced info - * of a TSX file. [ENDS] - */ - let gidBoundariesMap = {}; - const tilesElListUnderTilesets = {}; - for (let tsxFilenameIdx = 0; tsxFilenameIdx < tsxFileNames.length; ++tsxFilenameIdx) { - const tsxOrientation = tileSets[tsxFilenameIdx].orientation; - if (cc.TiledMap.Orientation.ORTHO == tsxOrientation) { - cc.error("Error at tileset %s: We don't proceed with tilesets in ORTHO orientation by now.", tsxFileNames[tsxFilenameIdx]); - continue; - }; - - const tsxXMLStr = tsxMap[tsxFileNames[tsxFilenameIdx]]; - const selTileset = mapInfo._parser._parseXML(tsxXMLStr).documentElement; - const firstGid = (parseInt(selTileset.getAttribute('firstgid')) || tileSets[tsxFilenameIdx].firstGid || 0); - const currentTiles = selTileset.getElementsByTagName('tile'); - if (!currentTiles) continue; - tilesElListUnderTilesets[tsxFileNames[tsxFilenameIdx]] = currentTiles; - - for (let tileIdx = 0; tileIdx < currentTiles.length; ++tileIdx) { - const currentTile = currentTiles[tileIdx]; - const parentGid = parseInt(firstGid) + parseInt(currentTile.getAttribute('id') || 0); - let childrenOfCurrentTile = null; - if (cc.sys.isNative) { - childrenOfCurrentTile = currentTile.getElementsByTagName("objectgroup"); - } else { - childrenOfCurrentTile = currentTile.children; - } - for (let childIdx = 0; childIdx < childrenOfCurrentTile.length; ++childIdx) { - const ch = childrenOfCurrentTile[childIdx]; - if ('objectgroup' != ch.nodeName) continue; - var currentObjectGroupUnderTile = mapInfo._parseObjectGroup(ch); - gidBoundariesMap[parentGid] = { - barriers: [], - }; - for (let oidx = 0; oidx < currentObjectGroupUnderTile._objects.length; ++oidx) { - const oo = currentObjectGroupUnderTile._objects[oidx]; - const polylinePoints = oo.polylinePoints; - if (null == polylinePoints) continue; - const boundaryType = oo.boundary_type; - switch (boundaryType) { - case "LowScoreTreasure": - case "HighScoreTreasure": - case "GuardTower": - const spriteFrameInfoForGid = getOrCreateSpriteFrameForGid(parentGid, mapInfo, tilesElListUnderTilesets); - if (null != spriteFrameInfoForGid) { - window.battleEntityTypeNameToGlobalGid[boundaryType] = parentGid; - } - break; - case "barrier": - let brToPushTmp = []; - for (let bidx = 0; bidx < polylinePoints.length; ++bidx) { - brToPushTmp.push(cc.v2(oo.x, oo.y).add(polylinePoints[bidx])); - } - brToPushTmp.boundaryType = boundaryType; - gidBoundariesMap[parentGid].barriers.push(brToPushTmp); - break; - default: - break; - } - } - } - } - } - - // Reference http://docs.cocos.com/creator/api/en/classes/TiledMap.html. - let allObjectGroups = tiledMapIns.getObjectGroups(); - - for (var i = 0; i < allObjectGroups.length; ++i) { - // Reference http://docs.cocos.com/creator/api/en/classes/TiledObjectGroup.html. - var objectGroup = allObjectGroups[i]; - if ("frame_anim" != objectGroup.getProperty("type")) continue; - var allObjects = objectGroup.getObjects(); - for (var j = 0; j < allObjects.length; ++j) { - var object = allObjects[j]; - var gid = object.gid; - if (!gid || gid <= 0) { - continue; - } - var animationClipInfoForGid = getOrCreateAnimationClipForGid(gid, mapInfo, tilesElListUnderTilesets); - if (!animationClipInfoForGid) continue; - toRet.frameAnimations.push({ - posInMapNode: this.continuousObjLayerOffsetToContinuousMapNodePos(withTiledMapNode, object.offset), - origSize: animationClipInfoForGid.origSize, - sizeInMapNode: cc.size(object.width, object.height), - animationClip: animationClipInfoForGid.animationClip - }); - } - } + const allObjectGroups = tiledMapIns.getObjectGroups(); for (let i = 0; i < allObjectGroups.length; ++i) { var objectGroup = allObjectGroups[i]; if ("barrier_and_shelter" != objectGroup.getProperty("type")) continue; @@ -468,22 +127,16 @@ TileCollisionManager.prototype.extractBoundaryObjects = function (withTiledMapNo if (null == polylinePoints) { continue } - for (let k = 0; k < polylinePoints.length; ++k) { - /* Since CocosCreatorv2.1.3, the Y-coord of object polylines DIRECTLY DRAWN ON tmx with ISOMETRIC ORIENTATION is inverted. -- YFLu, 2019-11-01. */ - polylinePoints[k].y = -polylinePoints[k].y; - } const boundaryType = object.boundary_type; + let toPushBarriers = []; + toPushBarriers.boundaryType = boundaryType; switch (boundaryType) { case "barrier": - let toPushBarriers = []; for (let k = 0; k < polylinePoints.length; ++k) { - const tmp = object.offset.add(polylinePoints[k]); - toPushBarriers.push(this.continuousObjLayerOffsetToContinuousMapNodePos(withTiledMapNode, tmp)); + /* Since CocosCreatorv2.1.3, the Y-coord of object polylines is inverted compared to that of the tmx file. */ + toPushBarriers.push(this.continuousObjLayerVecToContinuousMapNodeVec(withTiledMapNode, cc.v2(polylinePoints[k].x, -polylinePoints[k].y))); } - if (null != object.debug_mark) { - console.log("Transformed ", polylinePoints, ", to ", toPushBarriers); - } - toPushBarriers.boundaryType = boundaryType; + toPushBarriers.anchor = this.continuousObjLayerOffsetToContinuousMapNodePos(withTiledMapNode, object.offset); // DON'T use "(object.x, object.y)" which are wrong/meaningless! toRet.barriers.push(toPushBarriers); break; default: @@ -492,85 +145,21 @@ TileCollisionManager.prototype.extractBoundaryObjects = function (withTiledMapNo } } - const allLayers = tiledMapIns.getLayers(); - - let layerDOMTrees = []; - const mapDomTree = mapInfo._parser._parseXML(tiledMapIns.tmxAsset.tmxXmlStr).documentElement; - const mapDOMAllChildren = (mapDomTree.children); - for (let mdtIdx = 0; mdtIdx < mapDOMAllChildren.length; ++mdtIdx) { - const tmpCh = mapDOMAllChildren[mdtIdx]; - if (mapInfo._shouldIgnoreNode(tmpCh)) { - continue; - } - - if (tmpCh.nodeName != 'layer') { - continue; - } - layerDOMTrees.push(tmpCh); - } - - for (let j = 0; j < allLayers.length; ++j) { - // TODO: Respect layer offset! - const currentTileLayer = allLayers[j]; - const currentTileset = currentTileLayer.getTileSet(); - - if (!currentTileset) { - continue; - } - - const currentLayerSize = currentTileLayer.getLayerSize(); - - const currentLayerTileSize = currentTileset._tileSize; - const firstGidInCurrentTileset = currentTileset.firstGid; - - for (let discreteXInLayer = 0; discreteXInLayer < currentLayerSize.width; ++discreteXInLayer) { - for (let discreteYInLayer = 0; discreteYInLayer < currentLayerSize.height; ++discreteYInLayer) { - const currentGid = currentTileLayer.getTileGIDAt(discreteXInLayer, discreteYInLayer); - if (0 >= currentGid) continue; - const gidBoundaries = gidBoundariesMap[currentGid]; - if (!gidBoundaries) continue; - switch (mapOrientation) { - case cc.TiledMap.Orientation.ORTHO: - // TODO - return toRet; - - case cc.TiledMap.Orientation.ISO: - const centreOfAnchorTileInMapNode = this._continuousFromCentreOfDiscreteTile(withTiledMapNode, tiledMapIns, currentTileLayer, discreteXInLayer, discreteYInLayer); - const topLeftOfWholeTsxTileInMapNode = centreOfAnchorTileInMapNode.add(cc.v2(-0.5 * mapTileSize.width, currentLayerTileSize.height - 0.5 * mapTileSize.height)); - for (let bidx = 0; bidx < gidBoundaries.barriers.length; ++bidx) { - const theBarrier = gidBoundaries.barriers[bidx]; // An array of cc.v2 points. - let brToPushTmp = []; - for (let tbidx = 0; tbidx < theBarrier.length; ++tbidx) { - brToPushTmp.push(topLeftOfWholeTsxTileInMapNode.add(cc.v2(theBarrier[tbidx].x, -theBarrier[tbidx].y /* Mind the reverse y-axis here. */))); - } - toRet.barriers.push(brToPushTmp); - } - continue; - - default: - return toRet; - } - } - } - } return toRet; } -TileCollisionManager.prototype.isOutOfMapNode = function (tiledMapNode, continuousPosLocalToMap) { - var tiledMapIns = tiledMapNode.getComponent(cc.TiledMap); // This is a magic name. +TileCollisionManager.prototype.isOutOfMapNode = function(tiledMapNode, continuousPosLocalToMap) { + const tiledMapIns = tiledMapNode.getComponent(cc.TiledMap); // This is a magic name. - var mapOrientation = tiledMapIns.getMapOrientation(); - var mapTileRectilinearSize = tiledMapIns.getTileSize(); + const mapOrientation = tiledMapIns.getMapOrientation(); + const mapTileRectilinearSize = tiledMapIns.getTileSize(); - var mapContentSize = cc.size(tiledMapIns.getTileSize().width * tiledMapIns.getMapSize().width, tiledMapIns.getTileSize().height * tiledMapIns.getMapSize().height); + const mapContentSize = cc.size(tiledMapIns.getTileSize().width * tiledMapIns.getMapSize().width, tiledMapIns.getTileSize().height * tiledMapIns.getMapSize().height); switch (mapOrientation) { case cc.TiledMap.Orientation.ORTHO: - // TODO - return true; - case cc.TiledMap.Orientation.ISO: - var continuousObjLayerOffset = this.continuousMapNodePosToContinuousObjLayerOffset(tiledMapNode, continuousPosLocalToMap); + const continuousObjLayerOffset = this.continuousMapNodePosToContinuousObjLayerOffset(tiledMapNode, continuousPosLocalToMap); // Already took care of both orientations return 0 > continuousObjLayerOffset.x || 0 > continuousObjLayerOffset.y || mapContentSize.width < continuousObjLayerOffset.x || mapContentSize.height < continuousObjLayerOffset.y; default: @@ -580,63 +169,18 @@ TileCollisionManager.prototype.isOutOfMapNode = function (tiledMapNode, continuo }; TileCollisionManager.prototype.initMapNodeByTiledBoundaries = function(mapScriptIns, mapNode, extractedBoundaryObjs) { - // TODO: TO DEPRECATE! const tiledMapIns = mapNode.getComponent(cc.TiledMap); - if (extractedBoundaryObjs.grandBoundaries) { - window.grandBoundary = []; - for (let boundaryObj of extractedBoundaryObjs.grandBoundaries) { - for (let p of boundaryObj) { - if (CC_DEBUG) { - const labelNode = new cc.Node(); - labelNode.setPosition(p); - const label = labelNode.addComponent(cc.Label); - label.string = "GB_(" + p.x.toFixed(2) + ", " + p.y.toFixed(2) + ")"; - safelyAddChild(mapNode, labelNode); - setLocalZOrder(labelNode, 999); - } - window.grandBoundary.push(p); - } - break; - } - } - - mapScriptIns.dictOfTiledFrameAnimationList = {}; - for (let frameAnim of extractedBoundaryObjs.frameAnimations) { - if (!frameAnim.type) { - cc.warn("should bind a type to the frameAnim object layer"); - continue - } - const tiledMapIns = mapScriptIns.node.getComponent(cc.TiledMap); - let frameAnimInType = mapScriptIns.dictOfTiledFrameAnimationList[frameAnim.type]; - if (!frameAnimInType) { - mapScriptIns.dictOfTiledFrameAnimationList[frameAnim.type] = []; - frameAnimInType = mapScriptIns.dictOfTiledFrameAnimationList[frameAnim.type]; - } - const animNode = cc.instantiate(mapScriptIns.tiledAnimPrefab); - const anim = animNode.getComponent(cc.Animation); - animNode.setPosition(frameAnim.posInMapNode); - animNode.width = frameAnim.sizeInMapNode.width; - animNode.height = frameAnim.sizeInMapNode.height; - animNode.setScale(frameAnim.sizeInMapNode.width / frameAnim.origSize.width, frameAnim.sizeInMapNode.height / frameAnim.origSize.height); - animNode.opacity = 0; - animNode.setAnchorPoint(cc.v2(0.5, 0)); // A special requirement for "image-type Tiled object" by "CocosCreator v2.0.1". - safelyAddChild(mapScriptIns.node, animNode); - setLocalZOrder(animNode, 5); - anim.addClip(frameAnim.animationClip, "default"); - anim.play("default"); - frameAnimInType.push(animNode); - } mapScriptIns.barrierColliders = []; for (let boundaryObj of extractedBoundaryObjs.barriers) { const newBarrier = cc.instantiate(mapScriptIns.polygonBoundaryBarrierPrefab); - const newBoundaryOffsetInMapNode = cc.v2(boundaryObj[0].x, boundaryObj[0].y); + const newBoundaryOffsetInMapNode = cc.v2(boundaryObj.anchor.x, boundaryObj.anchor.y); newBarrier.setPosition(newBoundaryOffsetInMapNode); newBarrier.setAnchorPoint(cc.v2(0, 0)); const newBarrierColliderIns = newBarrier.getComponent(cc.PolygonCollider); newBarrierColliderIns.points = []; for (let p of boundaryObj) { - newBarrierColliderIns.points.push(p.sub(newBoundaryOffsetInMapNode)); + newBarrierColliderIns.points.push(p); } mapScriptIns.barrierColliders.push(newBarrierColliderIns); mapScriptIns.node.addChild(newBarrier); diff --git a/frontend/settings/i18n.json b/frontend/settings/i18n.json index 2955719..65c1cae 100644 --- a/frontend/settings/i18n.json +++ b/frontend/settings/i18n.json @@ -1,4 +1,7 @@ { - "languages": [], - "default_language": null + "default_language": "zh", + "languages": [ + "zh", + "en" + ] }