Skip to content

Commit c0a2723

Browse files
Add Assembly Definitions
1 parent f0abc8a commit c0a2723

32 files changed

+239
-89
lines changed

Assets/Scripts/Actors/Knife.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
using UnityEngine;
2-
using OpenKnife.Managers;
32
using OpenKnife.Utils;
3+
using UnityEngine.Events;
44

5-
namespace OpenKnife.Gameplay
5+
namespace OpenKnife.Actors
66
{
77

88
public class Knife : MonoBehaviour
@@ -11,13 +11,15 @@ public class Knife : MonoBehaviour
1111
public bool isPlayer = false;
1212

1313
private Rigidbody2D m_rigidbody2D;
14-
private LevelManager m_LevelManager;
1514
private ConstantForce2D m_Mover;
1615

16+
public UnityEvent onCollisionWood;
17+
public UnityEvent onCollisionKnife;
18+
public UnityEvent onCollisionFruit;
19+
1720
private void Awake()
1821
{
1922
m_rigidbody2D = GetComponent<Rigidbody2D>();
20-
m_LevelManager = GameManager.instance.GetComponent<LevelManager>();
2123
}
2224

2325
private void StopPlayerMovement()
@@ -37,10 +39,8 @@ private void OnTriggerEnter2D(Collider2D other)
3739

3840
if (other.gameObject.tag == "Fruit")
3941
{
40-
41-
m_LevelManager.onFruitSlice.Invoke();
4242
Destroy(other.gameObject);
43-
43+
onCollisionFruit?.Invoke();
4444
}
4545

4646
}
@@ -55,8 +55,8 @@ private void OnCollisionEnter2D(Collision2D other)
5555
StopPlayerMovement();
5656
m_rigidbody2D.AddForce(PhysicsUtils.GetRandomForce(32f, 32f),
5757
ForceMode2D.Impulse);
58-
m_LevelManager.onKnifeHitOnKnife.Invoke();
5958
m_rigidbody2D.gravityScale = 1;
59+
onCollisionKnife?.Invoke();
6060

6161
}
6262
else if (other.gameObject.tag == "Wood")
@@ -65,7 +65,7 @@ private void OnCollisionEnter2D(Collision2D other)
6565
m_rigidbody2D.bodyType = RigidbodyType2D.Kinematic;
6666
StopPlayerMovement();
6767
gameObject.transform.parent = other.transform.parent;
68-
m_LevelManager.onKnifeHitOnWood.Invoke();
68+
onCollisionWood?.Invoke();
6969

7070
}
7171
}

Assets/Scripts/Actors/Mover.cs

Lines changed: 0 additions & 14 deletions
This file was deleted.

Assets/Scripts/Actors/Mover.cs.meta

Lines changed: 0 additions & 11 deletions
This file was deleted.
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"name": "OpenKnife.Actors",
3+
"references": [
4+
"OpenKnife.Utils",
5+
"OpenKnife",
6+
"OpenKnife.UI"
7+
],
8+
"includePlatforms": [],
9+
"excludePlatforms": [],
10+
"allowUnsafeCode": false,
11+
"overrideReferences": false,
12+
"precompiledReferences": [],
13+
"autoReferenced": true,
14+
"defineConstraints": [],
15+
"versionDefines": [],
16+
"noEngineReferences": false
17+
}

Assets/Scripts/Managers.meta renamed to Assets/Scripts/Actors/OpenKnife.Actors.asmdef.meta

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

Assets/Scripts/Actors/Scorer.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
using OpenKnife.Managers;
21
using UnityEngine;
32

