Merge branch 'develop' into fixbug/npc-dialog

This commit is contained in:
HungDK
2026-04-22 10:37:40 +07:00
115 changed files with 255842 additions and 426 deletions
@@ -13,6 +13,7 @@ MonoBehaviour:
m_Name: AddressableAssetGroupSortSettings
m_EditorClassIdentifier:
sortOrder:
- c9bec744898b84f7faa02755bedd48e3
- 11c472f60f1ab8142af69f055419e981
- 9cbac0921a817ee4ab82e15401d822cd
- 711bd3b559b78074294e8454e188fc58
@@ -15,7 +15,7 @@ MonoBehaviour:
m_DefaultGroup: 712e3991f28e549e7a56ee582a977810
m_currentHash:
serializedVersion: 2
Hash: 00000000000000000000000000000000
Hash: f1752f3dcbab30f470d7c66239dcf3c1
m_OptimizeCatalogSize: 0
m_BuildRemoteCatalog: 0
m_CatalogRequestsTimeout: 0
@@ -70,6 +70,7 @@ MonoBehaviour:
- {fileID: 11400000, guid: a4c86ee23d4eeb649844f50adf2fadb4, type: 2}
- {fileID: 11400000, guid: 797fe3465d47dad4fa5a65c997e26a26, type: 2}
- {fileID: 11400000, guid: 5c7374bc56a9447e88024b8d10f93d58, type: 2}
- {fileID: 11400000, guid: 90f65e11fe5b44d529bf6d3205841587, type: 2}
m_BuildSettings:
m_LogResourceManagerExceptions: 1
m_BundleBuildPath: Temp/com.unity.addressables/AssetBundles
@@ -0,0 +1,48 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e5d17a21594effb4e9591490b009e7aa, type: 3}
m_Name: music_BundledAssetGroupSchema
m_EditorClassIdentifier:
m_Group: {fileID: 11400000, guid: 90f65e11fe5b44d529bf6d3205841587, type: 2}
m_InternalBundleIdMode: 1
m_Compression: 1
m_IncludeAddressInCatalog: 1
m_IncludeGUIDInCatalog: 1
m_IncludeLabelsInCatalog: 1
m_InternalIdNamingMode: 0
m_CacheClearBehavior: 0
m_IncludeInBuild: 1
m_BundledAssetProviderType:
m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.BundledAssetProvider
m_StripDownloadOptions: 0
m_ForceUniqueProvider: 0
m_UseAssetBundleCache: 1
m_UseAssetBundleCrc: 1
m_UseAssetBundleCrcForCachedBundles: 1
m_UseUWRForLocalBundles: 0
m_Timeout: 0
m_ChunkedTransfer: 0
m_RedirectLimit: -1
m_RetryCount: 0
m_BuildPath:
m_Id: 506465302ec864e8eb6eb8e0d2ee7b2c
m_LoadPath:
m_Id: 71015b41342024feebebb329061472f1
m_BundleMode: 0
m_AssetBundleProviderType:
m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.AssetBundleProvider
m_UseDefaultSchemaSettings: 0
m_SelectedPathPairIndex: 0
m_BundleNaming: 0
m_AssetLoadMode: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6705072e9c59a4c7bb7a39be4baf3ce9
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,16 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5834b5087d578d24c926ce20cd31e6d6, type: 3}
m_Name: music_ContentUpdateGroupSchema
m_EditorClassIdentifier:
m_Group: {fileID: 11400000, guid: 90f65e11fe5b44d529bf6d3205841587, type: 2}
m_StaticContent: 0
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 93dfc5838da01467e8a0788adb088855
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -8853,7 +8853,7 @@ MonoBehaviour:
- npc
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 55af737b2941ead45a871fdefa955831
m_Address: "\u7A0B\u5E8F\u8054\u5165/\u89D2\u8272\u5347\u7EA7\u4EBA\u7C7B.gfx"
m_Address: "\u7A0B\u5E8F\u8054\u5165/\u89D2\u8272\u5347\u7EA7\u4EBA\u7C7B.ecm"
m_ReadOnly: 0
m_SerializedLabels:
- models
@@ -10562,6 +10562,13 @@ MonoBehaviour:
- equipment
- models
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 6565920ed055d4f32bc6d2da4dd49af8
m_Address: "models/npcs/\u602A\u7269/2014/\u6D6E\u5149\u6C34\u6BCD/\u6D6E\u5149\u6C34\u6BCD.ecm"
m_ReadOnly: 0
m_SerializedLabels:
- models
- npc
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 656c8ef293e9a9d43be91cebf28d25c3
m_Address: "models/players/\u88C5\u5907/\u5973/\u8FDE\u73AF\u8155\u7532/\u5973\u901A\u7528\u8FDE\u73AF\u8155\u7532.ecm"
m_ReadOnly: 0
@@ -0,0 +1,33 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: bbb281ee3bf0b054c82ac2347e9e782c, type: 3}
m_Name: music
m_EditorClassIdentifier:
m_GroupName: music
m_GUID: c9bec744898b84f7faa02755bedd48e3
m_SerializeEntries:
- m_GUID: 42623de26b41d48319c3c98734c657bb
m_Address: "music/2014/\u65B0\u624B\u6751/\u5176\u4ED6\u5730\u533A.mp3"
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: e5c504ce180264f2c94e1c18c98495e0
m_Address: music/ambiencestereo/daynormal2.wav
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
m_ReadOnly: 0
m_Settings: {fileID: 11400000, guid: 070edb522e6e54c14a99055900003890, type: 2}
m_SchemaSet:
m_Schemas:
- {fileID: 11400000, guid: 6705072e9c59a4c7bb7a39be4baf3ce9, type: 2}
- {fileID: 11400000, guid: 93dfc5838da01467e8a0788adb088855, type: 2}
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 90f65e11fe5b44d529bf6d3205841587
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,71 @@
using UnityEditor;
using UnityEditor.ShortcutManagement;
using UnityEngine;
public static class PrefabApplyOverrideShortcut
{
private const string MenuPath = "Tools/Prefab/Apply Overrides %#a";
[MenuItem(MenuPath)]
private static void ApplyOverridesFromSelection()
{
var selectedObjects = Selection.gameObjects;
if (selectedObjects == null || selectedObjects.Length == 0)
{
Debug.LogWarning("No GameObject selected.");
return;
}
int appliedCount = 0;
foreach (var selectedObject in selectedObjects)
{
if (selectedObject == null || !PrefabUtility.IsPartOfPrefabInstance(selectedObject))
{
continue;
}
var rootInstance = PrefabUtility.GetOutermostPrefabInstanceRoot(selectedObject);
if (rootInstance == null)
{
continue;
}
PrefabUtility.ApplyPrefabInstance(rootInstance, InteractionMode.UserAction);
appliedCount++;
}
if (appliedCount == 0)
{
Debug.LogWarning("Selected object(s) are not prefab instances.");
return;
}
Debug.Log($"Applied prefab overrides for {appliedCount} instance(s).");
}
[MenuItem(MenuPath, true)]
private static bool ValidateApplyOverridesFromSelection()
{
var selectedObjects = Selection.gameObjects;
if (selectedObjects == null || selectedObjects.Length == 0)
{
return false;
}
foreach (var selectedObject in selectedObjects)
{
if (selectedObject != null && PrefabUtility.IsPartOfPrefabInstance(selectedObject))
{
return true;
}
}
return false;
}
[Shortcut("Prefab/Apply Overrides", KeyCode.A, ShortcutModifiers.Action | ShortcutModifiers.Shift)]
private static void ApplyOverridesShortcut(ShortcutArguments _)
{
ApplyOverridesFromSelection();
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 5313c15fbb1e129438e9201a10ff2eda
@@ -0,0 +1,293 @@
using System.Collections.Generic;
using UnityEditor;
using UnityEditorInternal;
using UnityEngine;
public class PrefabChildBatchCreatorWindow : EditorWindow
{
private readonly List<GameObject> _prefabs = new List<GameObject>();
private string _childName = "NewChild";
private bool _replaceIfExists = false;
private bool _copyLayerAndTagFromParent = true;
private bool _copyParentLocalScale = true;
private bool _useCustomLocalPosition = true;
private bool _useCustomLocalRotation = true;
private Vector3 _childLocalPosition = Vector3.zero;
private Vector3 _childLocalEulerRotation = Vector3.zero;
private Vector2 _scroll;
[MenuItem("Tools/Prefabs/Batch Create Child")]
public static void ShowWindow()
{
var window = GetWindow<PrefabChildBatchCreatorWindow>("Batch Child Creator");
window.minSize = new Vector2(500f, 450f);
}
private void OnGUI()
{
EditorGUILayout.LabelField("Batch Create Child For Prefabs", EditorStyles.boldLabel);
EditorGUILayout.HelpBox(
"Add multiple prefab assets below. The tool creates one child under each prefab root, then moves all root components to the child.",
MessageType.Info);
DrawPrefabDropArea();
DrawPrefabList();
EditorGUILayout.Space();
EditorGUILayout.LabelField("Child Settings", EditorStyles.boldLabel);
_childName = EditorGUILayout.TextField("Child Name", _childName);
_replaceIfExists = EditorGUILayout.ToggleLeft("Replace existing child with same name", _replaceIfExists);
_copyLayerAndTagFromParent = EditorGUILayout.ToggleLeft("Copy parent layer/tag/static", _copyLayerAndTagFromParent);
_copyParentLocalScale = EditorGUILayout.ToggleLeft("Copy parent local scale", _copyParentLocalScale);
EditorGUILayout.Space(4f);
_useCustomLocalPosition = EditorGUILayout.ToggleLeft("Set custom local position", _useCustomLocalPosition);
using (new EditorGUI.DisabledScope(!_useCustomLocalPosition))
{
_childLocalPosition = EditorGUILayout.Vector3Field("Local Position", _childLocalPosition);
}
_useCustomLocalRotation = EditorGUILayout.ToggleLeft("Set custom local rotation", _useCustomLocalRotation);
using (new EditorGUI.DisabledScope(!_useCustomLocalRotation))
{
_childLocalEulerRotation = EditorGUILayout.Vector3Field("Local Rotation (Euler)", _childLocalEulerRotation);
}
EditorGUILayout.Space(12f);
using (new EditorGUI.DisabledScope(_prefabs.Count == 0 || string.IsNullOrWhiteSpace(_childName)))
{
if (GUILayout.Button("Create Child For All Prefabs", GUILayout.Height(30f)))
{
CreateChildrenForPrefabs();
}
}
}
private void DrawPrefabDropArea()
{
Event evt = Event.current;
Rect dropRect = GUILayoutUtility.GetRect(0f, 60f, GUILayout.ExpandWidth(true));
GUI.Box(dropRect, "Drag Prefab Assets Here");
if (!dropRect.Contains(evt.mousePosition))
{
return;
}
if (evt.type == EventType.DragUpdated || evt.type == EventType.DragPerform)
{
DragAndDrop.visualMode = DragAndDropVisualMode.Copy;
if (evt.type == EventType.DragPerform)
{
DragAndDrop.AcceptDrag();
foreach (Object obj in DragAndDrop.objectReferences)
{
TryAddPrefab(obj as GameObject);
}
}
evt.Use();
}
}
private void DrawPrefabList()
{
EditorGUILayout.Space(4f);
EditorGUILayout.LabelField($"Prefabs ({_prefabs.Count})", EditorStyles.boldLabel);
_scroll = EditorGUILayout.BeginScrollView(_scroll, GUILayout.Height(160f));
int removeIndex = -1;
for (int i = 0; i < _prefabs.Count; i++)
{
EditorGUILayout.BeginHorizontal();
_prefabs[i] = (GameObject)EditorGUILayout.ObjectField(_prefabs[i], typeof(GameObject), false);
if (GUILayout.Button("X", GUILayout.Width(28f)))
{
removeIndex = i;
}
EditorGUILayout.EndHorizontal();
}
if (removeIndex >= 0)
{
_prefabs.RemoveAt(removeIndex);
}
EditorGUILayout.EndScrollView();
EditorGUILayout.BeginHorizontal();
if (GUILayout.Button("Add Selected Prefabs"))
{
foreach (Object obj in Selection.objects)
{
TryAddPrefab(obj as GameObject);
}
}
if (GUILayout.Button("Clear List"))
{
_prefabs.Clear();
}
EditorGUILayout.EndHorizontal();
}
private void TryAddPrefab(GameObject prefab)
{
if (prefab == null)
{
return;
}
string path = AssetDatabase.GetAssetPath(prefab);
if (string.IsNullOrEmpty(path))
{
return;
}
if (PrefabUtility.GetPrefabAssetType(prefab) == PrefabAssetType.NotAPrefab)
{
return;
}
if (!_prefabs.Contains(prefab))
{
_prefabs.Add(prefab);
}
}
private void CreateChildrenForPrefabs()
{
int successCount = 0;
int failCount = 0;
string childName = _childName.Trim();
foreach (GameObject prefab in _prefabs)
{
if (prefab == null)
{
failCount++;
continue;
}
string path = AssetDatabase.GetAssetPath(prefab);
if (string.IsNullOrEmpty(path))
{
failCount++;
continue;
}
GameObject root = PrefabUtility.LoadPrefabContents(path);
try
{
if (root == null)
{
failCount++;
continue;
}
Transform existing = root.transform.Find(childName);
if (existing != null)
{
if (_replaceIfExists)
{
DestroyImmediate(existing.gameObject);
}
else
{
failCount++;
Debug.LogWarning($"Skipped `{prefab.name}` because child `{childName}` already exists.");
continue;
}
}
GameObject child = new GameObject(childName);
child.transform.SetParent(root.transform, false);
if (_copyLayerAndTagFromParent)
{
child.layer = root.layer;
child.tag = root.tag;
GameObjectUtility.SetStaticEditorFlags(
child,
GameObjectUtility.GetStaticEditorFlags(root));
}
if (_copyParentLocalScale)
{
child.transform.localScale = root.transform.localScale;
}
if (_useCustomLocalPosition)
{
child.transform.localPosition = _childLocalPosition;
}
if (_useCustomLocalRotation)
{
child.transform.localRotation = Quaternion.Euler(_childLocalEulerRotation);
}
MoveAllComponentsFromParentToChild(root, child, prefab.name);
PrefabUtility.SaveAsPrefabAsset(root, path);
successCount++;
}
catch (System.Exception ex)
{
failCount++;
Debug.LogError($"Failed processing `{prefab.name}` at path `{path}`. Error: {ex.Message}");
}
finally
{
PrefabUtility.UnloadPrefabContents(root);
}
}
AssetDatabase.SaveAssets();
AssetDatabase.Refresh();
EditorUtility.DisplayDialog(
"Batch Child Creator",
$"Done.\nSuccess: {successCount}\nFailed/Skipped: {failCount}",
"OK");
}
private static void MoveAllComponentsFromParentToChild(GameObject parent, GameObject child, string prefabName)
{
var componentsToRemove = new List<Component>();
Component[] parentComponents = parent.GetComponents<Component>();
foreach (Component component in parentComponents)
{
if (component == null || component is Transform)
{
continue;
}
bool copied = ComponentUtility.CopyComponent(component);
if (!copied)
{
Debug.LogWarning($"Could not copy component `{component.GetType().Name}` in prefab `{prefabName}`.");
continue;
}
bool pasted = ComponentUtility.PasteComponentAsNew(child);
if (!pasted)
{
Debug.LogWarning($"Could not paste component `{component.GetType().Name}` into child in prefab `{prefabName}`.");
continue;
}
componentsToRemove.Add(component);
}
foreach (Component component in componentsToRemove)
{
if (component != null)
{
Object.DestroyImmediate(component, true);
}
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 806a1a1dc1294784881ad4308e58b1e1
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 70d25ad1e096a468e815f256966d4d02
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6484e365443a64cb1999eae3588e16ca
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,652 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1102 &-7681345327005268475
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u53D7\u4F24"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: e21a2066e960e4058a2e4b9666bcad01, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-7545518345968356818
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6B7B\u4EA1"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: c3b3b8a0a632c414c92e707e3a161e0b, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-3214765779026278752
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u666E\u653B1\u8D77"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: e470902606e454715b82f28cf92dd8e2, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-3060300623890257178
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6280\u80FD\u843D"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 252100f515d964d3e893155388dda6b4, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-2884467304955205343
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6212\u5907"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 3b2bb08df340b42ef8da5c84167324de, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-2590428185299365742
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u666E\u653B2\u843D"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 873817865551a4909a3cb64f4d7a7334, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-2587793223556327669
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6124\u6012\u8D77"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: e33e831ab0b1e4c58944c61dece6841a, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-1477942149240782215
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6D6E\u5149\u6C34\u6BCD\u65BD\u653E\u843D"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: bfcbcba4c569645b797ee875865d3d2a, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-59251755819159312
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6280\u80FD\u65BD\u653E\u843D"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: bf7c10f15f1d441579606e520ad24af2, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "tcks_\u6D6E\u5149\u6C34\u6BCD"
serializedVersion: 5
m_AnimatorParameters: []
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: 8441963344795600779}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1102 &168858395016314567
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u8499\u76AE"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 1936301c7770944c9bb4dac901b2f20f, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &2698578941687045566
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6124\u6012\u843D"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 29a60ad7437df4e6e8cf4dcfdb2c2442, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &2759884540126219448
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6280\u80FD\u8D77"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 0128fe51dfdc04ddda849129fdc124e1, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &4052537709087779420
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6302\u70B9"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: efe8bb52b833c4e8f9d4756f1b1eedcb, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &4056287190106020389
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u666E\u653B1\u843D"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 76837e71f6583410c93acdf7311f1339, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &5582759349706678111
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6280\u80FD\u65BD\u653E\u8D77"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 4c5828133a6e74aa381eb493b8fbff4a, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &5861683111173505575
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u4F11\u95F2"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 8fbd0df4bc0d54938827fddd8642c80f, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &5898612577312818826
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6D6E\u5149\u6C34\u6BCD\u65BD\u653E\u8D77"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 8d961564715b0424480fa18c1f0ee0cc, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &6020767736604373540
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u666E\u653B2\u8D77"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: c5fb4b9a123ad48feb1c8efe44ee29b5, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &6247458426597793871
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u7AD9\u7ACB"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 851fdd6aee5f849f49f0f9403d1163cc, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &7854970985286587684
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u5FEB\u901F\u79FB\u52A8"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 513b3b92a1d914953af3ee817d705e87, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1107 &8441963344795600779
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: 5861683111173505575}
m_Position: {x: 260, y: 60, z: 0}
- serializedVersion: 1
m_State: {fileID: -7681345327005268475}
m_Position: {x: 270, y: 70, z: 0}
- serializedVersion: 1
m_State: {fileID: 7854970985286587684}
m_Position: {x: 280, y: 80, z: 0}
- serializedVersion: 1
m_State: {fileID: 2698578941687045566}
m_Position: {x: 290, y: 90, z: 0}
- serializedVersion: 1
m_State: {fileID: -2587793223556327669}
m_Position: {x: 300, y: 100, z: 0}
- serializedVersion: 1
m_State: {fileID: 9045820081436674758}
m_Position: {x: 310, y: 110, z: 0}
- serializedVersion: 1
m_State: {fileID: -2884467304955205343}
m_Position: {x: 320, y: 120, z: 0}
- serializedVersion: 1
m_State: {fileID: -59251755819159312}
m_Position: {x: 330, y: 130, z: 0}
- serializedVersion: 1
m_State: {fileID: 5582759349706678111}
m_Position: {x: 340, y: 140, z: 0}
- serializedVersion: 1
m_State: {fileID: -3060300623890257178}
m_Position: {x: 350, y: 150, z: 0}
- serializedVersion: 1
m_State: {fileID: 2759884540126219448}
m_Position: {x: 360, y: 160, z: 0}
- serializedVersion: 1
m_State: {fileID: 4052537709087779420}
m_Position: {x: 370, y: 170, z: 0}
- serializedVersion: 1
m_State: {fileID: 4056287190106020389}
m_Position: {x: 380, y: 180, z: 0}
- serializedVersion: 1
m_State: {fileID: -3214765779026278752}
m_Position: {x: 390, y: 190, z: 0}
- serializedVersion: 1
m_State: {fileID: -2590428185299365742}
m_Position: {x: 400, y: 200, z: 0}
- serializedVersion: 1
m_State: {fileID: 6020767736604373540}
m_Position: {x: 410, y: 210, z: 0}
- serializedVersion: 1
m_State: {fileID: -7545518345968356818}
m_Position: {x: 420, y: 220, z: 0}
- serializedVersion: 1
m_State: {fileID: -1477942149240782215}
m_Position: {x: 430, y: 230, z: 0}
- serializedVersion: 1
m_State: {fileID: 5898612577312818826}
m_Position: {x: 440, y: 240, z: 0}
- serializedVersion: 1
m_State: {fileID: 6247458426597793871}
m_Position: {x: 450, y: 250, z: 0}
- serializedVersion: 1
m_State: {fileID: 168858395016314567}
m_Position: {x: 460, y: 260, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 50, y: 20, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 800, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: 5861683111173505575}
--- !u!1102 &9045820081436674758
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6162\u901F\u79FB\u52A8"
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 0c921864987884b13bd402b11ee75618, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3cb7c874bbc1648f29d85d2469f48433
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 9100000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8fbd0df4bc0d54938827fddd8642c80f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e21a2066e960e4058a2e4b9666bcad01
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 513b3b92a1d914953af3ee817d705e87
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 29a60ad7437df4e6e8cf4dcfdb2c2442
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e33e831ab0b1e4c58944c61dece6841a
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0c921864987884b13bd402b11ee75618
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3b2bb08df340b42ef8da5c84167324de
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: bf7c10f15f1d441579606e520ad24af2
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4c5828133a6e74aa381eb493b8fbff4a
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 252100f515d964d3e893155388dda6b4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0128fe51dfdc04ddda849129fdc124e1
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: efe8bb52b833c4e8f9d4756f1b1eedcb
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 76837e71f6583410c93acdf7311f1339
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e470902606e454715b82f28cf92dd8e2
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 873817865551a4909a3cb64f4d7a7334
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c5fb4b9a123ad48feb1c8efe44ee29b5
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c3b3b8a0a632c414c92e707e3a161e0b
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: bfcbcba4c569645b797ee875865d3d2a
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8d961564715b0424480fa18c1f0ee0cc
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 851fdd6aee5f849f49f0f9403d1163cc
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1936301c7770944c9bb4dac901b2f20f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 810bddcc2ca624dc282207b108e3b487
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4e7d6dc04f5974df0bf87aef55c659d3
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 6565920ed055d4f32bc6d2da4dd49af8
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,137 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-222196024928952330
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 10
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: "\u6D6E\u5149\u6C34\u6BCD_0"
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _ALPHATEST_ON
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 2450
stringTagMap:
RenderType: TransparentCutout
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 2800000, guid: 417bd0a4683e249729a9704e4cab6ca0, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 417bd0a4683e249729a9704e4cab6ca0, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AddPrecomputedVelocity: 0
- _AlphaClip: 1
- _AlphaToMask: 1
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.001
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Metallic: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _WorkflowMode: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a939bc53671964480b89e73aafc51d16
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:
File diff suppressed because one or more lines are too long
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0333c7e045e3c48c386beb6a7479d6f6
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 4300000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,181 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &5550294484525138020
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 789829578891917293}
- component: {fileID: 4852309935499074371}
- component: {fileID: 5118180052318009137}
- component: {fileID: 2284939052417131520}
m_Layer: 0
m_Name: "\u6D6E\u5149\u6C34\u6BCD_0"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &789829578891917293
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5550294484525138020}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &4852309935499074371
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5550294484525138020}
m_Mesh: {fileID: 4300000, guid: 0333c7e045e3c48c386beb6a7479d6f6, type: 2}
--- !u!137 &5118180052318009137
SkinnedMeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5550294484525138020}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 3
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: a939bc53671964480b89e73aafc51d16, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
serializedVersion: 2
m_Quality: 0
m_UpdateWhenOffscreen: 0
m_SkinnedMotionVectors: 1
m_Mesh: {fileID: 4300000, guid: 0333c7e045e3c48c386beb6a7479d6f6, type: 2}
m_Bones:
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
- {fileID: 0}
m_BlendShapeWeights: []
m_RootBone: {fileID: 0}
m_AABB:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_DirtyAABB: 0
--- !u!114 &2284939052417131520
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5550294484525138020}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2189a384460241f89635c90802d6c270, type: 3}
m_Name:
m_EditorClassIdentifier:
_skeletonBuilder: {fileID: 0}
_meshFilter: {fileID: 4852309935499074371}
_skinnedMeshRenderer: {fileID: 5118180052318009137}
BoneNames:
- Bone01
- Bone16
- Bone15
- Bone02
- Bone532
- Bone128
- Bone132
- Bone431
- Bone435
- Bone29
- Bone30
- Bone433
- Bone131
- Bone229
- Bone21
- Bone233
- Bone333
- Bone332
- Bone231
- Bone330
- Bone22
- Bone27
- Bone09
- Bone10
- Bone11
- Bone12
- Bone13
- Bone03
- Bone04
- Bone05
- Bone06
- Bone07
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c988bf988584d446a830e1fe4bdcc8b9
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -9,8 +9,6 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 1104867524497633025}
- component: {fileID: 5657266836829354752}
- component: {fileID: 5860347714460000696}
m_Layer: 0
m_Name: "\u63A3\u98CE\u4E4B\u77DB"
m_TagString: Untagged
@@ -26,28 +24,62 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 285550270365075957}
serializedVersion: 2
m_LocalRotation: {x: 0.86602545, y: 0, z: 0, w: 0.49999994}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Children:
- {fileID: 2165398315552083949}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &7290546735285867978
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2165398315552083949}
- component: {fileID: 2295362473509926262}
- component: {fileID: 6231640915859052576}
m_Layer: 0
m_Name: Visuals
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2165398315552083949
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7290546735285867978}
serializedVersion: 2
m_LocalRotation: {x: 0.86602545, y: 0, z: 0, w: 0.49999994}
m_LocalPosition: {x: 0, y: 1.38, z: 0.77}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1104867524497633025}
m_LocalEulerAnglesHint: {x: 120, y: 0, z: 0}
--- !u!33 &5657266836829354752
--- !u!33 &2295362473509926262
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 285550270365075957}
m_GameObject: {fileID: 7290546735285867978}
m_Mesh: {fileID: 4300000, guid: 48e6d3d2c0c1e4b20a5d8efcd18a88ff, type: 2}
--- !u!23 &5860347714460000696
--- !u!23 &6231640915859052576
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 285550270365075957}
m_GameObject: {fileID: 7290546735285867978}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
@@ -1,6 +1,6 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4784735423801820817
--- !u!1 &139938124384526895
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -8,46 +8,46 @@ GameObject:
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6691621724556325783}
- component: {fileID: 7480364715263698102}
- component: {fileID: 7295731071253647233}
- component: {fileID: 2483168018957211454}
- component: {fileID: 3400312020946461207}
- component: {fileID: 8905872949688982505}
m_Layer: 0
m_Name: "\u63A3\u98CE\u4E4B\u77DB\u6210\u957F"
m_Name: Visuals
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6691621724556325783
--- !u!4 &2483168018957211454
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4784735423801820817}
m_GameObject: {fileID: 139938124384526895}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_Father: {fileID: 6691621724556325783}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &7480364715263698102
--- !u!33 &3400312020946461207
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4784735423801820817}
m_GameObject: {fileID: 139938124384526895}
m_Mesh: {fileID: 4300000, guid: 48e6d3d2c0c1e4b20a5d8efcd18a88ff, type: 2}
--- !u!23 &7295731071253647233
--- !u!23 &8905872949688982505
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4784735423801820817}
m_GameObject: {fileID: 139938124384526895}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
@@ -86,3 +86,35 @@ MeshRenderer:
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &4784735423801820817
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6691621724556325783}
m_Layer: 0
m_Name: "\u63A3\u98CE\u4E4B\u77DB\u6210\u957F"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6691621724556325783
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4784735423801820817}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 2483168018957211454}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -9,8 +9,6 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 2883756883361503683}
- component: {fileID: 4741476720813344143}
- component: {fileID: 8241229427580220958}
m_Layer: 0
m_Name: "\u63A3\u98CE\u4E4B\u77DB\u6781\u54C1"
m_TagString: Untagged
@@ -30,24 +28,58 @@ Transform:
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Children:
- {fileID: 7071481149930127490}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &4741476720813344143
--- !u!1 &4920277037521302336
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7071481149930127490}
- component: {fileID: 4581653084234499189}
- component: {fileID: 7826282017077798854}
m_Layer: 0
m_Name: Visuals
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7071481149930127490
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4920277037521302336}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2883756883361503683}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &4581653084234499189
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1435714050475466025}
m_GameObject: {fileID: 4920277037521302336}
m_Mesh: {fileID: 4300000, guid: 48e6d3d2c0c1e4b20a5d8efcd18a88ff, type: 2}
--- !u!23 &8241229427580220958
--- !u!23 &7826282017077798854
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1435714050475466025}
m_GameObject: {fileID: 4920277037521302336}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
@@ -1,6 +1,6 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4351738867350916516
--- !u!1 &1669030948137255037
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -8,46 +8,46 @@ GameObject:
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4864711436467380195}
- component: {fileID: 8602393969438771892}
- component: {fileID: 7658895765030975757}
- component: {fileID: 2010891848862894596}
- component: {fileID: 2807964204614947098}
- component: {fileID: 5034679566855837553}
m_Layer: 0
m_Name: "\u6D51\u94C1\u67AA\u6781\u54C1"
m_Name: Visuals
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4864711436467380195
--- !u!4 &2010891848862894596
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4351738867350916516}
m_GameObject: {fileID: 1669030948137255037}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalPosition: {x: 0, y: 1.098, z: -0.231}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_Father: {fileID: 4864711436467380195}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &8602393969438771892
--- !u!33 &2807964204614947098
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4351738867350916516}
m_GameObject: {fileID: 1669030948137255037}
m_Mesh: {fileID: 4300000, guid: 7d4ad266a648a4e1f866deb65272e273, type: 2}
--- !u!23 &7658895765030975757
--- !u!23 &5034679566855837553
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4351738867350916516}
m_GameObject: {fileID: 1669030948137255037}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
@@ -86,3 +86,35 @@ MeshRenderer:
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &4351738867350916516
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4864711436467380195}
m_Layer: 0
m_Name: "\u6D51\u94C1\u67AA\u6781\u54C1"
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4864711436467380195
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4351738867350916516}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 2010891848862894596}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1419f6cd03e824cf3b17ba8ef9ee80ef
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: beeabaddc14c14f07b9793aefc62f9fa
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ac105eb0ccc374f10b4fea04b01f3d47
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6221f47222ee14f87b8b8ccdfd1ba0c7
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: 42623de26b41d48319c3c98734c657bb
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: df98a3fd090e44f458af27c63a65fd3c
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: e5c504ce180264f2c94e1c18c98495e0
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5812186f3948346689fc1ede730978f2
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 805f179718f47462caa9f804df5d9960
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 268 KiB

