728x90
반응형
[ERROR]2D RPG game 개발 일지 # 12 byUnity (보스 공격 패턴)
보스를 게임에서 구현할 때 여러가지의 공격 패턴들을 만들고 그 패턴들에 연계가 필요하다면 순서대로 그게 아니라면 무작위로 실행하도록 한다. - BossController c#파일 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1
yunseong.tistory.com
위 페이지에서 만든 보스의 패턴 중 한개를 만들것이다.
위 동영상에서 뼈를 뱉는 부분을 구현했다.
- BossController c#파일 중에 (위 링크에서 코드의 전체 구조를 볼 수 있다.)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
void lookPlayer() //player 쪽을 보스가 바라보록한다.
{
DIRECTION = (player.GetComponent<Transform>().position.x < transform.position.x ? -1 : 1);
float scale = transform.localScale.z;
transform.localScale = new Vector3(DIRECTION * -1 * scale, scale, scale);
}
IEnumerator spit()
{
lookPlayer();
animator.SetTrigger("spitting"); //뼈를 뱉는 듯한 animation
yield return new WaitForSeconds(1.5f);
for (int i = 0; i < amountOfBone; i++) //뼈의 수만큼 뼈를 소환하고 각각 무작위 각도록 쏘아줬다.
{
GameObject go = Instantiate(throwingBone, new Vector3(transform.position.x + 3 * DIRECTION, transform.position.y, transform.position.z), Quaternion.Euler(0f, 20f, 0f)) as GameObject;
float angle = Random.Range(0, 45.0f);
go.GetComponent<Rigidbody2D>().velocity = new Vector2(DIRECTION * Mathf.Abs(Mathf.Cos(angle)) * 15, Mathf.Abs(Mathf.Sin(angle) * 15));
}
amountOfBone = 0;
if (0 == Random.Range(0, 2)) nextPattern = RUSH; //다음 패턴을 랜덤으로 정해준다.
else nextPattern = JUMP;
yield return new WaitForSeconds(3);
nextPatternPlay();
}
|
cs |
13열에서 amountOfBone변수는 밑의 링크에서 연계해서 사용된다.
[ERROR]2D RPG game 개발 일지 # 13 byUnity (돌진 패턴 만들기)
https://yunseong.tistory.com/entry/ERROR2D-RPG-game-%EA%B0%9C%EB%B0%9C-%EC%9D%BC%EC%A7%80-12-byUnity-%EB%B3%B4%EC%8A%A4-%EA%B3%B5%EA%B2%A9-%ED%8C%A8%ED%84%B4 [ERROR]2D RPG game 개발 일지 # 12 byUnit..
yunseong.tistory.com
728x90
반응형
'Unity > 2D RPG' 카테고리의 다른 글
보스 등장 인트로 by Unity (0) | 2021.11.14 |
---|---|
점프 공격 패턴 by Unity (0) | 2021.08.28 |
돌진 공격 패턴 by Unity (0) | 2021.08.28 |
보스 공격 패턴 by Unity (0) | 2021.08.28 |
키 배치 설정 by Unity (0) | 2021.08.18 |