$43 FieldBoss01 테스트 작업

+ FieldBoss01 BT 구현
+ FieldBoss01가 사용하는 스킬(LineRush, LavaEruption, BigLavaEruption, VolcanicEruption) 추가
+ 보스 전용 HpSlider 추가
This commit is contained in:
NTG 2023-11-28 22:45:40 +09:00
parent 44a8603258
commit c61ccb46a5
31 changed files with 1211 additions and 97 deletions

View File

@ -122,6 +122,185 @@ NavMeshSettings:
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!1001 &6958519
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 1063731841}
m_Modifications:
- target: {fileID: 6935276923615949947, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_SizeDelta.y
value: -1
objectReference: {fileID: 0}
- target: {fileID: 6935276923615949947, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchoredPosition.y
value: -0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161161, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Value
value: 38.3
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Pivot.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMax.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMin.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_SizeDelta.x
value: 550
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_SizeDelta.y
value: 25
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalScale.x
value: 1.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalScale.y
value: 2.4999998
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalScale.z
value: 4.9999995
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 70
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_ConstrainProportionsScale
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161207, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Name
value: FieldBossHpSlider
objectReference: {fileID: 0}
- target: {fileID: 6935276925499279574, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMax.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925499279574, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: 6935276924355341542, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
insertIndex: 1
addedObject: {fileID: 606152253}
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 27422d4ba1ec18843b41367444c27888, type: 3}
--- !u!224 &6958520 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
m_PrefabInstance: {fileID: 6958519}
m_PrefabAsset: {fileID: 0}
--- !u!224 &6958521 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 6935276924355341542, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
m_PrefabInstance: {fileID: 6958519}
m_PrefabAsset: {fileID: 0}
--- !u!1 &26417291
GameObject:
m_ObjectHideFlags: 0
@ -2213,6 +2392,215 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 09ed14b0db9527c488698baff3a23352, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &606152252
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 6958521}
m_Modifications:
- target: {fileID: 3117305648944083602, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276923615949944, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276923615949947, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_SizeDelta.y
value: -1
objectReference: {fileID: 0}
- target: {fileID: 6935276923615949947, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchoredPosition.y
value: -0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276924355341560, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Enabled
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Pivot.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMax.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMin.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMin.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_SizeDelta.x
value: 550
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_SizeDelta.y
value: 25
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalScale.x
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalScale.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalScale.z
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 7.1249886
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_ConstrainProportionsScale
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925009161207, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Name
value: DamageEffectSlider
objectReference: {fileID: 0}
- target: {fileID: 6935276925344686068, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMax.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925344686068, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMax.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6935276925344686068, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMin.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6935276925499279529, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Color.b
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6935276925499279529, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Color.g
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6935276925499279529, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_Color.r
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6935276925499279574, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMax.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6935276925499279574, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 27422d4ba1ec18843b41367444c27888, type: 3}
--- !u!224 &606152253 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 6935276925009161206, guid: 27422d4ba1ec18843b41367444c27888,
type: 3}
m_PrefabInstance: {fileID: 606152252}
m_PrefabAsset: {fileID: 0}
--- !u!1 &744195804
GameObject:
m_ObjectHideFlags: 0
@ -2566,7 +2954,7 @@ MonoBehaviour:
m_Center: {x: 0, y: 2, z: 0}
m_LayerMask:
serializedVersion: 2
m_Bits: 8
m_Bits: 2097160
m_UseGeometry: 0
m_DefaultArea: 0
m_GenerateLinks: 0
@ -2596,7 +2984,7 @@ GameObject:
- component: {fileID: 949778309}
- component: {fileID: 949778308}
- component: {fileID: 949778307}
m_Layer: 3
m_Layer: 21
m_Name: Obstacle (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -2949,7 +3337,6 @@ GameObject:
- component: {fileID: 1052315036}
- component: {fileID: 1052315035}
- component: {fileID: 1052315034}
- component: {fileID: 1052315037}
m_Layer: 3
m_Name: Ground
m_TagString: Untagged
@ -3044,18 +3431,6 @@ MeshFilter:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1052315032}
m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
--- !u!210 &1052315037
SortingGroup:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1052315032}
m_Enabled: 1
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_SortAtRoot: 0
--- !u!1 &1058417085
GameObject:
m_ObjectHideFlags: 0
@ -3183,6 +3558,7 @@ RectTransform:
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 393497261}
- {fileID: 6958520}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
@ -4078,7 +4454,7 @@ GameObject:
- component: {fileID: 1363690291}
- component: {fileID: 1363690287}
- component: {fileID: 1363690290}
m_Layer: 3
m_Layer: 21
m_Name: Obstacle
m_TagString: Untagged
m_Icon: {fileID: 0}
@ -5469,7 +5845,7 @@ PrefabInstance:
- target: {fileID: 9062185183980613901, guid: 211c62e69325b584bb719f236f0e2d5c,
type: 3}
propertyPath: m_LocalPosition.x
value: 1.49
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9062185183980613901, guid: 211c62e69325b584bb719f236f0e2d5c,
type: 3}

View File

