Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
M
MDPro3
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
MyCard
MDPro3
Commits
afec2d14
Commit
afec2d14
authored
Dec 14, 2025
by
wind2009
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'upstream/master'
parents
97a768fe
fb478906
Pipeline
#42047
passed with stages
in 181 minutes and 18 seconds
Changes
7
Pipelines
4
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
60 additions
and
114 deletions
+60
-114
Assets/AddressableAssetsData/AddressableAssetSettings.asset
Assets/AddressableAssetsData/AddressableAssetSettings.asset
+2
-2
Assets/Scripts/MDPro3/Helper/ABLoader.cs
Assets/Scripts/MDPro3/Helper/ABLoader.cs
+45
-101
Assets/Scripts/MDPro3/Program.cs
Assets/Scripts/MDPro3/Program.cs
+0
-1
Assets/Scripts/MDPro3/Servant/CutinViewer.cs
Assets/Scripts/MDPro3/Servant/CutinViewer.cs
+2
-3
ProjectSettings/ProjectSettings.asset
ProjectSettings/ProjectSettings.asset
+8
-1
ProjectSettings/QualitySettings.asset
ProjectSettings/QualitySettings.asset
+2
-5
README.md
README.md
+1
-1
No files found.
Assets/AddressableAssetsData/AddressableAssetSettings.asset
View file @
afec2d14
...
@@ -15,7 +15,7 @@ MonoBehaviour:
...
@@ -15,7 +15,7 @@ MonoBehaviour:
m_DefaultGroup
:
ca8b8e6916019834fb0ec5578fa0be37
m_DefaultGroup
:
ca8b8e6916019834fb0ec5578fa0be37
m_currentHash
:
m_currentHash
:
serializedVersion
:
2
serializedVersion
:
2
Hash
:
7ae1e00c82a3ef67da50633ae09c274f
Hash
:
00000000000000000000000000000000
m_OptimizeCatalogSize
:
0
m_OptimizeCatalogSize
:
0
m_BuildRemoteCatalog
:
0
m_BuildRemoteCatalog
:
0
m_CatalogRequestsTimeout
:
0
m_CatalogRequestsTimeout
:
0
...
@@ -56,7 +56,7 @@ MonoBehaviour:
...
@@ -56,7 +56,7 @@ MonoBehaviour:
m_ContentStateBuildPathProfileVariableName
:
<default settings path>
m_ContentStateBuildPathProfileVariableName
:
<default settings path>
m_CustomContentStateBuildPath
:
m_CustomContentStateBuildPath
:
m_ContentStateBuildPath
:
m_ContentStateBuildPath
:
m_BuildAddressablesWithPlayerBuild
:
2
m_BuildAddressablesWithPlayerBuild
:
1
m_overridePlayerVersion
:
'
[UnityEditor.PlayerSettings.bundleVersion]'
m_overridePlayerVersion
:
'
[UnityEditor.PlayerSettings.bundleVersion]'
m_GroupAssets
:
m_GroupAssets
:
-
{
fileID
:
11400000
,
guid
:
00d23bf82261d794b8ad80777f3da3ae
,
type
:
2
}
-
{
fileID
:
11400000
,
guid
:
00d23bf82261d794b8ad80777f3da3ae
,
type
:
2
}
...
...
Assets/Scripts/MDPro3/Helper/ABLoader.cs
View file @
afec2d14
using
Cysharp.Threading.Tasks
;
using
Cysharp.Threading.Tasks
;
using
Spine.Unity
;
using
Spine.Unity
;
using
System
;
using
System.Collections.Generic
;
using
System.Collections.Generic
;
using
System.IO
;
using
System.IO
;
using
System.Linq
;
using
System.Linq
;
...
@@ -18,9 +19,7 @@ namespace MDPro3
...
@@ -18,9 +19,7 @@ namespace MDPro3
public
static
Dictionary
<
string
,
GameObject
>
cachedAB
=
new
();
public
static
Dictionary
<
string
,
GameObject
>
cachedAB
=
new
();
public
static
Dictionary
<
string
,
GameObject
>
cachedABFolder
=
new
();
public
static
Dictionary
<
string
,
GameObject
>
cachedABFolder
=
new
();
public
static
Dictionary
<
string
,
Material
>
cachedPMat
=
new
();
public
static
Dictionary
<
string
,
Material
>
cachedPMat
=
new
();
private
static
readonly
List
<
GameObject
>
tempGameObjects
=
new
();
private
static
readonly
SemaphoreSlim
protectorSemaphoreSlim
=
new
(
1
,
1
);
private
static
SemaphoreSlim
protectorSemaphoreSlim
=
new
(
1
,
1
);
public
static
async
UniTask
<
AssetBundle
>
CacheFromFileAsync
(
string
path
)
public
static
async
UniTask
<
AssetBundle
>
CacheFromFileAsync
(
string
path
)
{
{
...
@@ -31,7 +30,7 @@ namespace MDPro3
...
@@ -31,7 +30,7 @@ namespace MDPro3
{
{
if
(
cachedAB
.
TryGetValue
(
path
,
out
var
returnValue
))
if
(
cachedAB
.
TryGetValue
(
path
,
out
var
returnValue
))
{
{
if
(
instantiate
&&
returnValue
!=
null
)
if
(
instantiate
)
return
UnityEngine
.
Object
.
Instantiate
(
returnValue
);
return
UnityEngine
.
Object
.
Instantiate
(
returnValue
);
else
else
return
returnValue
;
return
returnValue
;
...
@@ -39,19 +38,15 @@ namespace MDPro3
...
@@ -39,19 +38,15 @@ namespace MDPro3
AssetBundle
ab
;
AssetBundle
ab
;
ab
=
AssetBundle
.
LoadFromFile
(
Program
.
root
+
path
);
ab
=
AssetBundle
.
LoadFromFile
(
Program
.
root
+
path
);
var
prefab
s
=
ab
.
LoadAllAssets
();
var
asset
s
=
ab
.
LoadAllAssets
();
foreach
(
UnityEngine
.
Object
prefab
in
prefab
s
)
foreach
(
UnityEngine
.
Object
asset
in
asset
s
)
{
{
if
(
typeof
(
GameObject
).
IsInstanceOfType
(
prefab
))
if
(
typeof
(
GameObject
).
IsInstanceOfType
(
asset
))
{
{
if
(
cache
)
if
(
cache
)
{
if
(!
cachedAB
.
TryAdd
(
path
,
asset
as
GameObject
))
if
(!
cachedAB
.
TryAdd
(
path
,
prefab
as
GameObject
))
Debug
.
LogError
(
$"Failed to cache
{
path
}
"
);
Debug
.
LogWarning
(
$"Failed to cache
{
path
}
"
);
returnValue
=
asset
as
GameObject
;
}
else
tempGameObjects
.
Add
(
prefab
as
GameObject
);
returnValue
=
prefab
as
GameObject
;
break
;
break
;
}
}
}
}
...
@@ -74,20 +69,18 @@ namespace MDPro3
...
@@ -74,20 +69,18 @@ namespace MDPro3
}
}
AssetBundle
ab
=
await
AssetBundle
.
LoadFromFileAsync
(
Program
.
root
+
path
);
AssetBundle
ab
=
await
AssetBundle
.
LoadFromFileAsync
(
Program
.
root
+
path
);
var
prefab
s
=
ab
.
LoadAllAssets
();
var
asset
s
=
ab
.
LoadAllAssets
();
foreach
(
UnityEngine
.
Object
prefab
in
prefab
s
)
foreach
(
UnityEngine
.
Object
asset
in
asset
s
)
{
{
if
(
typeof
(
GameObject
).
IsInstanceOfType
(
prefab
))
if
(
typeof
(
GameObject
).
IsInstanceOfType
(
asset
))
{
{
if
(
cache
)
if
(
cache
)
{
{
if
(!
cachedAB
.
TryAdd
(
path
,
prefab
as
GameObject
))
if
(!
cachedAB
.
TryAdd
(
path
,
asset
as
GameObject
))
Debug
.
LogWarning
(
$"Failed to cache
{
path
}
"
);
Debug
.
LogWarning
(
$"Failed to cache
{
path
}
"
);
}
}
else
returnValue
=
asset
as
GameObject
;
tempGameObjects
.
Add
(
prefab
as
GameObject
);
returnValue
=
prefab
as
GameObject
;
//break;
//break;
}
}
}
}
...
@@ -113,7 +106,6 @@ namespace MDPro3
...
@@ -113,7 +106,6 @@ namespace MDPro3
#if !UNITY_EDITOR && UNITY_STANDALONE_WIN
#if !UNITY_EDITOR && UNITY_STANDALONE_WIN
dir
=
new
DirectoryInfo
(
Path
.
Combine
(
Application
.
dataPath
,
Program
.
root
+
path
));
dir
=
new
DirectoryInfo
(
Path
.
Combine
(
Application
.
dataPath
,
Program
.
root
+
path
));
#endif
#endif
FileInfo
[]
files
=
dir
.
GetFiles
(
"*"
);
FileInfo
[]
files
=
dir
.
GetFiles
(
"*"
);
List
<
AssetBundle
>
bundles
=
new
();
List
<
AssetBundle
>
bundles
=
new
();
for
(
int
i
=
0
;
i
<
files
.
Length
;
i
++)
for
(
int
i
=
0
;
i
<
files
.
Length
;
i
++)
...
@@ -137,8 +129,6 @@ namespace MDPro3
...
@@ -137,8 +129,6 @@ namespace MDPro3
bundle
.
Unload
(
false
);
bundle
.
Unload
(
false
);
if
(
cache
&&
returnValue
!=
null
)
if
(
cache
&&
returnValue
!=
null
)
cachedABFolder
.
TryAdd
(
path
,
returnValue
);
cachedABFolder
.
TryAdd
(
path
,
returnValue
);
else
if
(!
cache
)
tempGameObjects
.
AddRange
(
loadedPrefabs
);
if
(
returnValue
==
null
)
if
(
returnValue
==
null
)
Debug
.
Log
(
$"LoadFromFolderAsync get null:
{
path
}
"
);
Debug
.
Log
(
$"LoadFromFolderAsync get null:
{
path
}
"
);
...
@@ -190,7 +180,8 @@ namespace MDPro3
...
@@ -190,7 +180,8 @@ namespace MDPro3
return
go
;
return
go
;
}
}
public
static
async
UniTask
<
GameObject
>
LoadFromFolderAsync
<
T
>(
string
path
,
bool
cache
,
bool
instantiate
)
where
T
:
Component
public
static
async
UniTask
<
GameObject
>
LoadFromFolderAsync
<
T
>(
string
path
,
bool
cache
,
bool
instantiate
,
Action
<
GameObject
,
List
<
UnityEngine
.
Object
>>
processEvent
=
null
)
where
T
:
Component
{
{
if
(
cachedABFolder
.
TryGetValue
(
path
,
out
var
returnValue
))
if
(
cachedABFolder
.
TryGetValue
(
path
,
out
var
returnValue
))
{
{
...
@@ -210,46 +201,50 @@ namespace MDPro3
...
@@ -210,46 +201,50 @@ namespace MDPro3
for
(
int
i
=
0
;
i
<
files
.
Length
;
i
++)
for
(
int
i
=
0
;
i
<
files
.
Length
;
i
++)
bundles
.
Add
(
await
AssetBundle
.
LoadFromFileAsync
(
files
[
i
].
FullName
));
bundles
.
Add
(
await
AssetBundle
.
LoadFromFileAsync
(
files
[
i
].
FullName
));
var
loadedPrefabs
=
new
List
<
Game
Object
>();
var
allAssets
=
new
List
<
UnityEngine
.
Object
>();
foreach
(
AssetBundle
bundle
in
bundles
)
foreach
(
AssetBundle
bundle
in
bundles
)
{
{
var
prefabs
=
bundle
.
LoadAllAssets
();
var
assets
=
bundle
.
LoadAllAssets
();
for
(
int
j
=
0
;
j
<
prefabs
.
Length
;
j
++)
allAssets
.
AddRange
(
assets
.
ToList
());
if
(
typeof
(
GameObject
).
IsInstanceOfType
(
prefabs
[
j
]))
loadedPrefabs
.
Add
(
prefabs
[
j
]
as
GameObject
);
}
}
foreach
(
var
prefab
in
loadedPrefabs
)
var
allPrefabs
=
new
List
<
GameObject
>();
{
foreach
(
var
asset
in
allAssets
)
if
(
prefab
.
TryGetComponent
<
T
>(
out
_
))
if
(
typeof
(
GameObject
).
IsInstanceOfType
(
asset
))
allPrefabs
.
Add
(
asset
as
GameObject
);
foreach
(
var
prefab
in
allPrefabs
)
if
(
prefab
.
TryGetComponent
<
T
>(
out
_
))
{
{
returnValue
=
prefab
;
returnValue
=
prefab
;
break
;
break
;
}
}
}
foreach
(
AssetBundle
bundle
in
bundles
)
foreach
(
AssetBundle
bundle
in
bundles
)
bundle
.
Unload
(
false
);
bundle
.
Unload
(
false
);
if
(
returnValue
!=
null
)
processEvent
?.
Invoke
(
returnValue
,
allAssets
);
if
(
cache
&&
returnValue
!=
null
)
if
(
cache
&&
returnValue
!=
null
)
cachedABFolder
.
TryAdd
(
path
,
returnValue
);
cachedABFolder
.
TryAdd
(
path
,
returnValue
);
else
if
(!
cache
)
tempGameObjects
.
AddRange
(
loadedPrefabs
);
if
(
returnValue
==
null
)
if
(
returnValue
==
null
)
Debug
.
Log
(
$"
LoadFromFolderAsync get null
:
{
path
}
"
);
Debug
.
Log
(
$"
[ABLoader]: LoadFromFolderAsync get no GameObject
:
{
path
}
"
);
if
(
instantiate
)
if
(
instantiate
)
{
{
if
(
returnValue
!=
null
)
if
(
returnValue
!=
null
)
return
UnityEngine
.
Object
.
Instantiate
(
returnValue
);
return
UnityEngine
.
Object
.
Instantiate
(
returnValue
);
else
else
return
UnityEngine
.
Object
.
Instantiate
(
loaded
Prefabs
[
0
]);
return
UnityEngine
.
Object
.
Instantiate
(
all
Prefabs
[
0
]);
}
}
else
else
{
{
if
(
returnValue
!=
null
)
if
(
returnValue
!=
null
)
return
returnValue
;
return
returnValue
;
else
else
return
loaded
Prefabs
[
0
];
return
all
Prefabs
[
0
];
}
}
}
}
...
@@ -286,57 +281,21 @@ namespace MDPro3
...
@@ -286,57 +281,21 @@ namespace MDPro3
return
returnValue
;
return
returnValue
;
}
}
public
static
async
UniTask
<
GameObject
>
LoadMonsterCutinAsync
(
int
code
)
public
static
async
UniTask
<
GameObject
>
LoadMonsterCutinAsync
(
int
code
,
bool
cache
)
{
{
GameObject
returnValue
=
null
;
var
path
=
$"MonsterCutin/
{
code
}
"
;
var
path
=
$"MonsterCutin/
{
code
}
"
;
DirectoryInfo
dir
=
new
(
Program
.
root
+
path
);
return
await
LoadFromFolderAsync
<
PlayableDirector
>(
path
,
cache
,
true
,
FindAndSetSkeletonDataAsset
);
#if !UNITY_EDITOR && (UNITY_STANDALONE_OSX || UNITY_STANDALONE_WIN)
dir
=
new
DirectoryInfo
(
Path
.
Combine
(
Application
.
dataPath
,
Program
.
root
+
path
));
#endif
FileInfo
[]
files
=
dir
.
GetFiles
(
"*"
);
List
<
AssetBundle
>
bundles
=
new
();
for
(
int
i
=
0
;
i
<
files
.
Length
;
i
++)
bundles
.
Add
(
await
AssetBundle
.
LoadFromFileAsync
(
files
[
i
].
FullName
));
var
loadedPrefabs
=
new
List
<
GameObject
>();
foreach
(
AssetBundle
bundle
in
bundles
)
{
var
prefabs
=
bundle
.
LoadAllAssets
();
for
(
int
j
=
0
;
j
<
prefabs
.
Length
;
j
++)
if
(
typeof
(
GameObject
).
IsInstanceOfType
(
prefabs
[
j
]))
loadedPrefabs
.
Add
(
prefabs
[
j
]
as
GameObject
);
}
}
foreach
(
var
prefab
in
loadedPrefabs
)
private
static
void
FindAndSetSkeletonDataAsset
(
GameObject
prefab
,
List
<
UnityEngine
.
Object
>
assets
)
{
if
(
prefab
.
TryGetComponent
<
PlayableDirector
>(
out
_
))
{
returnValue
=
prefab
;
break
;
}
}
if
(
returnValue
==
null
)
{
{
Debug
.
LogError
(
"[ABLoader]: Monster Cutin load null."
);
return
null
;
}
//召唤兽 梅尔卡巴[75286622]在安卓端和iOS端的Spine动画资源丢失,
//召唤兽 梅尔卡巴[75286622]在安卓端和iOS端的Spine动画资源丢失,
//临时修复方案为从已加载的AssetBundle中寻找SkeletonDataAsset并赋值。
//临时修复方案为从已加载的AssetBundle中寻找SkeletonDataAsset并赋值。
if
(
returnValue
.
transform
.
GetChild
(
0
).
GetChild
(
0
).
TryGetComponent
<
SkeletonAnimation
>(
out
var
sa
))
if
(
prefab
.
transform
.
GetChild
(
0
).
GetChild
(
0
).
TryGetComponent
<
SkeletonAnimation
>(
out
var
sa
))
{
{
if
(
sa
.
skeletonDataAsset
==
null
)
if
(
sa
.
skeletonDataAsset
==
null
)
{
{
var
allAssets
=
new
List
<
Object
>();
foreach
(
var
asset
in
assets
)
foreach
(
AssetBundle
bundle
in
bundles
)
{
var
assets
=
bundle
.
LoadAllAssets
();
allAssets
.
AddRange
(
assets
.
ToList
());
}
foreach
(
var
asset
in
allAssets
)
if
(
asset
is
SkeletonDataAsset
sda
)
if
(
asset
is
SkeletonDataAsset
sda
)
{
{
sa
.
skeletonDataAsset
=
sda
;
sa
.
skeletonDataAsset
=
sda
;
...
@@ -344,12 +303,6 @@ namespace MDPro3
...
@@ -344,12 +303,6 @@ namespace MDPro3
}
}
}
}
}
}
foreach
(
AssetBundle
bundle
in
bundles
)
bundle
.
Unload
(
false
);
var
instance
=
UnityEngine
.
Object
.
Instantiate
(
returnValue
);
return
instance
;
}
}
public
static
async
UniTask
<
Material
>
LoadProtectorMaterial
(
string
code
,
CancellationToken
token
)
public
static
async
UniTask
<
Material
>
LoadProtectorMaterial
(
string
code
,
CancellationToken
token
)
...
@@ -507,15 +460,7 @@ namespace MDPro3
...
@@ -507,15 +460,7 @@ namespace MDPro3
return
returnValue
;
return
returnValue
;
}
}
public
static
void
ClearTemp
()
#
region
Built
-
in
MasterDuel
Assets
{
foreach
(
var
go
in
tempGameObjects
)
UnityEngine
.
Object
.
Destroy
(
go
);
tempGameObjects
.
Clear
();
}
#
region
MasterDuel
public
static
bool
mdCached
;
public
static
bool
mdCached
;
public
static
float
mdCachedProgress
;
public
static
float
mdCachedProgress
;
...
@@ -550,7 +495,6 @@ namespace MDPro3
...
@@ -550,7 +495,6 @@ namespace MDPro3
mdDuelCached
=
true
;
mdDuelCached
=
true
;
}
}
public
static
GameObject
LoadMasterDuelGameObject
(
string
oName
)
public
static
GameObject
LoadMasterDuelGameObject
(
string
oName
)
{
{
if
(
mdBundleDuel
==
null
)
if
(
mdBundleDuel
==
null
)
...
@@ -565,7 +509,7 @@ namespace MDPro3
...
@@ -565,7 +509,7 @@ namespace MDPro3
Debug
.
LogError
(
$"MasterDuel AssetBundle [Duel] does not contain [
{
oName
}
]!"
);
Debug
.
LogError
(
$"MasterDuel AssetBundle [Duel] does not contain [
{
oName
}
]!"
);
return
null
;
return
null
;
}
}
return
Object
.
Instantiate
(
prefab
);
return
UnityEngine
.
Object
.
Instantiate
(
prefab
);
}
}
public
static
GameObject
LoadMasterDuelOutDuelObject
(
string
oName
)
public
static
GameObject
LoadMasterDuelOutDuelObject
(
string
oName
)
...
@@ -582,7 +526,7 @@ namespace MDPro3
...
@@ -582,7 +526,7 @@ namespace MDPro3
Debug
.
LogError
(
$"MasterDuel AssetBundle [OutDuel] does not contain [
{
oName
}
]!"
);
Debug
.
LogError
(
$"MasterDuel AssetBundle [OutDuel] does not contain [
{
oName
}
]!"
);
return
null
;
return
null
;
}
}
return
Object
.
Instantiate
(
prefab
);
return
UnityEngine
.
Object
.
Instantiate
(
prefab
);
}
}
public
static
Material
LoadMasterDuelMaterial
(
string
mName
)
public
static
Material
LoadMasterDuelMaterial
(
string
mName
)
...
@@ -598,7 +542,7 @@ namespace MDPro3
...
@@ -598,7 +542,7 @@ namespace MDPro3
Debug
.
LogError
(
$"MasterDuel AssetBundle [Materials] does not contain material [
{
mName
}
]!"
);
Debug
.
LogError
(
$"MasterDuel AssetBundle [Materials] does not contain material [
{
mName
}
]!"
);
return
null
;
return
null
;
}
}
return
Object
.
Instantiate
(
mat
);
return
UnityEngine
.
Object
.
Instantiate
(
mat
);
}
}
public
static
Sprite
LoadMasterDuelSprite
(
string
sName
)
public
static
Sprite
LoadMasterDuelSprite
(
string
sName
)
...
...
Assets/Scripts/MDPro3/Program.cs
View file @
afec2d14
...
@@ -344,7 +344,6 @@ namespace MDPro3
...
@@ -344,7 +344,6 @@ namespace MDPro3
private
async
UniTask
UnloadUnusedAssetsAsync
()
private
async
UniTask
UnloadUnusedAssetsAsync
()
{
{
ABLoader
.
ClearTemp
();
await
Resources
.
UnloadUnusedAssets
();
await
Resources
.
UnloadUnusedAssets
();
}
}
...
...
Assets/Scripts/MDPro3/Servant/CutinViewer.cs
View file @
afec2d14
...
@@ -37,7 +37,6 @@ namespace MDPro3.Servant
...
@@ -37,7 +37,6 @@ namespace MDPro3.Servant
private
CancellationTokenSource
cts
;
private
CancellationTokenSource
cts
;
#
region
Servant
#
region
Servant
public
override
int
Depth
=>
1
;
public
override
int
Depth
=>
1
;
protected
override
bool
ShowLine
=>
false
;
protected
override
bool
ShowLine
=>
false
;
...
@@ -65,7 +64,7 @@ namespace MDPro3.Servant
...
@@ -65,7 +64,7 @@ namespace MDPro3.Servant
protected
override
void
AfterHidingEvent
()
protected
override
void
AfterHidingEvent
()
{
{
Resources
.
UnloadUnusedAssets
();
Program
.
instance
.
UnloadUnusedAssets
();
}
}
public
override
void
PerFrameFunction
()
public
override
void
PerFrameFunction
()
...
@@ -230,7 +229,7 @@ namespace MDPro3.Servant
...
@@ -230,7 +229,7 @@ namespace MDPro3.Servant
bool
diy
=
false
;
bool
diy
=
false
;
if
(
codes
.
Contains
(
code
))
if
(
codes
.
Contains
(
code
))
//cutin = await ABLoader.LoadFromFolderAsync<PlayableDirector>("MonsterCutin/" + code, false, true);
//cutin = await ABLoader.LoadFromFolderAsync<PlayableDirector>("MonsterCutin/" + code, false, true);
cutin
=
await
ABLoader
.
LoadMonsterCutinAsync
(
code
);
cutin
=
await
ABLoader
.
LoadMonsterCutinAsync
(
code
,
false
);
else
else
{
{
cutin
=
await
ABLoader
.
LoadFromFileAsync
(
"MonsterCutin2/"
+
code
,
false
,
true
);
cutin
=
await
ABLoader
.
LoadFromFileAsync
(
"MonsterCutin2/"
+
code
,
false
,
true
);
...
...
ProjectSettings/ProjectSettings.asset
View file @
afec2d14
...
@@ -982,7 +982,14 @@ PlayerSettings:
...
@@ -982,7 +982,14 @@ PlayerSettings:
windowsGamepadBackendHint
:
0
windowsGamepadBackendHint
:
0
cloudProjectId
:
cloudProjectId
:
framebufferDepthMemorylessMode
:
0
framebufferDepthMemorylessMode
:
0
qualitySettingsNames
:
[]
qualitySettingsNames
:
-
Very Low
-
Low
-
Medium
-
High
-
Very High
-
Ultra
-
UI
projectName
:
projectName
:
organizationId
:
organizationId
:
cloudEnabled
:
0
cloudEnabled
:
0
...
...
ProjectSettings/QualitySettings.asset
View file @
afec2d14
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
QualitySettings
:
QualitySettings
:
m_ObjectHideFlags
:
0
m_ObjectHideFlags
:
0
serializedVersion
:
5
serializedVersion
:
5
m_CurrentQuality
:
5
m_CurrentQuality
:
0
m_QualitySettings
:
m_QualitySettings
:
-
serializedVersion
:
4
-
serializedVersion
:
4
name
:
Very Low
name
:
Very Low
...
@@ -371,7 +371,4 @@ QualitySettings:
...
@@ -371,7 +371,4 @@ QualitySettings:
terrainMaxTrees
:
50
terrainMaxTrees
:
50
excludedTargetPlatforms
:
[]
excludedTargetPlatforms
:
[]
m_TextureMipmapLimitGroupNames
:
[]
m_TextureMipmapLimitGroupNames
:
[]
m_PerPlatformDefaultQuality
:
m_PerPlatformDefaultQuality
:
{}
Android
:
0
Standalone
:
0
iPhone
:
0
README.md
View file @
afec2d14
...
@@ -6,7 +6,7 @@ Unity version: 6000.0.10f1
...
@@ -6,7 +6,7 @@ Unity version: 6000.0.10f1
### Other required folders
### Other required folders
*
Platforms: https://code.mycard.moe/sherry
\
_
chaos/mdpro3-assetbundles
*
Platforms: https://code.mycard.moe/sherry_chaos/mdpro3-assetbundles
*
Picture/Art: https://code.mycard.moe/mycard/hd-arts
*
Picture/Art: https://code.mycard.moe/mycard/hd-arts
*
Picture/Closeup: https://code.mycard.moe/mycard/ygopro2-closeup
*
Picture/Closeup: https://code.mycard.moe/mycard/ygopro2-closeup
*
Picture/DIY: You can find it from the released MDPro3
*
Picture/DIY: You can find it from the released MDPro3
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment