본문 바로가기

파이썬 (Python)/파이썬 크래시 코스 - 에릭 마테스5

[Python] 실습편 - 외계인 침공 : 불을 뿜는 우주선 5 개요우주선을 좌우로 움직이게 해본다. 꾹 눌러도 동작하게 하는게 핵심이다. 연타해야만 움직이는 예는 책에서 이전 챕터를 참고하기 바람 - 핵심 매프레임 이벤트를 감지하여서 우주선 위치를 업데이트 한 후, 화면에 그린다. - 우주선 위치 업데이트 KEYDOWN과 KEYUP으로 키보드 눌렀다 뗐다를 감지한다. 불린값을 이용해 키 입력의 참, 거짓을 판별하며 이동량만큼 이동한다. + 챕터 12.6.3 까지의 내용이다.코드alien_invasion.py import sys import pygame from settings import Settings from ship import Ship class AlienInvasion : """게임 자원과 동작을 전체적으로 관리하는 클래스""" def __init__(se.. 2024. 3. 22.
[Python] 실습편 - 외계인 침공 : 불을 뿜는 우주선 4 개요 run_game 메서드의 코드가 길어지고 있다. 이를 해결하기 위해, 보조 메서드 두 개로 분리한다. 보조 메서드란 클래스 내부에서만 사용하는 메서드를 일컫는다. 보조 메서드는 구분을 위해 맨 앞에 _를 붙인다. 이렇게 기존 코드를 단순화는 것을 리팩터링이라고 한다. + 챕터 12.5.2 까지의 내용이다. 코드 alien_invasion.py import sys import pygame from settings import Settings from ship import Ship class AlienInvasion : """게임 자원과 동작을 전체적으로 관리하는 클래스""" def __init__(self) : """게임을 초기화하고 게임 자원을 만듭니다""" pygame.init() self.clo.. 2024. 3. 17.
[Python] 실습편 - 외계인 침공 : 불을 뿜는 우주선 3 결과 개요 화면에 우주선을 그린다. 1. ship.py 이름으로 모듈을 별도로 만든다. 2. 화면을 속성으로 할당하여, 우주선 이미지를 화면 중앙에 배치한다. (midbottom) 3. 파이게임은 게임 요소들을 모두 사각형으로 처리해 효율적이다. (rect) + 챕터 12.4.2까지의 내용이다. 코드 alien_invasion.py import sys import pygame from settings import Settings from ship import Ship # 0. 모듈 불러오기 class AlienInvasion : """게임 자원과 동작을 전체적으로 관리하는 클래스""" def __init__(self) : """게임을 초기화하고 게임 자원을 만듭니다""" pygame.init() self.. 2024. 3. 15.
[Python] 실습편 - 외계인 침공 : 불을 뿜는 우주선 2 결과 개요 게임 설정에 필요한 정보를 클래스 한 곳에 모은다. 코드 이곳저곳에 설정값이 분산돼있으면 유지보수가 힘들다. 1. 같은 폴더내 settings.py 파일(모듈)을 생성한다. 2. Settings 클래스를 만들고 초기화에서 속성값 지정한다. 3. aliens_invasion.py에서 위 모듈 - 클래스 - 속성을 불러와 사용한다. + 챕터 12.3.4까지의 내용이다. 코드 aliens_invasion.py import sys import pygame from settings import Settings # 1. 세팅 모듈 부르기 class AlienInvasion : """게임 자원과 동작을 전체적으로 관리하는 클래스""" def __init__(self) : """게임을 초기화하고 게임 자원을.. 2024. 3. 10.
[Python] 실습편 - 외계인 침공 : 불을 뿜는 우주선 1 결과 개요 파이게임 모듈을 사용해 게임 만들기를 시작한다. 이번 실습은 기본 창 구성법이다. 1. 게임 자원, 동작을 관리하는 클래스를 생성한다. 2. 초기화에서 게임 창생성 등 기초 설정을 한다. 3. 게임의 메인 루프 메서드를 만든다. 무한 루프로 구성된다. 4. 클래스의 인스턴스를 생성 후, 메서드를 실행한다. + 챕터 12.3.3까지의 내용이다. 코드 import sys #모듈 임포트 import pygame #모듈 임포트 class AlienInvasion : #클래스 첫글자는 대문자. 함수처럼 괄호 X """게임 자원과 동작을 전체적으로 관리하는 클래스""" def __init__(self) : # 인스턴스 생성시 자동실행 메소드. self는 인스턴스 자신을 지칭한다. """게임을 초기화하고 .. 2024. 3. 10.