목록일상/개발일상 (39)
[게임개발자] 레드핑

Godot Attack component 만든후 문제 Player 씬 에서 weapone 자식들 씬이나 값들 수정이 안됨... callback으로 원하는 시점에 종료하면 되지 않을까?
Godot Weapon.gd 가 필요 extends Node2D var attack_dmg :=10.0 # Called when the node enters the scene tree for the first time. func _on_hitbox_area_entered(area): if area.has_method("damage"): var attack = Attack.new() attack.attack_damage = attack_dmg area.damage(attack) What is has_method? 직접 참조보다는 느리지만, 해당 인자를 String 으로 받아서 찾아주는 함수.

HitboxComponent.gd 스크립트이다. extends Area2D @export var healtho_component : HealthComponent func damage (attack:Attack): if health_component: health_component.damage(attack) godot function 에 대한 내용 Gdscript 는 선언할때 변수명 이 먼저오고 : 그다음에 자료형이 온다 이방식이 조금 특이한데, 알아본 바로는 숫자 바로 왼쪽에 자료형이 있기 때문에, 가독성이 높은 이유라고한다. 그리고 데이터 값과 자료형을 비교하기 빠르고 쉽기때문인듯하다. 그리고 밑에 사진처럼 생략되는경우가 있는데, 이런 경우는 Godot 이 변수의 타입을 추론한다고 한다.

이전 포스팅 https://allggame.tistory.com/24 Godot Attack 만드는법 https://www.youtube.com/watch?v=74y6zWZfQKk&t=1s&ab_channel=Bitlytic 상속보다 Component 를 제작해서 재사용성 높이기 와... 이강의를 보고 드디어 SOLID 원칙의 S 를 깨닫게 되었다. 왜 굳이 Single Responsibility 를 해야 allggame.tistory.com 에서 영상을 보아하니 , Attack.gd 가 필요했다. 참고자료는 https://www.youtube.com/watch?v=y3faMdIb2II&ab_channel=Bitlytic 영상에서 참고할 수 있다. 코드는 2줄로 줄여보았다. Godot docs 에 찾아보..

https://www.youtube.com/watch?v=74y6zWZfQKk&t=1s&ab_channel=Bitlytic 상속보다 Component 를 제작해서 재사용성 높이기 와... 이강의를 보고 드디어 SOLID 원칙의 S 를 깨닫게 되었다. 왜 굳이 Single Responsibility 를 해야 재사용성이 높아지는지 깨달았다. (한클래스에 공통기능들을 여러개 묶어서 상속으로 만들면, 원하지 않는 기능을 있을때 재사용이 불편한데, 원하지 않는 기능을 추가하지 않아도 되는 부분을 해결하기 위해 각 기능별로 , 각각의 Component 를 만들어준다는 이야기인데, 이렇게 함으로서 원하는 기능만 공통적으로 뽑아서 사용할 수 있게 된다.) 정말 직관적이게 설명을 잘하였다. 사진의 경우처럼 Tree 오브..