windows编程里 想通过键盘方向来控制 图片人物的面向方向 该怎么写?
查了不少东西,没有一个切题的完整例子,我还是不会。wndpro()里面该怎么写?
我的函数有一个void NPCmove(),里面参数怎么设?
#define KEYSTATE(vknum) ((GetAsyncKeyState(vknum) & 0x8000) ? TRUE : FALSE)
void NPCmove()
{
static int CurrentFrame = 0; // 当前动作的编号
static int Direction = 0; // 当前的方向
rect.top = Direction*48; rect.bottom = (Direction+1)*48;
rect.left = CurrentFrame*32; rect.right = (CurrentFrame+1)*32;
if( KEYSTATE(VK_LEFT) )//GetAsyncKeyState(VK_LEFT)) // 如果 左箭头 被按下
{
Direction = 1; // 赋值方向为 1
CurrentFrame++;
}
if( KEYSTATE(VK_RIGHT ))//GetAsyncKeyState(VK_RIGHT))
{
Direction = 3;
CurrentFrame++;
}
if( KEYSTATE(VK_UP) )//GetAsyncKeyState(VK_UP))
{
Direction = 2;
CurrentFrame++;
}
if( KEYSTATE(VK_DOWN)) //GetAsyncKeyState(VK_DOWN ))
{
Direction = 0;
CurrentFrame++;
}
if(CurrentFrame==3)
CurrentFrame = 0; // 这个步骤能够保证动作的循环
else if(VK_ESCAPE)//GetAsyncKeyState(VK_ESCAPE))//主菜单
{
while(GetAsyncKeyState(VK_ESCAPE)) {}
return;
}
else return;
}