76 changed files with 5479 additions and 303 deletions
@ -0,0 +1,32 @@ |
|||
%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: 20f70984b262f8d4382bf5262dddb83e, type: 3} |
|||
m_Name: BlackSheep |
|||
m_EditorClassIdentifier: |
|||
enemyName: skullGuardian |
|||
enemyIcon: {fileID: 21300000, guid: bd8f3094e7ef01148bddd857e065ebc3, type: 3} |
|||
stepRange: 3 |
|||
stepRangeMultiplier: 1 |
|||
speed: 2 |
|||
maxMoveCoolDown: 0 |
|||
currentMoveCoolDown: 0 |
|||
shieldValue: 0 |
|||
upShieldValue: 5 |
|||
maxHP: 15 |
|||
currentHP: 15 |
|||
sufferDamageMultiply: 1 |
|||
colourType: 0 |
|||
maxSkillCoolDown: 3 |
|||
currentSkillCoolDown: 3 |
|||
damageMultiplier: 1 |
|||
damage: 5 |
|||
attackRange: 1 |
|||
@ -0,0 +1,8 @@ |
|||
fileFormatVersion: 2 |
|||
guid: af4e3351b767d68459d5c6daff8a8d3f |
|||
NativeFormatImporter: |
|||
externalObjects: {} |
|||
mainObjectFileID: 11400000 |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,32 @@ |
|||
%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: 20f70984b262f8d4382bf5262dddb83e, type: 3} |
|||
m_Name: DarkCloud |
|||
m_EditorClassIdentifier: |
|||
enemyName: skullGuardian |
|||
enemyIcon: {fileID: 21300000, guid: bd8f3094e7ef01148bddd857e065ebc3, type: 3} |
|||
stepRange: 2 |
|||
stepRangeMultiplier: 1 |
|||
speed: 1 |
|||
maxMoveCoolDown: 0 |
|||
currentMoveCoolDown: 0 |
|||
shieldValue: 0 |
|||
upShieldValue: 7 |
|||
maxHP: 0 |
|||
currentHP: 25 |
|||
sufferDamageMultiply: 1 |
|||
colourType: 0 |
|||
maxSkillCoolDown: 3 |
|||
currentSkillCoolDown: 3 |
|||
damageMultiplier: 1 |
|||
damage: 4 |
|||
attackRange: 3 |
|||
@ -0,0 +1,8 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 8f21c58f8d6a27d46b17e0f301860cd2 |
|||
NativeFormatImporter: |
|||
externalObjects: {} |
|||
mainObjectFileID: 11400000 |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,32 @@ |
|||
%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: 20f70984b262f8d4382bf5262dddb83e, type: 3} |
|||
m_Name: Grinfiend |
|||
m_EditorClassIdentifier: |
|||
enemyName: skullGuardian |
|||
enemyIcon: {fileID: 21300000, guid: bd8f3094e7ef01148bddd857e065ebc3, type: 3} |
|||
stepRange: 2 |
|||
stepRangeMultiplier: 1 |
|||
speed: 5 |
|||
maxMoveCoolDown: 0 |
|||
currentMoveCoolDown: 0 |
|||
shieldValue: 0 |
|||
upShieldValue: 7 |
|||
maxHP: 20 |
|||
currentHP: 20 |
|||
sufferDamageMultiply: 1 |
|||
colourType: 0 |
|||
maxSkillCoolDown: 3 |
|||
currentSkillCoolDown: 3 |
|||
damageMultiplier: 1 |
|||
damage: 3 |
|||
attackRange: 2 |
|||
@ -0,0 +1,8 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 1160ee60e34650743a819c67f31ac225 |
|||
NativeFormatImporter: |
|||
externalObjects: {} |
|||
mainObjectFileID: 11400000 |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,32 @@ |
|||
%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: 20f70984b262f8d4382bf5262dddb83e, type: 3} |
|||
m_Name: Mushroom |
|||
m_EditorClassIdentifier: |
|||
enemyName: skullGuardian |
|||
enemyIcon: {fileID: 21300000, guid: bd8f3094e7ef01148bddd857e065ebc3, type: 3} |
|||
stepRange: 3 |
|||
stepRangeMultiplier: 1 |
|||
speed: 4 |
|||
maxMoveCoolDown: 0 |
|||
currentMoveCoolDown: 0 |
|||
shieldValue: 0 |
|||
upShieldValue: 7 |
|||
maxHP: 15 |
|||
currentHP: 15 |
|||
sufferDamageMultiply: 1 |
|||
colourType: 0 |
|||
maxSkillCoolDown: 3 |
|||
currentSkillCoolDown: 3 |
|||
damageMultiplier: 1 |
|||
damage: 3 |
|||
attackRange: 1 |
|||
@ -0,0 +1,8 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 09e1bcd7742ccab47bd18261f81a1550 |
|||
NativeFormatImporter: |
|||
externalObjects: {} |
|||
mainObjectFileID: 11400000 |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,32 @@ |
|||
%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: 20f70984b262f8d4382bf5262dddb83e, type: 3} |
|||
m_Name: Polymaw |
|||
m_EditorClassIdentifier: |
|||
enemyName: skullGuardian |
|||
enemyIcon: {fileID: 21300000, guid: bd8f3094e7ef01148bddd857e065ebc3, type: 3} |
|||
stepRange: 2 |
|||
stepRangeMultiplier: 1 |
|||
speed: 1 |
|||
maxMoveCoolDown: 0 |
|||
currentMoveCoolDown: 0 |
|||
shieldValue: 0 |
|||
upShieldValue: 5 |
|||
maxHP: 35 |
|||
currentHP: 35 |
|||
sufferDamageMultiply: 1 |
|||
colourType: 0 |
|||
maxSkillCoolDown: 3 |
|||
currentSkillCoolDown: 3 |
|||
damageMultiplier: 1 |
|||
damage: 8 |
|||
attackRange: 1 |
|||
@ -0,0 +1,8 @@ |
|||
fileFormatVersion: 2 |
|||
guid: a9962950842bb6847acaa06e18b7a10a |
|||
NativeFormatImporter: |
|||
externalObjects: {} |
|||
mainObjectFileID: 11400000 |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,242 @@ |
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!1 &3463743346225269131 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 7830476438711236699} |
|||
m_Layer: 0 |
|||
m_Name: NodeResult |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!224 &7830476438711236699 |
|||
RectTransform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 3463743346225269131} |
|||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 0, z: 0} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: |
|||
- {fileID: 3989144342279409849} |
|||
- {fileID: 2701269701150204204} |
|||
m_Father: {fileID: 0} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
m_AnchorMin: {x: 0, y: 0} |
|||
m_AnchorMax: {x: 0, y: 0} |
|||
m_AnchoredPosition: {x: 0, y: 0} |
|||
m_SizeDelta: {x: 0, y: 0} |
|||
m_Pivot: {x: 0.5, y: 0.5} |
|||
--- !u!1 &8737556827872546065 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 2701269701150204204} |
|||
- component: {fileID: 6661400064922555463} |
|||
- component: {fileID: 393080899069940464} |
|||
m_Layer: 0 |
|||
m_Name: NodeDescription |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!224 &2701269701150204204 |
|||
RectTransform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 8737556827872546065} |
|||
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: 7830476438711236699} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
m_AnchorMin: {x: 0, y: 1} |
|||
m_AnchorMax: {x: 0, y: 1} |
|||
m_AnchoredPosition: {x: 18.13, y: -16.57} |
|||
m_SizeDelta: {x: 20, y: 20} |
|||
m_Pivot: {x: 0.5, y: 0.5} |
|||
--- !u!222 &6661400064922555463 |
|||
CanvasRenderer: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 8737556827872546065} |
|||
m_CullTransparentMesh: 1 |
|||
--- !u!114 &393080899069940464 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 8737556827872546065} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
m_Material: {fileID: 0} |
|||
m_Color: {r: 0.122641504, g: 0.10355108, b: 0.10355108, a: 1} |
|||
m_RaycastTarget: 1 |
|||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} |
|||
m_Maskable: 1 |
|||
m_OnCullStateChanged: |
|||
m_PersistentCalls: |
|||
m_Calls: [] |
|||
m_FontData: |
|||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} |
|||
m_FontSize: 8 |
|||
m_FontStyle: 0 |
|||
m_BestFit: 0 |
|||
m_MinSize: 0 |
|||
m_MaxSize: 40 |
|||
m_Alignment: 0 |
|||
m_AlignByGeometry: 0 |
|||
m_RichText: 1 |
|||
m_HorizontalOverflow: 0 |
|||
m_VerticalOverflow: 0 |
|||
m_LineSpacing: 1 |
|||
m_Text: 1 |
|||
--- !u!1001 &4950799650148104829 |
|||
PrefabInstance: |
|||
m_ObjectHideFlags: 0 |
|||
serializedVersion: 2 |
|||
m_Modification: |
|||
serializedVersion: 3 |
|||
m_TransformParent: {fileID: 7830476438711236699} |
|||
m_Modifications: |
|||
- target: {fileID: 2948337350984551391, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_Name |
|||
value: Node |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_Pivot.x |
|||
value: 0.5 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_Pivot.y |
|||
value: 0.5 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_AnchorMax.x |
|||
value: 0 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_AnchorMax.y |
|||
value: 1 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_AnchorMin.x |
|||
value: 0 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_AnchorMin.y |
|||
value: 1 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_SizeDelta.x |
|||
value: 7.5 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_SizeDelta.y |
|||
value: 7.5 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_LocalPosition.x |
|||
value: 0 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_LocalPosition.y |
|||
value: 0 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_LocalPosition.z |
|||
value: 0 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_LocalRotation.w |
|||
value: 1 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_LocalRotation.x |
|||
value: -0 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_LocalRotation.y |
|||
value: -0 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_LocalRotation.z |
|||
value: -0 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_AnchoredPosition.x |
|||
value: 7 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_AnchoredPosition.y |
|||
value: -7.9 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_LocalEulerAnglesHint.x |
|||
value: 0 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_LocalEulerAnglesHint.y |
|||
value: 0 |
|||
objectReference: {fileID: 0} |
|||
- target: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
propertyPath: m_LocalEulerAnglesHint.z |
|||
value: 0 |
|||
objectReference: {fileID: 0} |
|||
m_RemovedComponents: [] |
|||
m_RemovedGameObjects: [] |
|||
m_AddedGameObjects: [] |
|||
m_AddedComponents: [] |
|||
m_SourcePrefab: {fileID: 100100000, guid: f4c36c2c021e0954897974b7ad041903, type: 3} |
|||
--- !u!224 &3989144342279409849 stripped |
|||
RectTransform: |
|||
m_CorrespondingSourceObject: {fileID: 8352083469037628100, guid: f4c36c2c021e0954897974b7ad041903, |
|||
type: 3} |
|||
m_PrefabInstance: {fileID: 4950799650148104829} |
|||
m_PrefabAsset: {fileID: 0} |
|||
@ -0,0 +1,7 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 38f4837b968f61e4b94afcb5535f877c |
|||
PrefabImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,81 @@ |
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!1 &2195466461428280820 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 1550475189794395781} |
|||
- component: {fileID: 4480913845061429083} |
|||
- component: {fileID: 8377153066574739174} |
|||
m_Layer: 0 |
|||
m_Name: Val |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!224 &1550475189794395781 |
|||
RectTransform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 2195466461428280820} |
|||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 0, z: 0} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 0} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
m_AnchorMin: {x: 0.5, y: 0.5} |
|||
m_AnchorMax: {x: 0.5, y: 0.5} |
|||
m_AnchoredPosition: {x: -10, y: 0.04} |
|||
m_SizeDelta: {x: 10, y: 20} |
|||
m_Pivot: {x: 0, y: 0.5} |
|||
--- !u!222 &4480913845061429083 |
|||
CanvasRenderer: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 2195466461428280820} |
|||
m_CullTransparentMesh: 1 |
|||
--- !u!114 &8377153066574739174 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 2195466461428280820} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
m_Material: {fileID: 0} |
|||
m_Color: {r: 1, g: 1, b: 1, a: 1} |
|||
m_RaycastTarget: 1 |
|||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} |
|||
m_Maskable: 1 |
|||
m_OnCullStateChanged: |
|||
m_PersistentCalls: |
|||
m_Calls: [] |
|||
m_FontData: |
|||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} |
|||
m_FontSize: 14 |
|||
m_FontStyle: 0 |
|||
m_BestFit: 0 |
|||
m_MinSize: 10 |
|||
m_MaxSize: 40 |
|||
m_Alignment: 4 |
|||
m_AlignByGeometry: 0 |
|||
m_RichText: 1 |
|||
m_HorizontalOverflow: 0 |
|||
m_VerticalOverflow: 0 |
|||
m_LineSpacing: 1 |
|||
m_Text: 5 |
|||
@ -0,0 +1,7 @@ |
|||
fileFormatVersion: 2 |
|||
guid: ef66a5db78741da4d93f90fcdcb7176a |
|||
PrefabImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,381 @@ |
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!1 &1253231568001379261 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 4276721484070507378} |
|||
- component: {fileID: 7989887375954300062} |
|||
- component: {fileID: 230642570694684005} |
|||
- component: {fileID: 2630096967588951713} |
|||
m_Layer: 9 |
|||
m_Name: BlackSheep |
|||
m_TagString: Enemy |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &4276721484070507378 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0, y: 0.9657449, z: -0.2594933, w: 0} |
|||
m_LocalPosition: {x: 20, y: 0.36, z: 5.12} |
|||
m_LocalScale: {x: 0.1, y: 1, z: 0.12} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: |
|||
- {fileID: 382303586006028689} |
|||
- {fileID: 8888823514061126702} |
|||
- {fileID: 6503119109324506896} |
|||
m_Father: {fileID: 0} |
|||
m_LocalEulerAnglesHint: {x: 30.08, y: 180, z: 0} |
|||
--- !u!135 &7989887375954300062 |
|||
SphereCollider: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Material: {fileID: 0} |
|||
m_IncludeLayers: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
m_ExcludeLayers: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
m_LayerOverridePriority: 0 |
|||
m_IsTrigger: 0 |
|||
m_ProvidesContacts: 0 |
|||
m_Enabled: 1 |
|||
serializedVersion: 3 |
|||
m_Radius: 0.45 |
|||
m_Center: {x: 0, y: 0.4, z: -1.8} |
|||
--- !u!114 &230642570694684005 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: b93e606dce1c400408bd059eaaa399b2, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
templateEnemyState: {fileID: 11400000, guid: af4e3351b767d68459d5c6daff8a8d3f, type: 2} |
|||
EnemyState: {fileID: 0} |
|||
positionX: 3 |
|||
positionY: 5 |
|||
pasth: [] |
|||
oppositePasth: [] |
|||
moveType: 0 |
|||
rangePool: [] |
|||
aoeRangePool: [] |
|||
enemyType: 0 |
|||
enemyScript: 17 |
|||
lineAim: {fileID: 7509110568895175458} |
|||
canLineAppre: 1 |
|||
disableAttack: {fileID: 0} |
|||
enemyUIBar: {fileID: 0} |
|||
followPoint: {fileID: 8888823514061126702} |
|||
bone: {fileID: 0} |
|||
bone_Re: {fileID: 0} |
|||
canMove: 0 |
|||
planAction: 0 |
|||
--- !u!114 &2630096967588951713 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: cff9b96bf0935a34e99e64276d588a22, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
layerMask: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
time: 0.2 |
|||
moveSpeed: 4 |
|||
--- !u!1 &2687402414900403258 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 8888823514061126702} |
|||
m_Layer: 0 |
|||
m_Name: FollowPoint |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!224 &8888823514061126702 |
|||
RectTransform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 2687402414900403258} |
|||
m_LocalRotation: {x: 0.00004351113, y: -0.7101218, z: 0.7040763, w: 0.0019181424} |
|||
m_LocalPosition: {x: 0, y: 0, z: 6.3000016} |
|||
m_LocalScale: {x: 9.999354, y: 8.328876, z: 1.0000705} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
m_AnchorMin: {x: 0.5, y: 0.5} |
|||
m_AnchorMax: {x: 0.5, y: 0.5} |
|||
m_AnchoredPosition: {x: 0, y: 0.537} |
|||
m_SizeDelta: {x: 100, y: 100} |
|||
m_Pivot: {x: 0.5, y: 0.5} |
|||
--- !u!1 &5299401543336672401 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 382303586006028689} |
|||
- component: {fileID: 1417110473463724327} |
|||
- component: {fileID: 6829741816573684846} |
|||
m_Layer: 9 |
|||
m_Name: Enemy_1 |
|||
m_TagString: Enemy |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &382303586006028689 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0.018499402, y: 0, z: 0, w: 0.9998289} |
|||
m_LocalPosition: {x: -0.65, y: 0.406, z: -2.04} |
|||
m_LocalScale: {x: 1.8167788, y: 1.1626, z: 0.85490113} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 2.12, y: 0, z: 0} |
|||
--- !u!33 &1417110473463724327 |
|||
MeshFilter: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} |
|||
--- !u!23 &6829741816573684846 |
|||
MeshRenderer: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 0 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_StaticShadowCaster: 0 |
|||
m_MotionVectors: 1 |
|||
m_LightProbeUsage: 1 |
|||
m_ReflectionProbeUsage: 1 |
|||
m_RayTracingMode: 2 |
|||
m_RayTraceProcedural: 0 |
|||
m_RenderingLayerMask: 1 |
|||
m_RendererPriority: 0 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 4f1cc3f6d514aa44a9759eda985dba4b, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_ReceiveGI: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 1 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
m_AdditionalVertexStreams: {fileID: 0} |
|||
--- !u!1 &7509110568895175458 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 6503119109324506896} |
|||
- component: {fileID: 4532292198235687560} |
|||
- component: {fileID: 1857277813970574203} |
|||
m_Layer: 9 |
|||
m_Name: AimLine |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 0 |
|||
--- !u!4 &6503119109324506896 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 1, z: -4} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
--- !u!120 &4532292198235687560 |
|||
LineRenderer: |
|||
serializedVersion: 2 |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 1 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_StaticShadowCaster: 0 |
|||
m_MotionVectors: 0 |
|||
m_LightProbeUsage: 0 |
|||
m_ReflectionProbeUsage: 0 |
|||
m_RayTracingMode: 0 |
|||
m_RayTraceProcedural: 0 |
|||
m_RenderingLayerMask: 1 |
|||
m_RendererPriority: 0 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 6dae87f6dbe79e34fb7adcae048807dd, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_ReceiveGI: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 1 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
m_Positions: |
|||
- {x: 0, y: 0, z: 0} |
|||
- {x: 6, y: 0, z: 1} |
|||
m_Parameters: |
|||
serializedVersion: 3 |
|||
widthMultiplier: 1 |
|||
widthCurve: |
|||
serializedVersion: 2 |
|||
m_Curve: |
|||
- serializedVersion: 3 |
|||
time: 0.0031585693 |
|||
value: 0.11028418 |
|||
inSlope: 0 |
|||
outSlope: 0 |
|||
tangentMode: 0 |
|||
weightedMode: 0 |
|||
inWeight: 0.33333334 |
|||
outWeight: 0.33333334 |
|||
m_PreInfinity: 2 |
|||
m_PostInfinity: 2 |
|||
m_RotationOrder: 4 |
|||
colorGradient: |
|||
serializedVersion: 2 |
|||
key0: {r: 1, g: 1, b: 1, a: 1} |
|||
key1: {r: 1, g: 1, b: 1, a: 1} |
|||
key2: {r: 0, g: 0, b: 0, a: 0} |
|||
key3: {r: 0, g: 0, b: 0, a: 0} |
|||
key4: {r: 0, g: 0, b: 0, a: 0} |
|||
key5: {r: 0, g: 0, b: 0, a: 0} |
|||
key6: {r: 0, g: 0, b: 0, a: 0} |
|||
key7: {r: 0, g: 0, b: 0, a: 0} |
|||
ctime0: 0 |
|||
ctime1: 65535 |
|||
ctime2: 0 |
|||
ctime3: 0 |
|||
ctime4: 0 |
|||
ctime5: 0 |
|||
ctime6: 0 |
|||
ctime7: 0 |
|||
atime0: 0 |
|||
atime1: 65535 |
|||
atime2: 0 |
|||
atime3: 0 |
|||
atime4: 0 |
|||
atime5: 0 |
|||
atime6: 0 |
|||
atime7: 0 |
|||
m_Mode: 0 |
|||
m_ColorSpace: -1 |
|||
m_NumColorKeys: 2 |
|||
m_NumAlphaKeys: 2 |
|||
numCornerVertices: 0 |
|||
numCapVertices: 0 |
|||
alignment: 0 |
|||
textureMode: 0 |
|||
textureScale: {x: 1, y: 1} |
|||
shadowBias: 0.5 |
|||
generateLightingData: 0 |
|||
m_MaskInteraction: 0 |
|||
m_UseWorldSpace: 1 |
|||
m_Loop: 0 |
|||
m_ApplyActiveColorSpace: 1 |
|||
--- !u!114 &1857277813970574203 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 0e85732096b0d414f9d6f9ea2e10f06f, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
lineRenderer: {fileID: 4532292198235687560} |
|||
density: 2 |
|||
speed: 0.005 |
|||
currentdisappearTime: 0 |
|||
aimGamgObject: {fileID: 0} |
|||
@ -0,0 +1,7 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 16f2f07defe9c394fb4a5698554bc882 |
|||
PrefabImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,381 @@ |
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!1 &1253231568001379261 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 4276721484070507378} |
|||
- component: {fileID: 7989887375954300062} |
|||
- component: {fileID: 230642570694684005} |
|||
- component: {fileID: 8542190414455016803} |
|||
m_Layer: 9 |
|||
m_Name: DarkCloud |
|||
m_TagString: Enemy |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &4276721484070507378 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0, y: 0.9657449, z: -0.2594933, w: 0} |
|||
m_LocalPosition: {x: 20, y: 0.36, z: 5.12} |
|||
m_LocalScale: {x: 0.1, y: 1, z: 0.12} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: |
|||
- {fileID: 382303586006028689} |
|||
- {fileID: 8888823514061126702} |
|||
- {fileID: 6503119109324506896} |
|||
m_Father: {fileID: 0} |
|||
m_LocalEulerAnglesHint: {x: 30.08, y: 180, z: 0} |
|||
--- !u!135 &7989887375954300062 |
|||
SphereCollider: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Material: {fileID: 0} |
|||
m_IncludeLayers: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
m_ExcludeLayers: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
m_LayerOverridePriority: 0 |
|||
m_IsTrigger: 0 |
|||
m_ProvidesContacts: 0 |
|||
m_Enabled: 1 |
|||
serializedVersion: 3 |
|||
m_Radius: 0.45 |
|||
m_Center: {x: 0, y: 0.4, z: -1.8} |
|||
--- !u!114 &230642570694684005 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: b93e606dce1c400408bd059eaaa399b2, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
templateEnemyState: {fileID: 11400000, guid: 8f21c58f8d6a27d46b17e0f301860cd2, type: 2} |
|||
EnemyState: {fileID: 0} |
|||
positionX: 3 |
|||
positionY: 5 |
|||
pasth: [] |
|||
oppositePasth: [] |
|||
moveType: 0 |
|||
rangePool: [] |
|||
aoeRangePool: [] |
|||
enemyType: 0 |
|||
enemyScript: 16 |
|||
lineAim: {fileID: 7509110568895175458} |
|||
canLineAppre: 1 |
|||
disableAttack: {fileID: 0} |
|||
enemyUIBar: {fileID: 0} |
|||
followPoint: {fileID: 8888823514061126702} |
|||
bone: {fileID: 0} |
|||
bone_Re: {fileID: 0} |
|||
canMove: 0 |
|||
planAction: 2 |
|||
--- !u!114 &8542190414455016803 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 620ad3aeb3d0caf41b4b401901b81e66, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
layerMask: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
time: 0.2 |
|||
moveSpeed: 4 |
|||
--- !u!1 &2687402414900403258 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 8888823514061126702} |
|||
m_Layer: 0 |
|||
m_Name: FollowPoint |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!224 &8888823514061126702 |
|||
RectTransform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 2687402414900403258} |
|||
m_LocalRotation: {x: 0.00004351113, y: -0.7101218, z: 0.7040763, w: 0.0019181424} |
|||
m_LocalPosition: {x: 0, y: 0, z: 6.3000016} |
|||
m_LocalScale: {x: 9.999354, y: 8.328876, z: 1.0000705} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
m_AnchorMin: {x: 0.5, y: 0.5} |
|||
m_AnchorMax: {x: 0.5, y: 0.5} |
|||
m_AnchoredPosition: {x: 0, y: 0.537} |
|||
m_SizeDelta: {x: 100, y: 100} |
|||
m_Pivot: {x: 0.5, y: 0.5} |
|||
--- !u!1 &5299401543336672401 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 382303586006028689} |
|||
- component: {fileID: 1417110473463724327} |
|||
- component: {fileID: 6829741816573684846} |
|||
m_Layer: 9 |
|||
m_Name: Enemy_1 |
|||
m_TagString: Enemy |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &382303586006028689 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0.018499402, y: 0, z: 0, w: 0.9998289} |
|||
m_LocalPosition: {x: -0.65, y: 0.406, z: -2.04} |
|||
m_LocalScale: {x: 1.8167788, y: 1.1626, z: 0.85490113} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 2.12, y: 0, z: 0} |
|||
--- !u!33 &1417110473463724327 |
|||
MeshFilter: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} |
|||
--- !u!23 &6829741816573684846 |
|||
MeshRenderer: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 0 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_StaticShadowCaster: 0 |
|||
m_MotionVectors: 1 |
|||
m_LightProbeUsage: 1 |
|||
m_ReflectionProbeUsage: 1 |
|||
m_RayTracingMode: 2 |
|||
m_RayTraceProcedural: 0 |
|||
m_RenderingLayerMask: 1 |
|||
m_RendererPriority: 0 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 4f1cc3f6d514aa44a9759eda985dba4b, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_ReceiveGI: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 1 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
m_AdditionalVertexStreams: {fileID: 0} |
|||
--- !u!1 &7509110568895175458 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 6503119109324506896} |
|||
- component: {fileID: 4532292198235687560} |
|||
- component: {fileID: 1857277813970574203} |
|||
m_Layer: 9 |
|||
m_Name: AimLine |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 0 |
|||
--- !u!4 &6503119109324506896 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 1, z: -4} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
--- !u!120 &4532292198235687560 |
|||
LineRenderer: |
|||
serializedVersion: 2 |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 1 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_StaticShadowCaster: 0 |
|||
m_MotionVectors: 0 |
|||
m_LightProbeUsage: 0 |
|||
m_ReflectionProbeUsage: 0 |
|||
m_RayTracingMode: 0 |
|||
m_RayTraceProcedural: 0 |
|||
m_RenderingLayerMask: 1 |
|||
m_RendererPriority: 0 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 6dae87f6dbe79e34fb7adcae048807dd, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_ReceiveGI: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 1 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
m_Positions: |
|||
- {x: 0, y: 0, z: 0} |
|||
- {x: 6, y: 0, z: 1} |
|||
m_Parameters: |
|||
serializedVersion: 3 |
|||
widthMultiplier: 1 |
|||
widthCurve: |
|||
serializedVersion: 2 |
|||
m_Curve: |
|||
- serializedVersion: 3 |
|||
time: 0.0031585693 |
|||
value: 0.11028418 |
|||
inSlope: 0 |
|||
outSlope: 0 |
|||
tangentMode: 0 |
|||
weightedMode: 0 |
|||
inWeight: 0.33333334 |
|||
outWeight: 0.33333334 |
|||
m_PreInfinity: 2 |
|||
m_PostInfinity: 2 |
|||
m_RotationOrder: 4 |
|||
colorGradient: |
|||
serializedVersion: 2 |
|||
key0: {r: 1, g: 1, b: 1, a: 1} |
|||
key1: {r: 1, g: 1, b: 1, a: 1} |
|||
key2: {r: 0, g: 0, b: 0, a: 0} |
|||
key3: {r: 0, g: 0, b: 0, a: 0} |
|||
key4: {r: 0, g: 0, b: 0, a: 0} |
|||
key5: {r: 0, g: 0, b: 0, a: 0} |
|||
key6: {r: 0, g: 0, b: 0, a: 0} |
|||
key7: {r: 0, g: 0, b: 0, a: 0} |
|||
ctime0: 0 |
|||
ctime1: 65535 |
|||
ctime2: 0 |
|||
ctime3: 0 |
|||
ctime4: 0 |
|||
ctime5: 0 |
|||
ctime6: 0 |
|||
ctime7: 0 |
|||
atime0: 0 |
|||
atime1: 65535 |
|||
atime2: 0 |
|||
atime3: 0 |
|||
atime4: 0 |
|||
atime5: 0 |
|||
atime6: 0 |
|||
atime7: 0 |
|||
m_Mode: 0 |
|||
m_ColorSpace: -1 |
|||
m_NumColorKeys: 2 |
|||
m_NumAlphaKeys: 2 |
|||
numCornerVertices: 0 |
|||
numCapVertices: 0 |
|||
alignment: 0 |
|||
textureMode: 0 |
|||
textureScale: {x: 1, y: 1} |
|||
shadowBias: 0.5 |
|||
generateLightingData: 0 |
|||
m_MaskInteraction: 0 |
|||
m_UseWorldSpace: 1 |
|||
m_Loop: 0 |
|||
m_ApplyActiveColorSpace: 1 |
|||
--- !u!114 &1857277813970574203 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 0e85732096b0d414f9d6f9ea2e10f06f, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
lineRenderer: {fileID: 4532292198235687560} |
|||
density: 2 |
|||
speed: 0.005 |
|||
currentdisappearTime: 0 |
|||
aimGamgObject: {fileID: 0} |
|||
@ -0,0 +1,7 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 860a25280c40f1040915b02a770609af |
|||
PrefabImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,382 @@ |
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!1 &1253231568001379261 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 4276721484070507378} |
|||
- component: {fileID: 7989887375954300062} |
|||
- component: {fileID: 230642570694684005} |
|||
- component: {fileID: 6494687775698520074} |
|||
m_Layer: 9 |
|||
m_Name: Grinfiend |
|||
m_TagString: Enemy |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &4276721484070507378 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0, y: 0.9657449, z: -0.2594933, w: 0} |
|||
m_LocalPosition: {x: 20, y: 0.36, z: 5.12} |
|||
m_LocalScale: {x: 0.1, y: 1, z: 0.12} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: |
|||
- {fileID: 382303586006028689} |
|||
- {fileID: 8888823514061126702} |
|||
- {fileID: 6503119109324506896} |
|||
m_Father: {fileID: 0} |
|||
m_LocalEulerAnglesHint: {x: 30.08, y: 180, z: 0} |
|||
--- !u!135 &7989887375954300062 |
|||
SphereCollider: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Material: {fileID: 0} |
|||
m_IncludeLayers: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
m_ExcludeLayers: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
m_LayerOverridePriority: 0 |
|||
m_IsTrigger: 0 |
|||
m_ProvidesContacts: 0 |
|||
m_Enabled: 1 |
|||
serializedVersion: 3 |
|||
m_Radius: 0.45 |
|||
m_Center: {x: 0, y: 0.4, z: -1.8} |
|||
--- !u!114 &230642570694684005 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: b93e606dce1c400408bd059eaaa399b2, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
templateEnemyState: {fileID: 11400000, guid: 1160ee60e34650743a819c67f31ac225, type: 2} |
|||
EnemyState: {fileID: 0} |
|||
positionX: 3 |
|||
positionY: 5 |
|||
pasth: [] |
|||
oppositePasth: [] |
|||
moveType: 0 |
|||
rangePool: [] |
|||
aoeRangePool: [] |
|||
enemyType: 0 |
|||
enemyScript: 18 |
|||
lineAim: {fileID: 7509110568895175458} |
|||
canLineAppre: 1 |
|||
disableAttack: {fileID: 0} |
|||
enemyUIBar: {fileID: 0} |
|||
followPoint: {fileID: 8888823514061126702} |
|||
bone: {fileID: 0} |
|||
bone_Re: {fileID: 0} |
|||
canMove: 0 |
|||
planAction: 2 |
|||
--- !u!114 &6494687775698520074 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: d18a1c278edb3e04e865dd3b52d63e2f, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
enemyNode: {fileID: 0} |
|||
layerMask: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
time: 0.2 |
|||
moveSpeed: 4 |
|||
--- !u!1 &2687402414900403258 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 8888823514061126702} |
|||
m_Layer: 0 |
|||
m_Name: FollowPoint |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!224 &8888823514061126702 |
|||
RectTransform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 2687402414900403258} |
|||
m_LocalRotation: {x: 0.00004351113, y: -0.7101218, z: 0.7040763, w: 0.0019181424} |
|||
m_LocalPosition: {x: 0, y: 0, z: 6.3000016} |
|||
m_LocalScale: {x: 9.999354, y: 8.328876, z: 1.0000705} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
m_AnchorMin: {x: 0.5, y: 0.5} |
|||
m_AnchorMax: {x: 0.5, y: 0.5} |
|||
m_AnchoredPosition: {x: 0, y: 0.537} |
|||
m_SizeDelta: {x: 100, y: 100} |
|||
m_Pivot: {x: 0.5, y: 0.5} |
|||
--- !u!1 &5299401543336672401 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 382303586006028689} |
|||
- component: {fileID: 1417110473463724327} |
|||
- component: {fileID: 6829741816573684846} |
|||
m_Layer: 9 |
|||
m_Name: Enemy_1 |
|||
m_TagString: Enemy |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &382303586006028689 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0.018499402, y: 0, z: 0, w: 0.9998289} |
|||
m_LocalPosition: {x: -0.65, y: 0.406, z: -2.04} |
|||
m_LocalScale: {x: 1.8167788, y: 1.1626, z: 0.85490113} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 2.12, y: 0, z: 0} |
|||
--- !u!33 &1417110473463724327 |
|||
MeshFilter: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} |
|||
--- !u!23 &6829741816573684846 |
|||
MeshRenderer: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 0 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_StaticShadowCaster: 0 |
|||
m_MotionVectors: 1 |
|||
m_LightProbeUsage: 1 |
|||
m_ReflectionProbeUsage: 1 |
|||
m_RayTracingMode: 2 |
|||
m_RayTraceProcedural: 0 |
|||
m_RenderingLayerMask: 1 |
|||
m_RendererPriority: 0 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 4f1cc3f6d514aa44a9759eda985dba4b, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_ReceiveGI: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 1 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
m_AdditionalVertexStreams: {fileID: 0} |
|||
--- !u!1 &7509110568895175458 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 6503119109324506896} |
|||
- component: {fileID: 4532292198235687560} |
|||
- component: {fileID: 1857277813970574203} |
|||
m_Layer: 9 |
|||
m_Name: AimLine |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 0 |
|||
--- !u!4 &6503119109324506896 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 1, z: -4} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
--- !u!120 &4532292198235687560 |
|||
LineRenderer: |
|||
serializedVersion: 2 |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 1 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_StaticShadowCaster: 0 |
|||
m_MotionVectors: 0 |
|||
m_LightProbeUsage: 0 |
|||
m_ReflectionProbeUsage: 0 |
|||
m_RayTracingMode: 0 |
|||
m_RayTraceProcedural: 0 |
|||
m_RenderingLayerMask: 1 |
|||
m_RendererPriority: 0 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 6dae87f6dbe79e34fb7adcae048807dd, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_ReceiveGI: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 1 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
m_Positions: |
|||
- {x: 0, y: 0, z: 0} |
|||
- {x: 6, y: 0, z: 1} |
|||
m_Parameters: |
|||
serializedVersion: 3 |
|||
widthMultiplier: 1 |
|||
widthCurve: |
|||
serializedVersion: 2 |
|||
m_Curve: |
|||
- serializedVersion: 3 |
|||
time: 0.0031585693 |
|||
value: 0.11028418 |
|||
inSlope: 0 |
|||
outSlope: 0 |
|||
tangentMode: 0 |
|||
weightedMode: 0 |
|||
inWeight: 0.33333334 |
|||
outWeight: 0.33333334 |
|||
m_PreInfinity: 2 |
|||
m_PostInfinity: 2 |
|||
m_RotationOrder: 4 |
|||
colorGradient: |
|||
serializedVersion: 2 |
|||
key0: {r: 1, g: 1, b: 1, a: 1} |
|||
key1: {r: 1, g: 1, b: 1, a: 1} |
|||
key2: {r: 0, g: 0, b: 0, a: 0} |
|||
key3: {r: 0, g: 0, b: 0, a: 0} |
|||
key4: {r: 0, g: 0, b: 0, a: 0} |
|||
key5: {r: 0, g: 0, b: 0, a: 0} |
|||
key6: {r: 0, g: 0, b: 0, a: 0} |
|||
key7: {r: 0, g: 0, b: 0, a: 0} |
|||
ctime0: 0 |
|||
ctime1: 65535 |
|||
ctime2: 0 |
|||
ctime3: 0 |
|||
ctime4: 0 |
|||
ctime5: 0 |
|||
ctime6: 0 |
|||
ctime7: 0 |
|||
atime0: 0 |
|||
atime1: 65535 |
|||
atime2: 0 |
|||
atime3: 0 |
|||
atime4: 0 |
|||
atime5: 0 |
|||
atime6: 0 |
|||
atime7: 0 |
|||
m_Mode: 0 |
|||
m_ColorSpace: -1 |
|||
m_NumColorKeys: 2 |
|||
m_NumAlphaKeys: 2 |
|||
numCornerVertices: 0 |
|||
numCapVertices: 0 |
|||
alignment: 0 |
|||
textureMode: 0 |
|||
textureScale: {x: 1, y: 1} |
|||
shadowBias: 0.5 |
|||
generateLightingData: 0 |
|||
m_MaskInteraction: 0 |
|||
m_UseWorldSpace: 1 |
|||
m_Loop: 0 |
|||
m_ApplyActiveColorSpace: 1 |
|||
--- !u!114 &1857277813970574203 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 0e85732096b0d414f9d6f9ea2e10f06f, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
lineRenderer: {fileID: 4532292198235687560} |
|||
density: 2 |
|||
speed: 0.005 |
|||
currentdisappearTime: 0 |
|||
aimGamgObject: {fileID: 0} |
|||
@ -0,0 +1,7 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 3d83bb7c6cfaa71439ad6302d0dceb51 |
|||
PrefabImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,382 @@ |
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!1 &1253231568001379261 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 4276721484070507378} |
|||
- component: {fileID: 7989887375954300062} |
|||
- component: {fileID: 230642570694684005} |
|||
- component: {fileID: 7710354117342686505} |
|||
m_Layer: 9 |
|||
m_Name: Mushroom |
|||
m_TagString: Enemy |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &4276721484070507378 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0, y: 0.9657449, z: -0.2594933, w: 0} |
|||
m_LocalPosition: {x: 20, y: 0.36, z: 5.12} |
|||
m_LocalScale: {x: 0.1, y: 1, z: 0.12} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: |
|||
- {fileID: 382303586006028689} |
|||
- {fileID: 8888823514061126702} |
|||
- {fileID: 6503119109324506896} |
|||
m_Father: {fileID: 0} |
|||
m_LocalEulerAnglesHint: {x: 30.08, y: 180, z: 0} |
|||
--- !u!135 &7989887375954300062 |
|||
SphereCollider: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Material: {fileID: 0} |
|||
m_IncludeLayers: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
m_ExcludeLayers: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
m_LayerOverridePriority: 0 |
|||
m_IsTrigger: 0 |
|||
m_ProvidesContacts: 0 |
|||
m_Enabled: 1 |
|||
serializedVersion: 3 |
|||
m_Radius: 0.45 |
|||
m_Center: {x: 0, y: 0.4, z: -1.8} |
|||
--- !u!114 &230642570694684005 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: b93e606dce1c400408bd059eaaa399b2, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
templateEnemyState: {fileID: 11400000, guid: 09e1bcd7742ccab47bd18261f81a1550, type: 2} |
|||
EnemyState: {fileID: 0} |
|||
positionX: 3 |
|||
positionY: 5 |
|||
pasth: [] |
|||
oppositePasth: [] |
|||
moveType: 0 |
|||
rangePool: [] |
|||
aoeRangePool: [] |
|||
enemyType: 0 |
|||
enemyScript: 20 |
|||
lineAim: {fileID: 7509110568895175458} |
|||
canLineAppre: 1 |
|||
disableAttack: {fileID: 0} |
|||
enemyUIBar: {fileID: 0} |
|||
followPoint: {fileID: 8888823514061126702} |
|||
bone: {fileID: 0} |
|||
bone_Re: {fileID: 0} |
|||
canMove: 0 |
|||
planAction: 0 |
|||
--- !u!114 &7710354117342686505 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: da70d494672e9b742b621a143865cad7, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
enemyNode: {fileID: 0} |
|||
layerMask: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
time: 0.2 |
|||
moveSpeed: 4 |
|||
--- !u!1 &2687402414900403258 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 8888823514061126702} |
|||
m_Layer: 0 |
|||
m_Name: FollowPoint |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!224 &8888823514061126702 |
|||
RectTransform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 2687402414900403258} |
|||
m_LocalRotation: {x: 0.00004351113, y: -0.7101218, z: 0.7040763, w: 0.0019181424} |
|||
m_LocalPosition: {x: 0, y: 0, z: 6.3000016} |
|||
m_LocalScale: {x: 9.999354, y: 8.328876, z: 1.0000705} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
m_AnchorMin: {x: 0.5, y: 0.5} |
|||
m_AnchorMax: {x: 0.5, y: 0.5} |
|||
m_AnchoredPosition: {x: 0, y: 0.537} |
|||
m_SizeDelta: {x: 100, y: 100} |
|||
m_Pivot: {x: 0.5, y: 0.5} |
|||
--- !u!1 &5299401543336672401 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 382303586006028689} |
|||
- component: {fileID: 1417110473463724327} |
|||
- component: {fileID: 6829741816573684846} |
|||
m_Layer: 9 |
|||
m_Name: Enemy_1 |
|||
m_TagString: Enemy |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &382303586006028689 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0.018499402, y: 0, z: 0, w: 0.9998289} |
|||
m_LocalPosition: {x: -0.65, y: 0.406, z: -2.04} |
|||
m_LocalScale: {x: 1.8167788, y: 1.1626, z: 0.85490113} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 2.12, y: 0, z: 0} |
|||
--- !u!33 &1417110473463724327 |
|||
MeshFilter: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} |
|||
--- !u!23 &6829741816573684846 |
|||
MeshRenderer: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 0 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_StaticShadowCaster: 0 |
|||
m_MotionVectors: 1 |
|||
m_LightProbeUsage: 1 |
|||
m_ReflectionProbeUsage: 1 |
|||
m_RayTracingMode: 2 |
|||
m_RayTraceProcedural: 0 |
|||
m_RenderingLayerMask: 1 |
|||
m_RendererPriority: 0 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 4f1cc3f6d514aa44a9759eda985dba4b, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_ReceiveGI: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 1 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
m_AdditionalVertexStreams: {fileID: 0} |
|||
--- !u!1 &7509110568895175458 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 6503119109324506896} |
|||
- component: {fileID: 4532292198235687560} |
|||
- component: {fileID: 1857277813970574203} |
|||
m_Layer: 9 |
|||
m_Name: AimLine |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 0 |
|||
--- !u!4 &6503119109324506896 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 1, z: -4} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
--- !u!120 &4532292198235687560 |
|||
LineRenderer: |
|||
serializedVersion: 2 |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 1 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_StaticShadowCaster: 0 |
|||
m_MotionVectors: 0 |
|||
m_LightProbeUsage: 0 |
|||
m_ReflectionProbeUsage: 0 |
|||
m_RayTracingMode: 0 |
|||
m_RayTraceProcedural: 0 |
|||
m_RenderingLayerMask: 1 |
|||
m_RendererPriority: 0 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 6dae87f6dbe79e34fb7adcae048807dd, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_ReceiveGI: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 1 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
m_Positions: |
|||
- {x: 0, y: 0, z: 0} |
|||
- {x: 6, y: 0, z: 1} |
|||
m_Parameters: |
|||
serializedVersion: 3 |
|||
widthMultiplier: 1 |
|||
widthCurve: |
|||
serializedVersion: 2 |
|||
m_Curve: |
|||
- serializedVersion: 3 |
|||
time: 0.0031585693 |
|||
value: 0.11028418 |
|||
inSlope: 0 |
|||
outSlope: 0 |
|||
tangentMode: 0 |
|||
weightedMode: 0 |
|||
inWeight: 0.33333334 |
|||
outWeight: 0.33333334 |
|||
m_PreInfinity: 2 |
|||
m_PostInfinity: 2 |
|||
m_RotationOrder: 4 |
|||
colorGradient: |
|||
serializedVersion: 2 |
|||
key0: {r: 1, g: 1, b: 1, a: 1} |
|||
key1: {r: 1, g: 1, b: 1, a: 1} |
|||
key2: {r: 0, g: 0, b: 0, a: 0} |
|||
key3: {r: 0, g: 0, b: 0, a: 0} |
|||
key4: {r: 0, g: 0, b: 0, a: 0} |
|||
key5: {r: 0, g: 0, b: 0, a: 0} |
|||
key6: {r: 0, g: 0, b: 0, a: 0} |
|||
key7: {r: 0, g: 0, b: 0, a: 0} |
|||
ctime0: 0 |
|||
ctime1: 65535 |
|||
ctime2: 0 |
|||
ctime3: 0 |
|||
ctime4: 0 |
|||
ctime5: 0 |
|||
ctime6: 0 |
|||
ctime7: 0 |
|||
atime0: 0 |
|||
atime1: 65535 |
|||
atime2: 0 |
|||
atime3: 0 |
|||
atime4: 0 |
|||
atime5: 0 |
|||
atime6: 0 |
|||
atime7: 0 |
|||
m_Mode: 0 |
|||
m_ColorSpace: -1 |
|||
m_NumColorKeys: 2 |
|||
m_NumAlphaKeys: 2 |
|||
numCornerVertices: 0 |
|||
numCapVertices: 0 |
|||
alignment: 0 |
|||
textureMode: 0 |
|||
textureScale: {x: 1, y: 1} |
|||
shadowBias: 0.5 |
|||
generateLightingData: 0 |
|||
m_MaskInteraction: 0 |
|||
m_UseWorldSpace: 1 |
|||
m_Loop: 0 |
|||
m_ApplyActiveColorSpace: 1 |
|||
--- !u!114 &1857277813970574203 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 0e85732096b0d414f9d6f9ea2e10f06f, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
lineRenderer: {fileID: 4532292198235687560} |
|||
density: 2 |
|||
speed: 0.005 |
|||
currentdisappearTime: 0 |
|||
aimGamgObject: {fileID: 0} |
|||
@ -0,0 +1,7 @@ |
|||
fileFormatVersion: 2 |
|||
guid: e7af8b56c0915664585cb503433ecd3e |
|||
PrefabImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,382 @@ |
|||
%YAML 1.1 |
|||
%TAG !u! tag:unity3d.com,2011: |
|||
--- !u!1 &1253231568001379261 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 4276721484070507378} |
|||
- component: {fileID: 7989887375954300062} |
|||
- component: {fileID: 230642570694684005} |
|||
- component: {fileID: 6598078494741193390} |
|||
m_Layer: 9 |
|||
m_Name: Polymaw |
|||
m_TagString: Enemy |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &4276721484070507378 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0, y: 0.9657449, z: -0.2594933, w: 0} |
|||
m_LocalPosition: {x: 20, y: 0.36, z: 5.12} |
|||
m_LocalScale: {x: 0.1, y: 1, z: 0.12} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: |
|||
- {fileID: 382303586006028689} |
|||
- {fileID: 8888823514061126702} |
|||
- {fileID: 6503119109324506896} |
|||
m_Father: {fileID: 0} |
|||
m_LocalEulerAnglesHint: {x: 30.08, y: 180, z: 0} |
|||
--- !u!135 &7989887375954300062 |
|||
SphereCollider: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Material: {fileID: 0} |
|||
m_IncludeLayers: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
m_ExcludeLayers: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
m_LayerOverridePriority: 0 |
|||
m_IsTrigger: 0 |
|||
m_ProvidesContacts: 0 |
|||
m_Enabled: 1 |
|||
serializedVersion: 3 |
|||
m_Radius: 0.45 |
|||
m_Center: {x: 0, y: 0.4, z: -1.8} |
|||
--- !u!114 &230642570694684005 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: b93e606dce1c400408bd059eaaa399b2, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
templateEnemyState: {fileID: 11400000, guid: a9962950842bb6847acaa06e18b7a10a, type: 2} |
|||
EnemyState: {fileID: 0} |
|||
positionX: 3 |
|||
positionY: 5 |
|||
pasth: [] |
|||
oppositePasth: [] |
|||
moveType: 0 |
|||
rangePool: [] |
|||
aoeRangePool: [] |
|||
enemyType: 0 |
|||
enemyScript: 19 |
|||
lineAim: {fileID: 7509110568895175458} |
|||
canLineAppre: 1 |
|||
disableAttack: {fileID: 0} |
|||
enemyUIBar: {fileID: 0} |
|||
followPoint: {fileID: 8888823514061126702} |
|||
bone: {fileID: 0} |
|||
bone_Re: {fileID: 0} |
|||
canMove: 0 |
|||
planAction: 0 |
|||
--- !u!114 &6598078494741193390 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 1253231568001379261} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 441ffc4abe92e93468e7d196c1d2417f, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
enemyNode: {fileID: 0} |
|||
layerMask: |
|||
serializedVersion: 2 |
|||
m_Bits: 0 |
|||
time: 0.2 |
|||
moveSpeed: 4 |
|||
--- !u!1 &2687402414900403258 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 8888823514061126702} |
|||
m_Layer: 0 |
|||
m_Name: FollowPoint |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!224 &8888823514061126702 |
|||
RectTransform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 2687402414900403258} |
|||
m_LocalRotation: {x: 0.00004351113, y: -0.7101218, z: 0.7040763, w: 0.0019181424} |
|||
m_LocalPosition: {x: 0, y: 0, z: 6.3000016} |
|||
m_LocalScale: {x: 9.999354, y: 8.328876, z: 1.0000705} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
m_AnchorMin: {x: 0.5, y: 0.5} |
|||
m_AnchorMax: {x: 0.5, y: 0.5} |
|||
m_AnchoredPosition: {x: 0, y: 0.537} |
|||
m_SizeDelta: {x: 100, y: 100} |
|||
m_Pivot: {x: 0.5, y: 0.5} |
|||
--- !u!1 &5299401543336672401 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 382303586006028689} |
|||
- component: {fileID: 1417110473463724327} |
|||
- component: {fileID: 6829741816573684846} |
|||
m_Layer: 9 |
|||
m_Name: Enemy_1 |
|||
m_TagString: Enemy |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 1 |
|||
--- !u!4 &382303586006028689 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0.018499402, y: 0, z: 0, w: 0.9998289} |
|||
m_LocalPosition: {x: -0.65, y: 0.406, z: -2.04} |
|||
m_LocalScale: {x: 1.8167788, y: 1.1626, z: 0.85490113} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 2.12, y: 0, z: 0} |
|||
--- !u!33 &1417110473463724327 |
|||
MeshFilter: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} |
|||
--- !u!23 &6829741816573684846 |
|||
MeshRenderer: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 5299401543336672401} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 0 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_StaticShadowCaster: 0 |
|||
m_MotionVectors: 1 |
|||
m_LightProbeUsage: 1 |
|||
m_ReflectionProbeUsage: 1 |
|||
m_RayTracingMode: 2 |
|||
m_RayTraceProcedural: 0 |
|||
m_RenderingLayerMask: 1 |
|||
m_RendererPriority: 0 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 4f1cc3f6d514aa44a9759eda985dba4b, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_ReceiveGI: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 1 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
m_AdditionalVertexStreams: {fileID: 0} |
|||
--- !u!1 &7509110568895175458 |
|||
GameObject: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
serializedVersion: 6 |
|||
m_Component: |
|||
- component: {fileID: 6503119109324506896} |
|||
- component: {fileID: 4532292198235687560} |
|||
- component: {fileID: 1857277813970574203} |
|||
m_Layer: 9 |
|||
m_Name: AimLine |
|||
m_TagString: Untagged |
|||
m_Icon: {fileID: 0} |
|||
m_NavMeshLayer: 0 |
|||
m_StaticEditorFlags: 0 |
|||
m_IsActive: 0 |
|||
--- !u!4 &6503119109324506896 |
|||
Transform: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
serializedVersion: 2 |
|||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|||
m_LocalPosition: {x: 0, y: 1, z: -4} |
|||
m_LocalScale: {x: 1, y: 1, z: 1} |
|||
m_ConstrainProportionsScale: 0 |
|||
m_Children: [] |
|||
m_Father: {fileID: 4276721484070507378} |
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|||
--- !u!120 &4532292198235687560 |
|||
LineRenderer: |
|||
serializedVersion: 2 |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
m_Enabled: 1 |
|||
m_CastShadows: 1 |
|||
m_ReceiveShadows: 1 |
|||
m_DynamicOccludee: 1 |
|||
m_StaticShadowCaster: 0 |
|||
m_MotionVectors: 0 |
|||
m_LightProbeUsage: 0 |
|||
m_ReflectionProbeUsage: 0 |
|||
m_RayTracingMode: 0 |
|||
m_RayTraceProcedural: 0 |
|||
m_RenderingLayerMask: 1 |
|||
m_RendererPriority: 0 |
|||
m_Materials: |
|||
- {fileID: 2100000, guid: 6dae87f6dbe79e34fb7adcae048807dd, type: 2} |
|||
m_StaticBatchInfo: |
|||
firstSubMesh: 0 |
|||
subMeshCount: 0 |
|||
m_StaticBatchRoot: {fileID: 0} |
|||
m_ProbeAnchor: {fileID: 0} |
|||
m_LightProbeVolumeOverride: {fileID: 0} |
|||
m_ScaleInLightmap: 1 |
|||
m_ReceiveGI: 1 |
|||
m_PreserveUVs: 0 |
|||
m_IgnoreNormalsForChartDetection: 0 |
|||
m_ImportantGI: 0 |
|||
m_StitchLightmapSeams: 1 |
|||
m_SelectedEditorRenderState: 3 |
|||
m_MinimumChartSize: 4 |
|||
m_AutoUVMaxDistance: 0.5 |
|||
m_AutoUVMaxAngle: 89 |
|||
m_LightmapParameters: {fileID: 0} |
|||
m_SortingLayerID: 0 |
|||
m_SortingLayer: 0 |
|||
m_SortingOrder: 0 |
|||
m_Positions: |
|||
- {x: 0, y: 0, z: 0} |
|||
- {x: 6, y: 0, z: 1} |
|||
m_Parameters: |
|||
serializedVersion: 3 |
|||
widthMultiplier: 1 |
|||
widthCurve: |
|||
serializedVersion: 2 |
|||
m_Curve: |
|||
- serializedVersion: 3 |
|||
time: 0.0031585693 |
|||
value: 0.11028418 |
|||
inSlope: 0 |
|||
outSlope: 0 |
|||
tangentMode: 0 |
|||
weightedMode: 0 |
|||
inWeight: 0.33333334 |
|||
outWeight: 0.33333334 |
|||
m_PreInfinity: 2 |
|||
m_PostInfinity: 2 |
|||
m_RotationOrder: 4 |
|||
colorGradient: |
|||
serializedVersion: 2 |
|||
key0: {r: 1, g: 1, b: 1, a: 1} |
|||
key1: {r: 1, g: 1, b: 1, a: 1} |
|||
key2: {r: 0, g: 0, b: 0, a: 0} |
|||
key3: {r: 0, g: 0, b: 0, a: 0} |
|||
key4: {r: 0, g: 0, b: 0, a: 0} |
|||
key5: {r: 0, g: 0, b: 0, a: 0} |
|||
key6: {r: 0, g: 0, b: 0, a: 0} |
|||
key7: {r: 0, g: 0, b: 0, a: 0} |
|||
ctime0: 0 |
|||
ctime1: 65535 |
|||
ctime2: 0 |
|||
ctime3: 0 |
|||
ctime4: 0 |
|||
ctime5: 0 |
|||
ctime6: 0 |
|||
ctime7: 0 |
|||
atime0: 0 |
|||
atime1: 65535 |
|||
atime2: 0 |
|||
atime3: 0 |
|||
atime4: 0 |
|||
atime5: 0 |
|||
atime6: 0 |
|||
atime7: 0 |
|||
m_Mode: 0 |
|||
m_ColorSpace: -1 |
|||
m_NumColorKeys: 2 |
|||
m_NumAlphaKeys: 2 |
|||
numCornerVertices: 0 |
|||
numCapVertices: 0 |
|||
alignment: 0 |
|||
textureMode: 0 |
|||
textureScale: {x: 1, y: 1} |
|||
shadowBias: 0.5 |
|||
generateLightingData: 0 |
|||
m_MaskInteraction: 0 |
|||
m_UseWorldSpace: 1 |
|||
m_Loop: 0 |
|||
m_ApplyActiveColorSpace: 1 |
|||
--- !u!114 &1857277813970574203 |
|||
MonoBehaviour: |
|||
m_ObjectHideFlags: 0 |
|||
m_CorrespondingSourceObject: {fileID: 0} |
|||
m_PrefabInstance: {fileID: 0} |
|||
m_PrefabAsset: {fileID: 0} |
|||
m_GameObject: {fileID: 7509110568895175458} |
|||
m_Enabled: 1 |
|||
m_EditorHideFlags: 0 |
|||
m_Script: {fileID: 11500000, guid: 0e85732096b0d414f9d6f9ea2e10f06f, type: 3} |
|||
m_Name: |
|||
m_EditorClassIdentifier: |
|||
lineRenderer: {fileID: 4532292198235687560} |
|||
density: 2 |
|||
speed: 0.005 |
|||
currentdisappearTime: 0 |
|||
aimGamgObject: {fileID: 0} |
|||
@ -0,0 +1,7 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 5215b7bf3c1792d44b7f72561a3051a1 |
|||
PrefabImporter: |
|||
externalObjects: {} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,29 @@ |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using UnityEngine; |
|||
using UnityEngine.UI; |
|||
|
|||
public class Buff_Wet : Buff |
|||
{ |
|||
public override void Settle() |
|||
{ |
|||
//base.Settle();
|
|||
} |
|||
|
|||
|
|||
public override void SettleEnemy(EnemyNode enemyNode) |
|||
{ |
|||
|
|||
//base.Settle();
|
|||
|
|||
} |
|||
|
|||
|
|||
public override Buff NewBuff(int value) |
|||
{ |
|||
Buff buff = new Buff_Wet(); |
|||
buff.value = value; |
|||
buff.icon = BuffDataManager.Instance.LoadImage(iconPath + "Sslx_Ui_Buff_huozhong_v01"); |
|||
return buff; |
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: aede7897a5991d44c8302037842a826d |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,291 @@ |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using UnityEngine; |
|||
|
|||
public class BlackSheep : MonoBehaviour |
|||
{ |
|||
public EnemyNode enemyNode; |
|||
|
|||
[Header("瞄准射线图层剔除")] |
|||
public LayerMask layerMask; |
|||
|
|||
[Header("计数标量")] |
|||
public float time; |
|||
float lastTime = 0; |
|||
[Header("移动速度标量")] |
|||
public float moveSpeed; |
|||
//怪物行动
|
|||
public EnemyAction enemyAction; |
|||
|
|||
public Dictionary<EnemyAction, float> actionPool = new Dictionary<EnemyAction, float>(); |
|||
|
|||
private void Start() |
|||
{ |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.attack), 0.2f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.shootAndPollute), 0.4f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.attackAndShield), 0.4f); |
|||
} |
|||
|
|||
private void Update() |
|||
{ |
|||
|
|||
} |
|||
|
|||
private void OnEnable() |
|||
{ |
|||
|
|||
|
|||
} |
|||
public void enemyTurn() |
|||
{ |
|||
|
|||
StartCoroutine(JudgNextActionCoroutine()); |
|||
|
|||
} |
|||
|
|||
public void ChooseAction() |
|||
{ |
|||
enemyAction = new EnemyActionAction_Attack(); |
|||
Debug.Log("actionPool大小" + actionPool.Count()); |
|||
if (enemyNode == null) |
|||
{ |
|||
Debug.Log("enemyNode大小"); |
|||
} |
|||
enemyAction = enemyNode.GetRandomAction(actionPool); |
|||
Debug.Log("行动是:" + enemyAction); |
|||
enemyNode.enemyUIBar.SwitchIntention(enemyAction); |
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
IEnumerator JudgeActionCoroutine()//等移动到位置就判断是否还能走
|
|||
{ |
|||
Debug.Log("真正行动是:" + enemyAction); |
|||
switch (enemyAction) |
|||
{ |
|||
case EnemyActionAction_Attack: |
|||
yield return StartCoroutine(MeleeAttackAction()); |
|||
break; |
|||
case EnemyActionAction_Shield: |
|||
yield return StartCoroutine(ShieldAction()); |
|||
break; |
|||
case EnemyAction_ShootAndPollute: |
|||
yield return StartCoroutine(MeleeAttackAndPolluteAction()); |
|||
break; |
|||
} |
|||
|
|||
|
|||
|
|||
} |
|||
|
|||
IEnumerator MeleeAttackAction() |
|||
{ |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator MeleeAttackAndPolluteAction() |
|||
{ |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
GameManager.Instance.playerOn.whoColour = Name.NodeColor.Black; |
|||
if (GameManager.Instance.playerOn.unitPool[0] != null) |
|||
{ |
|||
MapUnity mapUnityA = GameManager.Instance.playerOn.unitPool[1]; |
|||
mapUnityA.whoColour = Name.NodeColor.Black; |
|||
} |
|||
if (GameManager.Instance.playerOn.unitPool[5] != null) |
|||
{ |
|||
MapUnity mapUnityA = GameManager.Instance.playerOn.unitPool[5]; |
|||
mapUnityA.whoColour = Name.NodeColor.Black; |
|||
} |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
GameManager.Instance.playerOn.whoColour = Name.NodeColor.Black; |
|||
if (GameManager.Instance.playerOn.unitPool[0] != null) |
|||
{ |
|||
MapUnity mapUnityA = GameManager.Instance.playerOn.unitPool[0]; |
|||
mapUnityA.whoColour = Name.NodeColor.Black; |
|||
} |
|||
if (GameManager.Instance.playerOn.unitPool[5] != null) |
|||
{ |
|||
MapUnity mapUnityA = GameManager.Instance.playerOn.unitPool[5]; |
|||
mapUnityA.whoColour = Name.NodeColor.Black; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator ShieldAction() |
|||
{ |
|||
enemyNode.EnemyState.shieldValue += 5; |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
|
|||
IEnumerator moveTowardsPlayer() |
|||
{ |
|||
enemyNode.FindPathTowardsPlayer(); |
|||
for (int i = 1; i < getMoveStep(); i++) |
|||
{ |
|||
if (enemyNode.pasth.Count > 1) |
|||
{ |
|||
yield return StartCoroutine(moveOneStep(enemyNode.pasth[i])); |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator moveAwayFromPlayer() |
|||
{ |
|||
enemyNode.FindPathAwayFromPlayer(); |
|||
for (int i = 1; i < getMoveStep(); i++) |
|||
{ |
|||
if (enemyNode.pasth.Count > 1) |
|||
{ |
|||
yield return StartCoroutine(moveOneStep(enemyNode.pasth[i])); |
|||
} |
|||
} |
|||
} |
|||
|
|||
private int getMoveStep() |
|||
{ |
|||
if (enemyNode.getStepRange() + 1 <= enemyNode.pasth.Count) |
|||
{ |
|||
return enemyNode.getStepRange() + 1; |
|||
} |
|||
else |
|||
{ |
|||
return enemyNode.pasth.Count; |
|||
} |
|||
} |
|||
|
|||
IEnumerator moveOneStep(MapUnity nexMapUnity) |
|||
{ |
|||
enemyNode.bleedCal(); |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
MapUnity disNode = nexMapUnity; |
|||
currentNode.blocked = false; |
|||
currentNode.enemyNode = null; |
|||
enemyNode.positionX = disNode.locationX; |
|||
enemyNode.positionY = disNode.locationY; |
|||
disNode.enemyNode = enemyNode; |
|||
yield return StartCoroutine(SkeletonArcherMoveCoroutine(disNode)); |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
IEnumerator JudgNextActionCoroutine() |
|||
{ |
|||
if (enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.sleep)) |
|||
{ |
|||
|
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(JudgeActionCoroutine()); |
|||
} |
|||
//下回合意图
|
|||
ArcherAim(); |
|||
|
|||
//让下一个敌人运动
|
|||
EnemyManager.Instance.enemyTurnState = EnemyManager.EnemyTurnState.runing; |
|||
} |
|||
IEnumerator SkeletonArcherMoveCoroutine(MapUnity endMapUnity)//移动到位置
|
|||
{ |
|||
while (true) |
|||
{ |
|||
float dDistance = Vector3.Distance(this.gameObject.transform.position, endMapUnity.transform.position); |
|||
|
|||
if (dDistance < 0.1f) |
|||
{ |
|||
break; |
|||
} |
|||
this.gameObject.transform.position = Vector3.Lerp(this.gameObject.transform.position, endMapUnity.transform.position, Time.deltaTime * moveSpeed); |
|||
|
|||
yield return 0; |
|||
} |
|||
|
|||
//判断腐蚀
|
|||
enemyNode.CorrodeRealize(endMapUnity); |
|||
//判断流血
|
|||
enemyNode.bleedRealize(endMapUnity); |
|||
yield break; |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
public void ArcherAim() |
|||
{ |
|||
Vector3 dir = GameManager.Instance.player.transform.position - this.transform.position; |
|||
Ray ray = new Ray(this.transform.position, dir); |
|||
if (Physics.Raycast(ray, out RaycastHit raycastHit, 500, layerMask.value)) |
|||
{ |
|||
enemyNode.lineAim.GetComponent<EnemyAimLine>().aimGamgObject = raycastHit.collider.gameObject; |
|||
} |
|||
|
|||
} |
|||
|
|||
public void AttackDamage(int damage) |
|||
{ |
|||
Usermanager.Instance.SufferDamage(enemyNode.DamageCalculation(damage), enemyNode); |
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: cff9b96bf0935a34e99e64276d588a22 |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,300 @@ |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using UnityEngine; |
|||
|
|||
public class DarkCloud : MonoBehaviour |
|||
{ |
|||
EnemyNode enemyNode; |
|||
|
|||
[Header("瞄准射线图层剔除")] |
|||
public LayerMask layerMask; |
|||
|
|||
[Header("计数标量")] |
|||
public float time; |
|||
float lastTime = 0; |
|||
[Header("移动速度标量")] |
|||
public float moveSpeed; |
|||
//怪物行动
|
|||
public EnemyAction enemyAction; |
|||
|
|||
public Dictionary<EnemyAction, float> actionPool = new Dictionary<EnemyAction, float>(); |
|||
|
|||
private void Start() |
|||
{ |
|||
enemyNode = GetComponent<EnemyNode>(); |
|||
|
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.shoot), 0.4f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.shootAndPollute), 0.3f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.shield), 0.3f); |
|||
enemyNode.sufferAbnormalCondition(AbnormalCondition.corrode, 1); |
|||
enemyNode.sufferAbnormalCondition(AbnormalCondition.boomAndPollute, 1); |
|||
} |
|||
|
|||
private void Update() |
|||
{ |
|||
|
|||
} |
|||
|
|||
private void OnEnable() |
|||
{ |
|||
|
|||
|
|||
} |
|||
public void enemyTurn() |
|||
{ |
|||
|
|||
StartCoroutine(JudgNextActionCoroutine()); |
|||
|
|||
} |
|||
|
|||
public void ChooseAction() |
|||
{ |
|||
enemyAction = new EnemyActionAction_Shoot(); |
|||
Debug.Log("actionPool大小"+ actionPool.Count()); |
|||
if (enemyNode == null) |
|||
{ |
|||
Debug.Log("enemyNode大小"); |
|||
} |
|||
enemyAction = enemyNode.GetRandomAction(actionPool); |
|||
Debug.Log("行动是:" + enemyAction); |
|||
enemyNode.enemyUIBar.SwitchIntention(enemyAction); |
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
IEnumerator JudgeActionCoroutine()//等移动到位置就判断是否还能走
|
|||
{ |
|||
Debug.Log("真正行动是:" + enemyAction); |
|||
switch (enemyAction) |
|||
{ |
|||
case EnemyActionAction_Shoot: |
|||
yield return StartCoroutine(RemoteAttackAction()); |
|||
break; |
|||
case EnemyActionAction_Shield: |
|||
yield return StartCoroutine(ShieldAction()); |
|||
break; |
|||
case EnemyAction_ShootAndPollute: |
|||
yield return StartCoroutine(RemoteAttackAndPolluteAction()); |
|||
break; |
|||
} |
|||
|
|||
|
|||
|
|||
} |
|||
|
|||
IEnumerator MeleeAttackAction() |
|||
{ |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator RemoteAttackAction() |
|||
{ |
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.banStep, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.boom, 1);
|
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
|
|||
yield return new WaitForSeconds(1); |
|||
yield return StartCoroutine(moveAwayFromPlayer()); |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
} |
|||
} |
|||
|
|||
IEnumerator RemoteAttackAndPolluteAction() |
|||
{ |
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.banStep, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.boom, 1);
|
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
if (GameManager.Instance.playerOn.unitPool[1] != null) |
|||
{ |
|||
MapUnity mapUnityA = GameManager.Instance.playerOn.unitPool[1]; |
|||
mapUnityA.whoColour=Name.NodeColor.Black; |
|||
} |
|||
if (GameManager.Instance.playerOn.unitPool[5] != null) |
|||
{ |
|||
MapUnity mapUnityA = GameManager.Instance.playerOn.unitPool[5]; |
|||
mapUnityA.whoColour = Name.NodeColor.Black; |
|||
} |
|||
|
|||
} |
|||
|
|||
yield return new WaitForSeconds(1); |
|||
yield return StartCoroutine(moveAwayFromPlayer()); |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
} |
|||
} |
|||
IEnumerator ShieldAction() |
|||
{ |
|||
enemyNode.EnemyState.shieldValue += 10; |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
HashSet<MapUnity> targetNodes=new HashSet<MapUnity> { currentNode }; |
|||
getNodeTools.getCircleNodeForEnemy(targetNodes,1); |
|||
foreach (MapUnity node in targetNodes) |
|||
{ |
|||
node.whoColour = Name.NodeColor.Black; |
|||
} |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
} |
|||
} |
|||
|
|||
|
|||
IEnumerator moveTowardsPlayer() |
|||
{ |
|||
enemyNode.FindPathTowardsPlayer(); |
|||
for (int i = 1; i < getMoveStep(); i++) |
|||
{ |
|||
if (enemyNode.pasth.Count > 1) |
|||
{ |
|||
yield return StartCoroutine(moveOneStep(enemyNode.pasth[i])); |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator moveAwayFromPlayer() |
|||
{ |
|||
enemyNode.FindPathAwayFromPlayer(); |
|||
for (int i = 1; i < getMoveStep(); i++) |
|||
{ |
|||
if (enemyNode.pasth.Count > 1) |
|||
{ |
|||
yield return StartCoroutine(moveOneStep(enemyNode.pasth[i])); |
|||
} |
|||
} |
|||
} |
|||
|
|||
private int getMoveStep() |
|||
{ |
|||
if (enemyNode.getStepRange() + 1 <= enemyNode.pasth.Count) |
|||
{ |
|||
return enemyNode.getStepRange() + 1; |
|||
} |
|||
else |
|||
{ |
|||
return enemyNode.pasth.Count; |
|||
} |
|||
} |
|||
|
|||
IEnumerator moveOneStep(MapUnity nexMapUnity) |
|||
{ |
|||
enemyNode.bleedCal(); |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
MapUnity disNode = nexMapUnity; |
|||
currentNode.blocked = false; |
|||
currentNode.enemyNode = null; |
|||
enemyNode.positionX = disNode.locationX; |
|||
enemyNode.positionY = disNode.locationY; |
|||
disNode.enemyNode = enemyNode; |
|||
yield return StartCoroutine(SkeletonArcherMoveCoroutine(disNode)); |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
IEnumerator JudgNextActionCoroutine() |
|||
{ |
|||
if (enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.sleep)) |
|||
{ |
|||
|
|||
} |
|||
else |
|||
{ |
|||
Debug.Log("开始"); |
|||
yield return StartCoroutine(JudgeActionCoroutine()); |
|||
} |
|||
Debug.Log("结束"); |
|||
//下回合意图
|
|||
ArcherAim(); |
|||
|
|||
//让下一个敌人运动
|
|||
EnemyManager.Instance.enemyTurnState = EnemyManager.EnemyTurnState.runing; |
|||
} |
|||
IEnumerator SkeletonArcherMoveCoroutine(MapUnity endMapUnity)//移动到位置
|
|||
{ |
|||
while (true) |
|||
{ |
|||
float dDistance = Vector3.Distance(this.gameObject.transform.position, endMapUnity.transform.position); |
|||
|
|||
if (dDistance < 0.1f) |
|||
{ |
|||
break; |
|||
} |
|||
this.gameObject.transform.position = Vector3.Lerp(this.gameObject.transform.position, endMapUnity.transform.position, Time.deltaTime * moveSpeed); |
|||
|
|||
yield return 0; |
|||
} |
|||
|
|||
//判断腐蚀
|
|||
enemyNode.CorrodeRealize(endMapUnity); |
|||
//判断流血
|
|||
enemyNode.bleedRealize(endMapUnity); |
|||
yield break; |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
public void ArcherAim() |
|||
{ |
|||
Vector3 dir = GameManager.Instance.player.transform.position - this.transform.position; |
|||
Ray ray = new Ray(this.transform.position, dir); |
|||
if (Physics.Raycast(ray, out RaycastHit raycastHit, 500, layerMask.value)) |
|||
{ |
|||
enemyNode.lineAim.GetComponent<EnemyAimLine>().aimGamgObject = raycastHit.collider.gameObject; |
|||
} |
|||
|
|||
} |
|||
|
|||
public void AttackDamage(int damage) |
|||
{ |
|||
Usermanager.Instance.SufferDamage(enemyNode.DamageCalculation(damage), enemyNode); |
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 620ad3aeb3d0caf41b4b401901b81e66 |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,319 @@ |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using UnityEngine; |
|||
|
|||
public class Grinfiend : MonoBehaviour |
|||
{ |
|||
public EnemyNode enemyNode; |
|||
|
|||
[Header("瞄准射线图层剔除")] |
|||
public LayerMask layerMask; |
|||
|
|||
[Header("计数标量")] |
|||
public float time; |
|||
float lastTime = 0; |
|||
[Header("移动速度标量")] |
|||
public float moveSpeed; |
|||
//怪物行动
|
|||
public EnemyAction enemyAction; |
|||
|
|||
public Dictionary<EnemyAction, float> actionPool = new Dictionary<EnemyAction, float>(); |
|||
|
|||
private void Start() |
|||
{ |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.shoot), 0.2f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.deBuff), 0.8f); |
|||
} |
|||
|
|||
private void Update() |
|||
{ |
|||
|
|||
} |
|||
|
|||
private void OnEnable() |
|||
{ |
|||
|
|||
|
|||
} |
|||
public void enemyTurn() |
|||
{ |
|||
|
|||
StartCoroutine(JudgNextActionCoroutine()); |
|||
|
|||
} |
|||
|
|||
public void ChooseAction() |
|||
{ |
|||
enemyAction = new EnemyActionAction_Shoot(); |
|||
enemyAction = enemyNode.GetRandomAction(actionPool); |
|||
Debug.Log("行动是:" + enemyAction); |
|||
enemyNode.enemyUIBar.SwitchIntention(enemyAction); |
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
IEnumerator JudgeActionCoroutine()//等移动到位置就判断是否还能走
|
|||
{ |
|||
Debug.Log("真正行动是:" + enemyAction); |
|||
switch (enemyAction) |
|||
{ |
|||
case EnemyActionAction_Shoot: |
|||
yield return StartCoroutine(RemoteAttackAction()); |
|||
break; |
|||
case EnemyActionAction_DeBuff: |
|||
yield return StartCoroutine(DebuffAction()); |
|||
break; |
|||
} |
|||
|
|||
|
|||
|
|||
} |
|||
|
|||
IEnumerator MeleeAttackAction() |
|||
{ |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator RemoteAttackAction() |
|||
{ |
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.banStep, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.boom, 1);
|
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
|
|||
yield return new WaitForSeconds(1); |
|||
yield return StartCoroutine(moveAwayFromPlayer()); |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
} |
|||
} |
|||
|
|||
IEnumerator RemoteAttackAndPolluteAction() |
|||
{ |
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.banStep, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.boom, 1);
|
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
if (GameManager.Instance.playerOn.unitPool[1] != null) |
|||
{ |
|||
MapUnity mapUnityA = GameManager.Instance.playerOn.unitPool[1]; |
|||
mapUnityA.whoColour=Name.NodeColor.Black; |
|||
} |
|||
if (GameManager.Instance.playerOn.unitPool[5] != null) |
|||
{ |
|||
MapUnity mapUnityA = GameManager.Instance.playerOn.unitPool[5]; |
|||
mapUnityA.whoColour = Name.NodeColor.Black; |
|||
} |
|||
|
|||
} |
|||
|
|||
yield return new WaitForSeconds(1); |
|||
yield return StartCoroutine(moveAwayFromPlayer()); |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
} |
|||
} |
|||
|
|||
public string GetRandomAction(Dictionary<string, double> actions) |
|||
{ |
|||
System.Random random = new System.Random(); |
|||
double randValue = random.NextDouble(); // 生成一个 [0, 1) 之间的随机数
|
|||
double cumulative = 0.0; |
|||
|
|||
foreach (var action in actions) |
|||
{ |
|||
cumulative += action.Value; |
|||
if (randValue < cumulative) |
|||
{ |
|||
return action.Key; |
|||
} |
|||
} |
|||
return null; // 如果没有匹配到,则返回 null(理论上不会出现此情况)
|
|||
} |
|||
IEnumerator DebuffAction() |
|||
{ |
|||
Dictionary<string, double> debuffPool = new Dictionary<string, double>() |
|||
{ |
|||
{"para", 0.2 }, |
|||
{"weak", 0.4 }, |
|||
{"vulnerable", 0.4 } |
|||
}; |
|||
|
|||
string action = GetRandomAction(debuffPool); |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
switch (action) |
|||
{ |
|||
case "para": |
|||
Debug.Log("寄生:"); |
|||
Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.parasitism, 1); |
|||
break; |
|||
case "weak": |
|||
Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.weak, 1); |
|||
Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.addDrawCard, -1); |
|||
break; |
|||
case "vulnerable": |
|||
Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.vulnerable, 1); |
|||
Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.downSpeed, 1); |
|||
break; |
|||
|
|||
} |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
} |
|||
} |
|||
|
|||
|
|||
IEnumerator moveTowardsPlayer() |
|||
{ |
|||
enemyNode.FindPathTowardsPlayer(); |
|||
for (int i = 1; i < getMoveStep(); i++) |
|||
{ |
|||
if (enemyNode.pasth.Count > 1) |
|||
{ |
|||
yield return StartCoroutine(moveOneStep(enemyNode.pasth[i])); |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator moveAwayFromPlayer() |
|||
{ |
|||
enemyNode.FindPathAwayFromPlayer(); |
|||
for (int i = 1; i < getMoveStep(); i++) |
|||
{ |
|||
if (enemyNode.pasth.Count > 1) |
|||
{ |
|||
yield return StartCoroutine(moveOneStep(enemyNode.pasth[i])); |
|||
} |
|||
} |
|||
} |
|||
|
|||
private int getMoveStep() |
|||
{ |
|||
if (enemyNode.getStepRange() + 1 <= enemyNode.pasth.Count) |
|||
{ |
|||
return enemyNode.getStepRange() + 1; |
|||
} |
|||
else |
|||
{ |
|||
return enemyNode.pasth.Count; |
|||
} |
|||
} |
|||
|
|||
IEnumerator moveOneStep(MapUnity nexMapUnity) |
|||
{ |
|||
enemyNode.bleedCal(); |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
MapUnity disNode = nexMapUnity; |
|||
currentNode.blocked = false; |
|||
currentNode.enemyNode = null; |
|||
enemyNode.positionX = disNode.locationX; |
|||
enemyNode.positionY = disNode.locationY; |
|||
disNode.enemyNode = enemyNode; |
|||
yield return StartCoroutine(SkeletonArcherMoveCoroutine(disNode)); |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
IEnumerator JudgNextActionCoroutine() |
|||
{ |
|||
if (enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.sleep)) |
|||
{ |
|||
|
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(JudgeActionCoroutine()); |
|||
} |
|||
//下回合意图
|
|||
ArcherAim(); |
|||
|
|||
//让下一个敌人运动
|
|||
EnemyManager.Instance.enemyTurnState = EnemyManager.EnemyTurnState.runing; |
|||
} |
|||
IEnumerator SkeletonArcherMoveCoroutine(MapUnity endMapUnity)//移动到位置
|
|||
{ |
|||
while (true) |
|||
{ |
|||
float dDistance = Vector3.Distance(this.gameObject.transform.position, endMapUnity.transform.position); |
|||
|
|||
if (dDistance < 0.1f) |
|||
{ |
|||
break; |
|||
} |
|||
this.gameObject.transform.position = Vector3.Lerp(this.gameObject.transform.position, endMapUnity.transform.position, Time.deltaTime * moveSpeed); |
|||
|
|||
yield return 0; |
|||
} |
|||
|
|||
//判断腐蚀
|
|||
enemyNode.CorrodeRealize(endMapUnity); |
|||
//判断流血
|
|||
enemyNode.bleedRealize(endMapUnity); |
|||
yield break; |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
public void ArcherAim() |
|||
{ |
|||
Vector3 dir = GameManager.Instance.player.transform.position - this.transform.position; |
|||
Ray ray = new Ray(this.transform.position, dir); |
|||
if (Physics.Raycast(ray, out RaycastHit raycastHit, 500, layerMask.value)) |
|||
{ |
|||
enemyNode.lineAim.GetComponent<EnemyAimLine>().aimGamgObject = raycastHit.collider.gameObject; |
|||
} |
|||
|
|||
} |
|||
|
|||
public void AttackDamage(int damage) |
|||
{ |
|||
Usermanager.Instance.SufferDamage(enemyNode.DamageCalculation(damage), enemyNode); |
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: d18a1c278edb3e04e865dd3b52d63e2f |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,370 @@ |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using UnityEngine; |
|||
|
|||
public class Mushroom : MonoBehaviour |
|||
{ |
|||
public EnemyNode enemyNode; |
|||
|
|||
[Header("瞄准射线图层剔除")] |
|||
public LayerMask layerMask; |
|||
|
|||
[Header("计数标量")] |
|||
public float time; |
|||
float lastTime = 0; |
|||
[Header("移动速度标量")] |
|||
public float moveSpeed; |
|||
//怪物行动
|
|||
public EnemyAction enemyAction; |
|||
|
|||
public Dictionary<EnemyAction, float> actionPool = new Dictionary<EnemyAction, float>(); |
|||
|
|||
private void Start() |
|||
{ |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.attack), 0.2f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.aoe), 0.4f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.weak), 0.2f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.deBuff), 0.2f); |
|||
} |
|||
|
|||
private void Update() |
|||
{ |
|||
|
|||
} |
|||
|
|||
private void OnEnable() |
|||
{ |
|||
|
|||
|
|||
} |
|||
public void enemyTurn() |
|||
{ |
|||
|
|||
StartCoroutine(JudgNextActionCoroutine()); |
|||
|
|||
} |
|||
|
|||
public void ChooseAction() |
|||
{ |
|||
enemyAction = new EnemyActionAction_Attack(); |
|||
enemyAction = enemyNode.GetRandomAction(actionPool); |
|||
Debug.Log("行动是:" + enemyAction); |
|||
enemyNode.enemyUIBar.SwitchIntention(enemyAction); |
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
IEnumerator JudgeActionCoroutine()//等移动到位置就判断是否还能走
|
|||
{ |
|||
Debug.Log("真正行动是:" + enemyAction); |
|||
switch (enemyAction) |
|||
{ |
|||
case EnemyActionAction_Attack: |
|||
yield return StartCoroutine(MeleeAttackAction()); |
|||
break; |
|||
case EnemyAction_Weak: |
|||
yield return StartCoroutine(MeleeAttackAndWeakAction()); |
|||
break; |
|||
case EnemyActionAction_Aoe: |
|||
yield return StartCoroutine(SkillAction()); |
|||
break; |
|||
case EnemyActionAction_DeBuff: |
|||
yield return StartCoroutine(MeleeAttackAndDebuffAction()); |
|||
break; |
|||
} |
|||
|
|||
|
|||
|
|||
} |
|||
|
|||
IEnumerator SkillAction() |
|||
{ |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
HashSet<MapUnity> targetNodes = new HashSet<MapUnity> { currentNode }; |
|||
getNodeTools.getCircleNodeForEnemy(targetNodes, 1); |
|||
foreach (MapUnity node in targetNodes) |
|||
{ |
|||
node.whoColour = Name.NodeColor.Black; |
|||
if (node.Equals(GameManager.Instance.playerOn)) |
|||
{ |
|||
Usermanager.Instance.SufferDamage(enemyNode.DamageCalculation(7), enemyNode); |
|||
} |
|||
} |
|||
enemyNode.currentActionScript.FadeAttackRangeAll(enemyNode); |
|||
enemyNode.aoeRangePool.Clear(); |
|||
yield break; |
|||
|
|||
} |
|||
IEnumerator MeleeAttackAction() |
|||
{ |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator MeleeAttackAndWeakAction() |
|||
{ |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.weak, 1); |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.weak, 1); |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator MeleeAttackAndDebuffAction() |
|||
{ |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.downSpeed, 1); |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.downSpeed, 1); |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
IEnumerator RemoteAttackAction() |
|||
{ |
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.banStep, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.boom, 1);
|
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
|
|||
yield return new WaitForSeconds(1); |
|||
yield return StartCoroutine(moveAwayFromPlayer()); |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
} |
|||
} |
|||
|
|||
IEnumerator RemoteAttackAndPolluteAction() |
|||
{ |
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//Usermanager.Instance.SufferPlayerAbnormalCondition(AbnormalCondition.banStep, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.immunity, 1);
|
|||
//enemyNode.sufferAbnormalCondition(AbnormalCondition.boom, 1);
|
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
if (GameManager.Instance.playerOn.unitPool[1] != null) |
|||
{ |
|||
MapUnity mapUnityA = GameManager.Instance.playerOn.unitPool[1]; |
|||
mapUnityA.whoColour=Name.NodeColor.Black; |
|||
} |
|||
if (GameManager.Instance.playerOn.unitPool[5] != null) |
|||
{ |
|||
MapUnity mapUnityA = GameManager.Instance.playerOn.unitPool[5]; |
|||
mapUnityA.whoColour = Name.NodeColor.Black; |
|||
} |
|||
|
|||
} |
|||
|
|||
yield return new WaitForSeconds(1); |
|||
yield return StartCoroutine(moveAwayFromPlayer()); |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
} |
|||
} |
|||
IEnumerator ShieldAction() |
|||
{ |
|||
enemyNode.EnemyState.shieldValue += 5; |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(enemyNode.EnemyState.damage); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
|
|||
IEnumerator moveTowardsPlayer() |
|||
{ |
|||
enemyNode.FindPathTowardsPlayer(); |
|||
for (int i = 1; i < getMoveStep(); i++) |
|||
{ |
|||
if (enemyNode.pasth.Count > 1) |
|||
{ |
|||
yield return StartCoroutine(moveOneStep(enemyNode.pasth[i])); |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator moveAwayFromPlayer() |
|||
{ |
|||
enemyNode.FindPathAwayFromPlayer(); |
|||
for (int i = 1; i < getMoveStep(); i++) |
|||
{ |
|||
if (enemyNode.pasth.Count > 1) |
|||
{ |
|||
yield return StartCoroutine(moveOneStep(enemyNode.pasth[i])); |
|||
} |
|||
} |
|||
} |
|||
|
|||
private int getMoveStep() |
|||
{ |
|||
if (enemyNode.getStepRange() + 1 <= enemyNode.pasth.Count) |
|||
{ |
|||
return enemyNode.getStepRange() + 1; |
|||
} |
|||
else |
|||
{ |
|||
return enemyNode.pasth.Count; |
|||
} |
|||
} |
|||
|
|||
IEnumerator moveOneStep(MapUnity nexMapUnity) |
|||
{ |
|||
enemyNode.bleedCal(); |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
MapUnity disNode = nexMapUnity; |
|||
currentNode.blocked = false; |
|||
currentNode.enemyNode = null; |
|||
enemyNode.positionX = disNode.locationX; |
|||
enemyNode.positionY = disNode.locationY; |
|||
disNode.enemyNode = enemyNode; |
|||
yield return StartCoroutine(SkeletonArcherMoveCoroutine(disNode)); |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
IEnumerator JudgNextActionCoroutine() |
|||
{ |
|||
if (enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.sleep)) |
|||
{ |
|||
|
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(JudgeActionCoroutine()); |
|||
} |
|||
//下回合意图
|
|||
ArcherAim(); |
|||
|
|||
//让下一个敌人运动
|
|||
EnemyManager.Instance.enemyTurnState = EnemyManager.EnemyTurnState.runing; |
|||
} |
|||
IEnumerator SkeletonArcherMoveCoroutine(MapUnity endMapUnity)//移动到位置
|
|||
{ |
|||
while (true) |
|||
{ |
|||
float dDistance = Vector3.Distance(this.gameObject.transform.position, endMapUnity.transform.position); |
|||
|
|||
if (dDistance < 0.1f) |
|||
{ |
|||
break; |
|||
} |
|||
this.gameObject.transform.position = Vector3.Lerp(this.gameObject.transform.position, endMapUnity.transform.position, Time.deltaTime * moveSpeed); |
|||
|
|||
yield return 0; |
|||
} |
|||
|
|||
//判断腐蚀
|
|||
enemyNode.CorrodeRealize(endMapUnity); |
|||
//判断流血
|
|||
enemyNode.bleedRealize(endMapUnity); |
|||
yield break; |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
public void ArcherAim() |
|||
{ |
|||
Vector3 dir = GameManager.Instance.player.transform.position - this.transform.position; |
|||
Ray ray = new Ray(this.transform.position, dir); |
|||
if (Physics.Raycast(ray, out RaycastHit raycastHit, 500, layerMask.value)) |
|||
{ |
|||
enemyNode.lineAim.GetComponent<EnemyAimLine>().aimGamgObject = raycastHit.collider.gameObject; |
|||
} |
|||
|
|||
} |
|||
|
|||
public void AttackDamage(int damage) |
|||
{ |
|||
Usermanager.Instance.SufferDamage(enemyNode.DamageCalculation(damage), enemyNode); |
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: da70d494672e9b742b621a143865cad7 |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,307 @@ |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using UnityEngine; |
|||
using static Name; |
|||
|
|||
public class Polymaw : MonoBehaviour |
|||
{ |
|||
public EnemyNode enemyNode; |
|||
|
|||
[Header("瞄准射线图层剔除")] |
|||
public LayerMask layerMask; |
|||
|
|||
[Header("计数标量")] |
|||
public float time; |
|||
float lastTime = 0; |
|||
[Header("移动速度标量")] |
|||
public float moveSpeed; |
|||
//怪物行动
|
|||
public EnemyAction enemyAction; |
|||
|
|||
public Dictionary<EnemyAction, float> actionPool = new Dictionary<EnemyAction, float>(); |
|||
|
|||
private void Start() |
|||
{ |
|||
enemyNode = GetComponent<EnemyNode>(); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.aoe), 0.2f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.shootAndPollute), 0.25f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.attackAndShield), 0.25f); |
|||
actionPool.Add(EnemyPlanUIManager.Instance.NewAction(EnemyPlanUIFunction.attack), 0.3f); |
|||
} |
|||
|
|||
private void Update() |
|||
{ |
|||
|
|||
|
|||
} |
|||
|
|||
public void enemyTurn() |
|||
{ |
|||
StartCoroutine(JudgNextActionCoroutine()); |
|||
|
|||
} |
|||
|
|||
public void ChooseAction() |
|||
{ |
|||
enemyAction = new EnemyActionAction_Attack(); |
|||
enemyAction = enemyNode.GetRandomAction(actionPool); |
|||
Debug.Log("行动是:" + enemyAction); |
|||
enemyNode.enemyUIBar.SwitchIntention(enemyAction); |
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
IEnumerator JudgeActionCoroutine()//等移动到位置就判断是否还能走
|
|||
{ |
|||
Debug.Log("真正行动是:" + enemyAction); |
|||
switch (enemyAction) |
|||
{ |
|||
case EnemyActionAction_Aoe: |
|||
yield return StartCoroutine(SkillAction()); |
|||
break; |
|||
case EnemyActionAction_Attack: |
|||
yield return StartCoroutine(MeleeAttackAction()); |
|||
break; |
|||
case EnemyAction_AttackAndShield: |
|||
yield return StartCoroutine(MeleeAttackAndShieldAction()); |
|||
break; |
|||
case EnemyAction_ShootAndPollute: |
|||
yield return StartCoroutine(MeleeAttackAndPolluteAction()); |
|||
break; |
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
IEnumerator moveTowardsPlayer() |
|||
{ |
|||
enemyNode.FindPathTowardsPlayer(); |
|||
enemyNode.CorrodeRealize(enemyNode.pasth[0]); |
|||
Debug.Log("FindPathTowardsPlayer成功"); |
|||
for (int i = 1; i < getMoveStep(); i++) |
|||
{ |
|||
if (enemyNode.pasth.Count > 1) |
|||
{ |
|||
Debug.Log("剩余步数还有"+ enemyNode.pasth.Count); |
|||
yield return StartCoroutine(moveOneStep(enemyNode.pasth[i])); |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator moveAwayFromPlayer() |
|||
{ |
|||
enemyNode.FindPathAwayFromPlayer(); |
|||
for (int i = 1; i < getMoveStep(); i++) |
|||
{ |
|||
if (enemyNode.pasth.Count > 1) |
|||
{ |
|||
yield return StartCoroutine(moveOneStep(enemyNode.pasth[i])); |
|||
} |
|||
} |
|||
} |
|||
|
|||
private int getMoveStep() |
|||
{ |
|||
if (enemyNode.getStepRange() + 1 <= enemyNode.pasth.Count) |
|||
{ |
|||
return enemyNode.getStepRange() + 1; |
|||
} |
|||
else |
|||
{ |
|||
return enemyNode.pasth.Count; |
|||
} |
|||
} |
|||
|
|||
IEnumerator moveOneStep(MapUnity nexMapUnity) |
|||
{ |
|||
enemyNode.bleedCal(); |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
MapUnity disNode = nexMapUnity; |
|||
currentNode.blocked = false; |
|||
currentNode.enemyNode = null; |
|||
enemyNode.positionX = disNode.locationX; |
|||
enemyNode.positionY = disNode.locationY; |
|||
disNode.enemyNode = enemyNode; |
|||
yield return StartCoroutine(SkeletonArcherMoveCoroutine(disNode)); |
|||
} |
|||
|
|||
IEnumerator MeleeAttackAction() |
|||
{ |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
Debug.Log("if成功"); |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(); |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
Debug.Log("else成功"); |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator MeleeAttackAndPolluteAction() |
|||
{ |
|||
MapUnity currentNode = GameManager.Instance.playerOn; |
|||
HashSet<MapUnity> targetNodes = new HashSet<MapUnity> { currentNode }; |
|||
getNodeTools.getCircleNodeForEnemy(targetNodes, 1); |
|||
|
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
Debug.Log("if成功"); |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(); |
|||
foreach (MapUnity node in targetNodes) |
|||
{ |
|||
node.whoColour = Name.NodeColor.Black; |
|||
} |
|||
} |
|||
} |
|||
else |
|||
{ |
|||
Debug.Log("else成功"); |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(); |
|||
foreach (MapUnity node in targetNodes) |
|||
{ |
|||
node.whoColour = Name.NodeColor.Black; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
IEnumerator MeleeAttackAndShieldAction() |
|||
{ |
|||
enemyNode.EnemyState.shieldValue += 5; |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
Debug.Log("if成功"); |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(); |
|||
|
|||
} |
|||
} |
|||
else |
|||
{ |
|||
Debug.Log("else成功"); |
|||
yield return StartCoroutine(moveTowardsPlayer()); |
|||
yield return new WaitForSeconds(1); |
|||
currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
if (getNodeTools.canRemoteAttack(currentNode, enemyNode.EnemyState.attackRange)) |
|||
{ |
|||
if (!enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.disarm)) |
|||
{ |
|||
AttackDamage(); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
IEnumerator SkillAction() |
|||
{ |
|||
enemyNode.EnemyState.abnormalCondition.Clear(); |
|||
GameManager.Instance.SyncColourCountUI(); |
|||
MapUnity currentNode = GameManager.Instance.X[enemyNode.positionX].Y[enemyNode.positionY]; |
|||
HashSet<MapUnity> targetNodes = new HashSet<MapUnity> { currentNode }; |
|||
getNodeTools.getCircleNodeForEnemy(targetNodes, 2); |
|||
foreach (MapUnity node in targetNodes) |
|||
{ |
|||
node.whoColour = Name.NodeColor.Black; |
|||
if (node.Equals(GameManager.Instance.playerOn)) |
|||
{ |
|||
Usermanager.Instance.SufferDamage(enemyNode.DamageCalculation(5), enemyNode); |
|||
} |
|||
} |
|||
enemyNode.currentActionScript.FadeAttackRangeAll(enemyNode); |
|||
enemyNode.aoeRangePool.Clear(); |
|||
yield break; |
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
IEnumerator JudgNextActionCoroutine() |
|||
{ |
|||
if (enemyNode.EnemyState.abnormalCondition.ContainsKey(AbnormalCondition.sleep)) |
|||
{ |
|||
|
|||
} |
|||
else |
|||
{ |
|||
yield return StartCoroutine(JudgeActionCoroutine()); |
|||
} |
|||
//下回合意图
|
|||
ArcherAim(); |
|||
|
|||
//让下一个敌人运动
|
|||
EnemyManager.Instance.enemyTurnState = EnemyManager.EnemyTurnState.runing; |
|||
} |
|||
IEnumerator SkeletonArcherMoveCoroutine(MapUnity endMapUnity)//移动到位置
|
|||
{ |
|||
while (true) |
|||
{ |
|||
float dDistance = Vector3.Distance(this.gameObject.transform.position, endMapUnity.transform.position); |
|||
|
|||
if (dDistance < 0.1f) |
|||
{ |
|||
break; |
|||
} |
|||
this.gameObject.transform.position = Vector3.Lerp(this.gameObject.transform.position, endMapUnity.transform.position, Time.deltaTime * moveSpeed); |
|||
|
|||
yield return 0; |
|||
} |
|||
|
|||
//判断腐蚀
|
|||
enemyNode.CorrodeRealize(endMapUnity); |
|||
//判断流血
|
|||
enemyNode.bleedRealize(endMapUnity); |
|||
yield break; |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
public void ArcherAim() |
|||
{ |
|||
Vector3 dir = GameManager.Instance.player.transform.position - this.transform.position; |
|||
Ray ray = new Ray(this.transform.position, dir); |
|||
if (Physics.Raycast(ray, out RaycastHit raycastHit, 500, layerMask.value)) |
|||
{ |
|||
enemyNode.lineAim.GetComponent<EnemyAimLine>().aimGamgObject = raycastHit.collider.gameObject; |
|||
} |
|||
|
|||
} |
|||
|
|||
public void AttackDamage() |
|||
{ |
|||
Usermanager.Instance.SufferDamage(enemyNode.DamageCalculation(enemyNode.EnemyState.damage), enemyNode); |
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 441ffc4abe92e93468e7d196c1d2417f |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,69 @@ |
|||
using System; |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using UnityEngine; |
|||
|
|||
public class EffectRangeHandler3_4 : EffectRangeHandlerBase |
|||
{ |
|||
private ZeroToFiveCircularCounter counter = new ZeroToFiveCircularCounter(); |
|||
public EffectRangeHandler3_4(MapUnity currentNode, float euler) |
|||
{ |
|||
influencePreviewPool.Clear(); |
|||
influencePreviewPool.Add(currentNode); |
|||
angleActions = new Dictionary<float, Func<HashSet<MapUnity>>> |
|||
{ |
|||
{ 30.0f, () => |
|||
{ |
|||
ge3_4Node(currentNode,getOffsetFromEuler(30.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 90.0f, () => |
|||
{ |
|||
ge3_4Node(currentNode,getOffsetFromEuler(90.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 150.0f, () => |
|||
{ |
|||
ge3_4Node(currentNode,getOffsetFromEuler(150.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 210.0f, () => |
|||
{ |
|||
ge3_4Node(currentNode,getOffsetFromEuler(210.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 270.0f, () => |
|||
{ |
|||
ge3_4Node(currentNode,getOffsetFromEuler(270.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 330.0f, () => |
|||
{ |
|||
ge3_4Node(currentNode,getOffsetFromEuler(330.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
} |
|||
}; |
|||
|
|||
} |
|||
|
|||
private void ge3_4Node(MapUnity currentNode, int offset) |
|||
{ |
|||
try |
|||
{ |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(2, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)]); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
//nothing to do
|
|||
} |
|||
|
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: ee23d524cb109b144806061ad00221d3 |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,71 @@ |
|||
using System; |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using UnityEngine; |
|||
|
|||
public class EffectRangeHandler5_4 : EffectRangeHandlerBase |
|||
{ |
|||
private ZeroToFiveCircularCounter counter = new ZeroToFiveCircularCounter(); |
|||
public EffectRangeHandler5_4(MapUnity currentNode, float euler) |
|||
{ |
|||
influencePreviewPool.Clear(); |
|||
influencePreviewPool.Add(currentNode); |
|||
angleActions = new Dictionary<float, Func<HashSet<MapUnity>>> |
|||
{ |
|||
{ 30.0f, () => |
|||
{ |
|||
get5_4Node(currentNode,getOffsetFromEuler(30.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 90.0f, () => |
|||
{ |
|||
get5_4Node(currentNode,getOffsetFromEuler(90.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 150.0f, () => |
|||
{ |
|||
get5_4Node(currentNode,getOffsetFromEuler(150.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 210.0f, () => |
|||
{ |
|||
get5_4Node(currentNode,getOffsetFromEuler(210.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 270.0f, () => |
|||
{ |
|||
get5_4Node(currentNode,getOffsetFromEuler(270.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 330.0f, () => |
|||
{ |
|||
get5_4Node(currentNode,getOffsetFromEuler(330.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
} |
|||
}; |
|||
|
|||
} |
|||
|
|||
private void get5_4Node(MapUnity currentNode, int offset) |
|||
{ |
|||
try |
|||
{ |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(2, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(4, offset)]); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
//nothing to do
|
|||
} |
|||
|
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 0412374fb63c99840955db609c8ecdbd |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,71 @@ |
|||
using System; |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using UnityEngine; |
|||
|
|||
public class EffectRangeHandler5_5 : EffectRangeHandlerBase |
|||
{ |
|||
private ZeroToFiveCircularCounter counter = new ZeroToFiveCircularCounter(); |
|||
public EffectRangeHandler5_5(MapUnity currentNode, float euler) |
|||
{ |
|||
influencePreviewPool.Clear(); |
|||
influencePreviewPool.Add(currentNode); |
|||
angleActions = new Dictionary<float, Func<HashSet<MapUnity>>> |
|||
{ |
|||
{ 30.0f, () => |
|||
{ |
|||
get5_5Node(currentNode,getOffsetFromEuler(30.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 90.0f, () => |
|||
{ |
|||
get5_5Node(currentNode,getOffsetFromEuler(90.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 150.0f, () => |
|||
{ |
|||
get5_5Node(currentNode,getOffsetFromEuler(150.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 210.0f, () => |
|||
{ |
|||
get5_5Node(currentNode,getOffsetFromEuler(210.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 270.0f, () => |
|||
{ |
|||
get5_5Node(currentNode,getOffsetFromEuler(270.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 330.0f, () => |
|||
{ |
|||
get5_5Node(currentNode,getOffsetFromEuler(330.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
} |
|||
}; |
|||
|
|||
} |
|||
|
|||
private void get5_5Node(MapUnity currentNode, int offset) |
|||
{ |
|||
try |
|||
{ |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(2, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(2, offset)].unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(4, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(4, offset)].unitPool[counter.Add(3, offset)]); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
//nothing to do
|
|||
} |
|||
|
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 48e09c0c78435294d8132a86967ce115 |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,72 @@ |
|||
using System; |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using UnityEngine; |
|||
|
|||
public class EffectRangeHandler6_4 : EffectRangeHandlerBase |
|||
{ |
|||
private ZeroToFiveCircularCounter counter = new ZeroToFiveCircularCounter(); |
|||
public EffectRangeHandler6_4(MapUnity currentNode, float euler) |
|||
{ |
|||
influencePreviewPool.Clear(); |
|||
influencePreviewPool.Add(currentNode); |
|||
angleActions = new Dictionary<float, Func<HashSet<MapUnity>>> |
|||
{ |
|||
{ 30.0f, () => |
|||
{ |
|||
get6_4Node(currentNode,getOffsetFromEuler(30.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 90.0f, () => |
|||
{ |
|||
get6_4Node(currentNode,getOffsetFromEuler(90.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 150.0f, () => |
|||
{ |
|||
get6_4Node(currentNode,getOffsetFromEuler(150.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 210.0f, () => |
|||
{ |
|||
get6_4Node(currentNode,getOffsetFromEuler(210.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 270.0f, () => |
|||
{ |
|||
get6_4Node(currentNode,getOffsetFromEuler(270.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 330.0f, () => |
|||
{ |
|||
get6_4Node(currentNode,getOffsetFromEuler(330.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
} |
|||
}; |
|||
|
|||
} |
|||
|
|||
private void get6_4Node(MapUnity currentNode, int offset) |
|||
{ |
|||
try |
|||
{ |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(2, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(4, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(2, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(4, offset)]); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
//nothing to do
|
|||
} |
|||
|
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: c9f4786997568ba46afae10721039604 |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,73 @@ |
|||
using System; |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using UnityEngine; |
|||
|
|||
public class EffectRangeHandler6_5 : EffectRangeHandlerBase |
|||
{ |
|||
private ZeroToFiveCircularCounter counter = new ZeroToFiveCircularCounter(); |
|||
public EffectRangeHandler6_5(MapUnity currentNode, float euler) |
|||
{ |
|||
influencePreviewPool.Clear(); |
|||
influencePreviewPool.Add(currentNode); |
|||
angleActions = new Dictionary<float, Func<HashSet<MapUnity>>> |
|||
{ |
|||
{ 30.0f, () => |
|||
{ |
|||
get6_5Node(currentNode,getOffsetFromEuler(30.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 90.0f, () => |
|||
{ |
|||
get6_5Node(currentNode,getOffsetFromEuler(90.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 150.0f, () => |
|||
{ |
|||
get6_5Node(currentNode,getOffsetFromEuler(150.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 210.0f, () => |
|||
{ |
|||
get6_5Node(currentNode,getOffsetFromEuler(210.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 270.0f, () => |
|||
{ |
|||
get6_5Node(currentNode,getOffsetFromEuler(270.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 330.0f, () => |
|||
{ |
|||
get6_5Node(currentNode,getOffsetFromEuler(330.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
} |
|||
}; |
|||
|
|||
} |
|||
|
|||
private void get6_5Node(MapUnity currentNode, int offset) |
|||
{ |
|||
try |
|||
{ |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(2, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(2, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(2, offset)].unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(2, offset)].unitPool[counter.Add(2, offset)]); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
//nothing to do
|
|||
} |
|||
|
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: c9e6d3c5f60aa2b40923181b7fb141e8 |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,72 @@ |
|||
using System; |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using UnityEngine; |
|||
|
|||
public class EffectRangeHandler6_6 : EffectRangeHandlerBase |
|||
{ |
|||
private ZeroToFiveCircularCounter counter = new ZeroToFiveCircularCounter(); |
|||
public EffectRangeHandler6_6(MapUnity currentNode, float euler) |
|||
{ |
|||
influencePreviewPool.Clear(); |
|||
influencePreviewPool.Add(currentNode); |
|||
angleActions = new Dictionary<float, Func<HashSet<MapUnity>>> |
|||
{ |
|||
{ 30.0f, () => |
|||
{ |
|||
get6_6Node(currentNode,getOffsetFromEuler(30.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 90.0f, () => |
|||
{ |
|||
get6_6Node(currentNode,getOffsetFromEuler(90.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 150.0f, () => |
|||
{ |
|||
get6_6Node(currentNode,getOffsetFromEuler(150.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 210.0f, () => |
|||
{ |
|||
get6_6Node(currentNode,getOffsetFromEuler(210.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 270.0f, () => |
|||
{ |
|||
get6_6Node(currentNode,getOffsetFromEuler(270.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 330.0f, () => |
|||
{ |
|||
get6_6Node(currentNode,getOffsetFromEuler(330.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
} |
|||
}; |
|||
|
|||
} |
|||
|
|||
private void get6_6Node(MapUnity currentNode, int offset) |
|||
{ |
|||
try |
|||
{ |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(1, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(4, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(1, offset)].unitPool[counter.Add(1, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(4, offset)].unitPool[counter.Add(4, offset)]); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
//nothing to do
|
|||
} |
|||
|
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 7eb69c362d8eaf0408cb4a72bd0c6006 |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,72 @@ |
|||
using System; |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using UnityEngine; |
|||
|
|||
public class EffectRangeHandler6_7 : EffectRangeHandlerBase |
|||
{ |
|||
private ZeroToFiveCircularCounter counter = new ZeroToFiveCircularCounter(); |
|||
public EffectRangeHandler6_7(MapUnity currentNode, float euler) |
|||
{ |
|||
influencePreviewPool.Clear(); |
|||
influencePreviewPool.Add(currentNode); |
|||
angleActions = new Dictionary<float, Func<HashSet<MapUnity>>> |
|||
{ |
|||
{ 30.0f, () => |
|||
{ |
|||
get6_7Node(currentNode,getOffsetFromEuler(30.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 90.0f, () => |
|||
{ |
|||
get6_7Node(currentNode,getOffsetFromEuler(90.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 150.0f, () => |
|||
{ |
|||
get6_7Node(currentNode,getOffsetFromEuler(150.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 210.0f, () => |
|||
{ |
|||
get6_7Node(currentNode,getOffsetFromEuler(210.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 270.0f, () => |
|||
{ |
|||
get6_7Node(currentNode,getOffsetFromEuler(270.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 330.0f, () => |
|||
{ |
|||
get6_7Node(currentNode,getOffsetFromEuler(330.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
} |
|||
}; |
|||
|
|||
} |
|||
|
|||
private void get6_7Node(MapUnity currentNode, int offset) |
|||
{ |
|||
try |
|||
{ |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(2, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(4, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(3, offset)].unitPool[counter.Add(3, offset)]); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
//nothing to do
|
|||
} |
|||
|
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: 158bf0b62a9968440b6aeb6469823f28 |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
@ -0,0 +1,74 @@ |
|||
using System; |
|||
using System.Collections; |
|||
using System.Collections.Generic; |
|||
using UnityEngine; |
|||
|
|||
public class EffectRangeHandler7_3 : EffectRangeHandlerBase |
|||
{ |
|||
private ZeroToFiveCircularCounter counter = new ZeroToFiveCircularCounter(); |
|||
public EffectRangeHandler7_3(MapUnity currentNode, float euler) |
|||
{ |
|||
influencePreviewPool.Clear(); |
|||
influencePreviewPool.Add(currentNode); |
|||
angleActions = new Dictionary<float, Func<HashSet<MapUnity>>> |
|||
{ |
|||
{ 30.0f, () => |
|||
{ |
|||
get7_3Node(currentNode,getOffsetFromEuler(30.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 90.0f, () => |
|||
{ |
|||
get7_3Node(currentNode,getOffsetFromEuler(90.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 150.0f, () => |
|||
{ |
|||
get7_3Node(currentNode,getOffsetFromEuler(150.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 210.0f, () => |
|||
{ |
|||
get7_3Node(currentNode,getOffsetFromEuler(210.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 270.0f, () => |
|||
{ |
|||
get7_3Node(currentNode,getOffsetFromEuler(270.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
}, |
|||
{ 330.0f, () => |
|||
{ |
|||
get7_3Node(currentNode,getOffsetFromEuler(330.0f)); |
|||
return influencePreviewPool; |
|||
} |
|||
} |
|||
}; |
|||
|
|||
} |
|||
|
|||
private void get7_3Node(MapUnity currentNode, int offset) |
|||
{ |
|||
try |
|||
{ |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(4, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(2, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(1, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(5, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(3, offset)]); |
|||
tryGetNodeInfluencedable(currentNode.unitPool[counter.Add(3, offset)].unitPool[counter.Add(3, offset)].unitPool[counter.Add(3, offset)]); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
//nothing to do
|
|||
} |
|||
|
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
fileFormatVersion: 2 |
|||
guid: c7cdf6b800287f34abb6e8283d8d83a5 |
|||
MonoImporter: |
|||
externalObjects: {} |
|||
serializedVersion: 2 |
|||
defaultReferences: [] |
|||
executionOrder: 0 |
|||
icon: {instanceID: 0} |
|||
userData: |
|||
assetBundleName: |
|||
assetBundleVariant: |
|||
|
Loading…
Reference in new issue