【求助,关于游戏的射击】
pascal吧
全部回复
仅看楼主
level 9
1楼喂度娘
2016年09月03日 03点09分 1
level 9
是这样的,windows库的createthread可以做到多线程,但是当人物移动时,子弹也在飞([滑稽]),然后输出的话要不停的跳转,可是,有时候线程和主过程会撞车,导致本应该输在一个位置的字符输在另一个位子(即错位),想求助一下则么办?坦克大战是如何解决这个问题的?
我尝试过用boolean判断是否输出被使用,但是效果不大。。。
repeat
k:=1;
until pdp=true;
pdp:=false;
//想输出的东西
pdp:=true;
这样的话好像还是会错位。。。
2016年09月03日 03点09分 2
2016年09月03日 10点09分
level 9
我的解决方法:专门做一个用于输出的线程,让其他线程发出指令,这个线程进行逐个处理,就像自动队列一样
2016年09月03日 05点09分 3
详细一点[滑稽]。。。
2016年09月03日 10点09分
@zsj12345678999 你叫我怎么说呢[滑稽],现在没电脑耶......
2016年09月03日 11点09分
level 9
2016年09月03日 23点09分 5
好东西,求pascal的详细用法,最好举个栗子[疑问]
2016年09月04日 02点09分
pascal中的这个的详细用法(一不小心打错了。。。)[滑稽]
2016年09月04日 02点09分
@zsj12345678999 uses windows;
2016年09月04日 15点09分
@ax_pokl 好简洁。。。
2016年09月05日 14点09分
1