第6講 ゲーム基礎その2
第2話 画像を←・→・↑・↓キーで動かす
最初にコード例を示してから説明しましょう。
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) {
  ChangeWindowMode(true); //ウィンドウモードの切り替え
  SetGraphMode(800, 600, 32); //ウインドウサイズの変更
  if (DxLib_Init() == -1)return(-1);  // DXライブラリ初期化処理

  int h = LoadGraph("画像/00.png"); //画像に付けられた出席番号を箱hに収納
  int x=100,y=100;//x座標とy座標の初期位置
  SetDrawScreen(DX_SCREEN_BACK); //裏画像を描画対象に加える(2017/06/28追加) 画面のちらつき対策
  while (ScreenFlip() == 0 && ProcessMessage() == 0 && ClearDrawScreen() == 0) {
    DrawGraph(x, y, h, true); //画像を描く
    
if (CheckHitKey(KEY_INPUT_RIGHT) != 0) x+=2;
    if (CheckHitKey(KEY_INPUT_LEFT) != 0)x-=2;
    if (CheckHitKey(KEY_INPUT_DOWN) != 0)y+=2;
    if (CheckHitKey(KEY_INPUT_UP) != 0)y-=2;

  }
  WaitKey();   // キー入力待ち
  DxLib_End();  // DXライブラリ終了処理
  return 0;
}
コピペ用添付ファイル
008
これで画像が矢印キーで動きます。
CheckHitKey(KEY_INPUT_*)は*キーが押されているときに、
0以外の値を報告してくる社員です。
ですから、
CheckHitKey(KEY_INPUT_RIGHT)でしたら、→キーが押されているときに、
0以外の値を返してきます。
    if (CheckHitKey(KEY_INPUT_RIGHT) != 0) x+=2;
は→キーが押されたら、x座標を2だけ増やしています。

KEY_INPUT_*の*はキーボードのキーのほとんどを網羅しています。
→:RIGHT ←:LEFT ↑:UP ↓:DOWN
Enter:RETURN Delete:DELETE
A:A B:B 3:3
などです。
Enter:RETURNはWindowsパソコンになれている方は、
馴染みがないでしょうが、
Windows以前はエンターキーのことをリターンキーと呼んでいたのです。
A:AはキーボードのAキーは、KEY_INPUT_Aと名付けられているという意味です。
3:3は同様に、3はKEY_INPUT_3と名付けられているということです。
ただし、テンキーの数字は
KEY_INPUT_NUMPAD0
KEY_INPUT_NUMPAD1
      ・
      ・
KEY_INPUT_NUMPAD9
です。

さて、第3話では宿題であったゲームモードの変更を考えます。
ゲームモードとは、はじめの画面・ゲーム画面・ゲームオーバー画面・ゲームクリア画面です。
0010
008
0011
0013

第1話へ   第3話へ

002

初心者のための excel 2016 マクロ VBA 入門講義 基礎から応用まで
vc++ c言語 c++ 入門 初心者 基礎から応用まで
eclipse c++ 入門
魔方陣 数独で学ぶ VBA 入門

数独のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
eclipse java 入門
java 入門 サイト 基礎から応用まで
本サイトトップへ