projectile revamp + scorpion (#14)
Reviewed-on: #14 Reviewed-by: EliaGingras1 <william-gin1@hotmail.com>
This commit is contained in:
parent
efafc2bddc
commit
39bffa8c59
@ -1,5 +1,77 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &298534009199319999
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 2287864536556935619}
|
||||
- component: {fileID: 246610560728595982}
|
||||
- component: {fileID: 634419449123047291}
|
||||
m_Layer: 0
|
||||
m_Name: collider
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &2287864536556935619
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 298534009199319999}
|
||||
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: 6962989255644195631}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!61 &246610560728595982
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 298534009199319999}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0.16277367, y: 0.016521543}
|
||||
m_SpriteTilingProperty:
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
pivot: {x: 0, y: 0}
|
||||
oldSize: {x: 0, y: 0}
|
||||
newSize: {x: 0, y: 0}
|
||||
adaptiveTilingThreshold: 0
|
||||
drawMode: 0
|
||||
adaptiveTiling: 0
|
||||
m_AutoTiling: 0
|
||||
serializedVersion: 2
|
||||
m_Size: {x: 0.3744527, y: 0.17825907}
|
||||
m_EdgeRadius: 0
|
||||
--- !u!114 &634419449123047291
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 298534009199319999}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 531d7966d86bd0c4d83baf58bcb56cd5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_entityLinked: {fileID: 0}
|
||||
--- !u!1 &6962989255644195630
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -10,7 +82,7 @@ GameObject:
|
||||
m_Component:
|
||||
- component: {fileID: 6962989255644195631}
|
||||
- component: {fileID: -1491803373025033585}
|
||||
- component: {fileID: 8133954670424616578}
|
||||
- component: {fileID: 621676283081164958}
|
||||
m_Layer: 0
|
||||
m_Name: CastleProjectile
|
||||
m_TagString: Untagged
|
||||
@ -31,7 +103,7 @@ Transform:
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 6962989256011107500}
|
||||
- {fileID: 6802302589573039538}
|
||||
- {fileID: 2287864536556935619}
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
@ -56,7 +128,7 @@ Rigidbody2D:
|
||||
m_SleepingMode: 1
|
||||
m_CollisionDetection: 0
|
||||
m_Constraints: 4
|
||||
--- !u!114 &8133954670424616578
|
||||
--- !u!114 &621676283081164958
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
@ -65,13 +137,12 @@ MonoBehaviour:
|
||||
m_GameObject: {fileID: 6962989255644195630}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 01782bd631a6e1446956ed140a24c530, type: 3}
|
||||
m_Script: {fileID: 11500000, guid: 93457b8199dbf2f48b89f680687dbd6e, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_detectionLinked: {fileID: 4130391605812397686}
|
||||
straightProjectile: 1
|
||||
_speed: 5
|
||||
_direction: 0
|
||||
_angle: 10
|
||||
_speed: 1
|
||||
--- !u!1 &6962989256011107503
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -83,7 +154,7 @@ GameObject:
|
||||
- component: {fileID: 6962989256011107500}
|
||||
- component: {fileID: 6962989256011107501}
|
||||
m_Layer: 0
|
||||
m_Name: exmeple
|
||||
m_Name: sprite
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@ -156,75 +227,3 @@ SpriteRenderer:
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!1 &8726647054546243319
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6802302589573039538}
|
||||
- component: {fileID: 7006189111012443782}
|
||||
- component: {fileID: 4130391605812397686}
|
||||
m_Layer: 0
|
||||
m_Name: detection
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &6802302589573039538
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
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: 6962989255644195631}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!61 &7006189111012443782
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0.16277367, y: 0.016521543}
|
||||
m_SpriteTilingProperty:
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
pivot: {x: 0, y: 0}
|
||||
oldSize: {x: 0, y: 0}
|
||||
newSize: {x: 0, y: 0}
|
||||
adaptiveTilingThreshold: 0
|
||||
drawMode: 0
|
||||
adaptiveTiling: 0
|
||||
m_AutoTiling: 0
|
||||
serializedVersion: 2
|
||||
m_Size: {x: 0.3744527, y: 0.17825907}
|
||||
m_EdgeRadius: 0
|
||||
--- !u!114 &4130391605812397686
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 531d7966d86bd0c4d83baf58bcb56cd5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_entityLinked: {fileID: 0}
|
||||
|
||||
@ -1,5 +1,63 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &2082922348827363435
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 4569873279010216557}
|
||||
- component: {fileID: 3167830415449792895}
|
||||
m_Layer: 0
|
||||
m_Name: collider
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &4569873279010216557
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2082922348827363435}
|
||||
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: 6962989255644195631}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!61 &3167830415449792895
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2082922348827363435}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: -0.1, y: 0}
|
||||
m_SpriteTilingProperty:
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
pivot: {x: 0, y: 0}
|
||||
oldSize: {x: 0, y: 0}
|
||||
newSize: {x: 0, y: 0}
|
||||
adaptiveTilingThreshold: 0
|
||||
drawMode: 0
|
||||
adaptiveTiling: 0
|
||||
m_AutoTiling: 0
|
||||
serializedVersion: 2
|
||||
m_Size: {x: 0.2, y: 0.1}
|
||||
m_EdgeRadius: 0
|
||||
--- !u!1 &6962989255644195630
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -10,7 +68,7 @@ GameObject:
|
||||
m_Component:
|
||||
- component: {fileID: 6962989255644195631}
|
||||
- component: {fileID: -1491803373025033585}
|
||||
- component: {fileID: 8133954670424616578}
|
||||
- component: {fileID: 6762493969386267100}
|
||||
m_Layer: 0
|
||||
m_Name: baseProjectile
|
||||
m_TagString: Untagged
|
||||
@ -31,7 +89,7 @@ Transform:
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 6962989256011107500}
|
||||
- {fileID: 6802302589573039538}
|
||||
- {fileID: 4569873279010216557}
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
@ -43,7 +101,7 @@ Rigidbody2D:
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6962989255644195630}
|
||||
m_BodyType: 0
|
||||
m_BodyType: 1
|
||||
m_Simulated: 1
|
||||
m_UseFullKinematicContacts: 0
|
||||
m_UseAutoMass: 0
|
||||
@ -56,7 +114,7 @@ Rigidbody2D:
|
||||
m_SleepingMode: 1
|
||||
m_CollisionDetection: 0
|
||||
m_Constraints: 4
|
||||
--- !u!114 &8133954670424616578
|
||||
--- !u!114 &6762493969386267100
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
@ -65,12 +123,12 @@ MonoBehaviour:
|
||||
m_GameObject: {fileID: 6962989255644195630}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 01782bd631a6e1446956ed140a24c530, type: 3}
|
||||
m_Script: {fileID: 11500000, guid: 93457b8199dbf2f48b89f680687dbd6e, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_detectionLinked: {fileID: 4130391605812397686}
|
||||
_angle: 10
|
||||
_speed: 1
|
||||
_speed: 5
|
||||
_direction: 0
|
||||
_angle: 30
|
||||
--- !u!1 &6962989256011107503
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -82,7 +140,7 @@ GameObject:
|
||||
- component: {fileID: 6962989256011107500}
|
||||
- component: {fileID: 6962989256011107501}
|
||||
m_Layer: 0
|
||||
m_Name: exmeple
|
||||
m_Name: sprite
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@ -155,75 +213,3 @@ SpriteRenderer:
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!1 &8726647054546243319
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6802302589573039538}
|
||||
- component: {fileID: 7006189111012443782}
|
||||
- component: {fileID: 4130391605812397686}
|
||||
m_Layer: 0
|
||||
m_Name: detection
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &6802302589573039538
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
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: 6962989255644195631}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!61 &7006189111012443782
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0.16277367, y: 0.016521543}
|
||||
m_SpriteTilingProperty:
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
pivot: {x: 0, y: 0}
|
||||
oldSize: {x: 0, y: 0}
|
||||
newSize: {x: 0, y: 0}
|
||||
adaptiveTilingThreshold: 0
|
||||
drawMode: 0
|
||||
adaptiveTiling: 0
|
||||
m_AutoTiling: 0
|
||||
serializedVersion: 2
|
||||
m_Size: {x: 0.3744527, y: 0.17825907}
|
||||
m_EdgeRadius: 0
|
||||
--- !u!114 &4130391605812397686
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 531d7966d86bd0c4d83baf58bcb56cd5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_entityLinked: {fileID: 0}
|
||||
|
||||
@ -68,10 +68,9 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: af32629f84318134799756134098abf9, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_detectionLinked: {fileID: 4130391605812397686}
|
||||
straightProjectile: 1
|
||||
_angle: 0
|
||||
_speed: 2
|
||||
_speed: 5
|
||||
_direction: 0
|
||||
_maxHitEntities: 1
|
||||
_slowIntensity: 0.25
|
||||
_slowDuration: 5
|
||||
--- !u!1 &6962989256011107503
|
||||
@ -168,9 +167,8 @@ GameObject:
|
||||
m_Component:
|
||||
- component: {fileID: 6802302589573039538}
|
||||
- component: {fileID: 7006189111012443782}
|
||||
- component: {fileID: 4130391605812397686}
|
||||
m_Layer: 0
|
||||
m_Name: detection
|
||||
m_Name: collider
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@ -204,7 +202,7 @@ BoxCollider2D:
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0.16277367, y: 0.016521543}
|
||||
m_Offset: {x: -0.1, y: 0}
|
||||
m_SpriteTilingProperty:
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
pivot: {x: 0, y: 0}
|
||||
@ -215,18 +213,5 @@ BoxCollider2D:
|
||||
adaptiveTiling: 0
|
||||
m_AutoTiling: 0
|
||||
serializedVersion: 2
|
||||
m_Size: {x: 0.3744527, y: 0.17825907}
|
||||
m_Size: {x: 0.2, y: 0.1}
|
||||
m_EdgeRadius: 0
|
||||
--- !u!114 &4130391605812397686
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 531d7966d86bd0c4d83baf58bcb56cd5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_entityLinked: {fileID: 0}
|
||||
|
||||
230
Assets/Prefabs/oldBaseProjectile.prefab
Normal file
230
Assets/Prefabs/oldBaseProjectile.prefab
Normal file
@ -0,0 +1,230 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &6962989255644195630
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6962989255644195631}
|
||||
- component: {fileID: -1491803373025033585}
|
||||
- component: {fileID: 8133954670424616578}
|
||||
m_Layer: 0
|
||||
m_Name: oldBaseProjectile
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &6962989255644195631
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6962989255644195630}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -6.61, y: -0.638, z: 1.8112363}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 6962989256011107500}
|
||||
- {fileID: 6802302589573039538}
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!50 &-1491803373025033585
|
||||
Rigidbody2D:
|
||||
serializedVersion: 4
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6962989255644195630}
|
||||
m_BodyType: 0
|
||||
m_Simulated: 1
|
||||
m_UseFullKinematicContacts: 0
|
||||
m_UseAutoMass: 0
|
||||
m_Mass: 1
|
||||
m_LinearDrag: 0
|
||||
m_AngularDrag: 0.05
|
||||
m_GravityScale: 0
|
||||
m_Material: {fileID: 0}
|
||||
m_Interpolate: 0
|
||||
m_SleepingMode: 1
|
||||
m_CollisionDetection: 0
|
||||
m_Constraints: 4
|
||||
--- !u!114 &8133954670424616578
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6962989255644195630}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 01782bd631a6e1446956ed140a24c530, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_detectionLinked: {fileID: 4130391605812397686}
|
||||
straightProjectile: 0
|
||||
_angle: 10
|
||||
_speed: 1
|
||||
--- !u!1 &6962989256011107503
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6962989256011107500}
|
||||
- component: {fileID: 6962989256011107501}
|
||||
m_Layer: 0
|
||||
m_Name: exmeple
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &6962989256011107500
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6962989256011107503}
|
||||
m_LocalRotation: {x: 0, y: -0, z: 0.7071068, w: -0.7071068}
|
||||
m_LocalPosition: {x: 0.0259, y: 0.01, z: 0}
|
||||
m_LocalScale: {x: 0.5394133, y: 0.56488746, z: 0.9686}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 6962989255644195631}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 270}
|
||||
--- !u!212 &6962989256011107501
|
||||
SpriteRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 6962989256011107503}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 0
|
||||
m_ReceiveShadows: 0
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 0
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, 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: 0
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 364159097
|
||||
m_SortingLayer: 1
|
||||
m_SortingOrder: 4
|
||||
m_Sprite: {fileID: 21300000, guid: b28a7c5aeb45b224983f69339965c55d, type: 3}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_FlipX: 0
|
||||
m_FlipY: 0
|
||||
m_DrawMode: 0
|
||||
m_Size: {x: 1.06, y: 1.69}
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!1 &8726647054546243319
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6802302589573039538}
|
||||
- component: {fileID: 7006189111012443782}
|
||||
- component: {fileID: 4130391605812397686}
|
||||
m_Layer: 0
|
||||
m_Name: detection
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &6802302589573039538
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
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: 6962989255644195631}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!61 &7006189111012443782
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0.16277367, y: 0.016521543}
|
||||
m_SpriteTilingProperty:
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
pivot: {x: 0, y: 0}
|
||||
oldSize: {x: 0, y: 0}
|
||||
newSize: {x: 0, y: 0}
|
||||
adaptiveTilingThreshold: 0
|
||||
drawMode: 0
|
||||
adaptiveTiling: 0
|
||||
m_AutoTiling: 0
|
||||
serializedVersion: 2
|
||||
m_Size: {x: 0.3744527, y: 0.17825907}
|
||||
m_EdgeRadius: 0
|
||||
--- !u!114 &4130391605812397686
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 531d7966d86bd0c4d83baf58bcb56cd5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_entityLinked: {fileID: 0}
|
||||
7
Assets/Prefabs/oldBaseProjectile.prefab.meta
Normal file
7
Assets/Prefabs/oldBaseProjectile.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 61e75a685be726940abc2cf555836e96
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -1,5 +1,63 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &300123471756193662
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1663512243480751314}
|
||||
- component: {fileID: 3915641876488228129}
|
||||
m_Layer: 0
|
||||
m_Name: collider
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &1663512243480751314
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 300123471756193662}
|
||||
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: 6962989255644195631}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!61 &3915641876488228129
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 300123471756193662}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: -0.27199745, y: -0.0008074939}
|
||||
m_SpriteTilingProperty:
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
pivot: {x: 0, y: 0}
|
||||
oldSize: {x: 0, y: 0}
|
||||
newSize: {x: 0, y: 0}
|
||||
adaptiveTilingThreshold: 0
|
||||
drawMode: 0
|
||||
adaptiveTiling: 0
|
||||
m_AutoTiling: 0
|
||||
serializedVersion: 2
|
||||
m_Size: {x: 0.5439949, y: 0.259885}
|
||||
m_EdgeRadius: 0
|
||||
--- !u!1 &6962989255644195630
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -10,7 +68,7 @@ GameObject:
|
||||
m_Component:
|
||||
- component: {fileID: 6962989255644195631}
|
||||
- component: {fileID: -1491803373025033585}
|
||||
- component: {fileID: 8133954670424616578}
|
||||
- component: {fileID: -6001325168800467254}
|
||||
m_Layer: 0
|
||||
m_Name: scorpionProjectile
|
||||
m_TagString: Untagged
|
||||
@ -30,8 +88,8 @@ Transform:
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 6802302589573039538}
|
||||
- {fileID: 3815555280328424213}
|
||||
- {fileID: 1663512243480751314}
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
@ -56,7 +114,7 @@ Rigidbody2D:
|
||||
m_SleepingMode: 1
|
||||
m_CollisionDetection: 0
|
||||
m_Constraints: 4
|
||||
--- !u!114 &8133954670424616578
|
||||
--- !u!114 &-6001325168800467254
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
@ -65,85 +123,12 @@ MonoBehaviour:
|
||||
m_GameObject: {fileID: 6962989255644195630}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 01782bd631a6e1446956ed140a24c530, type: 3}
|
||||
m_Script: {fileID: 11500000, guid: 5ceb014877ce6be4fb369fcfd8234952, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_detectionLinked: {fileID: 4130391605812397686}
|
||||
straightProjectile: 1
|
||||
_angle: 90
|
||||
_speed: 14
|
||||
--- !u!1 &8726647054546243319
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6802302589573039538}
|
||||
- component: {fileID: 7006189111012443782}
|
||||
- component: {fileID: 4130391605812397686}
|
||||
m_Layer: 0
|
||||
m_Name: detection
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &6802302589573039538
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
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: 6962989255644195631}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!61 &7006189111012443782
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
m_Enabled: 1
|
||||
m_Density: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IsTrigger: 1
|
||||
m_UsedByEffector: 0
|
||||
m_UsedByComposite: 0
|
||||
m_Offset: {x: 0.2813213, y: 0.016521543}
|
||||
m_SpriteTilingProperty:
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
pivot: {x: 0, y: 0}
|
||||
oldSize: {x: 0, y: 0}
|
||||
newSize: {x: 0, y: 0}
|
||||
adaptiveTilingThreshold: 0
|
||||
drawMode: 0
|
||||
adaptiveTiling: 0
|
||||
m_AutoTiling: 0
|
||||
serializedVersion: 2
|
||||
m_Size: {x: 0.61154795, y: 0.17825907}
|
||||
m_EdgeRadius: 0
|
||||
--- !u!114 &4130391605812397686
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8726647054546243319}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 531d7966d86bd0c4d83baf58bcb56cd5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_entityLinked: {fileID: 0}
|
||||
_speed: 5
|
||||
_direction: 0
|
||||
_maxHitEntities: 3
|
||||
--- !u!1 &8978875623871672114
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -174,7 +159,7 @@ Transform:
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 6962989255644195631}
|
||||
m_RootOrder: 1
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!212 &8544502696280423281
|
||||
SpriteRenderer:
|
||||
|
||||
@ -13,7 +13,7 @@ public class Archer : Ally
|
||||
public override void Update()
|
||||
{
|
||||
base.Update();
|
||||
if(IsEnemyDetected) {
|
||||
if (IsEnemyDetected && Enemy.Hp > 0) {
|
||||
AttackEnemy();
|
||||
}
|
||||
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 796c5970b01ebd249b04e1a0598abc7c
|
||||
guid: e5b82afdc49c5c74dbc9bcc51c0ace0d
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
61
Assets/Scripts/Projectiles/ArcProjectile.cs
Normal file
61
Assets/Scripts/Projectiles/ArcProjectile.cs
Normal file
@ -0,0 +1,61 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class ArcProjectile : TargetedProjectile
|
||||
{
|
||||
[Header("Arc Projectile")]
|
||||
[SerializeField, Range(0, 90)]
|
||||
private float _angle = 45.0f;
|
||||
|
||||
protected override void ApplyMovement()
|
||||
{
|
||||
if (Target != null)
|
||||
{
|
||||
EndPos = Target.Position;
|
||||
}
|
||||
|
||||
// position:
|
||||
// k(ax^2 + x)
|
||||
// k: angle comme ratio opposé / adjacent
|
||||
// a: -1 / distance
|
||||
// x: position x sur l'arc
|
||||
// y: position y sur l'arc
|
||||
float distance = (EndPos.x - StartPos.x);
|
||||
float k = Mathf.Sign(distance) * Mathf.Tan(_angle * Mathf.Deg2Rad);
|
||||
float a = -1.0f / distance;
|
||||
float x = (transform.position.x - StartPos.x) + Speed * Time.deltaTime;
|
||||
float y = k * (a * x * x + x);
|
||||
Vector2 newPos = new Vector2(StartPos.x + x, StartPos.y + y);
|
||||
transform.position = newPos;
|
||||
|
||||
// rotation:
|
||||
// k(2ax + 1)
|
||||
// (c'est la dérivée de la position)
|
||||
float dDx = k * (2 * a * x + 1);
|
||||
float rotationAngle = Mathf.Atan(dDx) * Mathf.Rad2Deg;
|
||||
transform.eulerAngles = new Vector3(0, 0, rotationAngle);
|
||||
|
||||
if (y < 0)
|
||||
{
|
||||
Destroy(gameObject);
|
||||
}
|
||||
}
|
||||
|
||||
protected override void HandleCollision(Collider2D other)
|
||||
{
|
||||
if (Target == null) return;
|
||||
if (other.gameObject != Target.gameObject) return;
|
||||
|
||||
if (other.TryGetComponent(out Entity target))
|
||||
{
|
||||
ApplyEffects(target);
|
||||
target.Hit(Damage);
|
||||
if (target.Hp <= 0)
|
||||
{
|
||||
target.Death();
|
||||
}
|
||||
Destroy(gameObject);
|
||||
}
|
||||
}
|
||||
}
|
||||
11
Assets/Scripts/Projectiles/ArcProjectile.cs.meta
Normal file
11
Assets/Scripts/Projectiles/ArcProjectile.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 93457b8199dbf2f48b89f680687dbd6e
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -2,18 +2,19 @@ using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class BolasProjectile : Projectile
|
||||
public class BolasProjectile : StraightProjectile
|
||||
{
|
||||
[Header("Bolas Projectile")]
|
||||
[SerializeField]
|
||||
private float _slowIntensity = 0.25f;
|
||||
[SerializeField]
|
||||
private float _slowDuration = 5f;
|
||||
|
||||
protected override void ApplyEffects()
|
||||
protected override void ApplyEffects(Entity target)
|
||||
{
|
||||
if (Target.StatusHandler)
|
||||
if (target.StatusHandler)
|
||||
{
|
||||
Target.StatusHandler.ApplySlow(_slowIntensity, _slowDuration);
|
||||
target.StatusHandler.ApplySlow(_slowIntensity, _slowDuration);
|
||||
}
|
||||
}
|
||||
}
|
||||
58
Assets/Scripts/Projectiles/Projectile.cs
Normal file
58
Assets/Scripts/Projectiles/Projectile.cs
Normal file
@ -0,0 +1,58 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public abstract class Projectile : MonoBehaviour
|
||||
{
|
||||
[Header("Projectile")]
|
||||
[SerializeField]
|
||||
private float _speed = 5.0f;
|
||||
[SerializeField]
|
||||
private DirectionEnum _direction;
|
||||
|
||||
private int _damage;
|
||||
private Entity _origin;
|
||||
private Vector2 _startPos;
|
||||
|
||||
protected virtual void Start()
|
||||
{
|
||||
if (Direction == DirectionEnum.Left)
|
||||
{
|
||||
_speed = -_speed;
|
||||
}
|
||||
_startPos = new Vector2(_origin.transform.position.x, _origin.transform.position.y);
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
ApplyMovement();
|
||||
if (transform.position.x < -100.0f || transform.position.x > 100.0f)
|
||||
{
|
||||
Destroy(gameObject);
|
||||
}
|
||||
}
|
||||
|
||||
private void OnTriggerEnter2D(Collider2D other)
|
||||
{
|
||||
HandleCollision(other);
|
||||
}
|
||||
|
||||
protected virtual void ApplyEffects(Entity target) { }
|
||||
|
||||
protected abstract void ApplyMovement();
|
||||
|
||||
protected abstract void HandleCollision(Collider2D other);
|
||||
|
||||
public float Speed { get => _speed; set => _speed = value; }
|
||||
public int Damage { get => _damage; set => _damage = value; }
|
||||
private DirectionEnum Direction { get => _direction; set => _direction = value; }
|
||||
public Entity Origin { get => _origin; set => _origin = value; }
|
||||
public Vector2 StartPos { get => _startPos; set => _startPos = value; }
|
||||
|
||||
protected enum DirectionEnum
|
||||
{
|
||||
Right,
|
||||
Left
|
||||
}
|
||||
}
|
||||
11
Assets/Scripts/Projectiles/Projectile.cs.meta
Normal file
11
Assets/Scripts/Projectiles/Projectile.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7f3a7a4a2b2f8a04ebf99682d8e0f808
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -3,7 +3,7 @@ using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class Projectile : MonoBehaviour
|
||||
public class ProjectileOld : MonoBehaviour
|
||||
{
|
||||
|
||||
[SerializeField]
|
||||
43
Assets/Scripts/Projectiles/StraightProjectile.cs
Normal file
43
Assets/Scripts/Projectiles/StraightProjectile.cs
Normal file
@ -0,0 +1,43 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class StraightProjectile : Projectile
|
||||
{
|
||||
[Header("Straight Projectile")]
|
||||
[SerializeField]
|
||||
private int _maxHitEntities = 1;
|
||||
|
||||
private List<Entity> _hitEntities = new List<Entity>();
|
||||
|
||||
protected override void ApplyMovement()
|
||||
{
|
||||
transform.position += new Vector3(Speed * Time.deltaTime, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
protected override void HandleCollision(Collider2D other)
|
||||
{
|
||||
if (other.CompareTag(Origin.tag)) return;
|
||||
|
||||
if (other.TryGetComponent(out Entity target) &&
|
||||
!HitEntities.Contains(target) &&
|
||||
HitEntities.Count < MaxHitEntities)
|
||||
{
|
||||
ApplyEffects(target);
|
||||
target.Hit(Damage);
|
||||
HitEntities.Add(target);
|
||||
if (target.Hp <= 0)
|
||||
{
|
||||
target.Death();
|
||||
}
|
||||
}
|
||||
|
||||
if (HitEntities.Count >= MaxHitEntities)
|
||||
{
|
||||
Destroy(gameObject);
|
||||
}
|
||||
}
|
||||
|
||||
public List<Entity> HitEntities { get => _hitEntities; set => _hitEntities = value; }
|
||||
public int MaxHitEntities { get => _maxHitEntities; set => _maxHitEntities = value; }
|
||||
}
|
||||
11
Assets/Scripts/Projectiles/StraightProjectile.cs.meta
Normal file
11
Assets/Scripts/Projectiles/StraightProjectile.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5ceb014877ce6be4fb369fcfd8234952
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
17
Assets/Scripts/Projectiles/TargetedProjectile.cs
Normal file
17
Assets/Scripts/Projectiles/TargetedProjectile.cs
Normal file
@ -0,0 +1,17 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public abstract class TargetedProjectile : Projectile
|
||||
{
|
||||
private Vector2 _endPos;
|
||||
|
||||
protected override void Start()
|
||||
{
|
||||
base.Start();
|
||||
_endPos = Target.Position;
|
||||
}
|
||||
|
||||
public Vector2 EndPos { get => _endPos; set => _endPos = value; }
|
||||
public Entity Target { get => Origin.Enemy;}
|
||||
}
|
||||
11
Assets/Scripts/Projectiles/TargetedProjectile.cs.meta
Normal file
11
Assets/Scripts/Projectiles/TargetedProjectile.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ce23527d40bdc4f429d5a976b66d7146
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -35,13 +35,10 @@ public class Root : MonoBehaviour
|
||||
|
||||
Vector3 spawnPos = (_projectileSpawn == null) ? _rigidbodyAlly.position : _projectileSpawn.position;
|
||||
GameObject _newArrow = Instantiate(_projectile, spawnPos, Quaternion.identity);
|
||||
|
||||
//Warning : the Speed of the arrow is equal to the speed of this unit, if this unit need to move, use an other variable !
|
||||
_newArrow.GetComponent<Projectile>().Damage = _entity.AttackDamage;
|
||||
_newArrow.GetComponent<Projectile>().EnemySpeed = _entity.Enemy.Speed;
|
||||
_newArrow.GetComponent<Projectile>().VectorStart = _rigidbodyAlly.position;
|
||||
_newArrow.GetComponent<Projectile>().VectorEnd = _rigidbodyOpponent.position;
|
||||
_newArrow.GetComponent<Projectile>().Target = _entity.Enemy;
|
||||
|
||||
var projectile = _newArrow.GetComponent<Projectile>();
|
||||
projectile.Damage = _entity.AttackDamage;
|
||||
projectile.Origin = _entity;
|
||||
}
|
||||
|
||||
public void PlaySound(string soundName)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user