public ISceneDataStore Resolve(ISceneStrategy param1) { return (InBuildScenePathList .Any( scenePath => // パスは Assets/Scenes/Foo/Bar.unity という形式なのでシーン名とのマッチは拡張子を除く Path.GetFileNameWithoutExtension(scenePath) == param1.SceneName ) ? InBuildDataStore : InAssetBundleDataStore); }
public ISceneDataStore ResolveSceneDataStore(string sceneName) { // Scene 構造体を事前に保持しておく手段がないため、無理矢理正規表現でチェックする // LoadScene されていないと Scene 構造体が作られない仕様らしい return(InBuildScenePathList.Any(scenePath => Regex.IsMatch(scenePath, $"{sceneName}\\.unity$")) ? InBuildSceneDataStore : AssetBundleSceneDataStore); }