Skip to content

Commit c0e4272

Browse files
committed
feat: finished turret ability
Turret spawns for a time and fires projectiles towards the asteroids.
1 parent 342b9d2 commit c0e4272

File tree

11 files changed

+487
-73
lines changed

11 files changed

+487
-73
lines changed

Assets/Prefabs/Player Adition/turret.prefab

Lines changed: 109 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ GameObject:
1212
- component: {fileID: 300357918546832606}
1313
- component: {fileID: -3864110262965596585}
1414
- component: {fileID: -3916051911042084546}
15+
- component: {fileID: 7556481907129131605}
1516
m_Layer: 0
1617
m_Name: turret
1718
m_TagString: Untagged
@@ -28,7 +29,7 @@ Transform:
2829
m_GameObject: {fileID: 2727780360183139143}
2930
serializedVersion: 2
3031
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
31-
m_LocalPosition: {x: -3.71, y: -4.04, z: 0}
32+
m_LocalPosition: {x: 0, y: 0, z: 0}
3233
m_LocalScale: {x: 0.5, y: 0.5, z: 1}
3334
m_ConstrainProportionsScale: 0
3435
m_Children: []
@@ -133,8 +134,113 @@ MonoBehaviour:
133134
m_Script: {fileID: 11500000, guid: 3c0e6b82feaef824f83351ea96bf47d7, type: 3}
134135
m_Name:
135136
m_EditorClassIdentifier:
136-
player_default_projectile: {fileID: 6289194308112020401, guid: 184e53708a9fbf44db2da85a2173e207, type: 3}
137137
max_life_time: 4
138138
min_life_time: 5
139139
tag_to_detect: Asteroid
140-
detect_radius: 15
140+
detect_radius: 5
141+
projectile: {fileID: 8203671304629546108, guid: c307aec402c0d43448ad63dd62b2f671, type: 3}
142+
shot_cooldown: 0.5
143+
--- !u!120 &7556481907129131605
144+
LineRenderer:
145+
serializedVersion: 2
146+
m_ObjectHideFlags: 0
147+
m_CorrespondingSourceObject: {fileID: 0}
148+
m_PrefabInstance: {fileID: 0}
149+
m_PrefabAsset: {fileID: 0}
150+
m_GameObject: {fileID: 2727780360183139143}
151+
m_Enabled: 1
152+
m_CastShadows: 1
153+
m_ReceiveShadows: 1
154+
m_DynamicOccludee: 1
155+
m_StaticShadowCaster: 0
156+
m_MotionVectors: 0
157+
m_LightProbeUsage: 0
158+
m_ReflectionProbeUsage: 0
159+
m_RayTracingMode: 0
160+
m_RayTraceProcedural: 0
161+
m_RenderingLayerMask: 1
162+
m_RendererPriority: 0
163+
m_Materials:
164+
- {fileID: 0}
165+
m_StaticBatchInfo:
166+
firstSubMesh: 0
167+
subMeshCount: 0
168+
m_StaticBatchRoot: {fileID: 0}
169+
m_ProbeAnchor: {fileID: 0}
170+
m_LightProbeVolumeOverride: {fileID: 0}
171+
m_ScaleInLightmap: 1
172+
m_ReceiveGI: 1
173+
m_PreserveUVs: 0
174+
m_IgnoreNormalsForChartDetection: 0
175+
m_ImportantGI: 0
176+
m_StitchLightmapSeams: 1
177+
m_SelectedEditorRenderState: 3
178+
m_MinimumChartSize: 4
179+
m_AutoUVMaxDistance: 0.5
180+
m_AutoUVMaxAngle: 89
181+
m_LightmapParameters: {fileID: 0}
182+
m_SortingLayerID: 0
183+
m_SortingLayer: 0
184+
m_SortingOrder: 0
185+
m_Positions:
186+
- {x: 0, y: 0, z: 0}
187+
- {x: 0, y: 0, z: 1}
188+
m_Parameters:
189+
serializedVersion: 3
190+
widthMultiplier: 1
191+
widthCurve:
192+
serializedVersion: 2
193+
m_Curve:
194+
- serializedVersion: 3
195+
time: 0
196+
value: 1
197+
inSlope: 0
198+
outSlope: 0
199+
tangentMode: 0
200+
weightedMode: 0
201+
inWeight: 0.33333334
202+
outWeight: 0.33333334
203+
m_PreInfinity: 2
204+
m_PostInfinity: 2
205+
m_RotationOrder: 4
206+
colorGradient:
207+
serializedVersion: 2
208+
key0: {r: 1, g: 1, b: 1, a: 1}
209+
key1: {r: 1, g: 1, b: 1, a: 1}
210+
key2: {r: 0, g: 0, b: 0, a: 0}
211+
key3: {r: 0, g: 0, b: 0, a: 0}
212+
key4: {r: 0, g: 0, b: 0, a: 0}
213+
key5: {r: 0, g: 0, b: 0, a: 0}
214+
key6: {r: 0, g: 0, b: 0, a: 0}
215+
key7: {r: 0, g: 0, b: 0, a: 0}
216+
ctime0: 0
217+
ctime1: 65535
218+
ctime2: 0
219+
ctime3: 0
220+
ctime4: 0
221+
ctime5: 0
222+
ctime6: 0
223+
ctime7: 0
224+
atime0: 0
225+
atime1: 65535
226+
atime2: 0
227+
atime3: 0
228+
atime4: 0
229+
atime5: 0
230+
atime6: 0
231+
atime7: 0
232+
m_Mode: 0
233+
m_ColorSpace: -1
234+
m_NumColorKeys: 2
235+
m_NumAlphaKeys: 2
236+
numCornerVertices: 0
237+
numCapVertices: 0
238+
alignment: 0
239+
textureMode: 0
240+
textureScale: {x: 1, y: 1}
241+
shadowBias: 0.5
242+
generateLightingData: 0
243+
m_MaskInteraction: 0
244+
m_UseWorldSpace: 1
245+
m_Loop: 0
246+
m_ApplyActiveColorSpace: 1
Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
%YAML 1.1
2+
%TAG !u! tag:unity3d.com,2011:
3+
--- !u!1 &8203671304629546108
4+
GameObject:
5+
m_ObjectHideFlags: 0
6+
m_CorrespondingSourceObject: {fileID: 0}
7+
m_PrefabInstance: {fileID: 0}
8+
m_PrefabAsset: {fileID: 0}
9+
serializedVersion: 6
10+
m_Component:
11+
- component: {fileID: 1367410747157570780}
12+
- component: {fileID: 6727980360719851558}
13+
- component: {fileID: -5391414756226026622}
14+
- component: {fileID: -2025744869463358350}
15+
- component: {fileID: 2457984936095503069}
16+
m_Layer: 0
17+
m_Name: turret_projectile
18+
m_TagString: Projectile
19+
m_Icon: {fileID: 0}
20+
m_NavMeshLayer: 0
21+
m_StaticEditorFlags: 0
22+
m_IsActive: 1
23+
--- !u!4 &1367410747157570780
24+
Transform:
25+
m_ObjectHideFlags: 0
26+
m_CorrespondingSourceObject: {fileID: 0}
27+
m_PrefabInstance: {fileID: 0}
28+
m_PrefabAsset: {fileID: 0}
29+
m_GameObject: {fileID: 8203671304629546108}
30+
serializedVersion: 2
31+
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
32+
m_LocalPosition: {x: 0, y: 0, z: 0}
33+
m_LocalScale: {x: 0.25, y: 0.25, z: 1}
34+
m_ConstrainProportionsScale: 0
35+
m_Children: []
36+
m_Father: {fileID: 0}
37+
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
38+
--- !u!212 &6727980360719851558
39+
SpriteRenderer:
40+
m_ObjectHideFlags: 0
41+
m_CorrespondingSourceObject: {fileID: 0}
42+
m_PrefabInstance: {fileID: 0}
43+
m_PrefabAsset: {fileID: 0}
44+
m_GameObject: {fileID: 8203671304629546108}
45+
m_Enabled: 1
46+
m_CastShadows: 0
47+
m_ReceiveShadows: 0
48+
m_DynamicOccludee: 1
49+
m_StaticShadowCaster: 0
50+
m_MotionVectors: 1
51+
m_LightProbeUsage: 1
52+
m_ReflectionProbeUsage: 1
53+
m_RayTracingMode: 0
54+
m_RayTraceProcedural: 0
55+
m_RenderingLayerMask: 1
56+
m_RendererPriority: 0
57+
m_Materials:
58+
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
59+
m_StaticBatchInfo:
60+
firstSubMesh: 0
61+
subMeshCount: 0
62+
m_StaticBatchRoot: {fileID: 0}
63+
m_ProbeAnchor: {fileID: 0}
64+
m_LightProbeVolumeOverride: {fileID: 0}
65+
m_ScaleInLightmap: 1
66+
m_ReceiveGI: 1
67+
m_PreserveUVs: 0
68+
m_IgnoreNormalsForChartDetection: 0
69+
m_ImportantGI: 0
70+
m_StitchLightmapSeams: 1
71+
m_SelectedEditorRenderState: 0
72+
m_MinimumChartSize: 4
73+
m_AutoUVMaxDistance: 0.5
74+
m_AutoUVMaxAngle: 89
75+
m_LightmapParameters: {fileID: 0}
76+
m_SortingLayerID: 0
77+
m_SortingLayer: 0
78+
m_SortingOrder: 0
79+
m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3}
80+
m_Color: {r: 1, g: 1, b: 1, a: 1}
81+
m_FlipX: 0
82+
m_FlipY: 0
83+
m_DrawMode: 0
84+
m_Size: {x: 1, y: 1}
85+
m_AdaptiveModeThreshold: 0.5
86+
m_SpriteTileMode: 0
87+
m_WasSpriteAssigned: 1
88+
m_MaskInteraction: 0
89+
m_SpriteSortPoint: 0
90+
--- !u!50 &-5391414756226026622
91+
Rigidbody2D:
92+
serializedVersion: 4
93+
m_ObjectHideFlags: 0
94+
m_CorrespondingSourceObject: {fileID: 0}
95+
m_PrefabInstance: {fileID: 0}
96+
m_PrefabAsset: {fileID: 0}
97+
m_GameObject: {fileID: 8203671304629546108}
98+
m_BodyType: 0
99+
m_Simulated: 1
100+
m_UseFullKinematicContacts: 0
101+
m_UseAutoMass: 0
102+
m_Mass: 1
103+
m_LinearDrag: 0
104+
m_AngularDrag: 0.05
105+
m_GravityScale: 0
106+
m_Material: {fileID: 0}
107+
m_IncludeLayers:
108+
serializedVersion: 2
109+
m_Bits: 0
110+
m_ExcludeLayers:
111+
serializedVersion: 2
112+
m_Bits: 0
113+
m_Interpolate: 0
114+
m_SleepingMode: 1
115+
m_CollisionDetection: 0
116+
m_Constraints: 4
117+
--- !u!58 &-2025744869463358350
118+
CircleCollider2D:
119+
m_ObjectHideFlags: 0
120+
m_CorrespondingSourceObject: {fileID: 0}
121+
m_PrefabInstance: {fileID: 0}
122+
m_PrefabAsset: {fileID: 0}
123+
m_GameObject: {fileID: 8203671304629546108}
124+
m_Enabled: 1
125+
m_Density: 1
126+
m_Material: {fileID: 0}
127+
m_IncludeLayers:
128+
serializedVersion: 2
129+
m_Bits: 0
130+
m_ExcludeLayers:
131+
serializedVersion: 2
132+
m_Bits: 0
133+
m_LayerOverridePriority: 0
134+
m_ForceSendLayers:
135+
serializedVersion: 2
136+
m_Bits: 4294967295
137+
m_ForceReceiveLayers:
138+
serializedVersion: 2
139+
m_Bits: 4294967295
140+
m_ContactCaptureLayers:
141+
serializedVersion: 2
142+
m_Bits: 4294967295
143+
m_CallbackLayers:
144+
serializedVersion: 2
145+
m_Bits: 4294967295
146+
m_IsTrigger: 1
147+
m_UsedByEffector: 0
148+
m_UsedByComposite: 0
149+
m_Offset: {x: 0, y: 0}
150+
serializedVersion: 2
151+
m_Radius: 0.5
152+
--- !u!114 &2457984936095503069
153+
MonoBehaviour:
154+
m_ObjectHideFlags: 0
155+
m_CorrespondingSourceObject: {fileID: 0}
156+
m_PrefabInstance: {fileID: 0}
157+
m_PrefabAsset: {fileID: 0}
158+
m_GameObject: {fileID: 8203671304629546108}
159+
m_Enabled: 1
160+
m_EditorHideFlags: 0
161+
m_Script: {fileID: 11500000, guid: 63dd3e555b070014f892aa05dace5071, type: 3}
162+
m_Name:
163+
m_EditorClassIdentifier:
164+
PROJECTILE_SPEED: 30
165+
move_direction: {x: 0.2695278, y: 0.96299255}
166+
hit_particles: {fileID: 739995767386574900, guid: 917f021215eb0ec4183bd33e2134db29, type: 3}

