增加放技能时黑屏的淡入淡出
parent
5a5f62b725
commit
4290c13547
|
|
@ -43,6 +43,7 @@ GameObject:
|
|||
- component: {fileID: 4545607764943411821}
|
||||
- component: {fileID: 2478625049683118878}
|
||||
- component: {fileID: 5293667126421138522}
|
||||
- component: {fileID: 802590050758105738}
|
||||
m_Layer: 5
|
||||
m_Name: Quad
|
||||
m_TagString: Untagged
|
||||
|
|
@ -115,3 +116,24 @@ MeshRenderer:
|
|||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_AdditionalVertexStreams: {fileID: 0}
|
||||
--- !u!95 &802590050758105738
|
||||
Animator:
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8159087196645660200}
|
||||
m_Enabled: 1
|
||||
m_Avatar: {fileID: 0}
|
||||
m_Controller: {fileID: 9100000, guid: cef9c56ea31addb419aed0c1b1ab8ea8, type: 2}
|
||||
m_CullingMode: 0
|
||||
m_UpdateMode: 0
|
||||
m_ApplyRootMotion: 0
|
||||
m_LinearVelocityBlending: 0
|
||||
m_StabilizeFeet: 0
|
||||
m_WarningMessage:
|
||||
m_HasTransformHierarchy: 1
|
||||
m_AllowConstantClipSamplingOptimization: 1
|
||||
m_KeepAnimatorStateOnDisable: 0
|
||||
m_WriteDefaultValuesOnDisable: 0
|
||||
|
|
|
|||
|
|
@ -0,0 +1,130 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1102 &-4253679700580881043
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Out
|
||||
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: d484b180cbcc55f4a8e0f807af905574, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
--- !u!1102 &-824468524836426644
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: None
|
||||
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: 0}
|
||||
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: anim_skill_screen_effect
|
||||
serializedVersion: 5
|
||||
m_AnimatorParameters: []
|
||||
m_AnimatorLayers:
|
||||
- serializedVersion: 5
|
||||
m_Name: Base Layer
|
||||
m_StateMachine: {fileID: 1256104947834881782}
|
||||
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!1107 &1256104947834881782
|
||||
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: 5194646091153703445}
|
||||
m_Position: {x: 350, y: 90, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: -4253679700580881043}
|
||||
m_Position: {x: 350, y: 170, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: -824468524836426644}
|
||||
m_Position: {x: 350, y: 10, 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: -824468524836426644}
|
||||
--- !u!1102 &5194646091153703445
|
||||
AnimatorState:
|
||||
serializedVersion: 6
|
||||
m_ObjectHideFlags: 1
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: In
|
||||
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: aceba6ae8cd541d48aadd61490271ce7, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
m_TimeParameter:
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: cef9c56ea31addb419aed0c1b1ab8ea8
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 9100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -19,6 +19,11 @@ namespace Gameplay.Skill
|
|||
private List<GameObject> _cacheObjs;
|
||||
private List<int> _cacheLayers;
|
||||
|
||||
private Animator _rawAnim;
|
||||
public Animator rawAnim => _rawAnim;
|
||||
|
||||
public bool isHide;
|
||||
|
||||
public async UniTask Init()
|
||||
{
|
||||
skillCamera = CmpObjRef.instance.m_SkillCamera;
|
||||
|
|
@ -40,6 +45,8 @@ namespace Gameplay.Skill
|
|||
skillBg = UIRoot.Instance.UICamera.transform.GetChild(0).gameObject;
|
||||
}
|
||||
skillBg.SetActive(false);
|
||||
_rawAnim = skillBg.GetComponentInChildren<Animator>();
|
||||
_rawAnim.Play("None");
|
||||
}
|
||||
|
||||
public void Restore()
|
||||
|
|
@ -51,6 +58,7 @@ namespace Gameplay.Skill
|
|||
|
||||
public void Show()
|
||||
{
|
||||
isHide = false;
|
||||
skillBg.SetActive(true);
|
||||
|
||||
var mainCamera = Camera.main;
|
||||
|
|
@ -69,10 +77,17 @@ namespace Gameplay.Skill
|
|||
}
|
||||
|
||||
skillCamera.gameObject.SetActive(true);
|
||||
|
||||
_rawAnim.Play("In");
|
||||
}
|
||||
|
||||
public void Hide()
|
||||
public async void StartHide()
|
||||
{
|
||||
_rawAnim.Play("Out");
|
||||
|
||||
// 等待播放完成
|
||||
await UniTask.Delay(250);
|
||||
|
||||
skillCamera.gameObject.SetActive(false);
|
||||
skillBg.SetActive(false);
|
||||
|
||||
|
|
@ -84,6 +99,8 @@ namespace Gameplay.Skill
|
|||
}
|
||||
_cacheObjs.Clear();
|
||||
_cacheLayers.Clear();
|
||||
|
||||
isHide = true;
|
||||
}
|
||||
|
||||
public void AttachObj(GameObject obj)
|
||||
|
|
|
|||
|
|
@ -46,6 +46,7 @@ namespace Gameplay.Skill
|
|||
private readonly List<EventDataUseSkill> _useSkillList;
|
||||
|
||||
public bool needSkillPaused;
|
||||
public bool waitSkillEnd;
|
||||
/// <summary>
|
||||
/// 当前正在释放技能的单位,仅限玩家操作的单位
|
||||
/// </summary>
|
||||
|
|
@ -208,7 +209,14 @@ namespace Gameplay.Skill
|
|||
|
||||
if (needSkillPaused)
|
||||
{
|
||||
_InSkilling(dt);
|
||||
if (waitSkillEnd)
|
||||
{
|
||||
_WaitSkillEnd();
|
||||
}
|
||||
else
|
||||
{
|
||||
_InSkilling(dt);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -224,21 +232,18 @@ namespace Gameplay.Skill
|
|||
// 等待技能使用完成
|
||||
return;
|
||||
}
|
||||
if (_useSkillList.Count > 0)
|
||||
|
||||
waitSkillEnd = true;
|
||||
screenEffect.StartHide();
|
||||
}
|
||||
|
||||
private void _WaitSkillEnd()
|
||||
{
|
||||
// 判断动画是否结束
|
||||
if (!screenEffect.isHide)
|
||||
{
|
||||
// 继续下一个
|
||||
var skillData = _useSkillList[0];
|
||||
_useSkillList.RemoveAt(0);
|
||||
|
||||
var unit = GetUnitSkillManager(skillData.sender);
|
||||
unit.positiveSkill.Use(skillData.pointCellIndex);
|
||||
|
||||
inSkillingUnit = skillData.sender;
|
||||
needSkillPaused = true;
|
||||
return;
|
||||
}
|
||||
needSkillPaused = false;
|
||||
|
||||
_OnSkillEnd();
|
||||
}
|
||||
|
||||
|
|
@ -272,7 +277,8 @@ namespace Gameplay.Skill
|
|||
|
||||
private void _OnSkillEnd()
|
||||
{
|
||||
screenEffect.Hide();
|
||||
|
||||
needSkillPaused = false;
|
||||
|
||||
EventManager.Instance.Send(EventManager.EventName.INFIGHT_SKILL_END_PAUSE);
|
||||
|
||||
|
|
@ -281,6 +287,8 @@ namespace Gameplay.Skill
|
|||
|
||||
private void _OnSkillStart()
|
||||
{
|
||||
waitSkillEnd = false;
|
||||
|
||||
screenEffect.Show();
|
||||
|
||||
EventManager.Instance.Send(EventManager.EventName.INFIGHT_SKILL_START_PAUSE);
|
||||
|
|
|
|||
Loading…
Reference in New Issue