갬쿠
개미 개발
갬쿠
전체 방문자
오늘
어제
  • ALL (137)
    • React (20)
    • JS & CSS & HTML (29)
    • Algorithm (62)
    • 웹 보안 (11)
    • 달리는 까까: 쿠키런 팬게임 (10)
    • Python (0)
    • 기타 (5)
    • 비공개 플젝 (0)

블로그 메뉴

  • GitHub
  • 방명록
  • 관리자 메뉴

공지사항

인기 글

태그

  • REACT
  • 쿠키런
  • Baekjoon
  • useEffect
  • SQL Injection
  • CSS
  • 쿠키런 모작
  • useReducer
  • 객체
  • useState
  • 게임
  • EventListener
  • node.js
  • 크롬 공룡 게임
  • 모의 해킹
  • JavaScript
  • 백준
  • 달리는 까까
  • 리액트
  • BEAKJOON
  • 게임 개발
  • Best of the Best
  • 크롬 공룡게임
  • Object
  • HTML
  • 쿠키런 팬게임
  • Programmers
  • js
  • transform
  • Python

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
갬쿠

개미 개발

[달리는 까까] 아이템 추가
달리는 까까: 쿠키런 팬게임

[달리는 까까] 아이템 추가

2022. 6. 2. 22:27
  • 아이템 클래스

아이템 타입을 받아 그에 맞는 메서드를 호출한다. 쿠키와의 충돌 체크는 젤리와 동일한 방식으로 한다.

 

  • 질주
  blast() {
    document.querySelector(".cookie").classList.add("blast");
    cookie.speed *= 2;
    cookie.superCookie = true;

    setTimeout(() => {
      document.querySelector(".cookie").classList.remove("blast");
      if (!document.querySelector(".cookie").classList.contains("giant")) {
        document.querySelector(".cookie").classList.add("supper");
      }
      cookie.speed /= 2;
    }, 1500);
    setTimeout(() => {
      cookie.eatenItem--;
      if (cookie.eatenItem === 0) {
        document.querySelector(".cookie").classList.remove("supper");
        cookie.superCookie = false;
      }
    }, 3000);
  }

1.5초동안 쿠키의 속도가 2배가 되며 질주 상태동안은 쿠키가 장애물에 부딪히지 않는다. 질주 상태가 끝나면 1.5초간 무적 상태가 유지된다. 이때 쿠키가 깜빡거리며 무적 상태임을 나타내도록 했다.

지금 보니까 슈퍼 철자 틀렸다.. 왜그랬지?

 

  • 거대화
  giant() {
    document.querySelector(".cookie").classList.add("giant");
    cookie.superCookie = true;

    setTimeout(() => {
      document.querySelector(".cookie").classList.remove("giant");
      if (!document.querySelector(".cookie").classList.contains("blast")) {
        document.querySelector(".cookie").classList.add("supper");
      }
    }, 2000);
    setTimeout(() => {
      cookie.eatenItem--;
      if (cookie.eatenItem === 0) {
        document.querySelector(".cookie").classList.remove("supper");
        cookie.superCookie = false;
      }
    }, 3500);
  }

2초간 쿠키의 크기가 1.5배 커지며 역시 아이템 지속 시간동안 무적 상태다. 거대화가 끝나고 1.5초간 무적 상태가 지속된다.

쿠키의 크기가 커진 동안 다른 모션(점프, 슬라이드)의 이미지 크기도 조절해줬다.

 

  • 코인매직
  coinMagic() {
    allObstacleComProp.arr.forEach((arr) => {
      if (arr.x < cookie.movex + (gameProp.screenWidth / 5) * 4 && arr.x > cookie.movex - gameProp.screenWidth / 5) {
        arr.coinMagicObstacle();
      }
    });
  }

현재 쿠키의 위치를 기준으로 화면 안의 모든 장애물이 코인으로 변한다. 장애물을 코인으로 변환시키는 과정은 장애물 클래스의 coinMagicObstacle에서 처리하며 장애물의 높이와 너비 기준으로 계산했다.

 

  • 자석
  magnet() {
    allJellyComProp.arr.forEach((arr) => {
      if (arr.x < cookie.movex + (gameProp.screenWidth / 5) * 4 && arr.x > cookie.movex - gameProp.screenWidth / 5) {
        arr.magnet = true;
      }
    });
  }

역시 쿠키의 현재 위치를 기준으로 화면 안의 모든 젤리들이 끌려온다. 젤리의 magnet에 true가 되면 쿠키와 젤리간의 거리를 계산해 프레임마다 끌려오게 된다. game.js의 renderGame에서 젤리의 충돌을 검사할 때 함께 처리한다.

 

  • 생명물약

생명물약은 따로 메서드 없이 쿠키 클래스의 plusHp 메서드를 호출해 처리한다. 큰 생명물약은 500, 작은 생명물약은 50만큼 쿠키 체력이 추가된다.

 


🔻모든 코드 보기🔻

https://github.com/mkthebea/CCKK_Run.git

 

GitHub - mkthebea/CCKK_Run: A fangame of [CookieRun: Ovenbreak]

A fangame of [CookieRun: Ovenbreak]. Contribute to mkthebea/CCKK_Run development by creating an account on GitHub.

github.com

🔻게임 하기🔻

https://mkthebea.github.io/CCKK_Run/

 

DAL GGA

Loading... No Record Bronze Silver Gold Ruby Diamond Rainbow

mkthebea.github.io

 

728x90

'달리는 까까: 쿠키런 팬게임' 카테고리의 다른 글

[달리는 까까] UI 개선  (0) 2022.06.05
[달리는 까까] 맵 제작하기  (0) 2022.06.05
[달리는 까까] 스테이지 이어 달리기  (0) 2022.06.02
[달리는 까까] 이미지 사전 로드와 로딩 페이지  (0) 2022.05.31
[달리는 까까] 메인 화면을 로비로 만들기  (0) 2022.05.31
    '달리는 까까: 쿠키런 팬게임' 카테고리의 다른 글
    • [달리는 까까] UI 개선
    • [달리는 까까] 맵 제작하기
    • [달리는 까까] 스테이지 이어 달리기
    • [달리는 까까] 이미지 사전 로드와 로딩 페이지
    갬쿠
    갬쿠
    보안&소프트웨어 전공 프론트엔드 개발자

    티스토리툴바