c语言图形绘制象棋移动

问题遇到的现象和发生背景

c语言图像绘制象棋,先要做到移动象棋(先不管移动规则,动起来都不能行)

问题相关代码,请勿粘贴截图
void MouseEventProcess(int x,int y,int button,int event)
{
    //擦除屏幕 
    DisplayClear();
    uiGetMouse(x,y,button,event);
    //调用显示函数显示内容
    display();
    //设置棋子移动
    double omx=cx-4*BoardLength,omy=cy-4.5*BoardLength;//前一鼠标位置 
    double mx,my;//当前鼠标位置 
    int i;
    double r[33];
    
    mx=ScaleXInches(x)-(cx-4*BoardLength);
    my=ScaleYInches(y)-(cy-4.5*BoardLength);//pixels --> inches
    
    for(i=0;i<17;i++){
        r[i]=(mx-a[i].px)*(mx-a[i].px)+(my-a[i].py)*(my-a[i].py);
        if((r[i]<=BallLength*BallLength)&&(button==LEFT_BUTTON)&&(event==BUTTON_DOWN)){
            a[i].sure=1;
        }
        r[i+17]=(mx-b[i].px)*(mx-b[i].px)+(my-b[i].py)*(my-b[i].py);
        if((r[i+17]<=BallLength*BallLength)&&(button==LEFT_BUTTON)&&(event==BUTTON_DOWN)){
            b[i].sure=1;
        }
    }
    
    for(i=0;i<17;i++){
        if((a[i].sure==1)&&(event==MOUSEMOVE)){
            a[i].isMove=1;
        }
        if((b[i].sure==1)&&(event==MOUSEMOVE)){
            b[i].isMove=1;
        }
    }

    for(i=0;i<17;i++){
        if((a[i].isMove==1)&&(event==BUTTON_UP)){
            a[i].isMove=0;
            a[i].px=mx;
            a[i].py=my;
        }
        if((b[i].isMove==1)&&(event==BUTTON_UP)){
            b[i].isMove=0;
            b[i].px=mx;
            b[i].py=my;
        }
    }

}

运行结果及报错内容

就是鼠标放上去没有任何反应,不知道是哪儿的问题

我有象棋移动的代码跟你写的差不多,要不要参考一下