Channeled ability update

- Channeled abilities now allow to aim during channel
- Added spell casting channeled animation loop option
- New Mage DragonBreath channeled ability
This commit is contained in:
Pedro Gomes 2024-12-26 14:31:23 +00:00
parent c67f5f1b84
commit 310251ec9f
26 changed files with 54246 additions and 10 deletions

View File

@ -78,6 +78,31 @@ AnimatorState:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1101 &-8518047029049158150
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: spellcasting
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -2174624838372380439}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.75
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &-8135722390722792138
AnimatorStateTransition:
m_ObjectHideFlags: 1
@ -456,6 +481,33 @@ AnimatorStateTransition:
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &-2174624838372380439
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Spellcasting
m_Speed: 1
m_CycleOffset: 0
m_Transitions:
- {fileID: 301447094892522130}
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: -6008979419217260773, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-1955213380481053044
AnimatorState:
serializedVersion: 6
@ -618,6 +670,12 @@ AnimatorController:
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
- m_Name: spellcasting
m_Type: 4
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
@ -643,6 +701,31 @@ AnimatorController:
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1101 &301447094892522130
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 2
m_ConditionEvent: spellcasting
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -1955213380481053044}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.625
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &449907046510706275
AnimatorStateTransition:
m_ObjectHideFlags: 1
@ -810,6 +893,9 @@ AnimatorStateMachine:
- serializedVersion: 1
m_State: {fileID: 1680542179859437728}
m_Position: {x: 240, y: -170, z: 0}
- serializedVersion: 1
m_State: {fileID: -2174624838372380439}
m_Position: {x: 240, y: 330, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions:
- {fileID: -5718744200409098312}
@ -820,6 +906,7 @@ AnimatorStateMachine:
- {fileID: 6156162753974265385}
- {fileID: -9018154837033491220}
- {fileID: -2748198142735823690}
- {fileID: -8518047029049158150}
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []

View File

@ -5998,6 +5998,8 @@ MonoBehaviour:
- {fileID: 11400000, guid: 127f92fd14a21174695a692c0cf18746, type: 2}
- {fileID: 11400000, guid: 2536fad89b0bac442a6ef81548aa028c, type: 2}
- {fileID: 11400000, guid: b069202d181fb9e48b3868c0233e41aa, type: 2}
- {fileID: 11400000, guid: 4e6fcb1c48dc3fe4e9418c7a95d42dd3, type: 2}
- {fileID: 11400000, guid: 02b227158e608394fb976485e3646184, type: 2}
--- !u!1 &7246719027537041170
GameObject:
m_ObjectHideFlags: 0
@ -6847,6 +6849,7 @@ MonoBehaviour:
- {fileID: 11400000, guid: 8909ebd83ca05b140b506a197c124582, type: 2}
- {fileID: 11400000, guid: c1f9774af0e242a4d8d3ce1bf9f30154, type: 2}
- {fileID: 11400000, guid: 5095271b44cdf9c44a2d72c98a05ec52, type: 2}
- {fileID: 11400000, guid: 12447dd4c759d5e40a085a6062af22a4, type: 2}
--- !u!1 &7475116341184709871
GameObject:
m_ObjectHideFlags: 0

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 932f7e46d28a71c4f92eda68b5e1f560
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -4727,7 +4727,6 @@ ParticleSystemRenderer:
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 900acfa037f7a0242b5afdeea8ff53bc, type: 2}
- {fileID: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
@ -9273,7 +9272,6 @@ ParticleSystemRenderer:
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 7840d900dc0a4ed4dbcd26e23f064dd8, type: 2}
- {fileID: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
@ -14026,7 +14024,6 @@ ParticleSystemRenderer:
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 6cd2d08f4a4d93542aa0004bdac91566, type: 2}
- {fileID: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0

View File

@ -0,0 +1,182 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4093217959314465163
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3316266561444565184}
- component: {fileID: 2844877125780456071}
m_Layer: 0
m_Name: OverlapBox
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3316266561444565184
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4093217959314465163}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 2}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1004020197971889814}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!65 &2844877125780456071
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4093217959314465163}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1.5, y: 1, z: 4}
m_Center: {x: 0, y: 0, z: 0}
--- !u!1001 &3572410667015642357
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 1004020197971889814}
m_Modifications:
- target: {fileID: 8764043878647920493, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_Name
value: CFXR Fire Breath
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_RootOrder
value: 1
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_LocalPosition.z
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8767152486562788127, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: c4ed38c72957f2241ad144a1614956d9, type: 3}
--- !u!1001 &5849431754485391239
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 10084209409392438, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_Intensity
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880869, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: sceneViewId
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_RootOrder
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880872, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880873, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_Name
value: DragonBreath_ChanneledAbilityPrefab Variant
objectReference: {fileID: 0}
- target: {fileID: 6684366852784880875, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: OptionalBoxOverlap
value:
objectReference: {fileID: 2844877125780456071}
- target: {fileID: 7496199582761605570, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
--- !u!4 &1004020197971889814 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6684366851844296977, guid: f15e487e3a2d10649b5606f62f5754bf, type: 3}
m_PrefabInstance: {fileID: 5849431754485391239}
m_PrefabAsset: {fileID: 0}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 8964f299acba9cb4f860c55107b1d973
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -343,7 +343,7 @@ PrefabInstance:
- target: {fileID: 5627210965781110480, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: ability
value:
objectReference: {fileID: 11400000, guid: d58ac5a6fef83a24e93311b30cc34b0d, type: 2}
objectReference: {fileID: 11400000, guid: 12447dd4c759d5e40a085a6062af22a4, type: 2}
- target: {fileID: 6259208590911633741, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: ability
value:

View File

@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: cb14923287afab34b9aa3a618fdba03c, type: 3}
m_Name: 1-Firewall_AoEOverTimeAbility
m_EditorClassIdentifier:
Icon: {fileID: 21300000, guid: dd3885098198d104888439be4c590aba, type: 3}
Icon: {fileID: 21300000, guid: ddfe6380e427a034c98cf286b332173c, type: 3}
targettingTags:
- {fileID: 11400000, guid: 6447e0730c0a07841a07ef8637e3e364, type: 2}
- {fileID: 11400000, guid: c5b634e64086ffb4496aa6cb5e299c27, type: 2}

View File

@ -0,0 +1,45 @@
%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: be1ce37ab8d73574b947ba5b1903e40e, type: 3}
m_Name: 3-DragonBreath_ChanneledAbility
m_EditorClassIdentifier:
Icon: {fileID: 21300000, guid: dd3885098198d104888439be4c590aba, type: 3}
targettingTags:
- {fileID: 11400000, guid: 6447e0730c0a07841a07ef8637e3e364, type: 2}
- {fileID: 11400000, guid: c5b634e64086ffb4496aa6cb5e299c27, type: 2}
- {fileID: 11400000, guid: 3ac5bfbf7e1fbdd4baec1c17bd3d874c, type: 2}
tags:
- {fileID: 11400000, guid: 4e6f036fb4aad9b428694360fcc62f88, type: 2}
- {fileID: 11400000, guid: 918ee6f8846e6a9449166ac16b6330ae, type: 2}
- {fileID: 11400000, guid: f2044d584b586454f99656097deaa52f, type: 2}
- {fileID: 11400000, guid: 56d85d7ff5b22aa4bb8b40e97b2e850f, type: 2}
- {fileID: 11400000, guid: 9bbf01c0977dc98408db3efec6685c56, type: 2}
- {fileID: 11400000, guid: 52f094018088de54ab9507695f2913b7, type: 2}
- {fileID: 11400000, guid: 0edcb3dc0f6e9a241b3a30502dd59cbd, type: 2}
abilityEffects:
- {fileID: 11400000, guid: cbbe50ea105785145b2ad71314ac9798, type: 2}
- {fileID: 11400000, guid: 4e6fcb1c48dc3fe4e9418c7a95d42dd3, type: 2}
- {fileID: 11400000, guid: c846d224b2dc64a4682662b30f6ab7b4, type: 2}
- {fileID: 11400000, guid: 02b227158e608394fb976485e3646184, type: 2}
castTime: 0
manaCost: 50
healthCost: 0
classResourceCost: 0
cooldown: 5
castableWhileMoving: 0
animationType: 6
prefab: {fileID: 1004020196762887022, guid: 8964f299acba9cb4f860c55107b1d973, type: 3}
duration: 5
radius: 2.25
canHitSelf: 0
followUser: 1
allowAiming: 1

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 12447dd4c759d5e40a085a6062af22a4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -16,8 +16,8 @@ MonoBehaviour:
- {fileID: 11400000, guid: 4e6f036fb4aad9b428694360fcc62f88, type: 2}
influencingStats:
- statTag: {fileID: 11400000, guid: 918ee6f8846e6a9449166ac16b6330ae, type: 2}
percentInfluence: 0.7
baseValue: 9.5
percentInfluence: 0.65
baseValue: 6.5
damageType: 1
AlliedTargetMultiplier: 1
EnemyTargetMultiplier: 1

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 226f7bd0f14651545af6ac4098570c5e
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,26 @@
%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: af01294d38acd8c4ba867154b71b9ec6, type: 3}
m_Name: Mage_DragonBreath_BurnOverTimeEffectStack
m_EditorClassIdentifier:
tags:
- {fileID: 11400000, guid: f2044d584b586454f99656097deaa52f, type: 2}
- {fileID: 11400000, guid: 0edcb3dc0f6e9a241b3a30502dd59cbd, type: 2}
influencingStats:
- statTag: {fileID: 11400000, guid: 918ee6f8846e6a9449166ac16b6330ae, type: 2}
percentInfluence: 0.125
duration: 3
applyToTargetsHit: 1
applyToSelf: 0
baseDamagePerTick: 0.5
tickRate: 0.5
damageType: 0

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 02b227158e608394fb976485e3646184
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,27 @@
%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: 13153d6a33b66b1428c0d7fc4cb4bff0, type: 3}
m_Name: Mage_DragonBreath_DIModifierEffect
m_EditorClassIdentifier:
tags:
- {fileID: 11400000, guid: f2044d584b586454f99656097deaa52f, type: 2}
- {fileID: 11400000, guid: 56d85d7ff5b22aa4bb8b40e97b2e850f, type: 2}
influencingStats:
- statTag: {fileID: 11400000, guid: 9bbf01c0977dc98408db3efec6685c56, type: 2}
percentInfluence: -0.001
- statTag: {fileID: 11400000, guid: 52f094018088de54ab9507695f2913b7, type: 2}
percentInfluence: -0.0002
duration: 1
applyToTargetsHit: 0
applyToSelf: 1
damageIncomeModifierPercentage: -0.35
avoidAllies: 0

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4e6fcb1c48dc3fe4e9418c7a95d42dd3
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,25 @@
%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: 081df6f2fd69b7643a4844062a82871f, type: 3}
m_Name: Mage_DragonBreath_InstantEffect
m_EditorClassIdentifier:
tags:
- {fileID: 11400000, guid: 4e6f036fb4aad9b428694360fcc62f88, type: 2}
influencingStats:
- statTag: {fileID: 11400000, guid: 918ee6f8846e6a9449166ac16b6330ae, type: 2}
percentInfluence: 0.3
baseValue: 1.5
damageType: 1
AlliedTargetMultiplier: 1
EnemyTargetMultiplier: 1
applyToClassResourceInstead: 0
applyToSelfResourceInsteadOfHit: 0

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: cbbe50ea105785145b2ad71314ac9798
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
%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: 081df6f2fd69b7643a4844062a82871f, type: 3}
m_Name: Mage_DragonBreath_InstantEffectClassResource_tick
m_EditorClassIdentifier:
tags:
- {fileID: 11400000, guid: 4e6f036fb4aad9b428694360fcc62f88, type: 2}
influencingStats: []
baseValue: 0.35
AlliedTargetMultiplier: 1
EnemyTargetMultiplier: 1
applyToClassResourceInstead: 1
applyToSelfResourceInsteadOfHit: 1

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c846d224b2dc64a4682662b30f6ab7b4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -12,6 +12,7 @@ public class ChanneledAbility : BaseAbility
public float radius;
public bool canHitSelf;
public bool followUser;
public bool allowAiming;
protected GameObject instanciatedAbility;
@ -32,6 +33,7 @@ public class ChanneledAbility : BaseAbility
networkedChanneling.radius = radius;
networkedChanneling.canHitSelf = canHitSelf;
networkedChanneling.followUser = followUser;
networkedChanneling.allowAiming = allowAiming;
networkedChanneling.Init(ref channelingCoroutine);

