데브허브 | DEVHUB | A ONE THOUSAND Line Script? | Godot Code ReviewA ONE THOUSAND Line Script? | Godot Code Review
- "Globs"는 GMTK Jam 2024에서 89위를 차지한 퍼즐 게임으로, 개발자 Nine Sliced의 작품입니다. 🏆
- 프로젝트는 씬 상속을 활용하여 매우 잘 정리된 구조를 보여주며, 아름답고 다채로운 클린 픽셀 아트가 돋보입니다. 🖼️
- 레벨 로딩은
LevelData라는 autoload 스크립트의 딕셔너리 배열을 통해 이루어지며, increment_level 및 change_scene 함수가 레벨 전환을 관리합니다. 🚀
- 레벨 구성에 사용된 딕셔너리 배열을
LevelConfig와 같은 커스텀 리소스로 대체하여 타입 안정성, 에디터 통합 및 유지보수성을 크게 향상시킬 수 있습니다. 💡
- 커스텀 리소스는
Resource를 상속받고, export 변수를 통해 이름, 월드(범위 제한), 음악(열거형), 씬(팩된 씬)을 정의하여 에디터에서 쉽게 구성하고 유효성 검사를 할 수 있습니다. 🏗️
- 새로운 리소스 기반 레벨 구성을 위해
LevelData autoload를 스크립트에서 씬으로 변경하고, 에디터에서 LevelConfig 리소스를 드래그하여 레벨 배열을 설정해야 합니다. 🔗
- Godot 4.4.1부터는
Dictionary[String, LevelConfig]와 같은 타입 지정 딕셔너리를 사용하여 코드의 명확성과 타입 안정성을 높일 수 있습니다. 🏷️
LevelButton 스크립트의 _process 메서드 내에서 비효율적이거나 의도치 않은 로직이 발견되었으나, 자세한 분석은 다음 기회로 미루어졌습니다. 🧐