@ -0,0 +1,33 @@
using System;
using BehaviorDesigner.Runtime;
using BehaviorDesigner.Runtime.Tasks;
using UnityEngine;
using Action = BehaviorDesigner.Runtime.Tasks.Action;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
{
[TaskCategory("Custom/FieldBossAction")]
[Serializable]
public class ExecuteSkill : Action
{
[SerializeField] private SharedInt skillIndex;
private FieldBoss fieldBoss;
public override void OnAwake()
{
fieldBoss = GetComponent<FieldBoss>();
}
public override void OnStart()
{
fieldBoss.ExecuteActiveSkill(fieldBoss.GetActiveSkillList()[skillIndex.Value]);
}
public override TaskStatus OnUpdate()
{
return fieldBoss.GetSkillCoroutine() ? TaskStatus.Running : TaskStatus.Success;
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 8c9b64cd5f655e1419328819eff1267f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,65 @@
using System;
using BehaviorDesigner.Runtime;
using BehaviorDesigner.Runtime.Tasks;
using UnityEngine;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
{
public enum Inequality
{
NONE = 0,
LESS_THEN,
LESS_THEN_OR_EQUAL_TO,
GREATER_THEN,
GREATER_THEN_OR_EQUAL_TO
}
[TaskCategory("Common")]
[Serializable]
public class CompareSharedFloat2 : Conditional
{
[RequiredField]
public SharedFloat variable;
[Header("비교값 float 설정")]
public float compareTo;
[Header("부등호 설정 - Tooltip 참고")]
[BehaviorDesigner.Runtime.Tasks.Tooltip("LessThen : variable < compareTo\n" +
"LessThenOrEqualTo : variable <= compareTo\n" +
"GreaterThen : variable > compareTo\n" +
"GreaterThenOrEqualTo : variable < compareTo\n")]
public Inequality inequality;
/// <summary>
/// 비교 값이 true면 Success, false면 Running
/// </summary>
public override TaskStatus OnUpdate()
{
return CompareInequality(variable.Value) ? TaskStatus.Success : TaskStatus.Failure;
}
public override void OnReset()
{
compareTo = 0;
}
/// <summary>
/// 부등호 선택에 따른 bool값 리턴
/// </summary>
/// <returns></returns>
private bool CompareInequality(float value)
{
return inequality switch
{
Inequality.NONE => throw new Exception("부등호 미설정 오류"),
Inequality.LESS_THEN => value < compareTo,
Inequality.LESS_THEN_OR_EQUAL_TO => value <= compareTo,
Inequality.GREATER_THEN => value > compareTo,
Inequality.GREATER_THEN_OR_EQUAL_TO => value >= compareTo,
_ => throw new ArgumentOutOfRangeException()
};
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 03f2c712e2cc21949aedb5bc749081f9
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,14 @@
using BehaviorDesigner.Runtime.Tasks;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
{
[TaskCategory("Common")]
public class ReturnSuccessAction : Action
{
public override TaskStatus OnUpdate()
{
return TaskStatus.Success;
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 424f221338d80c54fb78300f4e166c31
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,26 @@
using BehaviorDesigner.Runtime;
using BehaviorDesigner.Runtime.Tasks;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
{
[TaskCategory("Common")]
public class SetSharedIntPlus : Action
{
[RequiredField]
public SharedInt targetVariable;
public override TaskStatus OnUpdate()
{
targetVariable.Value++;
return TaskStatus.Success;
}
public override void OnReset()
{
targetVariable = 0;
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 479d4b87b0bc757488fc17e11253afea
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +1,10 @@
using System;
using System.Collections;
using System.Collections.Generic;
using BehaviorDesigner.Runtime;
using Sirenix.OdinInspector;
using UnityEngine;
using UnityEngine.UI;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
@ -27,12 +30,21 @@ namespace BlueWaterProject
[SerializeField] protected List<ActiveSkill> activeSkillList;
[SerializeField] private Slider hpSlider;
[SerializeField] private Slider damageEffectSlider;
[SerializeField] private float damageEffectSpeed = 0.1f;
// 컴포넌트
protected Rigidbody rb;
public Collider MyCollider { get; set; }
protected BehaviorTree bt;
protected Transform unitRoot;
protected SkillController skillController;
// 일반 변수
protected bool skillCoroutine;
protected bool isCollisionAttack;
protected float collisionDamage;
#endregion
@ -52,13 +64,27 @@ namespace BlueWaterProject
}
skillController = FindAnyObjectByType<SkillController>();
var overlayCanvas = GameObject.Find("OverlayCanvas").transform;
hpSlider = overlayCanvas.Find("FieldBossHpSlider").GetComponent<Slider>();
damageEffectSlider = hpSlider.transform.Find("Fill Area/Background/DamageEffectSlider").GetComponent<Slider>();
gameObject.SetActive(false);
hpSlider.gameObject.SetActive(false);
}
protected virtual void Start()
{
TargetLayer = LayerMask.GetMask("Player");
SetCurrentHp(MaxHp);
SetMaxHp();
}
protected void OnCollisionStay(Collision other)
{
if (!isCollisionAttack || !other.gameObject.CompareTag("InIslandPlayer")) return;
var iDamageable = other.gameObject.GetComponent<IDamageable>();
iDamageable.TakeDamage(collisionDamage);
isCollisionAttack = false;
}
#endregion
@ -92,10 +118,16 @@ namespace BlueWaterProject
public void BossSpawn(Collider target)
{
SetMaxHp();
gameObject.SetActive(true);
hpSlider.gameObject.SetActive(true);
Target = target;
Invoke(nameof(EnableBehaviorTree), 2f);
}
private void EnableBehaviorTree() => bt.EnableBehavior();
public virtual void ExecuteActiveSkill(ActiveSkill activeSkill)
{
@ -103,11 +135,50 @@ namespace BlueWaterProject
//StartCoroutine(CoolDown(myActiveSkill.ActiveSkillData.Cooldown, () => usedActiveSkill = false));
}
private void SetCurrentHp(float value)
{
CurrentHp = value;
protected IEnumerator CoolDown(float waitTime, Action onCooldownComplete)
{
var time = 0f;
while (time <= waitTime)
{
time += Time.deltaTime;
yield return null;
}
onCooldownComplete?.Invoke();
}
private void SetMaxHp()
{
CurrentHp = MaxHp;
hpSlider.maxValue = MaxHp;
hpSlider.value = MaxHp;
damageEffectSlider.maxValue = MaxHp;
damageEffectSlider.value = MaxHp;
}
private void SetCurrentHp(float value)
{
var previousHp = CurrentHp;
CurrentHp = value;
hpSlider.value = value;
StartCoroutine(DamageEffect(previousHp, CurrentHp));
}
private IEnumerator DamageEffect(float previousHp, float currentHp)
{
while (damageEffectSlider.value > currentHp)
{
damageEffectSlider.value -= damageEffectSpeed; // 속도 조절 가능
yield return null;
}
}
public bool GetSkillCoroutine() => skillCoroutine;
public List<ActiveSkill> GetActiveSkillList() => activeSkillList;
#endregion
}
}

View File

@ -29,6 +29,10 @@ namespace BlueWaterProject
activeSkillList.Add(skillController.GetSkillByName("LavaEruption"));
activeSkillList.Add(skillController.GetSkillByName("LineRush"));
activeSkillList.Add(skillController.GetSkillByName("BigLavaEruption"));
activeSkillList.Add(skillController.GetSkillByName("VolcanicEruption"));
collisionDamage = activeSkillList[1].ActiveSkillData.Damage;
}
#endregion
@ -49,21 +53,55 @@ namespace BlueWaterProject
public override void ExecuteActiveSkill(ActiveSkill activeSkill)
{
skillCoroutine = true;
var endSkillTime = 0f;
if (activeSkill.ActiveSkillData.Name.Equals("LavaEruption"))
{
for (var i = 0; i < 7; i++)
{
var lava = Instantiate(activeSkill);
lava.Execute(TargetLayer, Target.bounds.center);
endSkillTime = lava.GetEndSkillTime();
}
}
else if (activeSkill.ActiveSkillData.Name.Equals("LineRush"))
{
var rush = Instantiate(activeSkill);
rush.SetUser(transform);
rush.Execute(TargetLayer, Target.bounds.center);
rush.Execute(TargetLayer, Target.bounds.center, GhostPlay, GhostStop);
endSkillTime = rush.GetEndSkillTime();
}
//StartCoroutine(CoolDown(myActiveSkill.ActiveSkillData.Cooldown, () => usedActiveSkill = false));
else if (activeSkill.ActiveSkillData.Name.Equals("BigLavaEruption"))
{
var bigLava = Instantiate(activeSkill);
bigLava.Execute(TargetLayer, Target.bounds.center);
endSkillTime = bigLava.GetEndSkillTime();
}
else if (activeSkill.ActiveSkillData.Name.Equals("VolcanicEruption"))
{
for (var i = 0; i < 20; i++)
{
var lava = Instantiate(activeSkill);
lava.SetUser(transform);
lava.Execute(TargetLayer, Target.bounds.center);
endSkillTime = lava.GetEndSkillTime();
}
}
StartCoroutine(CoolDown(endSkillTime, () => skillCoroutine = false));
}
private void GhostPlay()
{
isCollisionAttack = true;
ghost.Clear();
ghost.Play();
}
private void GhostStop()
{
isCollisionAttack = false;
ghost.Stop();
}
#endregion

View File

@ -29,6 +29,8 @@ namespace BlueWaterProject
protected Transform user;
protected Collider[] hitColliders;
protected LayerMask groundLayer;
protected float endSkillTime;
// Hash
protected static readonly int FillHash = Shader.PropertyToID("_Fill");
@ -37,7 +39,7 @@ namespace BlueWaterProject
#region Unity built-in methods
private void Awake()
protected virtual void Awake()
{
InitComponent();
HideIndicator();
@ -74,6 +76,7 @@ namespace BlueWaterProject
indicator.material = new Material(indicator.material);
indicator.material.SetFloat(FillHash, 0f);
hitColliders = new Collider[ActiveSkillData.MaxAttackTargets];
groundLayer = LayerMask.GetMask("Ground");
}
protected void HideIndicator()
@ -102,7 +105,7 @@ namespace BlueWaterProject
HideIndicator();
}
public abstract void Execute(LayerMask targetLayer, Vector3 targetPos);
public abstract void Execute(LayerMask targetLayer, Vector3 targetPos, Action action1 = null, Action action2 = null, Action action3 = null);
protected void CastingMove()
{
@ -132,6 +135,7 @@ namespace BlueWaterProject
}
public void SetUser(Transform value) => user = value;
public float GetEndSkillTime() => endSkillTime;
#endregion
}

View File

@ -7,14 +7,14 @@ namespace BlueWaterProject
{
public class IceAge : ActiveSkill
{
public override void Execute(LayerMask targetLayer, Vector3 targetPos)
public override void Execute(LayerMask targetLayer, Vector3 targetPos, Action action1 = null, Action action2 = null, Action action3 = null)
{
StartCoroutine(SkillCoroutine(targetLayer, targetPos));
}
private IEnumerator SkillCoroutine(LayerMask targetLayer, Vector3 targetPos)
{
indicator.transform.position = targetPos;
transform.position = targetPos;
indicator.enabled = true;
if (ActiveSkillData.CastingTime > 0)
@ -40,13 +40,13 @@ namespace BlueWaterProject
HideIndicator();
if (ActiveSkillData.ExplodeEffect != null)
{
var skillEffect = Instantiate(ActiveSkillData.ExplodeEffect, indicator.transform.position, ActiveSkillData.ExplodeEffect.transform.rotation);
var skillEffect = Instantiate(ActiveSkillData.ExplodeEffect, transform.position, ActiveSkillData.ExplodeEffect.transform.rotation);
skillEffect.Clear();
skillEffect.Play();
}
Array.Clear(hitColliders, 0,ActiveSkillData.MaxAttackTargets);
var maxSize = Physics.OverlapSphereNonAlloc(indicator.transform.position, ActiveSkillData.Range, hitColliders, targetLayer);
var maxSize = Physics.OverlapSphereNonAlloc(transform.position, ActiveSkillData.Range, hitColliders, targetLayer);
for (var i = 0; i < maxSize; i++)
{

View File

@ -10,17 +10,41 @@ namespace BlueWaterProject
{
[SerializeField] private float randomRadius = 3f;
[SerializeField] private float projectileDelay = 2f;
private void OnDrawGizmos()
{
Gizmos.DrawWireSphere(transform.position, ActiveSkillData.Range);
}
public override void Execute(LayerMask targetLayer, Vector3 targetPos)
public override void Execute(LayerMask targetLayer, Vector3 targetPos, Action action1 = null, Action action2 = null, Action action3 = null)
{
StartCoroutine(SkillCoroutine(targetLayer, targetPos));
}
protected override void Awake()
{
base.Awake();
endSkillTime = projectileDelay + ActiveSkillData.CastingTime;
}
private IEnumerator SkillCoroutine(LayerMask targetLayer, Vector3 targetPos)
{
var randomPos = Random.insideUnitSphere * randomRadius;
randomPos.y = targetPos.y;
indicator.transform.position = targetPos + randomPos;
var destination = Vector3.zero;
for (var i = 0; i < 1000; i++)
{
var randomPos = Random.insideUnitSphere * randomRadius;
randomPos.y = targetPos.y;
destination = targetPos + randomPos;
if (Physics.Raycast(destination, Vector3.down, out var hit, 5f, groundLayer))
{
Debug.DrawLine(destination, destination + Vector3.down * 5f, Color.red, 5f);
//print(i + "번쨰 " + hit.collider.name);
break;
}
}
transform.position = destination;
indicator.enabled = true;
IsCasting = true;
@ -45,13 +69,13 @@ namespace BlueWaterProject
HideIndicator();
if (ActiveSkillData.ExplodeEffect != null)
{
var skillEffect = Instantiate(ActiveSkillData.ExplodeEffect, indicator.transform.position, ActiveSkillData.ExplodeEffect.transform.rotation);
var skillEffect = Instantiate(ActiveSkillData.ExplodeEffect, transform.position, ActiveSkillData.ExplodeEffect.transform.rotation);
skillEffect.Clear();
skillEffect.Play();
}
Array.Clear(hitColliders, 0,ActiveSkillData.MaxAttackTargets);
var maxSize = Physics.OverlapSphereNonAlloc(indicator.transform.position, ActiveSkillData.Range, hitColliders, targetLayer);
var maxSize = Physics.OverlapSphereNonAlloc(transform.position, ActiveSkillData.Range, hitColliders, targetLayer);
for (var i = 0; i < maxSize; i++)
{

View File

@ -10,30 +10,46 @@ namespace BlueWaterProject
{
[SerializeField] private float rushOffset = 10f;
[SerializeField] private float rushSpeed = 10f;
[SerializeField] private ParticleSystem ghost;
[SerializeField] private float doubleRushDelay = 0.5f;
public override void Execute(LayerMask targetLayer, Vector3 targetPos)
public override void Execute(LayerMask targetLayer, Vector3 targetPos, Action action1 = null, Action action2 = null, Action action3 = null)
{
StartCoroutine(SkillCoroutine(targetLayer, targetPos));
StartCoroutine(SkillCoroutine(targetLayer, targetPos, action1, action2));
}
// protected override void Awake()
// {
// base.Awake();
//
// endSkillTime = ActiveSkillData.CastingTime;
// }
private IEnumerator SkillCoroutine(LayerMask targetLayer, Vector3 targetPos)
private IEnumerator SkillCoroutine(LayerMask targetLayer, Vector3 targetPos, Action ghostPlay, Action ghostStop)
{
var userPos = user.position;
targetPos.y = userPos.y;
var targetDir = (targetPos - userPos).normalized;
indicator.transform.position = userPos;
transform.position = userPos;
var angle = Mathf.Atan2(targetDir.x, targetDir.z) * Mathf.Rad2Deg;
indicator.transform.rotation = Quaternion.Euler(90, angle, 0);
transform.rotation = Quaternion.Euler(90, angle, 0);
var targetDistance = Vector3.Distance(targetPos, userPos);
var targetRushPos = targetPos + targetDir * (rushOffset * 0.5f);
var localScale = indicator.transform.localScale;
var localScale = transform.localScale;
localScale.y = targetDistance * 2f + rushOffset;
indicator.transform.localScale = localScale;
transform.localScale = localScale;
var userRb = user.GetComponent<Rigidbody>();
var rushPosDistance = Vector3.Distance(targetRushPos, userPos);
var rushVelocity = targetDir * rushSpeed;
var duration = rushPosDistance / rushVelocity.magnitude;
endSkillTime = ActiveSkillData.CastingTime + duration + doubleRushDelay;
indicator.enabled = true;
IsCasting = true;
Debug.DrawLine(userPos, targetRushPos, Color.red, 5f);
while (IsCasting && indicator.material.GetFloat(FillHash) < 1f)
{
@ -43,37 +59,19 @@ namespace BlueWaterProject
}
HideIndicator();
var userRb = user.GetComponent<Rigidbody>();
print("targetPos : " + targetPos + ", rushPos : " + targetRushPos);
while (Vector3.Distance(user.position, targetPos) > 1f)
ghostPlay.Invoke();
userRb.velocity = rushVelocity;
var time = 0f;
while (time < duration)
{
print(Vector3.Distance(user.position, targetPos));
userRb.velocity = targetDir * rushSpeed;
time += Time.deltaTime;
yield return null;
}
print("탈출");
userRb.velocity = Vector3.zero;
// TODO : 터지는 효과 추가하기
if (ActiveSkillData.ExplodeEffect != null)
{
var skillEffect = Instantiate(ActiveSkillData.ExplodeEffect, indicator.transform.position, ActiveSkillData.ExplodeEffect.transform.rotation);
skillEffect.Clear();
skillEffect.Play();
}
ghostStop.Invoke();
Destroy(gameObject, 1f);
// Array.Clear(hitColliders, 0,ActiveSkillData.MaxAttackTargets);
// var maxSize = Physics.OverlapSphereNonAlloc(indicator.transform.position, ActiveSkillData.Range, hitColliders, targetLayer);
//
// for (var i = 0; i < maxSize; i++)
// {
// var iDamageable = hitColliders[i].GetComponent<IDamageable>();
// iDamageable.TakeDamage(ActiveSkillData.Damage);
// }
}
}
}

View File

@ -0,0 +1,84 @@
using System;
using System.Collections;
using UnityEngine;
using Random = UnityEngine.Random;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
{
public class VolcanicEruption : ActiveSkill
{
[SerializeField] private float randomRadius = 3f;
[SerializeField] private float projectileDelay = 2f;
private void OnDrawGizmos()
{
Gizmos.DrawWireSphere(transform.position, ActiveSkillData.Range);
}
public override void Execute(LayerMask targetLayer, Vector3 targetPos, Action action1 = null, Action action2 = null, Action action3 = null)
{
StartCoroutine(SkillCoroutine(targetLayer, targetPos));
}
protected override void Awake()
{
base.Awake();
endSkillTime = projectileDelay + ActiveSkillData.CastingTime;
}
private IEnumerator SkillCoroutine(LayerMask targetLayer, Vector3 targetPos)
{
var destination = Vector3.zero;
for (var i = 0; i < 1000; i++)
{
var randomPos = Random.insideUnitSphere * randomRadius;
randomPos.y = targetPos.y;
destination = user.position + randomPos;
if (Physics.Raycast(destination, Vector3.down, 5f, groundLayer)) break;
}
transform.position = destination;
indicator.enabled = true;
IsCasting = true;
var time = 0f;
while (time < projectileDelay)
{
time += Time.deltaTime;
yield return null;
}
// 투사체 발사
while (IsCasting && indicator.material.GetFloat(FillHash) < 1f)
{
var fillValue = indicator.material.GetFloat(FillHash) + Time.deltaTime * ActiveSkillData.CastingTime;
indicator.material.SetFloat(FillHash, fillValue);
yield return null;
}
// TODO : 터지는 효과 추가하기
HideIndicator();
if (ActiveSkillData.ExplodeEffect != null)
{
var skillEffect = Instantiate(ActiveSkillData.ExplodeEffect, transform.position, ActiveSkillData.ExplodeEffect.transform.rotation);
skillEffect.Clear();
skillEffect.Play();
}
Array.Clear(hitColliders, 0,ActiveSkillData.MaxAttackTargets);
var maxSize = Physics.OverlapSphereNonAlloc(transform.position, ActiveSkillData.Range, hitColliders, targetLayer);
for (var i = 0; i < maxSize; i++)
{
var iDamageable = hitColliders[i].GetComponent<IDamageable>();
iDamageable.TakeDamage(ActiveSkillData.Damage);
}
Destroy(gameObject, 1f);
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 7a06af3b12d2327429212f066b4d0ee0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -16,3 +16,5 @@ MonoBehaviour:
- {fileID: 3919030326071344108, guid: 2d9f3b761e6d218499cae274f1a9f718, type: 3}
- {fileID: 1362742867961675026, guid: 82f1d8a9a51945341a48f29e8b3c524c, type: 3}
- {fileID: -7451257323989943520, guid: 8401fbca52c83624fad879954e93bbe1, type: 3}
- {fileID: 1362742867961675026, guid: 46d6bd3b77d144e48a6cd1714026bd10, type: 3}
- {fileID: -8657138461080468130, guid: 25a55b178ebb50443bbde671b28a5559, type: 3}

View File

@ -5011,7 +5011,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 8d7b55c7ecdb49a4a89fa5e6f9022861, type: 3}
m_Name:
m_EditorClassIdentifier:
startWhenEnabled: 1
startWhenEnabled: 0
asynchronousLoad: 0
pauseWhenDisabled: 0
restartWhenComplete: 0
@ -5027,18 +5027,21 @@ MonoBehaviour:
parentIndex:
startIndex:
variableStartIndex:
JSONSerialization:
JSONSerialization: '{"Variables":[{"Type":"BehaviorDesigner.Runtime.SharedGameObject","Name":"MyObj","IsShared":true,"GameObjectmValue":0},{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":"CurrentHp","IsShared":true,"PropertyMapping":"BlueWaterProject.FieldBoss01/CurrentHp","PropertyMappingOwner":1,"SinglemValue":0},{"Type":"BehaviorDesigner.Runtime.SharedCollider","Name":"Target","IsShared":true,"PropertyMapping":"BlueWaterProject.FieldBoss01/Target","PropertyMappingOwner":2},{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0},{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"LavaEruptionCount","IsShared":true,"Int32mValue":0}]}'
fieldSerializationData:
typeName: []
fieldNameHash:
startIndex:
dataPosition:
unityObjects: []
unityObjects:
- {fileID: 4857443988311686059}
- {fileID: 4857443988311686059}
- {fileID: 4857443988311686059}
byteData:
byteDataArray:
Version:
Version: 1.7.7
gizmoViewMode: 2
showBehaviorDesignerGizmo: 1
showBehaviorDesignerGizmo: 0
--- !u!114 &7556135373767129943
MonoBehaviour:
m_ObjectHideFlags: 0
@ -5059,3 +5062,6 @@ MonoBehaviour:
serializedVersion: 2
m_Bits: 0
activeSkillList: []
hpSlider: {fileID: 0}
damageEffectSlider: {fileID: 0}
damageEffectSpeed: 0.1

View File

@ -168,6 +168,26 @@ PrefabInstance:
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1525762082425720563, guid: bb4f1e43ee7824c8e8009facee710768,
type: 3}
propertyPath: m_SizeDelta.x
value: -16
objectReference: {fileID: 0}
- target: {fileID: 1525762082425720563, guid: bb4f1e43ee7824c8e8009facee710768,
type: 3}
propertyPath: m_SizeDelta.y
value: -2
objectReference: {fileID: 0}
- target: {fileID: 1525762082425720563, guid: bb4f1e43ee7824c8e8009facee710768,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1525762082425720563, guid: bb4f1e43ee7824c8e8009facee710768,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1525762082444024363, guid: bb4f1e43ee7824c8e8009facee710768,
type: 3}
propertyPath: m_IsActive

View File

@ -168,6 +168,26 @@ PrefabInstance:
propertyPath: m_AnchorMax.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1525762082425720563, guid: bb4f1e43ee7824c8e8009facee710768,
type: 3}
propertyPath: m_SizeDelta.x
value: -16
objectReference: {fileID: 0}
- target: {fileID: 1525762082425720563, guid: bb4f1e43ee7824c8e8009facee710768,
type: 3}
propertyPath: m_SizeDelta.y
value: -2
objectReference: {fileID: 0}
- target: {fileID: 1525762082425720563, guid: bb4f1e43ee7824c8e8009facee710768,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1525762082425720563, guid: bb4f1e43ee7824c8e8009facee710768,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1525762082444024363, guid: bb4f1e43ee7824c8e8009facee710768,
type: 3}
propertyPath: m_IsActive

View File

@ -0,0 +1,121 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &6893670062665840687
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4051035783022543630}
- component: {fileID: 6177466515962511305}
m_Layer: 0
m_Name: Indicator
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4051035783022543630
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6893670062665840687}
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: 5043358165129361910}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &6177466515962511305
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6893670062665840687}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0777d029ed3dffa4692f417d4aba19ca, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 2100000, guid: 4be0607f5d48fc44e85b941b37384b22, type: 2}
m_DrawDistance: 1000
m_FadeScale: 0.9
m_StartAngleFade: 180
m_EndAngleFade: 180
m_UVScale: {x: 1, y: 1}
m_UVBias: {x: 0, y: 0}
m_DecalLayerMask: 1
m_ScaleMode: 1
m_Offset: {x: 0, y: 0, z: 0}
m_Size: {x: 1, y: 1, z: 20}
m_FadeFactor: 1
--- !u!1 &8036009942072287766
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5043358165129361910}
- component: {fileID: 1362742867961675026}
m_Layer: 0
m_Name: BigLavaEruption
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5043358165129361910
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8036009942072287766}
serializedVersion: 2
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 10, y: 10, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4051035783022543630}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!114 &1362742867961675026
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8036009942072287766}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 27a9be8336571c64f8e824c9ad8b2ae3, type: 3}
m_Name:
m_EditorClassIdentifier:
<ActiveSkillData>k__BackingField:
<Name>k__BackingField: BigLavaEruption
<DisplayName>k__BackingField:
<Description>k__BackingField:
<Cooldown>k__BackingField: 0
<CastingTime>k__BackingField: 1
<CastingType>k__BackingField: 0
<Duration>k__BackingField: 4
<Damage>k__BackingField: 30
<Range>k__BackingField: 5
<MaxAttackTargets>k__BackingField: 10
<ExplodeEffect>k__BackingField: {fileID: 19806542, guid: 0763c01217b286640aa3ac83d44fafaa,
type: 3}
indicator: {fileID: 6177466515962511305}
<IsCasting>k__BackingField: 0
followMouse: 0
randomRadius: 0
projectileDelay: 1

View File

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

View File

@ -25,13 +25,13 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6893670062665840687}
serializedVersion: 2
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 8, y: 8, z: 1}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 5043358165129361910}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &6177466515962511305
MonoBehaviour:
m_ObjectHideFlags: 0
@ -81,14 +81,14 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8036009942072287766}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalScale: {x: 8, y: 8, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4051035783022543630}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!114 &3919030326071344108
MonoBehaviour:
m_ObjectHideFlags: 0