Assets/Prefabs/Player Adition/turret_projectile.prefab.meta

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Assets/Scripts/Asteroids/Projectiles/ProjctileDefaultLogic.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
public class ProjctileDefaultLogic : MonoBehaviour
44
{
55
[SerializeField] float PROJECTILE_SPEED;
6-
[SerializeField] Vector2 MOVE_DIRECTION;
6+
[SerializeField] Vector2 move_direction;
77
[SerializeField] bool is_destructible;
88
[SerializeField] ParticleSystem hit_particles;
99
int _DAMAGE;
@@ -15,7 +15,7 @@ void Start()
1515

1616
void Update()
1717
{
18-
transform.Translate(MOVE_DIRECTION * PROJECTILE_SPEED * Time.deltaTime);
18+
transform.Translate(move_direction * PROJECTILE_SPEED * Time.deltaTime);
1919
}
2020

2121
private void OnTriggerEnter2D(Collider2D other)
@@ -69,6 +69,6 @@ private void SpawnParticles(Vector2 positon)
6969

7070
public void SetMoveDirection(Vector2 MOVE_DIRECTION)
7171
{
72-
this.MOVE_DIRECTION = MOVE_DIRECTION;
72+
this.move_direction = MOVE_DIRECTION;
7373
}
7474
}

Assets/Scripts/Asteroids/Projectiles/ProjectileRoundShot.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ void Start()
1111

1212
private void RoundShot()
1313
{
14+
Destroy(gameObject);
1415
InstanceProjectile(default_projectile, new Vector2(1, 1));
1516
InstanceProjectile(default_projectile, new Vector2(1, -1));
1617
InstanceProjectile(default_projectile, new Vector2(-1, 1));

Assets/Scripts/Player/Aditions/Turret.meta

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)