View File

@ -76,7 +76,7 @@ public class CharacterAnimatorController : MonoBehaviour
if (isCasting)
{
anim.SetFloat("throwingTime", (1 / CastBarHandler.Instance.currentCastTime));
SetTriggerBasedOnAbility(CastBarHandler.Instance.currentAbility.animationType, CastBarHandler.Instance.currentAbility.animationType == AbilityAnimationType.Spin);
SetTriggerBasedOnAbility(CastBarHandler.Instance.currentAbility.animationType, CastBarHandler.Instance.currentAbility.animationType == AbilityAnimationType.Spin || CastBarHandler.Instance.currentAbility.animationType == AbilityAnimationType.Casting);
if (parentController == null)
{
@ -91,6 +91,7 @@ public class CharacterAnimatorController : MonoBehaviour
else if (wasSpinning)
{
SetTriggerBasedOnAbility(AbilityAnimationType.Spin, false);
SetTriggerBasedOnAbility(AbilityAnimationType.Casting, false);
}
}
@ -194,6 +195,10 @@ public class CharacterAnimatorController : MonoBehaviour
case AbilityAnimationType.Potion:
anim.SetTrigger("potion");
break;
case AbilityAnimationType.Casting:
wasSpinning = spinning;
anim.SetBool("spellcasting", spinning);
break;
default:
break;
}
@ -210,5 +215,6 @@ public enum AbilityAnimationType
Spin,
Summon,
Jump,
Casting,
Potion
}