View File

@ -25,13 +25,13 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6893670062665840687}
serializedVersion: 2
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 3, y: 3, z: 1}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 5043358165129361910}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &6177466515962511305
MonoBehaviour:
m_ObjectHideFlags: 0
@ -81,14 +81,14 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8036009942072287766}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalScale: {x: 3, y: 3, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4051035783022543630}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!114 &1362742867961675026
MonoBehaviour:
m_ObjectHideFlags: 0
@ -105,12 +105,12 @@ MonoBehaviour:
<Name>k__BackingField: LavaEruption
<DisplayName>k__BackingField:
<Description>k__BackingField:
<Cooldown>k__BackingField: 5
<Cooldown>k__BackingField: 0
<CastingTime>k__BackingField: 1
<CastingType>k__BackingField: 0
<Duration>k__BackingField: 4
<Damage>k__BackingField: 15
<Range>k__BackingField: 2.5
<Range>k__BackingField: 1.5
<MaxAttackTargets>k__BackingField: 10
<ExplodeEffect>k__BackingField: {fileID: 19806542, guid: 0763c01217b286640aa3ac83d44fafaa,
type: 3}

View File

@ -25,13 +25,13 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6893670062665840687}
serializedVersion: 2
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 10, y: 15, z: 1}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 5043358165129361910}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &6177466515962511305
MonoBehaviour:
m_ObjectHideFlags: 0
@ -81,14 +81,14 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8036009942072287766}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalScale: {x: 10, y: 15, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4051035783022543630}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!114 &-7451257323989943520
MonoBehaviour:
m_ObjectHideFlags: 0
@ -105,7 +105,7 @@ MonoBehaviour:
<Name>k__BackingField: LineRush
<DisplayName>k__BackingField:
<Description>k__BackingField:
<Cooldown>k__BackingField: 5
<Cooldown>k__BackingField: 0
<CastingTime>k__BackingField: 1
<CastingType>k__BackingField: 0
<Duration>k__BackingField: 0

