본문 바로가기

게임개발/Phaser.js

[Phaser.js] Learn Javascript Conditionals

기초는 끝고 intermidiate 부분이다. 컨디셔널스? 조건문에 대한 내용인 것 같다. 내가 완성하지 못한 게임(앞으로 X라고 칭해야겠다.)에서 조건문을 정말 많이 사용했었다. 만약 캐릭터가 장애물에 부딪힌다면? 어떤 일이 일어나는지 조건문으로 설정해줬었다. 장애물이 사라지고 플레이어는 콤보카운트가 0가 되버리도록 만들었다. 점프가 1초 안에 눌려야하는데 0.45초와 .0.55초 사이에 눌리면 어떻게 되는지 그 밖의 시간에 눌리면 어떻게 점프하는지도 조건문으로 설정했다. 타이밍에 맞게 누른 경우 super jump가 되어서 더 멀리 나아가도록. 게임에서 많이 사용할 내용이므로 가볍게 복습하면서 이번시간에 공부해보자.

 

#1 If Statement

음... If문의 완전 기초 구성부터 배울줄은 몰랐다... ()안에 조건을 {}안에 조건을 만족할 시 실행될 코드를 넣으면 완성이다.

let enemy = true;



if(enemy) {
  console.log('let's beat it!');
}

enemy = false;

if(enemy) {
  console.log('let's beat it!');
}
// 실행 안 됨.

 

#2 If...Else Statements

이건 아니야... 조금 더 어려운게 배우고 싶어요...

let enemy = true;

if(enemy) {
  console.log('let's beat it!');
} else (enemy) {
  console.log('let's wait enemy comes out');
}

 

 

#3 Comparison Operators

  • Less than: <
  • Greater than: >
  • Less than or equal to: <=
  • Greater than or equal to: >=
  • Is equal to: ===
  • Is not equal to: !==

이하 생략... 비교연산자도 굉장히 많이 쓰이긴 하나 한 번 공부하면 크게 공부할 내용은 없는 것 같다..!!

 

let speed = 7
if(speed > 7){
  console.log('Win the tornament!')
} else {
   console.log('We need more speed to win.')
}

 

#4. Logical Operators

  • the and operator (&&)
  • the or operator (||)
  • the not operator, otherwise known as the bang operator (!)

이 친구들도 정말 많이 쓰이지만 정 설명이 필요하면 게임을 만들면서 설명하겠고, 다음 코드와 함께 이하 생략한다.

let weather = 'sunny';
let speed = 9;

if(weather === 'sunny' && speed > 8){
  console.log('time to compete!')
} else {
  console.log('not yet!')
}

 

#5. Truthy and Falsy Assignment

Truthy nad Falsy 부분은 생략하겠다. 그런데 Truthy Falsy와 논리 연산자를 활용하여 할당하는 기술을 여기서 하나 배울 수 있었다.

 

변수에 특정 값을 대입할 때, or(||연산자) 를 이용하면 앞의 값이 falsy한 경우 뒤에 값이 할당되도록 해 줄 수 있다.

//Case 1
let meal = '';

let today's_Lunch = meal || 'spaghetti'

console.log(`The ${today's_Lunch} is delicious.`);

// The spaghetti is delicious.
// 앞의 값이 falsy해서 뒤의 값이 할당됨.


//Case 1
let meal = 'mandoo';

let today's_Lunch = meal || 'spaghetti'

console.log(`The ${today's_Lunch} is delicious.`);

// The mandoo is delicious.
//앞의 값이 할당 될 수 있으면 먼저 할당되고 뒤의 값은 무시됨.

 

#6. else if & The switch keyword

switch는 예전에 공부를 잘 안했었던 것 같아. 여기 나온부분만 일단 공부를 하고 혹시 추후에 추가로 공부하는 개념이 있으면 추가하도록 하겠다.

let runner'sFinalPosition = '1st';
switch(runner'sFinalPosition){
  case '1st':
  console.log('You get the gold medal!')
  break;
   case'2nd':
  console.log('You get the silver medal!')
  break;
   case'3rd':
  console.log('You get the bronze medal!')
  break;
  default:
  console.log('No medal awarded.')
  break;
}

 

후.. 조건문과 관련한 내용을 총망라해놓은 것 같긴하다..!! 이제 간단한 게임을 만든다고요..? 진짜로요..??

간단한 퀴즈를 풀고, 정보가 담긴 글을 하나 읽었다.

 

#7.Eloquent JavaScript, Chapter 2

 

링크를 걸겠다.. 지금 정독을 할만큼 중요한 내용은 아닌 것 같고, 기초를 복기하는 내용인 것 같다..!!!

 

이것에 관해 읽으니 이제 연달아서 두 개의 프로젝트가 있다.. 저작권 문제로 변형하거나 좀 다르게 해보고 올려야 할 것 같은데 고민을 좀 해보고 올리도록 하겠다. 드디어 뭔가 만드는구나... 나이세는거 이런거 말구 ㅋㅋㅋㅋ

프로젝트는 다음 포스팅에서~!!