所以在我的游戏中,我试图让角色能够向左或向右移动,具体取决于玩家按下的按钮。
我想翻转精灵,使其朝着正确的方向前进。
我有一个bool作为玩家类的一个名为isGoingLeft的属性,这就是我在玩家面向左边时的检查方式。
我翻转播放器的方式就像这样
//在右边按钮的方法中
if (player.isGoingLeft) {
player.flipX = 180;
NSLog(@"Flip Right");
player.isGoingLeft = FALSE;
}
//左边按钮的方法
if (!player.isGoingLeft) {
player.flipX = 180;
player.isGoingLeft = TRUE;
NSLog(@"Flip Left");
}
当我开始向右走,然后向左转(精灵正确翻转)时,这是有效的。但是当我再试一次时,玩家向右移动,它只是不再翻转。 NSLog说它翻了回来面对正确的运行并且bool被改变了。我不知道发生了什么
答案 0 :(得分:1)
flipX
是BOOL类型,因此任何大于0的值都会使精灵翻转。
请改用:
player.flipX = YES;
player.flipX = NO;