@@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: 417bd0a4683e249729a9704e4cab6ca0
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: VisionOS
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: iOS
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
+279 -5
View File
@@ -1775,6 +1775,7 @@ MonoBehaviour:
m_iMin: 0
m_iMax: 0
m_iPos: 0
m_skillGroupIndex: -1
--- !u!222 &4529057318008104088
CanvasRenderer:
m_ObjectHideFlags: 0
@@ -2535,6 +2536,139 @@ MonoBehaviour:
m_PointerBehavior: 0
m_CursorLockBehavior: 0
m_ScrollDeltaPerTick: 6
--- !u!1 &1260673443396960607
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 665101671249071216}
- component: {fileID: 5852019988558300524}
- component: {fileID: 4807528781054845854}
- component: {fileID: 2271817625555567393}
m_Layer: 5
m_Name: ShowLocalItem
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!224 &665101671249071216
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1260673443396960607}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 5274902618964925175}
m_Father: {fileID: 7304194108989414091}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 46.5, y: -408.5}
m_SizeDelta: {x: 73, y: 73}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &5852019988558300524
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1260673443396960607}
m_CullTransparentMesh: 1
--- !u!114 &4807528781054845854
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1260673443396960607}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!114 &2271817625555567393
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1260673443396960607}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 4807528781054845854}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1890210201668811196}
m_TargetAssemblyTypeName: CECUIManager, Assembly-CSharp
m_MethodName: ShowDlgAwardEquippedItemsLocalTest
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!1 &1287587630908865938
GameObject:
m_ObjectHideFlags: 0
@@ -5148,12 +5282,13 @@ RectTransform:
- {fileID: 7009781864899289290}
- {fileID: 306866035769036868}
- {fileID: 7749074831901819156}
- {fileID: 665101671249071216}
m_Father: {fileID: 4771507653765862825}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -60, y: 192.35}
m_SizeDelta: {x: 114.55328, y: 384.7}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 114.5533, y: 470.53}
m_Pivot: {x: 0, y: 1}
--- !u!114 &7541624867441988093
MonoBehaviour:
@@ -5569,7 +5704,7 @@ RectTransform:
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 0, y: -225}
m_SizeDelta: {x: 120, y: 384.7}
m_SizeDelta: {x: 120, y: 470.53}
m_Pivot: {x: 0, y: 1}
--- !u!1 &2844154145387244641
GameObject:
@@ -11021,6 +11156,7 @@ MonoBehaviour:
m_iMin: 0
m_iMax: 0
m_iPos: 0
m_skillGroupIndex: -1
--- !u!222 &7047362733096336047
CanvasRenderer:
m_ObjectHideFlags: 0
@@ -13952,6 +14088,144 @@ MonoBehaviour:
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295
--- !u!1 &8742329132410766305
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5274902618964925175}
- component: {fileID: 1324878229102893980}
- component: {fileID: 3472526562790816081}
m_Layer: 5
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &5274902618964925175
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8742329132410766305}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 665101671249071216}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1324878229102893980
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8742329132410766305}
m_CullTransparentMesh: 1
--- !u!114 &3472526562790816081
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8742329132410766305}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: 'Local Item Data
'
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 369c2e14814cc9a4b8e3ad4e37769134, type: 2}
m_sharedMaterial: {fileID: 9092487103257209053, guid: 369c2e14814cc9a4b8e3ad4e37769134, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24.3
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &8760950483244738372
GameObject:
m_ObjectHideFlags: 0
@@ -51,7 +51,7 @@ namespace BrewMonster.Scripts
_isInitialized = false;
_initializationTcs = new UniTaskCompletionSource();
Addressables.InitializeAsync().Completed += OnInitializeComplete;
}
}
#region Unity lifecycle
private List<string> _assetToForceRelease = new();
@@ -158,7 +158,7 @@ namespace BrewMonster.Scripts
BMLogger.Log($"AddressableManager: Text asset handle is invalid or result is null, need to load new one: {assetPath}");
}
}
try
{
var handle = Addressables.LoadAssetAsync<TextAsset>(assetPath);
@@ -229,7 +229,7 @@ namespace BrewMonster.Scripts
/// </summary>
public async Task<AudioClip> LoadAudioClipAsync(string assetPath)
{
BMLogger.LogError($"HoangDEv : AddressableManager: LoadAudioClipAsync called with assetPath: {assetPath}");
// BMLogger.LogError($"HoangDEv : AddressableManager: LoadAudioClipAsync called with assetPath: {assetPath}");
RemoveFromReleaseAssetDictionary(assetPath);
if (_loadedAudioAssets.TryGetValue(assetPath, out _loadedAudioClipHandle))
@@ -332,7 +332,7 @@ namespace BrewMonster.Scripts
{
if (handle.IsValid())
{
Addressables.Release(handle);
Addressables.Release(handle);
}
}
@@ -391,12 +391,12 @@ namespace BrewMonster.Scripts
}
}
}
return false;
}
#endregion
private void OnDestroy()
{
@@ -977,7 +977,7 @@ namespace BrewMonster
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public ushort[] name; // Name, max 15 characters
public string Name => ByteToStringUtils.UshortArrayToCP936String(name);
public string Name => ByteToStringUtils.UshortArrayToUnicodeString(name);
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 128)]
public byte[] file_matter; // Matter model file path
@@ -1951,13 +1951,14 @@ namespace BrewMonster
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public ushort[] name; // name, max 15 chars
public string Name => ByteToStringUtils.UshortArrayToUnicodeString(name);
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 128)]
public byte[] file_matter; // matter file path
public string FileMatter => ByteToStringUtils.ByteArrayToCP936String(file_matter);
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 128)]
public byte[] file_icon; // icon file path
public string FileIcon => ByteToStringUtils.ByteArrayToCP936String(file_icon);
public int level; // level
public int color; // color (0-7)
@@ -3,6 +3,7 @@ using System;
using System.Collections.Generic;
using BrewMonster.Network;
using BrewMonster.Utils;
using Random = UnityEngine.Random;
namespace BrewMonster.Scripts
{
@@ -716,7 +717,12 @@ namespace BrewMonster.Scripts
FinishWork(new CECEPCongregateWorkMatcher(iType));
return true;
}
}
public int GetCurrentWorkType()
{
return m_iCurWorkType;
}
}
public class CECEPWorkDead : CECEPWork
{
@@ -864,4 +870,35 @@ namespace BrewMonster.Scripts
}
}
}
// class CECEPWorkMove
class CECEPWorkMove : CECEPWork
{
public CECEPWorkMove(CECEPWorkMan pWorkMan): base(CECEPWork.EP_work_ID.WORK_MOVE, pWorkMan)
{
}
public override void Start()
{
GetPlayer().m_iMoveMode = Move_Mode.MOVE_STAND;
GetPlayer().PlayAction((int)PLAYER_ACTION_TYPE.ACT_ATTACK_1 + Random.Range(0, 3));
GetPlayer().EnterFightState();
}
public override void Tick(float dwDeltaTime)
{
if (GetPlayer().MovingTo(dwDeltaTime))
{
GetPlayer().m_fLastSpeed = 0.0f;
//GetPlayer().StartModelMove(GetPlayer().m_vStopDir, g_vAxisY, 150);
//GetPlayer().ChangeModelTargetDirAndUp(GetPlayer().m_vStopDir, g_vAxisY);
Finish();
}
}
public override void Cancel()
{
GetPlayer().SetPos(GetPlayer().m_vServerPos);
//GetPlayer().StopModelMove(GetPlayer().m_vStopDir, g_vAxisY, 150);
}
};
}
@@ -519,18 +519,11 @@ namespace BrewMonster.Scripts.Managers
return null;
var equipment = EC_IvtrItem.CreateItem(itemData.m_tid, itemData.m_expire_date, itemData.m_iCount);
// Parse item info if available (use Content field)
if (itemData.Content != null && itemData.Content.Length > 0)
{
equipment.SetItemInfo(itemData.Content, itemData.Content.Length);
}
// Align with GetDetailDataFromLocal() (e.g. CDlgAward): parsed addon params use prop.Local so
// AddOneAddOnPropDesc uses the same branches as shop/tooltip (IntToFloat, VisualizeFloatPercent).
if (equipment is EC_IvtrEquip ivtrEquip)
ivtrEquip.SetLocalProps();
return equipment;
}
@@ -1,19 +1,19 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using UnityEngine;
using UnityEngine.AddressableAssets;
using ModelRenderer.Scripts.GameData;
using ModelRenderer.Scripts.Common;
using System.Reflection;
using System.Text;
using System.Text.RegularExpressions;
using BrewMonster;
using BrewMonster.Common;
using BrewMonster.Network;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Reflection;
using BrewMonster.Scripts.Managers;
using BrewMonster.Scripts;
using BrewMonster.Scripts.Managers;
using ModelRenderer.Scripts.Common;
using ModelRenderer.Scripts.GameData;
using UnityEngine;
using UnityEngine.AddressableAssets;
namespace BrewMonster.Scripts
{
/// <summary>
@@ -982,14 +982,13 @@ namespace BrewMonster.Scripts
{
if (m_iScaleType != (int)EC_IvtrItem.ScaleType.SCALE_SELL)
return base.GetScaledPrice();
int price = m_iPrice * Count;
if (MaxEndurance == CurEndurance || MaxEndurance == 0)
{
return (int)(price * m_fPriceScale + 0.5f);
}
else
{
return (int)(price * m_fPriceScale * CurEndurance / (float)MaxEndurance + 0.5f);
@@ -1198,7 +1197,6 @@ namespace BrewMonster.Scripts
// refine props do not change mask further
break;
}
return flags;
}
@@ -1207,7 +1205,7 @@ namespace BrewMonster.Scripts
/// </summary>
private static Dictionary<int, byte> s_propIdToType;
private static bool s_propMapLoaded;
private static readonly object s_propLock = new object();
private static readonly object s_propLock = new();
private static void EnsurePropMapLoaded()
{
@@ -1222,20 +1220,20 @@ namespace BrewMonster.Scripts
// Load item_ext_prop.txt from Addressables
// Address must match the Addressables "Address" configured in Assets/AddressableAssetsData/...
const string address = "Assets/Addressable/item_ext_prop.txt";
// Initialize Addressables if not already initialized
Addressables.InitializeAsync().WaitForCompletion();
// Load the TextAsset synchronously (since GetPropertyType is called synchronously)
var textAsset = Addressables.LoadAssetAsync<TextAsset>(address).WaitForCompletion();
if (textAsset != null && !string.IsNullOrEmpty(textAsset.text))
{
// Parse the text content
int currentType = -1;
bool inTypeBlock = false;
bool inBlockComment = false;
using (var reader = new StringReader(textAsset.text))
{
string rawLine;
@@ -1295,7 +1293,6 @@ namespace BrewMonster.Scripts
}
}
}
}
else
{
@@ -1323,28 +1320,27 @@ namespace BrewMonster.Scripts
// Unknown
return 0xff;
}
/// <summary>
/// Set properties to local
/// </summary>
public void SetLocalProps()
public override void SetLocalProps()
{
if (Props.Count == 0)
return;
foreach (Property prop in Props)
{
prop.Local = true;
}
}
/// <summary>
/// Get deadly strike rate provided by this equipment
/// </summary>
public int GetDeadlyStrikeRate(bool suiteGen)
{
int val = 0;
if (suiteGen)
{
// Suite generation logic would go here
@@ -1359,10 +1355,10 @@ namespace BrewMonster.Scripts
val += prop.Params[0];
}
}
return val;
}
/// <summary>
/// Decide equipment name color
/// </summary>
@@ -1371,9 +1367,9 @@ namespace BrewMonster.Scripts
int index = GetColorStrID(TemplateId);
if (index >= 0)
return index;
int col = (int)DescriptipionMsg.ITEMDESC_COL_WHITE;
switch (FixProps)
{
case 1: col = (int)DescriptipionMsg.ITEMDESC_COL_GREEN; break;
@@ -1384,10 +1380,10 @@ namespace BrewMonster.Scripts
col = (int)DescriptipionMsg.ITEMDESC_COL_LIGHTBLUE;
break;
}
return col;
}
/// <summary>
/// Get color string ID for template
/// </summary>
@@ -1402,9 +1398,9 @@ namespace BrewMonster.Scripts
else
return (int)DescriptipionMsg.ITEMDESC_COL2_START + iIndex - 7 + 1;
}
#endregion
#region Description Methods (high level entry points)
/// <summary>
@@ -1505,12 +1501,12 @@ namespace BrewMonster.Scripts
public string GetBoothBuyDesc()
{
m_strDesc = "";
int white = (int)DescriptipionMsg.ITEMDESC_COL_WHITE;
// Item name
AddDescText(white, true, GetItemDescString(DescriptipionMsg.ITEMDESC_NAME), GetName());
// Base stats from element data
string baseStats = GetBaseStatsDesc();
if (!string.IsNullOrEmpty(baseStats))
@@ -1531,7 +1527,7 @@ namespace BrewMonster.Scripts
// Price
AddPriceDesc(white, false);
return m_strDesc;
}
@@ -1893,7 +1889,6 @@ namespace BrewMonster.Scripts
{
string tmpDesc = m_strDesc;
m_strDesc = "";
AddOneAddOnPropDesc(prop.Type, prop.Params, null, null, prop.Local);
string result = m_strDesc;
@@ -2446,7 +2441,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(idString), p0);
AddDescText(color, true, "~{0}", p1);
AddDescText(color, true, "~~{0}", p1);
}
else
{
@@ -2471,7 +2466,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(idString), f0);
AddDescText(color, true, "~{0:F2}", f1);
AddDescText(color, true, "~~{0:F2}", f1);
}
else
{
@@ -2496,7 +2491,7 @@ namespace BrewMonster.Scripts
if (v0 != v1)
{
AddDescText(color, false, GetItemDescString(idString), v0);
AddDescText(color, true, "~{0}%%", v1);
AddDescText(color, true, "~~{0}%%", v1);
}
else
{
@@ -2521,7 +2516,7 @@ namespace BrewMonster.Scripts
if (v0 != v1)
{
AddDescText(color, false, GetItemDescString(idString), v0);
AddDescText(color, true, "~{0}%%", v1);
AddDescText(color, true, "~~{0}%%", v1);
}
else
{
@@ -2546,7 +2541,7 @@ namespace BrewMonster.Scripts
if (v0 != v1)
{
AddDescText(color, false, GetItemDescString(idString), v0);
AddDescText(color, true, "~{0}%%", v1);
AddDescText(color, true, "~~{0}%%", v1);
}
else
{
@@ -2571,7 +2566,7 @@ namespace BrewMonster.Scripts
if (h0 != h1)
{
AddDescText(color, false, GetItemDescString(idString), h0);
AddDescText(color, true, "~{0}", h1);
AddDescText(color, true, "~~{0}", h1);
}
else
{
@@ -2594,7 +2589,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(idString));
AddDescText(color, true, " %+d~%d", p0, p1);
AddDescText(color, true, " %+d~~%d", p0, p1);
}
else
{
@@ -2642,7 +2637,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_MAXPHYDAMAGE), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -2684,7 +2679,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_MAXMAGICDAMAGE), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -2785,15 +2780,15 @@ namespace BrewMonster.Scripts
AddDescText(color, true, GetItemDescString(DescriptipionMsg.ITEMDESC_ADDATKDIST), IntToFloat(p0));
}
break;
case 11: // ʱ
case 11: // ʱ
if (local)
{
AddDescText(color, true, GetItemDescString(DescriptipionMsg.ITEMDESC_CASTTIME), -p0);
AddDescText(color, true, GetItemDescString(DescriptipionMsg.ITEMDESC_CASTTIME), -VisualizeFloatPercent(p0));
}
else
{
AddDescText(color, true, GetItemDescString(DescriptipionMsg.ITEMDESC_CASTTIME), -VisualizeFloatPercent(p0));
AddDescText(color, true, GetItemDescString(DescriptipionMsg.ITEMDESC_CASTTIME), -p0);
}
break;
@@ -2836,7 +2831,7 @@ namespace BrewMonster.Scripts
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_GOLDDEFENCE));
if (p0 != p1)
AddDescText(color, true, " %d~%d", p0, p1);
AddDescText(color, true, " %d~~%d", p0, p1);
else
AddDescText(color, true, " %d", p0);
}
@@ -2855,7 +2850,7 @@ namespace BrewMonster.Scripts
if ((p0) != (p1))
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_GOLDDEFEXTRA), (p0));
AddDescText(color, true, "~-%.2f%%", p1);
AddDescText(color, true, "~~-%.2f%%", p1);
}
else
{
@@ -2874,7 +2869,7 @@ namespace BrewMonster.Scripts
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_WOODDEFENCE));
if (p0 != p1)
AddDescText(color, true, " %d~%d", p0, p1);
AddDescText(color, true, " %d~~%d", p0, p1);
else
AddDescText(color, true, " %d", p0);
}
@@ -2894,7 +2889,7 @@ namespace BrewMonster.Scripts
if ((p0) != (p1))
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_WOODDEFEXTRA), (p0));
AddDescText(color, true, "~-%.2f%%", p1);
AddDescText(color, true, "~~-%.2f%%", p1);
}
else
{
@@ -2913,7 +2908,7 @@ namespace BrewMonster.Scripts
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_WATERDEFENCE));
if (p0 != p1)
AddDescText(color, true, " %d~%d", p0, p1);
AddDescText(color, true, " %d~~%d", p0, p1);
else
AddDescText(color, true, " %d", p0);
}
@@ -2933,7 +2928,7 @@ namespace BrewMonster.Scripts
if ((p0) != (p1))
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_WATERDEFEXTRA), (p0));
AddDescText(color, true, "~-%.2f%%", p1);
AddDescText(color, true, "~~-%.2f%%", p1);
}
else
{
@@ -2952,7 +2947,7 @@ namespace BrewMonster.Scripts
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_FIREDEFENCE));
if (p0 != p1)
AddDescText(color, true, " %d~%d", p0, p1);
AddDescText(color, true, " %d~~%d", p0, p1);
else
AddDescText(color, true, " %d", p0);
}
@@ -2960,19 +2955,18 @@ namespace BrewMonster.Scripts
{
if (aPEEVals != null)
aPEEVals[PEEI_FIREDEF] += p0;
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_FIREDEFENCE));
AddDescText(color, true, " %+d", p0);
}
break;
case 22: // (%)
if (local)
{
if ((p0) != (p1))
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_FIREDEFEXTRA), (p0));
AddDescText(color, true, "~-%.2f%%", p1);
AddDescText(color, true, "~~-%.2f%%", p1);
}
else
{
@@ -2991,7 +2985,7 @@ namespace BrewMonster.Scripts
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_EARTHDEFENCE));
if (p0 != p1)
AddDescText(color, true, " %d~%d", p0, p1);
AddDescText(color, true, " %d~~%d", p0, p1);
else
AddDescText(color, true, " %d", p0);
}
@@ -3011,7 +3005,7 @@ namespace BrewMonster.Scripts
if ((p0) != (p1))
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_EARTHDEFEXTRA), (p0));
AddDescText(color, true, "~-%.2f%%", p1);
AddDescText(color, true, "~~-%.2f%%", p1);
}
else
{
@@ -3128,7 +3122,7 @@ namespace BrewMonster.Scripts
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_WOODDEFENCE));
AddDescText(color, true, " %+d", -p1);
break;
case 35: // HP
if (!local)
{
@@ -3187,7 +3181,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_STRENGTH), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -3206,7 +3200,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_AGILITY), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -3225,7 +3219,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_ENERGY), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -3244,7 +3238,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_VITALITY), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -3274,7 +3268,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_ATKRATING), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -3297,7 +3291,6 @@ namespace BrewMonster.Scripts
AddDescText(color, true, GetItemDescString(DescriptipionMsg.ITEMDESC_ATKRATINGEXTRA), p0);
}
break;
case 48: // ƶٶ
AddDescText(color, true, GetItemDescString(DescriptipionMsg.ITEMDESC_RUNSPEED), IntToFloat(p0));
break;
@@ -3369,7 +3362,7 @@ namespace BrewMonster.Scripts
if (VisualizeFloatPercent(p0) != VisualizeFloatPercent(p1))
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_REQEXTRA), -VisualizeFloatPercent(p0));
AddDescText(color, true, "~%d", VisualizeFloatPercent(p1));
AddDescText(color, true, "~~%d", VisualizeFloatPercent(p1));
}
else
{
@@ -3459,7 +3452,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_ATK_DEGREE), p0);
AddDescText(color, true, "~{0}", p1);
AddDescText(color, true, "~~{0}", p1);
}
else
{
@@ -3740,7 +3733,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_VITALITY), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -3759,7 +3752,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_STRENGTH), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -3778,7 +3771,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_AGILITY), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -3797,7 +3790,7 @@ namespace BrewMonster.Scripts
if (p0 != p1)
{
AddDescText(color, false, GetItemDescString(DescriptipionMsg.ITEMDESC_ENERGY), p0);
AddDescText(color, true, "~%d", p1);
AddDescText(color, true, "~~%d", p1);
}
else
{
@@ -1,13 +1,13 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection;
using System.IO;
using BrewMonster;
using BrewMonster.Network;
using ModelRenderer.Scripts.Common;
using ModelRenderer.Scripts.GameData;
using UnityEngine;
using BrewMonster.Network;
namespace BrewMonster.Scripts
{
@@ -809,7 +809,7 @@ namespace BrewMonster.Scripts
/// </summary>
public static EC_IvtrItem CreateItem(int tid, int expire_date, int iCount, int idSpace = 0)
{
var pItem = new EC_IvtrItem(tid, expire_date);
EC_IvtrItem pItem;
DATA_TYPE DataType = DATA_TYPE.DT_INVALID;
object data = ElementDataManProvider.GetElementDataMan().get_data_ptr((uint)tid, ID_SPACE.ID_SPACE_ESSENCE, ref DataType);
//Debug.Log("Create item data: DataType: " + DataType);
@@ -1509,8 +1509,9 @@ namespace BrewMonster.Scripts
return -1;
}
protected virtual void SetLocalProps()
public virtual void SetLocalProps()
{
}
protected virtual void AddDescText(int iCol, bool bRet, string szText, params object[] args)
@@ -1,14 +1,24 @@
using System;
using System.Collections.Generic;
using System.Reflection;
using System.IO;
using BrewMonster;
using BrewMonster.Scripts.Managers;
using ModelRenderer.Scripts.Common;
using ModelRenderer.Scripts.GameData;
using UnityEngine;
using PerfectWorld.Scripts.Managers;
using BrewMonster.Network;
using BrewMonster.Scripts.Managers;
using BrewMonster.Scripts;
using CSNetwork.GPDataType;
using System.Runtime.InteropServices;
namespace BrewMonster.Scripts
{
public class EC_IvtrStone : EC_IvtrItem
{
// Data in database
private STONE_ESSENCE m_pDBEssence;
protected STONE_SUB_TYPE m_pDBSubType;
protected STONE_ESSENCE m_pDBEssence;
/// <summary>
/// Not create logic yet (add summary later)
/// </summary>
@@ -36,9 +46,46 @@ namespace BrewMonster.Scripts
public EC_IvtrStone(EC_IvtrStone other) : base(other)
{
m_pDBEssence = other.m_pDBEssence;
m_pDBSubType= other.m_pDBSubType;
}
public STONE_ESSENCE GetDBEssence() { return m_pDBEssence; }
public override bool SetItemInfo(byte[] pInfoData, int iDataLen)
{
base.SetItemInfo(pInfoData, iDataLen);
return true;
}
public override string GetIconFile()
{
return m_pDBEssence.FileIcon;
}
public override string GetName()
{
return m_pDBEssence.Name;
}
protected override string GetNormalDesc(bool bRepair)
{
m_strDesc = "";
CECStringTab pDescTab = EC_Game.GetItemDesc();
int white = (int)DescriptipionMsg.ITEMDESC_COL_WHITE;
int namecol = DecideNameCol();
if (m_iCount > 1)
AddDescText(namecol, true, pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_NAMENUMBER), GetName(), m_iCount);
else
AddDescText(namecol, true, pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_NAME), GetName());
AddIDDescText();
AddExpireTimeDesc();
AddPriceDesc(white, bRepair);
AddExtDescText();
return m_strDesc;
}
public override string GetDropModel()
{
return m_pDBEssence.FileMatter;
}
}
}
@@ -105,8 +105,8 @@ namespace PerfectWorld.Scripts.Managers
case EC_MsgDef.MSG_PM_PLAYEREXIT:
OnMsgPlayerExit(Msg);
break;
case EC_MsgDef.MSG_PM_PLAYEREXTSTATE:
OnMsgPlayerExtState(Msg);
case EC_MsgDef.MSG_PM_PLAYEREXTSTATE:
OnMsgPlayerExtState(Msg);
break;
}
@@ -811,7 +811,7 @@ namespace PerfectWorld.Scripts.Managers
object pData;
int idPlayer, iIndex;
BMLogger.LogError("OnMsgPlayerExtProp Msg.dwParam2=" + Msg.dwParam2);
// BMLogger.LogError("OnMsgPlayerExtProp Msg.dwParam2=" + Msg.dwParam2);
switch (Convert.ToInt32(Msg.dwParam2))
{
case CommandID.PLAYER_EXT_PROP_BASE:
@@ -81,7 +81,7 @@ namespace BrewMonster.Scripts.Managers
"models/players/形象/夜影女/躯干/夜影女.ecm",
"models/players/形象/月仙男/躯干/月仙男.ecm",
"models/players/形象/月仙女/躯干/月仙女.ecm",
// 胧族职业变身
"models/players/形象/胧族变身夜影男/胧族变身夜影男.ecm",
"models/players/形象/胧族变身夜影女/胧族变身夜影女.ecm",
@@ -89,7 +89,7 @@ namespace BrewMonster.Scripts.Managers
"models/players/形象/胧族变身月仙女/胧族变身月仙女.ecm",
};
public static NPCManager Instance
public static NPCManager Instance
{
get
{
@@ -98,12 +98,13 @@ namespace BrewMonster.Scripts.Managers
instance = FindAnyObjectByType<NPCManager>();
}
return instance;
}
}
}
public async Task<GameObject> GetModelPlayer(byte profession, byte gender)
{
var prefab = await AddressableManager.Instance.LoadPrefabAsync(_playerModelPaths[profession * GENDER.NUM_GENDER + gender]);
// BMLogger.LogError("_playerModelPaths[profession * GENDER.NUM_GENDER + gender] = " + _playerModelPaths[profession * GENDER.NUM_GENDER + gender]);
if (prefab == null)
{
BMLogger.LogError( $" [NPC Manager] Not found Prefab from Addressable with profession : {profession} gender : {gender}");
@@ -118,7 +119,7 @@ namespace BrewMonster.Scripts.Managers
{
// The first 2 shapes are the matters, so we need to subtract 2 from the shape id
// not sure it will cause any problem
int tempShape = iShape-2;
var prefab = await AddressableManager.Instance.LoadPrefabAsync(_playerModelPaths[tempShape]);
if (prefab == null)
@@ -132,4 +133,4 @@ namespace BrewMonster.Scripts.Managers
}
}
}
//models/players/形象/白虎/白虎
//models/players/形象/白虎/白虎
+126 -126
View File
@@ -111,9 +111,9 @@ namespace BrewMonster
public RIDINGPET m_RidingPet; // Riding pet information
public GameObject m_pPetModel = null; // Pet model
public RIDINGPET m_CandPet;// ID of candidate pet
public RIDINGPET m_CandPet;// ID of candidate pet
A3DVECTOR3 m_vNamePos; // Æï³Ë×´Ì¬Íæ¼ÒÐÕÃûµÄµ÷Õû
// ÒÀ¸½ÀàÐÍ
// ÒÀ¸½ÀàÐÍ
AttachMode m_AttachMode = AttachMode.enumAttachNone;
// ÒÀ¸½Õß»ò±»ÒÀ¸½Õßid
protected int m_iBuddyId;
@@ -259,7 +259,7 @@ namespace BrewMonster
"蝶羽狐",
// 默认摆摊模型
"男",
"女",
"女",
// 胧族
"夜影男",
"夜影女",
@@ -285,7 +285,7 @@ namespace BrewMonster
PLAYERMODEL_PROFESSION, // player profession related
PLAYERMODEL_DUMMYTYPE2, // player buff related
PLAYERMODEL_DUMMYTYPE3, // not use
PLAYERMODEL_MAX,
PLAYERMODEL_TYPEALL
};
@@ -308,7 +308,7 @@ namespace BrewMonster
m_PlayerActions = _default_actions;
m_iShape = 0;
m_aEquips = new int[(int)IndexOfIteminEquipmentInventory.SIZE_ALL_EQUIPIVTR];
queueActionEvent = new QueueActionEvent("", null, false, null, 200);
queueActionEvent = new QueueActionEvent("", null, false, null, 200);
}
/// <summary>This function will get the coressponding model player for the player based on the profession and gender </summary>
@@ -334,12 +334,12 @@ namespace BrewMonster
throw new InvalidOperationException(
$"SetPlayerModel failed to initialize model. profession={profession}, gender={gender}");
}
// Cleanup old model if exists
// 清理旧模型(如果存在)
if (m_pPlayerCECModel != null && m_pPlayerModel != null)
{
}
Debug.Log($"[CECPlayer] SetPlayerModel: profession: {profession}, gender: {gender}");
Debug.Log($"[CECPlayer] SetPlayerModel: m_pPlayerCECModel: {m_pPlayerCECModel}");
@@ -351,10 +351,10 @@ namespace BrewMonster
m_pPlayerModel.SetActive(true);
m_pModels[(int)PLAYERMODEL_TYPE.PLAYERMODEL_MAJOR] = m_pPlayerModel;
m_iShape = 0;
// Set the player model ready flag
IsPlayerModelReady = true;
// Update visual components after model is set (with delay to ensure NamedAnimancerComponent is available)
// 设置模型后更新视觉组件(延迟以确保NamedAnimancerComponent可用)
StartCoroutine(UpdateVisualComponentsDelayed());
@@ -372,15 +372,15 @@ namespace BrewMonster
ApplyShapeModelChange(m_pModels[iShapeType]);
return true;
}
// try to load a new dummy model
// if (bAtOnce || !IsLoadThreadReady())
// {
// CECModel* pDummyModel = NULL;
// if (!LoadDummyModel(iShape, &pDummyModel) || !pDummyModel)
// return false;
// if (!SetDummyLoadResult(iShape, pDummyModel))
// {
// A3DRELEASE(pDummyModel);
@@ -391,10 +391,10 @@ namespace BrewMonster
// {
// int iType = (m_iCID == OCID_HOST_NAVIGATER) ? MTL_ECM_HOST_NAVIGATER_DUMMY:MTL_ECM_PLAYER_DUMMY;
// QueueECModelForLoad(
// iType,
// iType,
// m_PlayerInfo.cid,
// m_dwBornStamp,
// GetPos(),
// GetPos(),
// NULL,
// iShape);
// }
@@ -409,7 +409,7 @@ namespace BrewMonster
m_pModels[iShapeType] = pDummyModel;
m_aShapeID[iShapeType] = iShapeID;
ApplyShapeModelChange(pDummyModel);
return true;
}
protected void ApplyShapeModelChange(GameObject pModel)
@@ -418,23 +418,23 @@ namespace BrewMonster
int iBuddyId = m_iBuddyId;
bool bHangerOn = m_bHangerOn;
if (m_AttachMode != AttachMode.enumAttachNone) DetachBuddy(null, false);
// logic transform but no model changed
if(!pModel) pModel = GetMajorModel();
OnModelChange(pModel);
if(pModel && m_pPlayerModel && m_pPlayerModel != pModel)
{
{
// sync the position
//pModel->SetPos(m_pPlayerModel->GetPos());
// pModel->SetDirAndUp(m_pPlayerModel->GetDir(), m_pPlayerModel->GetUp());
pModel.transform.position = m_pPlayerModel.transform.position;
pModel.transform.rotation = m_pPlayerModel.transform.rotation;
// if (m_pPlayerModel.transform.forward != Vector3.zero)
// {
// {
// Quaternion lookRot = Quaternion.LookRotation(m_pPlayerModel.transform.forward, m_pPlayerModel.transform.up);
// transform.rotation = lookRot;
// }
// }
// TODO:sync wing
// CECModel* pWing = m_pPlayerModel->GetChildModel(_wing);
// m_pPlayerModel->RemoveChildModel(_wing, false);
@@ -481,9 +481,9 @@ namespace BrewMonster
// }
// }
}
// TODO:change the target
if (m_pPlayerModel != pModel){
if (m_pPlayerModel != pModel){
// ClearShowExtendStates();
// if (IsMajorModel(m_pPlayerModel)){
// RemoveEquipGfx();
@@ -502,15 +502,15 @@ namespace BrewMonster
RecreateActionController();
// RecreateBodyController();
}
// different ground mode
SetUseGroundNormal( ShouldUseGroundNormalForCurrentShapeModel() );
PlayAction(GetMoveStandAction(false, IsFighting()), true);
// Update NPCVisual's namedAnimancer reference when model changes
// 当模型更改时更新NPCVisual的namedAnimancer引用
UpdateVisualComponents();
// Todo: restore the attach state
// if (iBuddyId)
// {
@@ -534,9 +534,9 @@ namespace BrewMonster
// if (pChariot && pChariot->IsUpdateState())
// {
// PlayGfx(res_GFXFile(RES_GFX_LEVELUP), NULL, 4.0, PLAYERMODEL_TYPEALL);
// BubbleText(BUBBLE_LEVELUP, 0);
// BubbleText(BUBBLE_LEVELUP, 0);
// pChariot->UpdateState(0,0);// ָս־
// }
// }
// }
}
@@ -595,10 +595,10 @@ namespace BrewMonster
return result;
}
protected virtual bool IsShapeModelChanged()
{
{
return m_pModels[(int)PLAYERMODEL_TYPE.PLAYERMODEL_MAJOR] != m_pPlayerModel;
}
/// <summary>
/// Update visual components (NPCVisual, PlayerVisual) when model changes
/// 当模型更改时更新视觉组件(NPCVisual、PlayerVisual
@@ -613,7 +613,7 @@ namespace BrewMonster
BMLogger.LogWarning("CECPlayer: UpdateVisualComponents - _pPlayerModel is null, cannot update visual components");
return;
}
// Update NPCVisual if it exists
// 如果存在NPCVisual则更新它
NPCVisual npcVisual = GetComponent<NPCVisual>();
@@ -621,7 +621,7 @@ namespace BrewMonster
{
npcVisual.RefreshNamedAnimancer(modelRoot);
}
// Update PlayerVisual if it exists
// 如果存在PlayerVisual则更新它
PlayerVisual playerVisual = GetComponentInChildren<PlayerVisual>();
@@ -640,10 +640,10 @@ namespace BrewMonster
// Wait one frame for NamedAnimancerComponent to be available
// 等待一帧以确保NamedAnimancerComponent可用
yield return null;
if (m_pPlayerModel == null)
yield break;
UpdateVisualComponents();
}
@@ -696,7 +696,7 @@ namespace BrewMonster
StartCoroutine(InitializePlayerCECModelDelayed());
return;
}
// Set references on CECModel
// 在CECModel上设置引用
m_pPlayerCECModel.SetSkeletonBuilder(skeletonBuilder);
@@ -757,10 +757,10 @@ namespace BrewMonster
// Wait one frame for SkeletonBuilder to be built
// 等待一帧以便SkeletonBuilder被构建
yield return null;
if (m_pPlayerModel == null)
yield break;
SkeletonBuilder skeletonBuilder = m_pPlayerModel.GetComponentInChildren<SkeletonBuilder>();
if (skeletonBuilder != null)
{
@@ -770,7 +770,7 @@ namespace BrewMonster
}
m_pPlayerCECModel.SetSkeletonBuilder(skeletonBuilder);
m_pPlayerCECModel.SetTransform(m_pPlayerModel.transform);
// Initialize skeleton builder (ensures hooks are available)
// 初始化骨架构建器(确保挂点可用)
m_pPlayerCECModel.InitializeSkeletonBuilder();
@@ -821,7 +821,7 @@ namespace BrewMonster
{
return;
}
ShowExtendStates(start, pData, count);
Array.Copy(pData, start, m_aExtStates, start, count);
if(GetExtState(111))
@@ -848,18 +848,18 @@ namespace BrewMonster
// return;
//static const char* szBasePath = "߻\\״̬Ч\\";
const int bitSize = sizeof(uint) * 8;
BMLogger.LogError($"[CECPlayer] ShowExtendStates: start: {start}, count: {count}, bitSize: {bitSize}");
for (int index = 0; index<count; index++)
{
{
int idState = index + start;
for (int i=0; i < bitSize; i++)
{
int dwMask = 1 << i;
int dwFlag1 = (int)(m_aExtStatesShown[idState] & dwMask);
int dwFlag2 = (int)(pData[index] & dwMask);
if ((dwFlag1 == 0 && dwFlag2 == 0) || (dwFlag1 != 0 && dwFlag2 != 0))
continue;
@@ -906,17 +906,17 @@ namespace BrewMonster
// else
// {
// // Add new state
// const char* szHH = pvs->GetHH();
// float fScale;
// if (stricmp("HH_Head", szHH) == 0)
// fScale = GetMajorModel()->GetOuterData()[0];
// else if (stricmp("HH_Spine", szHH) == 0)
// fScale = GetMajorModel()->GetOuterData()[1];
// else
// fScale = 1.0f;
// CECModel *pWeapon = NULL;
// bool bLeft (false);
// if (IsWeaponHookPos(pvs->GetHH(), &bLeft, &pWeapon))
@@ -1090,7 +1090,7 @@ namespace BrewMonster
if (!string.IsNullOrEmpty(data.ActionName))
{
if (!skillActionMap.TryAdd(data.Name, data))
{
{
}
}
}
@@ -1172,7 +1172,7 @@ namespace BrewMonster
// ❌ not found
// Debug.LogWarning($"CECPlayer::BuildActionList() Failed to find skill action {idSkill}!");
}
}
}
@@ -1237,7 +1237,7 @@ namespace BrewMonster
// update show weapon states.
m_bShowWeapon = action.data.hide_weapon != 0 ? false : true;
}
if( iAction >= (int)PLAYER_ACTION_TYPE.ACT_ATTACK_1 && iAction <= (int)PLAYER_ACTION_TYPE.ACT_ATTACK_4 )
{
// attack action should not be played by this function
@@ -1245,7 +1245,7 @@ namespace BrewMonster
}
else if( iAction == (int)PLAYER_ACTION_TYPE.ACT_ATTACK_TOSS )
{
// we use toss second part action as a common action
// we use toss second part action as a common action
// sprintf(szAct, "%s_%s", action.data->action_prefix, action.data->action_weapon_suffix[weapon_type].suffix);
szAct = $"{action.data.ActionPrefix}_{action.data.action_weapon_suffix[weapon_type].Suffix}";
if( !bQueue ){
@@ -1256,9 +1256,9 @@ namespace BrewMonster
return true;
}
else if( (
iAction >= (int)PLAYER_ACTION_TYPE.ACT_EXP_WAVE &&
iAction <= (int)PLAYER_ACTION_TYPE.ACT_EXP_KISS_END) ||
(iAction >= (int)PLAYER_ACTION_TYPE.ACT_EXP_FIGHT &&
iAction >= (int)PLAYER_ACTION_TYPE.ACT_EXP_WAVE &&
iAction <= (int)PLAYER_ACTION_TYPE.ACT_EXP_KISS_END) ||
(iAction >= (int)PLAYER_ACTION_TYPE.ACT_EXP_FIGHT &&
iAction <= (int)PLAYER_ACTION_TYPE.ACT_EXP_DANCE) )
{
//
@@ -1290,7 +1290,7 @@ namespace BrewMonster
m_pActionController.QueueNonSkillActionWithName(iAction, szAct, iTransTime, false, false, false, true, null, COMACT_FLAG_MODE_ONCE_MULTIIGNOREGFX);
}
}
}
}
return true;
}
else
@@ -1301,7 +1301,7 @@ namespace BrewMonster
if( iAction == (int)PLAYER_ACTION_TYPE.ACT_FIGHTSTAND )
action = m_PlayerActions[(int)PLAYER_ACTION_TYPE.ACT_STAND];
else if( iAction >= (int)PLAYER_ACTION_TYPE.ACT_PICKUP && iAction <= (int)PLAYER_ACTION_TYPE.ACT_PICKUP_MATTER )
action = m_PlayerActions[(int)PLAYER_ACTION_TYPE.ACT_STAND];
action = m_PlayerActions[(int)PLAYER_ACTION_TYPE.ACT_STAND];
// if( iAction == (int)PLAYER_ACTION_TYPE.ACT_TWO_KISS )
// sprintf(szAct, "վ_");
@@ -1337,7 +1337,7 @@ namespace BrewMonster
else if (m_bHangerOn)
{
if( iAction == (int)PLAYER_ACTION_TYPE.ACT_FIGHTSTAND )
action = m_PlayerActions[(int)PLAYER_ACTION_TYPE.ACT_STAND];
action = m_PlayerActions[(int)PLAYER_ACTION_TYPE.ACT_STAND];
else if( iAction >= (int)PLAYER_ACTION_TYPE.ACT_PICKUP && iAction <= (int)PLAYER_ACTION_TYPE.ACT_PICKUP_MATTER )
action = m_PlayerActions[(int)PLAYER_ACTION_TYPE.ACT_STAND];
@@ -1370,7 +1370,7 @@ namespace BrewMonster
else if (m_AttachMode == AttachMode.enumAttachHugPlayer || m_AttachMode == AttachMode.enumAttachRideOnPlayer)
{
if( iAction == (int)PLAYER_ACTION_TYPE.ACT_FIGHTSTAND )
action = m_PlayerActions[(int)PLAYER_ACTION_TYPE.ACT_STAND];
action = m_PlayerActions[(int)PLAYER_ACTION_TYPE.ACT_STAND];
else if( iAction >= (int)PLAYER_ACTION_TYPE.ACT_PICKUP && iAction <= (int)PLAYER_ACTION_TYPE.ACT_PICKUP_MATTER )
action = m_PlayerActions[(int)PLAYER_ACTION_TYPE.ACT_STAND];
@@ -1402,7 +1402,7 @@ namespace BrewMonster
// else
// {
// QueueNonSkillActionWithName(iAction, szAct, iTransTime, bRestart, false, false, true, NULL, COMACT_FLAG_MODE_ONCE_MULTIIGNOREGFX);
// if(pRightHandWeapon && IsUsingMagicWeapon())
// pRightHandWeapon->QueueAction(_GenWeaponActionName(szAct, m_iGender), iTransTime, iAction, bRestart ? true : false);
// }
@@ -1414,7 +1414,7 @@ namespace BrewMonster
CECPlayer pBuddy = m_pPlayerMan.GetPlayer(m_iBuddyId);
if (pBuddy)
{
if( iAction == (int)PLAYER_ACTION_TYPE.ACT_STAND || iAction == (int)PLAYER_ACTION_TYPE.ACT_FIGHTSTAND ||
if( iAction == (int)PLAYER_ACTION_TYPE.ACT_STAND || iAction == (int)PLAYER_ACTION_TYPE.ACT_FIGHTSTAND ||
iAction == (int)PLAYER_ACTION_TYPE.ACT_RUN || iAction == (int)PLAYER_ACTION_TYPE.ACT_WALK || iAction == (int)PLAYER_ACTION_TYPE.ACT_JUMP_START ||
iAction == (int)PLAYER_ACTION_TYPE.ACT_JUMP_LOOP || iAction == (int)PLAYER_ACTION_TYPE.ACT_JUMP_LAND || iAction == (int)PLAYER_ACTION_TYPE.ACT_WOUNDED ||
iAction == (int)PLAYER_ACTION_TYPE.ACT_TWO_KISS )
@@ -1452,7 +1452,7 @@ namespace BrewMonster
// if( !bQueue )
// {
// if( !m_bShowWeapon )
// ShowWeapon(false);
// ShowWeapon(false);
// else
// {
// // ʦԾʱҪط
@@ -1461,11 +1461,11 @@ namespace BrewMonster
// else
// ShowWeapon(true);
// }
// // ݲŶλ
// UpdateWeaponHangerPosByAction(iAction);
// }
// EventBus.PublishChannel(m_PlayerInfo.cid, new PlayActionEvent(szShapeName, szAct, iTransTime));
// }
// EventBus.PublishChannel(m_PlayerInfo.cid, new PlayActionEvent(szShapeName, szAct, iTransTime));
m_pActionController.PlayNonSkillActionWithName(iAction, szAct, bRestart, iTransTime);
return true;
}
@@ -1659,7 +1659,7 @@ namespace BrewMonster
//EventBus.PublishChannel(m_PlayerInfo.cid, new PlayActionEvent(szShapeName, szAct, iTransTime, true));
m_pActionController.PlayNonSkillActionWithName(iAction, szAct, true, iTransTime, bHideFX, attackEvent,COMACT_FLAG_MODE_ONCE_MULTIIGNOREGFX);
szAct = EC_Utility.BuildActionName(action, weapon_type, "落");
queueActionEvent.SetData(szShapeName, szAct, SetApplyDamage, true, attackEvent, iTransTime,false);
queueActionEvent.SetData(szShapeName, szAct, SetApplyDamage, true, attackEvent, iTransTime,false);
//EventBus.PublishChannelClass(m_PlayerInfo.cid, queueActionEvent);
m_pActionController.QueueNonSkillActionWithName(iAction, szAct, 0, false, bHideFX);
//PlayNonSkillActionWithName(iAction, szAct, true, 200, true, ref pActFlag, COMACT_FLAG_MODE_ONCE_MULTIIGNOREGFX);gagága
@@ -1706,7 +1706,7 @@ namespace BrewMonster
// nTime1 = m_pPlayerModel.GetComActTimeSpanByName(szAct);
szAct = EC_Utility.BuildActionName(action, weapon_type, "落", szActionMiddleName);
szAct = EC_Utility.BuildActionName(action, weapon_type, "落", szActionMiddleName);
queueActionEvent.SetData(szShapeName, szAct, SetApplyDamage, false, attackEvent, 0, false);
//EventBus.PublishChannelClass(m_PlayerInfo.cid, queueActionEvent);
m_pActionController.QueueNonSkillActionWithName(iAction, szAct, 0, false, false, true, false);
@@ -1828,7 +1828,7 @@ namespace BrewMonster
GetLeftWeaponHookPos(m_weaponHangerPos),
GetLeftHandWeapon(),
GetLeftWeaponOwnHookPos(GetLeftHandWeapon()));
}
}
if (GetRightHandWeapon()){
GetPlayerModel().AddChildModel(
_right_hand_weapon,
@@ -2123,7 +2123,7 @@ namespace BrewMonster
}
else if (nDamage == -1)
{
// when else player hit this player iDamage is -1,
// when else player hit this player iDamage is -1,
// Just play a wounded action
if (!OnDamaged(skill))
{
@@ -2167,7 +2167,7 @@ namespace BrewMonster
BubbleText((int)BubbleTextType.BUBBLE_HITMISSED, 0);
}
}
public void BubbleText(int iIndex, uint dwNum, int p1 = 0)
{
@@ -2216,7 +2216,7 @@ namespace BrewMonster
if (!bHost)
dwCol = new Color(237, 56, 0);
if ((p1 & 0x0001) != 0)
bubbleTextType = ImageResType.IMG_DEADLYSTRIKE;
else if ((p1 & 0x0002) != 0)
@@ -2248,7 +2248,7 @@ namespace BrewMonster
break;
case (int)BubbleTextType.BUBBLE_HITMISSED:
if (!bHost)
dwCol = new Color(237, 56, 0);
@@ -2264,7 +2264,7 @@ namespace BrewMonster
break;
case (int)BubbleTextType.BUBBLE_IMMUNE:
if (!bHost)
dwCol = new Color(237, 56, 0);
@@ -2298,12 +2298,12 @@ namespace BrewMonster
dwCol = new Color(126, 206, 244);
bubbleTextType = ImageResType.IMG_ADD;
break;
case (int)BubbleTextType.BUBBLE_DODGE_DEBUFF:
if (!bHost)
dwCol = new Color(237, 56, 0);
bubbleTextType = ImageResType.IMG_DODGE_DEBUFF;
break;
@@ -2471,12 +2471,12 @@ namespace BrewMonster
szActionMiddleName = "_空中翅膀"; // Air with wings / 空中翅膀
}
else
{
{
szActionMiddleName = "_空中飞剑"; // Air with sword / 空中飞剑
}
szActionMiddleName += "_施放起_";
szAct = EC_Utility.BuildActionName(data, weapon_type, szActionMiddleName);
szAct = EC_Utility.BuildActionName(data, weapon_type, szActionMiddleName);
GetSkillSectionActionName(ref szAct, idSkill, nSection);
if (!PlaySkillAttackActionWithName(idSkill, szAct, bHideFX, attackEvent))
@@ -2706,14 +2706,14 @@ namespace BrewMonster
public static int GetRealmLayer(int realmLevel) { return realmLevel != 0 ? (realmLevel + 9) / 10 : 0; }
public static int GetRealmSubLevel(int realmLevel) { return realmLevel != 0 ? (realmLevel % 10 != 0 ? realmLevel % 10 : 10) : 0; }
string GetFashionActionName()
{
// ʱװװЯĶ
//
string strAction = "";
string strAction = "";
int[] local_check_order =
int[] local_check_order =
{
(int)IndexOfIteminEquipmentInventory.EQUIPIVTR_FASHION_HEAD,
(int)IndexOfIteminEquipmentInventory.EQUIPIVTR_FASHION_BODY,
@@ -2738,7 +2738,7 @@ namespace BrewMonster
return strAction;
}
void GetFashionActionNameByID(int idEquipment, ref string strAction)
void GetFashionActionNameByID(int idEquipment, ref string strAction)
{
if (idEquipment != 0)
{
@@ -2747,7 +2747,7 @@ namespace BrewMonster
(uint)idEquipment,
ID_SPACE.ID_SPACE_ESSENCE,
ref dt);
if (pEquip != null && dt == DATA_TYPE.DT_FASHION_ESSENCE)
{
FASHION_ESSENCE pEssence = (FASHION_ESSENCE)pEquip;
@@ -2758,7 +2758,7 @@ namespace BrewMonster
protected bool PlayGfx(string szPath, string szHook, float fScale /*1.0f*/, uint iShapeTypeMask /*(1<<PLAYERMODEL_MAJOR)*/, bool bForceNoRecord = false)
{
// bool bPlayed(false);
// bool bSkipRecord = (iShapeTypeMask != PLAYERMODEL_TYPEALL) || bForceNoRecord;
// bool bSkipRecord = (iShapeTypeMask != PLAYERMODEL_TYPEALL) || bForceNoRecord;
// for(int i=0;i<PLAYERMODEL_MAX;i++)
// {
// if (m_pModels[i] && (iShapeTypeMask & (1<<i)))
@@ -2791,7 +2791,7 @@ namespace BrewMonster
if (prefab != null)
{
BMLogger.Log($"[GFX Spawn] Loading GFX: {path}, Prefab Name: {prefab.name}");
if (_levelUpVfx != null)
{
if (_levelUpVfx.IsPlaying())
@@ -2867,7 +2867,7 @@ namespace BrewMonster
// Set part extend properties
public void SetPartExtendProps(int iPropIdx, object pData)
{
BMLogger.LogError($"HoangDev: SetPartExtendProps iPropIdx={iPropIdx} pData={pData} ");
// BMLogger.LogError($"HoangDev: SetPartExtendProps iPropIdx={iPropIdx} pData={pData} ");
switch (iPropIdx)
{
case (int)ExtendPropertyClass.EXTPROPIDX_BASE:
@@ -3346,7 +3346,7 @@ namespace BrewMonster
protected async Task<bool> LoadPlayerSkeleton(bool bAtOnce)
{
int[] aEnabledEquips = new int[InventoryConst.SIZE_ALL_EQUIPIVTR];
for (int i = 0; i < InventoryConst.SIZE_ALL_EQUIPIVTR; i++)
{
@@ -3363,7 +3363,7 @@ namespace BrewMonster
if (aEnabledEquips[InventoryConst.EQUIPIVTR_WEAPON] > 0)
EquipMask |= 1 << InventoryConst.EQUIPIVTR_WEAPON;
if (aEnabledEquips[InventoryConst.EQUIPIVTR_FASHION_WEAPON] > 0)
EquipMask |= 1 << InventoryConst.EQUIPIVTR_FASHION_WEAPON;
EquipMask |= 1 << InventoryConst.EQUIPIVTR_FASHION_WEAPON;
Array.Copy(aEnabledEquips, aEquips, InventoryConst.IVTRSIZE_EQUIPPACK);
DecideWeaponLoad(aEquips, EquipMask);
@@ -3489,11 +3489,11 @@ namespace BrewMonster
// if (!bCanShowFashionWeaponBefore)
// SET_WEAPON(EQUIPIVTR_FASHION_WEAPON, m_aEquips[EQUIPIVTR_FASHION_WEAPON]);
// }
// RECORD_NORMAL_WEAPON(
// RECORD_NORMAL_WEAPON(
// pWeapon->file_model_left, pWeapon->file_model_right, pSubType->action_type);
// }
// // ͨ
// else
// else
// {
// bCanShowFashionWeapon = CanShowFashionWeapon(DEFAULT_ACTION_TYPE, m_iFashionWeaponType);
// if (bCanShowFashionWeapon)
@@ -3514,7 +3514,7 @@ namespace BrewMonster
// bCanShowFashionWeapon = CanShowFashionWeapon(m_uAttackType, pFashion->action_type);
// if (!bCanShowFashionWeapon)
// {
// if (pGameUI && this == g_pGame->GetGameRun()->GetHostPlayer() && InFashionMode())
// if (pGameUI && this == g_pGame->GetGameRun()->GetHostPlayer() && InFashionMode())
// pGameUI->AddChatMessage(pGameUI->GetStringFromTable(906), GP_CHAT_SYSTEM);
// CLEAR_WEAPON(EQUIPIVTR_FASHION_WEAPON);
// if (bCanShowFashionWeaponBefore)
@@ -3522,7 +3522,7 @@ namespace BrewMonster
// }
// // ʾʱװ˴Ҫm_stoneWeapon
// else CLEAR_WEAPON(EQUIPIVTR_WEAPON);
// RECORD_FASHION_WEAPON(
// RECORD_FASHION_WEAPON(
// pFashion->file_model_left, pFashion->file_model_right, pFashion->action_type);
// }
// // ʱװ
@@ -3537,7 +3537,7 @@ namespace BrewMonster
// RECORD_FASHION_WEAPON((char*)NULL, (char*)NULL, DEFAULT_ACTION_TYPE);
// }
// }
// if (bCanShowFashionWeaponBefore && !bCanShowFashionWeapon
// if (bCanShowFashionWeaponBefore && !bCanShowFashionWeapon
// && pGameUI && !bFashionWeaponChanged && bNormalWeaponChanged && this == g_pGame->GetGameRun()->GetHostPlayer())
// pGameUI->AddChatMessage(pGameUI->GetStringFromTable(906), GP_CHAT_SYSTEM);
}
@@ -3565,7 +3565,7 @@ namespace BrewMonster
else
m_dwResFlags &= ~dwFlag;
}
public virtual void Release()
public virtual void Release()
{
//TODO: Implement this latter
// DetachBuddy();
@@ -3659,7 +3659,7 @@ namespace BrewMonster
// }
// if (m_pPetCureGFX)
// {
// {
// A3DGFXExMan *pGFXExMan = g_pGame->GetA3DGFXExMan();
// if (pGFXExMan)
// pGFXExMan->CacheReleasedGfx(m_pPetCureGFX);
@@ -3678,13 +3678,13 @@ namespace BrewMonster
// g_pGame->GetGFXCaster()->ReleaseGFXEx(m_pWaterWaveStill);
// m_pWaterWaveStill = NULL;
// }
// if (m_pWaterWaveMove)
// {
// g_pGame->GetGFXCaster()->ReleaseGFXEx(m_pWaterWaveMove);
// m_pWaterWaveMove = NULL;
// }
// if (m_pAirBubble)
// {
// g_pGame->GetGFXCaster()->ReleaseGFXEx(m_pAirBubble);
@@ -3716,7 +3716,7 @@ namespace BrewMonster
// }
// ClearBoothModel();
// for (MOEffectMAP::iterator it = m_mapMOEffect.begin();it != m_mapMOEffect.end();++it)
// {
// A3DGFXExMan *pGFXExMan = g_pGame->GetA3DGFXExMan();
@@ -3744,11 +3744,11 @@ namespace BrewMonster
player.SetGroundNormal(GetGroundNormal());
player.SetUseGroundNormal(GetUseGroundNormal());
// CECPlayer
// CECPlayer
player.m_PlayerInfo = GetPlayerInfo();
player.SetBornStamp(GetBornStamp());
player.name = GetName();
//player.SetProps(&GetBasicProps(), &GetExtendProps());
//player.SetProps(&GetBasicProps(), &GetExtendProps());
player.m_iGender = GetGender();
player.m_iProfession = GetProfession();
//player.m_pvp = GetPVPInfo();
@@ -3775,12 +3775,12 @@ namespace BrewMonster
player.m_fTouchRad = GetTouchRadius();
//player.m_byPariahLvl = GetPariahLevel();
//player.SetBoothName(GetBoothName());
// player.m_CustomizeFactor = m_CustomizeFactor;
// player.ChangeCustomizeData(m_CustomizeData);
// player.ChangeCustomizeData(m_CustomizeData);
// for (int i=0; i < GetEffectCount(); i++)
// player.ApplyEffect(GetEffect(i), true);
// player.SetFactionID(GetFactionID());
player.SetCurPetID(GetCurPetID());
// player.SetCurrentTitle(GetCurrentTitle());
@@ -3802,11 +3802,11 @@ namespace BrewMonster
}
public async Task TransformShape(byte iShape, bool bLoadAtOnce = false/* =false */)
{
SetShape(iShape);
SetShape(iShape);
//a_LogOutput(1, "CECPlayer::TransformShape(iShape=%d)(iShapeType=%d,iShapeID=%d)", iShape, PLAYERMODEL_GETTYPE(iShape), PLAYERMODEL_GETID(iShape));
if (!GetMajorModel()) return;
if (IsShapeChanged())
{
m_bWeaponAttached = false;
@@ -3827,11 +3827,11 @@ namespace BrewMonster
// | 7 6 | 5 4 3 2 1 0 |
// |-TYPE-|-----Model ID-----|
int iNewShape = (iShape & 0xff); // only accept 8bit
// ԾɵShapeݽ
// ԾɵShapeݽ
FixOldShapeInfo(ref iNewShape);
// ְҵModel IDҪת
if( PLAYERMODEL_GETTYPE(iNewShape) == (int)PLAYERMODEL_TYPE.PLAYERMODEL_PROFESSION )
if( PLAYERMODEL_GETTYPE(iNewShape) == (int)PLAYERMODEL_TYPE.PLAYERMODEL_PROFESSION )
{
int iRealID = _GetProfessionTransformModelID(
m_iProfession, m_iGender, PLAYERMODEL_GETID(iNewShape));
@@ -3840,7 +3840,7 @@ namespace BrewMonster
// ְҵModel IDΪEC_Resource.hֵʲ
else
{
}
// store the original data into 8~15 bit
@@ -3852,7 +3852,7 @@ namespace BrewMonster
if(iShape != 0 && PLAYERMODEL_GETTYPE(iShape) == 0)
iShape |= 0x40;
}
public int _GetProfessionTransformModelID(int nChar, int nGender, int nModelID)
public int _GetProfessionTransformModelID(int nChar, int nGender, int nModelID)
{
int result = 0;
switch (nChar){
@@ -3875,7 +3875,7 @@ namespace BrewMonster
}
return result;
}
}
public struct PlayActionEvent
@@ -4123,7 +4123,7 @@ namespace BrewMonster
BUBBLE_HPWARN,
BUBBLE_MPWARN,
BUBBLE_REBOUND, //
BUBBLE_BEAT_BACK, //
BUBBLE_BEAT_BACK, //
BUBBLE_ADD, // ѪļӺ
BUBBLE_DODGE_DEBUFF,
BUBBLE_REALMEXP,
@@ -4141,7 +4141,7 @@ namespace BrewMonster
public int iDuelTimeCnt; // Duel time counter
public int iDuelRlt; // Duel result. 0, no defined; 1-win; 2-lose; 3-draw
};
// Battle type / 战斗类型
public enum BattleType
{
@@ -4150,7 +4150,7 @@ namespace BrewMonster
BT_COUNTRY = 2, // Country war / 国战
BT_CHARIOT = 3, // Chariot war / 战车战
};
// Score rank entry for country battle live show / 国战直播显示分数排行条目
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct ScoreRankEntry
@@ -4160,7 +4160,7 @@ namespace BrewMonster
public int iKillCount; // Kill count / 击杀数
public int iDeathCount; // Death count / 死亡数
};
// Death entry for country battle live show / 国战直播显示死亡条目
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct DeathEntry
@@ -4169,7 +4169,7 @@ namespace BrewMonster
public int idVictim; // Victim ID / 受害者ID
public int iTime; // Death time / 死亡时间
};
// Battle information / 战斗信息
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct BATTLEINFO
@@ -4183,7 +4183,7 @@ namespace BrewMonster
public int iScore_I; // Score of invader / 攻击方分数
public int iScore_D; // Score of defender / 防守方分数
public int iEndTime; // Battle end time / 战斗结束时间
// 国战专用数据 / Country war specific data
public int iOffenseCountry; // Offense country / 攻击方国家
public int iDefenceCountry; // Defence country / 防守方国家
@@ -4194,7 +4194,7 @@ namespace BrewMonster
public A3DVECTOR3 posCarrier; // 扛旗者位置(bFlagCarrier为false时有效)/ Carrier position (valid when bFlagCarrier is false)
[MarshalAs(UnmanagedType.U1)]
public bool bCarrierInvader; // 扛旗者是攻击方(bFlagCarrier为false时有效)/ Carrier is invader (valid when bFlagCarrier is false)
public int iCombatTime; // 战斗时间(秒)/ Combat time (seconds)
public int iAttendTime; // 参加战场时间(秒)/ Attend time (seconds)
public int iKillCount; // 击杀次数 / Kill count
@@ -4203,25 +4203,25 @@ namespace BrewMonster
public int iCountryDeathCount;// 同国家死亡次数 / Same country death count
public int iAttackerCount; // 攻击方人数 / Attacker count
public int iDefenderCount; // 防守方人数 / Defender count
public int iStrongHoldCount; // 据点个数 / Stronghold count
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)]
public int[] iStrongHoldState; // 据点占领状态 8 == ARRAY_SIZE(COUNTRY_CONFIG::stronghold) / Stronghold occupation state
// Score rank containers (using List instead of std::vector) / 分数排行容器(使用List代替std::vector
public List<ScoreRankEntry> OffenseRanks; // Offense ranks / 攻击方排行
public List<ScoreRankEntry> DefenceRanks; // Defence ranks / 防守方排行
// Death containers (using List instead of std::vector) / 死亡容器(使用List代替std::vector
public List<DeathEntry> OffenseDeaths; // Offense deaths / 攻击方死亡
public List<DeathEntry> DefenceDeaths; // Defence deaths / 防守方死亡
// 战车 / Chariot
public int iChariot; // 战车id / Chariot id
public int iEnergy; // 能量 / Energy
public int iScoreSelf; // 自己成绩 / Self score
public int iMultiKill; // 连杀 / Multi kill
// Initialize arrays and lists / 初始化数组和列表
public void Initialize()
{
@@ -4236,7 +4236,7 @@ namespace BrewMonster
if (DefenceDeaths == null)
DefenceDeaths = new List<DeathEntry>();
}
// Set country battle live show info / 设置国战直播显示信息
// TODO: Implement when cmd_countrybattle_live_show_result is available
// 当cmd_countrybattle_live_show_result可用时实现
@@ -4245,31 +4245,31 @@ namespace BrewMonster
// TODO: Implement SetCountryBattleLiveShowInfo
// 实现SetCountryBattleLiveShowInfo
}
// Check if in guild war / 检查是否在帮派战中
public bool IsGuildWar()
{
return nType == (int)BattleType.BT_GUILD;
}
// Check if in country war / 检查是否在国战中
public bool IsCountryWar()
{
return nType == (int)BattleType.BT_COUNTRY;
}
// Check if is flag carrier / 检查是否是旗手
public bool IsFlagCarrier()
{
return IsCountryWar() && bFlagCarrier;
}
// Check if in chariot war / 检查是否在战车战中
public bool IsChariotWar()
{
return nType == (int)BattleType.BT_CHARIOT;
}
// Reset battle info / 重置战斗信息
public void Reset()
{
+17 -21
View File
@@ -569,7 +569,7 @@ public class CECNPC : CECObject
PlayModelAction((int)NPCActionIndex.ACT_IDLE);
if (IsPetNPC() && !IsDead() && !IsDisappearing())
{
//OnPetSays(CECPetWords::TW_REST);
//OnPetSays(CECPetWords::TW_REST);
}
}
else
@@ -819,14 +819,14 @@ public class CECNPC : CECObject
{
if (iDamage == -1 || iDamage == -2)
{
// when else player hit this npc iDamage is -1,
// when else player hit this npc iDamage is -1,
// so if iDamage is -1 we will shoud the wounded animation
if (iDamage == -1 && !m_bStartFight)
PlayModelAction((int)NPCActionIndex.ACT_WOUNDED);
FLoatingTextManager.Instance.ShowText(transform.position, iDamage, Color.red, 1.0f, ImageResType.NUM_IMAGE, this);
if ((dwModifier & (uint)MOD.MOD_IMMUNE) != 0 /* && !IsImmuneDisable()*/)
BubbleText((int)MOD.MOD_IMMUNE, 0);
BubbleText((int)MOD.MOD_IMMUNE, 0);
else if ((dwModifier & (uint)MOD.MOD_NULLITY) != 0)
BubbleText((int)MOD.MOD_NULLITY, 0);
else if ((dwModifier & (uint)MOD.MOD_ENCHANT_FAILED) != 0)
@@ -878,7 +878,7 @@ public class CECNPC : CECObject
public void BubbleText(int iIndex, int dwNum, int p1 = 0/* 0 */)
{
//FLoatingTextManager.Instance.ShowText(transform.position, dwNum, Color.red, 1.0f, (uint)iIndex);
Color displayColor = new Color(237, 56, 0);
Color displayColor = new Color(237, 56, 0);
ImageResType imageResType = ImageResType.NUM_IMAGE;
switch (iIndex)
{
@@ -888,7 +888,7 @@ public class CECNPC : CECObject
else if ((p1 & 0x0002) != 0)
imageResType = ImageResType.IMG_RETORT;
break;
case (int)BubbleTextType.BUBBLE_HITMISSED:
imageResType = ImageResType.IMG_HITMISSED;
break;
@@ -916,7 +916,7 @@ public class CECNPC : CECObject
case (int)BubbleTextType.BUBBLE_DODGE_DEBUFF:
imageResType = ImageResType.IMG_DODGE_DEBUFF;
break;
default:
default:
imageResType = ImageResType.NUM_IMAGE;
break;
}
@@ -1167,10 +1167,6 @@ public class CECNPC : CECObject
{
SetDestDirAndUp(m_vStopDir, g_vAxisY, 150);
}
if (-2041571143 == m_NPCInfo.nid)
{
BMLogger.LogError($"cmd.dest={cmd.dest}");
}
WorkFinished((int)WorkID.WORK_MOVE);
return;
}
@@ -1584,11 +1580,11 @@ public class CECNPC : CECObject
m_pNPCModelPolicy.PlayModelAction(iAction, bRestart, null);
}
bool IsDisappearing()
bool IsDisappearing()
{
if(m_DisappearCnt != null)
{
return m_DisappearCnt.GetCounter() != 0 ? true : false;
return m_DisappearCnt.GetCounter() != 0 ? true : false;
}
return false;
}
@@ -1653,7 +1649,7 @@ public class CECNPC : CECObject
// Get NPC name color
public virtual uint GetNameColor() { return 0xffffff00; }
CECPateText m_pPateLastWords1;
CECPateText m_pPateLastWords2;
public void SetLastSaidWords(string words, int timeShow = -1)
@@ -1696,7 +1692,7 @@ public class CECNPC : CECObject
// Find the model GameObject (typically a child of this NPC)
// 查找模型GameObject(通常是此NPC的子对象)
GameObject modelObject = null;
// Try to find model in children (where NPC models are typically placed)
// 尝试在子对象中查找模型(NPC模型通常放置在那里)
NPCVisual npcVisual = GetComponent<NPCVisual>();
@@ -1710,7 +1706,7 @@ public class CECNPC : CECObject
modelObject = skeleton.gameObject;
}
}
// If no model found, try to find any child with SkeletonBuilder
// 如果未找到模型,尝试查找任何带有SkeletonBuilder的子对象
if (modelObject == null)
@@ -1721,14 +1717,14 @@ public class CECNPC : CECObject
modelObject = skeleton.gameObject;
}
}
if (modelObject != null)
{
// Create and initialize CECModel instance
// 创建并初始化CECModel实例
m_pNPCCECModel = new CECModel();
m_pNPCCECModel.SetTransform(modelObject.transform);
// Find and set SkeletonBuilder
// 查找并设置SkeletonBuilder
SkeletonBuilder skeletonBuilder = modelObject.GetComponent<SkeletonBuilder>();
@@ -1736,7 +1732,7 @@ public class CECNPC : CECObject
{
skeletonBuilder = modelObject.GetComponentInChildren<SkeletonBuilder>(true);
}
if (skeletonBuilder != null)
{
m_pNPCCECModel.SetSkeletonBuilder(skeletonBuilder);
@@ -1744,7 +1740,7 @@ public class CECNPC : CECObject
}
}
}
return m_pNPCCECModel;
}
@@ -1770,7 +1766,7 @@ public class CECNPC : CECObject
BUBBLE_LOSE,
BUBBLE_SUCCESS,
BUBBLE_REBOUND, //
BUBBLE_BEAT_BACK, //
BUBBLE_BEAT_BACK, //
BUBBLE_DODGE_DEBUFF,
};
}
@@ -1868,4 +1864,4 @@ public ref struct ByteReader
var s = _span.Slice(_offset, len).ToArray();
_offset += len; return s;
}
}
}
+4 -4
View File
@@ -52,14 +52,14 @@ public class NPCVisual : MonoBehaviour
}
private void OnClearComActFlagEvent(ClearComActFlagEvent @event)
{
if (_currentState != null)
BMLogger.LogError("HoangDev: OnClearComActFlagEvent _currentState:" + _currentState.Clip.name);
// if (_currentState != null)
// BMLogger.LogError("HoangDev: OnClearComActFlagEvent _currentState:" + _currentState.Clip.name);
foreach (var state in _animationQueue)
/*foreach (var state in _animationQueue)
{
BMLogger.LogMono(this,"HoangDev: OnClearComActFlagEvent state:" + state);
}
BMLogger.LogMono(this,"HoangDev: OnClearComActFlagEvent");
BMLogger.LogMono(this,"HoangDev: OnClearComActFlagEvent");*/
_animationQueue.Clear();
}
@@ -1368,7 +1368,7 @@ namespace CSNetwork
case CommandID.PLAYER_EXT_PROP_MOVE:
case CommandID.PLAYER_EXT_PROP_ATK:
case CommandID.PLAYER_EXT_PROP_DEF:
BMLogger.LogError("EC_MsgDef.MSG_PM_PLAYEREXTPROP");
// BMLogger.LogError("EC_MsgDef.MSG_PM_PLAYEREXTPROP");
EC_ManMessage.PostMessage(EC_MsgDef.MSG_PM_PLAYEREXTPROP, MANAGER_INDEX.MAN_PLAYER, -1, pDataBuf, pCmdHeader);
break;
case CommandID.OWN_EXT_PROP:

Some files were not shown because too many files have changed in this diff Show More