本日のプログラミング放送(6/22)
閉じる
閉じる

新しい記事を投稿しました。シェアして読者に伝えましょう

×

本日のプログラミング放送(6/22)

2014-06-22 22:24

    本日は、ドットイートゲームのソース解読をしていきます。
    参考URL→http://vivi.dyndns.org/tech/games/dotEat.html

    //マップの描画g_mapの盤面のデータを裏画面に描画してnDotの値を返す
    int draw_map()
    {
    int nDot = 0;//nDotを初期化
    for (int y = 0; y < MAP_HT; ++y) {//y座標を繰り返す
    g_db.setCursorPos(0, y);//ダブルバッファカーソル位置の指定
    const char *ptr = g_map[y];
    for (int x = 0; x < MAP_WD; ++x) {
    switch (*ptr++) {//ptrのさす先の値を判定
    case '-':
    g_db.setColor(DblBuffer::GRAY, DblBuffer::BLACK);
    g_db.write("━");
    break;
    case '|':
    g_db.setColor(DblBuffer::GRAY, DblBuffer::BLACK);
    g_db.write("┃");
    break;
    case '/':
    g_db.setColor(DblBuffer::GRAY, DblBuffer::BLACK);//ダブルバッファ色の指定
    g_db.write("┏");//ダブルバッファ裏画面に描画
    break;
    case '#':
    g_db.setColor(DblBuffer::GRAY, DblBuffer::BLACK);
    g_db.write("┓");
    break;
    case 'L':
    g_db.setColor(DblBuffer::GRAY, DblBuffer::BLACK);
    g_db.write("┗");
    break;
    case 'J':
    g_db.setColor(DblBuffer::GRAY, DblBuffer::BLACK);
    g_db.write("┛");
    break;
    case '.':
    g_db.setColor(DblBuffer::YELLOW, DblBuffer::BLACK);
    g_db.write("・");
    ++nDot;
    break;
    default:
    g_db.setColor(DblBuffer::BLACK, DblBuffer::BLACK);
    g_db.write(" ");
    break;
    }
    }
    }
    return nDot;//nDotの数を返す
    }

    //自機描画
    void draw_car()
    {
    g_db.setCursorPos(g_car.m_pos.first*2, g_car.m_pos.second);//ダブルバッファカーソル位置の指定
    g_db.setColor(DblBuffer::GREEN, DblBuffer::BLACK);//ダブルバッファ色の指定
    g_db.write("@");//ダブルバッファ裏画面に描画
    }
    //敵機描画
    void draw_enemy()
    {
    g_db.setColor(DblBuffer::RED, DblBuffer::BLACK);//ダブルバッファ色の指定
    for (int i = 0; i < (int)g_enemy.size(); ++i) {//敵の数ループする(一面は1体)
    g_db.setCursorPos(g_enemy[i].m_pos.first*2, g_enemy[i].m_pos.second);
    g_db.write("◆");//ダブルバッファ裏画面に描画
    }
    }


    では本日もお疲れ様でした。
    なんか終了間際にビルドできなくなった、デバッカのエラーみたい。↓

    エラー 1 error LNK1168: ファイル C:\dotEatGame-master\dotEatGame\Debug\dotEatGame.exe を開いて書き込むことができません。 C:\dotEatGame-master\dotEatGame\dotEatGame\LINK dotEatGame

    次回は続きからです。
    広告
    コメントを書く
    コメントをするには、
    ログインして下さい。