4-
namespace OpenKnife.Gameplay
3+
namespace OpenKnife.Actors
54
{
65
public class Scorer : MonoBehaviour
76
{

Assets/Scripts/Actors/Shooter.cs

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,21 @@
11
using UnityEngine;
2-
using OpenKnife.Managers;
2+
using OpenKnife;
3+
using OpenKnife.UI;
4+
using UnityEngine.Events;
35

4-
namespace OpenKnife.Gameplay
6+
namespace OpenKnife.Actors
57
{
8+
9+
[System.Serializable]
10+
public class ShootEvent : UnityEvent<int>
11+
{
12+
}
13+
614
// Press any button for shoot object
715
public class Shooter : MonoBehaviour
816
{
917
private int shoots = 0;
10-
[HideInInspector]
11-
public LevelManager levelManager;
18+
public ShootEvent m_ShootEvent = new ShootEvent();
1219

1320
public ConstantForce2D mover;
1421

@@ -20,7 +27,7 @@ public class Shooter : MonoBehaviour
2027
public void SetNewShoots(int shoots)
2128
{
2229
this.shoots = shoots;
23-
GameManager.instance.UI.shootsPanel.SetNewShoots(shoots);
30+
UIManager.instance.shootsPanel.SetNewShoots(shoots);
2431
}
2532

2633
private void Update()
@@ -31,13 +38,9 @@ private void Update()
3138
if (shoots > 0)
3239
{
3340
shoots--;
34-
levelManager.onShoot.Invoke();
41+
m_ShootEvent?.Invoke(shoots);
3542
mover.force = Vector2.up * speedShooter;
3643
}
37-
else
38-
{
39-
//enabled = false;
40-
}
4144
enabled = false;
4245

4346
}
Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,16 @@
11
using System.Collections.Generic;
2-
using OpenKnife.UI;
32
using UnityEngine;
43
using UnityEngine.Events;
4+
using OpenKnife.States;
55

6-
namespace OpenKnife.Managers
6+
namespace OpenKnife
77
{
88
public class GameManager : MonoBehaviour
99
{
1010
public static GameManager instance;
1111
private GameState state;
1212
private GameState oldState;
1313

14-
[Header("References")]
15-
public UIManager UI;
16-
1714
[Header("Events")]
1815
public UnityEvent onStartGame;
1916
public UnityEvent onGameOver;
File renamed without changes.
Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,11 @@
22
using System.Collections.Generic;
33
using UnityEngine;
44
using UnityEngine.Events;
5-
using OpenKnife.Gameplay;
65
using OpenKnife.Actors;
6+
using OpenKnife.States;
7+
using OpenKnife.UI;
78

8-
namespace OpenKnife.Managers
9+
namespace OpenKnife.Levels
910
{
1011
public class LevelManager : MonoBehaviour, GameStates
1112
{
@@ -47,7 +48,10 @@ public class LevelManager : MonoBehaviour, GameStates
4748
private void Awake()
4849
{
4950
CheckAndGetInternalReferences();
50-
shooter.levelManager = this;
51+
shooter.m_ShootEvent.AddListener(delegate
52+
{
53+
onShoot.Invoke();
54+
});
5155
}
5256

5357
private void Start()
@@ -130,25 +134,25 @@ private void InitBuiltInEvents()
130134
Destroy(go, 1f);
131135

132136
scorer.AddFruits(1);
133-
GameManager.instance.UI.UpdateFruitsText(scorer.Fruits);
137+
UIManager.instance.UpdateFruitsText(scorer.Fruits);
134138
});
135139
onScore.AddListener(delegate
136140
{
137-
GameManager.instance.UI.UpdateScoreText(scorer.Score);
141+
UIManager.instance.UpdateScoreText(scorer.Score);
138142
});
139143

140144
onStageInit.AddListener(delegate
141145
{
142-
GameManager.instance.UI.UpdateStageTitleText(actualStage);
146+
UIManager.instance.UpdateStageTitleText(actualStage);
143147
});
144148
onStageFinish.AddListener(delegate
145149
{
146-
GameManager.instance.UI.stageTitle.gameObject.SetActive(false);
150+
UIManager.instance.stageTitle.gameObject.SetActive(false);
147151
});
148152

149153
onShoot.AddListener(delegate
150154
{
151-
GameManager.instance.UI.shootsPanel.Shoot();
155+
UIManager.instance.shootsPanel.Shoot();
152156
});
153157
}
154158

@@ -160,6 +164,9 @@ private void PrepareNextShoot()
160164
mover.force = Vector2.zero;
161165
Knife knife = go.GetComponent<Knife>();
162166
knife.isPlayer = true;
167+
knife.onCollisionWood.AddListener(delegate{onKnifeHitOnWood.Invoke();});
168+
knife.onCollisionKnife.AddListener(delegate{onKnifeHitOnKnife.Invoke();});
169+
knife.onCollisionFruit.AddListener(delegate{onFruitSlice.Invoke();});
163170
objectsInWood.Add(go);
164171
shooter.mover = mover;
165172
shooter.enabled = true;
@@ -194,7 +201,7 @@ private void RequestNewShoot()
194201
private void Next()
195202
{
196203
actualStage++;
197-
GameManager.instance.UI.UpdateStageText(actualStage);
204+
UIManager.instance.UpdateStageText(actualStage);
198205
if (stages.Length <= actualStage)
199206
{
200207
GameManager.instance.GameOver();

0 commit comments

Comments
 (0)