/// <summary> /// Load the document. /// </summary> void LoadDocument() { if (layout.layoutDocumentAsset == null) { return; } // load the map layout.Load(); // update the root friendly name if (layout.document != null & layout.document.allLayers != null) { layout.document.allLayers[0].photoshopLayerName = layout.GetFriendlyDocumentName(); } // try to auto-detect the texture source FormatGuesser guesser = new FormatGuesser(); guesser.layout = layout; switch (guesser.Guess()) { case TextureSource.AssetFolder: SpriteAssigner.AssignSpritesFromFolder(layout); break; case TextureSource.Spritesheet: SpriteAssigner.AssignSpritesFromSpritesheet(layout); break; #if PS2D_TK2D case TextureSource.Tk2dSpriteCollection: _spriteCollectionData = guesser.spriteCollectionData; SpriteAssigner.AssignSpritesFromTk2dCollection(layout, _spriteCollectionData); break; #endif default: break; } }
/// <summary> /// Choose the spritesheet. /// </summary> void MakeSpritesheetField() { if (layout == null || layout.document == null || layout.imageSource != TextureSource.Spritesheet ) { return; } var previousValue = layout.spritesheetTexture; GUIContent labelContent = new GUIContent(); labelContent.text = "Spritesheet"; labelContent.tooltip = "The place where your spritesheet lives."; layout.spritesheetTexture = (Texture)EditorGUILayout.ObjectField(labelContent, layout.spritesheetTexture, typeof(Texture), false, GUILayout.ExpandWidth(false)); // did we change? if (layout.spritesheetTexture != null && previousValue != layout.spritesheetTexture) { SpriteAssigner.AssignSpritesFromSpritesheet(layout); } }