View File

@ -0,0 +1,121 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &6893670062665840687
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4051035783022543630}
- component: {fileID: 6177466515962511305}
m_Layer: 0
m_Name: Indicator
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4051035783022543630
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6893670062665840687}
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: 5043358165129361910}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &6177466515962511305
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6893670062665840687}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0777d029ed3dffa4692f417d4aba19ca, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 2100000, guid: 4be0607f5d48fc44e85b941b37384b22, type: 2}
m_DrawDistance: 1000
m_FadeScale: 0.9
m_StartAngleFade: 180
m_EndAngleFade: 180
m_UVScale: {x: 1, y: 1}
m_UVBias: {x: 0, y: 0}
m_DecalLayerMask: 1
m_ScaleMode: 1
m_Offset: {x: 0, y: 0, z: 0}
m_Size: {x: 1, y: 1, z: 20}
m_FadeFactor: 1
--- !u!1 &8036009942072287766
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5043358165129361910}
- component: {fileID: -8657138461080468130}
m_Layer: 0
m_Name: VolcanicEruption
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5043358165129361910
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8036009942072287766}
serializedVersion: 2
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 3, y: 3, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4051035783022543630}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!114 &-8657138461080468130
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8036009942072287766}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7a06af3b12d2327429212f066b4d0ee0, type: 3}
m_Name:
m_EditorClassIdentifier:
<ActiveSkillData>k__BackingField:
<Name>k__BackingField: VolcanicEruption
<DisplayName>k__BackingField:
<Description>k__BackingField:
<Cooldown>k__BackingField: 0
<CastingTime>k__BackingField: 1
<CastingType>k__BackingField: 0
<Duration>k__BackingField: 4
<Damage>k__BackingField: 15
<Range>k__BackingField: 1.5
<MaxAttackTargets>k__BackingField: 10
<ExplodeEffect>k__BackingField: {fileID: 19806542, guid: 0763c01217b286640aa3ac83d44fafaa,
type: 3}
indicator: {fileID: 0}
<IsCasting>k__BackingField: 0
followMouse: 0
randomRadius: 12
projectileDelay: 1

