角色的自动移动不起作用

时间:2019-10-21 10:24:07

标签: c teensy

我正在尝试让角色随机随机移动并弹跳墙壁。从理论上讲,我所拥有的代码应该可以工作,但是角色却没有动。我没有任何错误,并试图找到一个问题,但是很简短。

我解决了一些声明和一些比较的问题,但是我还没有找到另一个阻止该代码运行的问题。我正在48x84的LCD屏幕上运行它。

主要功能不确切,但当前运行方式的顺序相同

int t_xy[27][2] = { {0,0}, {4,0}, {0,1}, {1,1}, {3,1}, {4,1}, {0,2}, {1,2}, {2,2}, {3,2}, {4,2}, {0,3}, {2,3}, {4,3}, {0,4}, {1,4}, {3,4}, {4,4}, {0,5}, {1,5}, {2,5}, {3,5}, {4,5}, {1,6}, {2,6}, {3,6} }; //27 pixels in bitmap

//Tom's positon
double t_x = LCD_X - 5, t_y = LCD_Y - 9,  t_dx, t_dy;

void t_setup() {
    double gait = 0.3;
    double t_dir = rand() * 3.14 * 2 / RAND_MAX; // random direction
    t_dx = gait * cos(t_dir);
    t_dy = gait * sin(t_dir);
}

void t_move() {
    int new_x = round(t_x + t_dx);
    int new_y = round(t_y + t_dy);
    int bounced = 0;
        if (new_x == 0 || new_x == LCD_X - 5) {
            t_dx = -t_dx;
            bounced = 1;

        }
        if (new_y == 8 || new_y == LCD_Y - 7) {
            t_dy = -t_dy;
            bounced = 1;
        }
        if (!(bounced == 1)) {
            t_x += t_dx;
            t_y += t_dy;
        }

void main()
    t_setup();
    while (!(game_over == 1))
    {
        t_move();
    }
}

我希望汤姆能够自动移动并跳出屏幕边界并向随机方向移动,但是目前汤姆根本不移动,但是没有出现错误,并且其他所有游戏元素都可以正常工作

0 个答案:

没有答案