Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

김보령_3.31_DogKnight 과제 제출 #33

Open
wants to merge 5 commits into
base: boryoung
Choose a base branch
from

Conversation

BBO-cmd
Copy link

@BBO-cmd BBO-cmd commented Apr 4, 2022

<추가한 스크립트>
HpInterface, PlayerHpBar, EnemyHpBar
<추가한 기능>

  1. HpBar 구현: Player와 Enemy를 각각 Subject로 하고 HpInterface를 부모로 가지는 Observer인 PlayerHpBar, EnemyHpBar구현
  • Player와 Enemy 각각의 GetHit에서 각각의 myHp가 바뀌면 HpNotify(float hp)실행
  • 이 때 HpNotify는 _hpHandler를 delegate로 HpInterface의 HpOnNotify()와 연결되어 있음. HpOnNotify에서는 넘겨받은 hp값으로 체력바 이미지의 fillAmount설정
  • Player와 Enemy 각각에 AddObserver(HpInterface characterHpabar)선언
  • PlayerHpBar와 EnemyHpBar는 Awake에서 AddObserver(this)를 통해 자기자신을 Subject에 연결함
  1. HpBarDelay 추가: Player와 Enemy에서 HpNotify하기 전 2초 지연하여 GetHit후 2초 지난 후 Hp깎이도록
  2. Attack 버튼 Blocker 추가: 버튼 클릭시 실행되는 RoundNotify()의 첫 단계에서 blocker활성화, HpBar 업데이트 후 blocker 비활성화

+) 3/28과제 예시코드 참고하지 않고 다시 구현하였고, 카메라 시점과 화면 구성을 바꿔보았습니다.

저번 과제에서 제대로 이해하지 못한 옵저버 패턴을 다시 공부하고 저번 과제를 다시 해보느라 시간이 많이 소요되었습니다ㅜㅜ!! Round와 Inventory구현을 아직 하지 못해서 죄송합니다ㅜㅜ 세션이 끝난 후 구현해 놓겠습니다!!

** 버전 문제로 boryoung_new 브랜치를 새로 만들었는데, Pull Request시 base branch 선택 목록에 새로 만든 브랜치가 없어서 기존의 boryoung 브랜치로 설정해 놓았습니다.

image

tehokim and others added 5 commits March 28, 2022 15:52
3/28 과제를 제출할 때에는 예시 코드를 많이 참고하였지만, 이번에는 혼자서 구현해보았습니다!!!!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants