gpt4 book ai didi

ios - 使用 Cocos2D 的 schedule : method 检查其他方法是否有效

转载 作者:行者123 更新时间:2023-11-28 19:55:09 26 4
gpt4 key购买 nike

我正在尝试运行一个带有 3 个参数的 if 语句,其中一个参数是方法是否正在运行。让我在下面展示我的代码并尝试澄清。

-(void) btnRightTapped: (id) sender{

CCLOG(@"Left button Tapped");


CGSize viewSize = [CCDirector sharedDirector].viewSize;

if (_claw.position.x >= viewSize.width || _claw.position.x >= 1 && // HERE I WANT TO ADD THE ARGUMENT) {

// Do stuff

[self schedule:@selector(btnRightTapped:) interval:0.1];


}


else [self unschedule:@selector(btnRightTapped:)];

}

我要添加的参数是测试方法 btnRightTapped 当前是否正在运行,它看起来像这样:

-(void) btnLeftTapped: (id) sender{

CCLOG(@"Right button Tapped");



CGSize viewSize = [CCDirector sharedDirector].viewSize;

if (_claw.position.x < viewSize.width && // AND HERE) {


// Do stuff


[self schedule:@selector(btnLeftTapped:) interval:0.1];

}


else [self unschedule:@selector(btnLeftTapped:)];

}

我想要完成的是在按下按钮时移动我的爪子 Sprite 。目前它只能将爪子移到一侧,当您尝试将其移回时,if 语句再次变为真,并且两个按钮的时间表打开和关闭,使 Sprite 疯狂地来回跳动。

所以我需要使用当前参数运行 if 语句,加上另一个按钮/方法未按下/运行的参数。我该怎么做?

这就是我想要的简而言之:

if (_claw.position.x < viewSize.width && btnRightTapped.is.active == NO) 
{
do this and that

最佳答案

在 ivar 中使用 bool 标志来指示您已“计划”运行工作。当您执行“取消计划”时,将其设置为 NO

关于ios - 使用 Cocos2D 的 schedule : method 检查其他方法是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26918224/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com