c - 用 C 语言在游戏中测量时间和做动作
问题描述
我正在尝试使用 conio 用 C 语言开发一个游戏来创建一个 ascii 界面。
我必须在迷宫中控制我的英雄并找到出口,避开敌人。
每个敌人应该每 1 秒执行一次移动。
但是我不知道如何实现对我的英雄的控制和对每个敌人移动的控制(每1秒)。
不使用线程可以做到这一点吗?
解决方案
time_t last_time_moved = 0;
time_t delay = 1;
int user_input;
for(;;) { // in your game loop
time_t now = time(NULL); // check for the current time
// ...
if(_kbhit()) {
user_input = _getch();
// act on user input
}
// ...
if(now > (last_time_moved + delay)) {
// move your enemies
last_time_moved = time(NULL);
}
// ...
}
推荐阅读
- image - 将整个 UITableView 渲染为图像!分享
- javascript - 点击离开后记住光标位置
- javascript - 将 Google Map 字符串解析为 JS 数组
- java - 安卓工作室的模拟器错误,但已经安装了英特尔 x86
- c++ - 无法在文本换行中转到新行
- python - ROS的问题
- javascript - 如何将状态从有状态组件传递到另一个有状态组件
- php - 如果用户将相同的食物选项添加到购物车中,则增加食物数量 Laravel
- javascript - 在 Chrome 扩展中删除后添加 Javascript 侦听器
- android - 将媒体文件上传到谷歌云的最佳实践