View File

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

View File

@ -14486,7 +14486,7 @@ AudioSource:
OutputAudioMixerGroup: {fileID: 0}
m_audioClip: {fileID: 8300000, guid: b7a210df23bd255428bdf4def67109f2, type: 3}
m_PlayOnAwake: 1
m_Volume: 1
m_Volume: 0.5
m_Pitch: 1.2693294
Loop: 0
Mute: 0

View File

@ -21,9 +21,31 @@ MonoBehaviour:
startIndex:
variableStartIndex:
JSONSerialization: '{"EntryTask":{"Type":"BehaviorDesigner.Runtime.Tasks.EntryTask","NodeData":{"Offset":"(697.6564,155.842773)"},"ID":0,"Name":"Entry","Instant":true},"RootTask":{"Type":"BehaviorDesigner.Runtime.Tasks.Repeater","NodeData":{"Offset":"(0,140)"},"ID":1,"Name":"Repeater","Instant":true,"SharedIntcount":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":0},"SharedBoolrepeatForever":{"Type":"BehaviorDesigner.Runtime.SharedBool","Name":null,"BooleanmValue":true},"SharedBoolendOnFailure":{"Type":"BehaviorDesigner.Runtime.SharedBool","Name":null,"BooleanmValue":false},"Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Selector","NodeData":{"Offset":"(-3.44348145,154.9137)"},"ID":2,"Name":"Die
Selector","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(-447.499176,148.989136)"},"ID":3,"Name":"Die
Selector","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(-639.806763,148.989136)"},"ID":3,"Name":"Die
Sequence","Instant":true,"AbortTypeabortType":"LowerPriority","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.CompareSharedFloat","NodeData":{"Offset":"(-2.9930706,151.369934)","Comment":"CurrentHp
== 0"},"ID":4,"Name":"Compare Shared Float","Instant":true,"SharedFloatvariable":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":"CurrentHp","IsShared":true,"SinglemValue":0},"SharedFloatcompareTo":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":0}}]}]}]},"Variables":[{"Type":"BehaviorDesigner.Runtime.SharedGameObject","Name":"MyObj","IsShared":true},{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":"CurrentHp","IsShared":true,"SinglemValue":0},{"Type":"BehaviorDesigner.Runtime.SharedCollider","Name":"Target","IsShared":true}]}'
== 0"},"ID":4,"Name":"Compare Shared Float","Instant":true,"SharedFloatvariable":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":"CurrentHp","IsShared":true,"SinglemValue":0},"SharedFloatcompareTo":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":0}}]},{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(3.25585938,148.836914)"},"ID":5,"Name":"Lava
Eruption Sequence","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.CompareSharedInt","NodeData":{"Offset":"(-423.22287,151.3009)"},"ID":6,"Name":"Compare
Shared Int","Instant":true,"SharedIntvariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0},"SharedIntcompareTo":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":0}},{"Type":"BehaviorDesigner.Runtime.Tasks.Selector","NodeData":{"Offset":"(-280,150)"},"ID":7,"Name":"Selector","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(-69.8761749,145.42395)"},"ID":8,"Name":"Sequence","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BlueWaterProject.CompareSharedFloat2","NodeData":{"Offset":"(-100,150)"},"ID":9,"Name":"Compare
Shared Float 2","Instant":true,"SharedFloatvariable":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":"CurrentHp","IsShared":true,"SinglemValue":0},"SinglecompareTo":150,"Inequalityinequality":"LESS_THEN_OR_EQUAL_TO"},{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.SetSharedInt","NodeData":{"Offset":"(80,150)"},"ID":10,"Name":"Set
Shared Int","Instant":true,"SharedInttargetValue":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":3},"SharedInttargetVariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0}}]},{"Type":"BlueWaterProject.ReturnSuccessAction","NodeData":{"Offset":"(80,150)"},"ID":11,"Name":"Return
Success Action","Instant":true}]},{"Type":"BlueWaterProject.ExecuteSkill","NodeData":{"Offset":"(-150.539734,145.747925)"},"ID":12,"Name":"Execute
Skill","Instant":true,"SharedIntskillIndex":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0}},{"Type":"BlueWaterProject.SetSharedIntPlus","NodeData":{"Offset":"(1.64624023,145.2179)"},"ID":13,"Name":"Set
Shared Int Plus","Instant":true,"SharedInttargetVariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"LavaEruptionCount","IsShared":true,"Int32mValue":0}},{"Type":"BehaviorDesigner.Runtime.Tasks.Wait","NodeData":{"Offset":"(137.799774,151.0874)"},"ID":14,"Name":"Wait","Instant":true,"SharedFloatwaitTime":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":3},"SharedBoolrandomWait":{"Type":"BehaviorDesigner.Runtime.SharedBool","Name":null,"BooleanmValue":false},"SharedFloatrandomWaitMin":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1},"SharedFloatrandomWaitMax":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1}},{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.SetSharedInt","NodeData":{"Offset":"(283.6372,150)"},"ID":15,"Name":"Set
Shared Int","Instant":true,"SharedInttargetValue":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":1},"SharedInttargetVariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0}}]},{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(842.6148,146.486511)"},"ID":16,"Name":"Line
Rush Sequence","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.CompareSharedInt","NodeData":{"Offset":"(-340.624939,150)"},"ID":17,"Name":"Compare
Shared Int","Instant":true,"SharedIntvariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0},"SharedIntcompareTo":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":1}},{"Type":"BlueWaterProject.ExecuteSkill","NodeData":{"Offset":"(-174.999954,150)"},"ID":18,"Name":"Execute
Skill","Instant":true,"SharedIntskillIndex":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0}},{"Type":"BehaviorDesigner.Runtime.Tasks.Selector","NodeData":{"Offset":"(3.518921,153.800171)"},"ID":19,"Name":"Selector","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(-70,150)"},"ID":20,"Name":"Sequence","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BlueWaterProject.CompareSharedFloat2","NodeData":{"Offset":"(-100,150)"},"ID":21,"Name":"Compare
Shared Float 2","Instant":true,"SharedFloatvariable":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":"CurrentHp","IsShared":true,"SinglemValue":0},"SinglecompareTo":150,"Inequalityinequality":"LESS_THEN_OR_EQUAL_TO"},{"Type":"BlueWaterProject.ExecuteSkill","NodeData":{"Offset":"(66.25,145.511108)"},"ID":22,"Name":"Execute
Skill","Instant":true,"SharedIntskillIndex":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0}}]},{"Type":"BlueWaterProject.ReturnSuccessAction","NodeData":{"Offset":"(80,150)"},"ID":23,"Name":"Return
Success Action","Instant":true}]},{"Type":"BehaviorDesigner.Runtime.Tasks.Wait","NodeData":{"Offset":"(283.54834,150)"},"ID":24,"Name":"Wait","Instant":true,"SharedFloatwaitTime":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":2},"SharedBoolrandomWait":{"Type":"BehaviorDesigner.Runtime.SharedBool","Name":null,"BooleanmValue":false},"SharedFloatrandomWaitMin":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1},"SharedFloatrandomWaitMax":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1}},{"Type":"BehaviorDesigner.Runtime.Tasks.Selector","NodeData":{"Offset":"(428.367126,150)"},"ID":25,"Name":"Selector","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(-102.72876,154.606079)"},"ID":26,"Name":"Sequence","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.CompareSharedInt","NodeData":{"Offset":"(-177.659424,147.234253)"},"ID":27,"Name":"Compare
Shared Int","Instant":true,"SharedIntvariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"LavaEruptionCount","IsShared":true,"Int32mValue":0},"SharedIntcompareTo":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":2}},{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.SetSharedInt","NodeData":{"Offset":"(1.14436913,150.63829)"},"ID":28,"Name":"Set
Shared Int","Instant":true,"SharedInttargetValue":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":2},"SharedInttargetVariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0}},{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.SetSharedInt","NodeData":{"Offset":"(160,150)"},"ID":29,"Name":"Set
Shared Int","Instant":true,"SharedInttargetValue":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":0},"SharedInttargetVariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"LavaEruptionCount","IsShared":true,"Int32mValue":0}}]},{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.SetSharedInt","NodeData":{"Offset":"(105.106445,150.425415)"},"ID":30,"Name":"Set
Shared Int","Instant":true,"SharedInttargetValue":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":0},"SharedInttargetVariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0}}]}]},{"Type":"BehaviorDesigner.Runtime.Tasks.Sequence","NodeData":{"Offset":"(1679.07336,146.111145)"},"ID":31,"Name":"Line
Rush Sequence","Instant":true,"AbortTypeabortType":"None","Children":[{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.CompareSharedInt","NodeData":{"Offset":"(-200,150)"},"ID":32,"Name":"Compare
Shared Int","Instant":true,"SharedIntvariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0},"SharedIntcompareTo":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":2}},{"Type":"BlueWaterProject.ExecuteSkill","NodeData":{"Offset":"(-50,150)"},"ID":33,"Name":"Execute
Skill","Instant":true,"SharedIntskillIndex":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0}},{"Type":"BehaviorDesigner.Runtime.Tasks.Wait","NodeData":{"Offset":"(90,150)"},"ID":34,"Name":"Wait","Instant":true,"SharedFloatwaitTime":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":3},"SharedBoolrandomWait":{"Type":"BehaviorDesigner.Runtime.SharedBool","Name":null,"BooleanmValue":false},"SharedFloatrandomWaitMin":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1},"SharedFloatrandomWaitMax":{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":null,"SinglemValue":1}},{"Type":"BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables.SetSharedInt","NodeData":{"Offset":"(250,150)"},"ID":35,"Name":"Set
Shared Int","Instant":true,"SharedInttargetValue":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":null,"Int32mValue":1},"SharedInttargetVariable":{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0}}]}]}]},"Variables":[{"Type":"BehaviorDesigner.Runtime.SharedGameObject","Name":"MyObj","IsShared":true},{"Type":"BehaviorDesigner.Runtime.SharedFloat","Name":"CurrentHp","IsShared":true,"SinglemValue":0},{"Type":"BehaviorDesigner.Runtime.SharedCollider","Name":"Target","IsShared":true},{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"SkillIndex","IsShared":true,"Int32mValue":0},{"Type":"BehaviorDesigner.Runtime.SharedInt","Name":"LavaEruptionCount","IsShared":true,"Int32mValue":0}]}'
fieldSerializationData:
typeName: []
fieldNameHash: