{"record":{"id":"8afc69c4258689e6","repo":"FyroxEngine/Fyrox","slug":"tile-set-load-failed","errorCode":null,"errorMessage":"Tile set load failed!","messagePattern":"Tile set load failed!","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"fyrox-impl/src/scene/tilemap/brush.rs","lineNumber":284,"sourceCode":"impl TileMapBrush {\n    /// Return true after blocking to wait for the brush's tile set to load,\n    /// if the tile set loads successfully, or if the tile set has no brush.\n    /// Return false if any error occurs while trying to load the tile set.\n    pub fn block_until_tile_set_is_loaded(&self) -> bool {\n        let Some(tile_set) = self.tile_set.as_ref() else {\n            return true;\n        };\n        let tile_set = match block_on(tile_set.clone()) {\n            Ok(tile_set) => tile_set,\n            Err(e) => {\n                Log::err(format!(\"Tile set load failed! Reason: {e:?}\"));\n                return false;\n            }\n        };\n        if tile_set.is_ok() {\n            true\n        } else {\n            Log::err(\"Tile set load failed!\");\n            false\n        }\n    }\n    /// Return the tile set for this brush, blocking if the tile set is not yet\n    /// loaded. None is returned if this brush has no tile set or the tile set fails to load.\n    pub fn tile_set(&self) -> Option<TileSetResource> {\n        let tile_set = self.tile_set.as_ref()?;\n        let tile_set = match block_on(tile_set.clone()) {\n            Ok(tile_set) => tile_set,\n            Err(e) => {\n                Log::err(format!(\"Tile set load failed! Reason: {e:?}\"));\n                return None;\n            }\n        };\n        if !tile_set.is_ok() {\n            Log::err(\"Tile set load failed!\");\n            return None;\n        }","sourceCodeStart":266,"sourceCodeEnd":302,"githubUrl":"https://github.com/FyroxEngine/Fyrox/blob/76c91aad8eca488ce527b1af707be8b3b24ad72d/fyrox-impl/src/scene/tilemap/brush.rs#L266-L302","documentation":"After the tile set resource future resolves, TileBrush::block_until_tile_set_is_loaded also checks the loaded TileSet for internal errors (is_ok); if the tile set content itself is in an error state, it logs 'Tile set load failed!' and returns false.","triggerScenarios":"block_until_tile_set_is_loaded when the tile set resource loads but its payload is an error (e.g. deserialization of tile set contents failed).","commonSituations":"Tile set file exists but has invalid/corrupt contents; tile set saved by an incompatible Fyrox version.","solutions":["Inspect the tile set resource state for its inner error and fix the .tileset file contents.","Re-create the tile set in the editor and re-link it to the brush.","Re-save the tile set with the current Fyrox/editor version.","Validate any externally generated .tileset data against the current format."],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":"if !brush.block_until_tile_set_is_loaded() {\n    // inspect tile set resource state for the inner error\n    return;\n}","preventionTips":["Validate .tileset contents after external edits.","Re-save tile sets when migrating Fyrox versions.","Open tile sets in the editor to confirm they load cleanly."],"tags":["fyrox","tilemap","brush","resource-load"],"backgroundTag":"schema-validation-failed","analyzedSha":"76c91aad8eca488ce527b1af707be8b3b24ad72d","analyzedAt":"2026-09-10T16:04:01.633Z","contentChangedAt":"2026-09-10T16:04:01.633Z","schemaVersion":2},"datasetVersion":"2026-09-16T09:17:16.951Z"}