Skip to content

Commit a214a8a

Browse files
Adicionado docs
1 parent e0caa7b commit a214a8a

File tree

6 files changed

+50
-7
lines changed

6 files changed

+50
-7
lines changed

Assets/Levels/Stage 1.asset

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,9 @@ MonoBehaviour:
1616
boss: 0
1717
initialSpeed: 32
1818
angleObjects:
19-
- angle: 119
19+
- angle: 120
2020
objectType: 1
21+
- angle: 30
22+
objectType: 1
23+
- angle: 60
24+
objectType: 0

Assets/Scenes/Main.unity

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -415,7 +415,7 @@ CircleCollider2D:
415415
m_UsedByComposite: 0
416416
m_Offset: {x: 0, y: 0}
417417
serializedVersion: 2
418-
m_Radius: 1.6
418+
m_Radius: 1.2
419419
--- !u!1 &734744213
420420
GameObject:
421421
m_ObjectHideFlags: 0

Assets/Scripts/Actors/Knife.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ private void OnTriggerEnter2D(Collider2D other)
2424
isPlayer = false;
2525
GetComponent<Mover>().speed = 0f;
2626
m_rigidbody2D.bodyType = RigidbodyType2D.Dynamic;
27-
m_rigidbody2D.AddForceAtPosition(PhysicsUtils.GetRandomForce(4f,8f),new Vector3(4f,0,0));
27+
m_rigidbody2D.AddForceAtPosition(PhysicsUtils.GetRandomForce(128f,256f),Vector3.up);
2828

2929
levelManager.onKnifeHitOnKnife.Invoke();
3030

Assets/Scripts/Levels/Stage.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@ public struct AngleObject
3232
[System.Serializable]
3333
public enum ObjectType
3434
{
35-
Apple,Knife
35+
Fruit,Knife
3636
}

Assets/Scripts/Managers/LevelManager.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ public class LevelManager : MonoBehaviour,GameStates
2323
private List<GameObject> objectsInWood = new List<GameObject>();
2424
private Rotator rotator;
2525
private Shooter shooter;
26-
//private Mover knifeToShoot;
2726
private int actualLevel = -1;
2827

2928

@@ -89,7 +88,8 @@ public void Setting(Stage stage)
8988
Quaternion.identity,
9089
wood.transform);
9190
// TODO diminuir do tamanho do objeto.
92-
go.transform.position+=Vector3.up*2.4f;
91+
go.transform.position+=Vector3.down*2f;
92+
go.transform.RotateAround(transform.position, wood.transform.forward, ao.angle);
9393
objectsInWood.Add(go);
9494
}
9595

README.md

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,40 @@
1-
# OpenKnife
1+
# OpenKnife
2+
3+
## Planejamento
4+
5+
Devido ser um jogo mobile simples, foi escolhido trabalhar apenas com uma cena juntamente com armazenamento de estados do jogo (Menu,InGame,GameOver)
6+
7+
## Criação
8+
9+
### Gerenciadores
10+
Foi criado certos gerenciadores para utilizar lógica e dados de forma fácil e limpa.
11+
#### GameManager
12+
Um classe singleton. com estados do jogo, Importante notar aqui o uso de uma interface para todos componentes que queiram receber notificações de eventos dos estados do jogo
13+
#### LevelManager
14+
Responsável obviamente pelos estágios e seus carregamentos.
15+
#### UIManager
16+
Além de ser pai de toda interface do usuário, armazena o Canvas também.
17+
18+
19+
### Atores e suas lógicas
20+
21+
#### Knife
22+
Knife pode ser do player ou não, ser do player significa que recebe eventos de colisão/triggers.
23+
#### Mover
24+
Um simples código para movimento rápido sem utilizar física.
25+
#### Rotator
26+
Usado pela madeira central para rotacionar com velocidades especificadas.
27+
#### Random Rotator
28+
Modifica o rotator com tempo e interpolação usando dados carregados dos estágios
29+
#### Shooter
30+
Armazena quantidades de tiros e chama no levelManager o evento de atirar.
31+
32+
33+
## Stages
34+
35+
Neste quesito foi utilizado um Scriptable Objects para armazenar estágios de forma segura e independente da cena do Unity.
36+
37+
### Angle Object
38+
Armazena um objeto e um ângulo para ser gerados assim que estágio começar.
39+
### Speed Timer
40+
Um tempo de interpolação e um float com velocidade que deve ser feita para começar a girar a madeira principal

0 commit comments

Comments
 (0)