본문 바로가기

카테고리 없음

[cocos2d-x]기억력 카드게임 - 게임 데이터 초기화

GameScene.h

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#ifndef __GAME_SCENE_H__
#define __GAME_SCENE_H__
 
#include "cocos2d.h"
 
USING_NS_CC;
 
class GameScene : public Layer
{
public:
 
    static Scene* createScene();
 
    virtual bool init();
    CREATE_FUNC(GameScene);
 
    Size winSize;
    //일반적으로 게임의 크기를 구현할 때 화면의 크기를 사용하는 경우가 많기 때문에
    //화면의 크기를 따로 선언해서 사용하는것이 편리
 
    int cardOK, life; //선택한 카드의갯수를 저장하기 위한 변수, 생명개수
    int card[4]; //앞면을 보여줘야 하는 카드의 번호
    int countCard; //맞추어야 할 카드의 순서를 저장하는 카운터 변수
 
    void initGameData(); ///게임에서 사용되는 변수를 초기화하는 메소드
};
 
#endif
cs

      

GameScene.cpp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include "GameScene.h"
 
Scene* GameScene::createScene()
{
    auto scene = Scene::create();
 
    auto layer = GameScene::create();
    scene->addChild(layer);
 
    return scene;
}
 
bool GameScene::init()
{
    if (!Layer::init())
    {
        return false;
    }
 
    initGameData();
 
    return true;
}
 
void GameScene::initGameData()
{
    winSize = Director::getInstance()->getWinSize();
    //화면의 사이즈를 가져오는 코드
 
    cardOK = 0;
    life = 3;
 
    srand(time(NULL)); //랜덤 기준값을 시간으로 정함
 
    for (int i = 0; i<4; i++) {
        card[i] = rand() % 6;
    }
 
    countCard = 0;
}
cs