static void ConfigureClip(SwfAsset asset, SwfAssetData data, SwfSymbolData symbol) { var asset_guid = AssetDatabase.AssetPathToGUID(AssetDatabase.GetAssetPath(asset)); var clip_assets = SwfEditorUtils.LoadAllAssetsDBByFilter <SwfClipAsset>("t:SwfClipAsset") .Where(p => p.AssetGUID == asset_guid && p.Name == symbol.Name); if (clip_assets.Any()) { foreach (var clip_asset in clip_assets) { ConfigureClipAsset(clip_asset, asset, data, symbol); } } else { var asset_path = AssetDatabase.GetAssetPath(asset); var clip_asset_path = Path.ChangeExtension(asset_path, symbol.Name + ".asset"); SwfEditorUtils.LoadOrCreateAsset <SwfClipAsset>(clip_asset_path, (new_clip_asset, created) => { ConfigureClipAsset(new_clip_asset, asset, data, symbol); return(true); }); } }