View File

@ -18,6 +18,7 @@ public class NetworkedChanneling : MonoBehaviour
public float duration;
public bool canHitSelf;
public bool followUser;
public bool allowAiming;
public float radius;
public bool channeling = false;
@ -30,6 +31,10 @@ public class NetworkedChanneling : MonoBehaviour
protected Collider[] hits;
public BoxCollider OptionalBoxOverlap;
ProjectileSpawnLocationController aimController;
protected virtual void Awake()
{
photonView = GetComponent<PhotonView>();
@ -43,6 +48,8 @@ public class NetworkedChanneling : MonoBehaviour
channeling = true;
aimController = owner.GetComponentInChildren<ProjectileSpawnLocationController>();
channelingCoroutine = StartCoroutine(ExecuteChanneling());
if (followUser)
@ -57,6 +64,10 @@ public class NetworkedChanneling : MonoBehaviour
while (Time.time < endTime)
{
this.transform.position = owner.transform.position;
if (allowAiming)
{
this.transform.forward = aimController.GetLookat();
}
yield return new WaitForEndOfFrame();
}
@ -97,7 +108,14 @@ public class NetworkedChanneling : MonoBehaviour
{
if (!channeling) return;
hits = Physics.OverlapSphere(this.transform.position, radius, abilityHitLayer);
if (OptionalBoxOverlap != null)
{
hits = Physics.OverlapBox(OptionalBoxOverlap.transform.position, OptionalBoxOverlap.size / 2f, OptionalBoxOverlap.transform.rotation, abilityHitLayer);
}
else
{
hits = Physics.OverlapSphere(this.transform.position, radius, abilityHitLayer);
}
targets.Clear();
foreach (Collider collider in hits)
{

View File

@ -18,11 +18,14 @@ public class PlayerMovement : MonoBehaviour
PhotonView photonView;
ProjectileSpawnLocationController aimController;
private void Awake()
{
agent = GetComponent<NavMeshAgent>();
photonView = GetComponent<PhotonView>();
aimController = GetComponentInChildren<ProjectileSpawnLocationController>();
}
// Start is called before the first frame update
@ -44,6 +47,22 @@ public class PlayerMovement : MonoBehaviour
agent.SetDestination(target.position);
FaceTarget();
}
if (CastBarHandler.Instance.currentAbility is ChanneledAbility && CastBarHandler.Instance.castBar.activeSelf)
{
if (((ChanneledAbility)CastBarHandler.Instance.currentAbility).allowAiming)
{
InstantFaceCast(aimController.GetLookat());
}
else
{
return;
}
}
else
{
return;
}
}
public void ToggleAgentMoving(bool busy)

View File

@ -45,7 +45,22 @@ public class ProjectileSpawnLocationController : MonoBehaviour
if (isCasting)
{
lookAt.forward = castLookatSnapshot;
return;
if(CastBarHandler.Instance.currentAbility is ChanneledAbility)
{
if(((ChanneledAbility)CastBarHandler.Instance.currentAbility).allowAiming)
{
}
else
{
return;
}
}
else
{
return;
}
}