触摸精灵时执行操作

恩伍德

我在触摸精灵时如何执行动作,我目前使用node方法,它会检查精灵的名称,但是有什么方法可以使它在每次碰到精灵时更加准确和响应。

简而言之:当用户触摸精灵时,如何执行操作?

sangony

我不确定您所说的精灵名称是什么意思,但是我认为下面的代码示例是检查哪个SKSpriteNode被触摸的最佳方法。

#import "MyScene.h"

@implementation MyScene
{
    SKSpriteNode *frank;
    SKSpriteNode *sally;
}

-(id)initWithSize:(CGSize)size
{
    if (self = [super initWithSize:size])
    {
        frank = [SKSpriteNode spriteNodeWithColor:[SKColor blueColor] size:CGSizeMake(50, 50)];
        frank.position = CGPointMake(100, 100);
        [self addChild:frank];

        sally = [SKSpriteNode spriteNodeWithColor:[SKColor redColor] size:CGSizeMake(50, 50)];
        sally.position = CGPointMake(300, 100);
        [self addChild:sally];
    }
    return self;
}

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    UITouch *touch = [touches anyObject];
    CGPoint touchLocation = [touch locationInNode:self.scene];

    if (CGRectContainsPoint(frank.frame, touchLocation))
        NSLog(@"Frank");

if (CGRectContainsPoint(sally.frame, touchLocation))
        NSLog(@"Sally");
}

-(void)update:(CFTimeInterval)currentTime
{
    //
}

@end

更新为其他问题

您可以像这样检查节点的位置:

if ((CGRectContainsPoint(sally.frame, touchLocation)) & (sally.position.y > 50))
    NSLog(@"Sally's y position: %f",sally.position.y);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

UIPanGestureRecognizer触摸后立即执行操作

来自分类Dev

同时触摸两个精灵时崩溃(cocos2d-iphone)

来自分类Dev

仅在按住按钮时执行操作

来自分类Dev

每次用户触摸屏幕时,如何在Qml中执行操作?

来自分类Dev

触摸更改精灵图像

来自分类Dev

如何检测精灵是否被触摸?

来自分类Dev

向下触摸不执行应该执行的操作

来自分类Dev

FlipView SelectionChanged事件仅在触摸操作完成时发生

来自分类Dev

Swift:如何在执行触摸操作时禁用用户交互?

来自分类Dev

开始执行动作时如何阻止触摸

来自分类Dev

滑块滑动时执行操作

来自分类Dev

单击UITableViewCell时执行操作

来自分类Dev

单击某个元素时执行操作

来自分类Dev

轻按以轻触触摸精灵精灵

来自分类Dev

弯曲并拉伸精灵以鼠标单击/触摸

来自分类Dev

在执行操作时还原列

来自分类Dev

遍历列表时执行操作

来自分类Dev

触摸图像时移动精灵

来自分类Dev

我该如何开始触摸动画,直到到达精灵表的结尾时停止?

来自分类Dev

每次用户触摸屏幕时,如何在Qml中执行操作?

来自分类Dev

触摸时使精灵可拖动

来自分类Dev

如何检测精灵是否被触摸?

来自分类Dev

镜像带有触摸的精灵开始吗?

来自分类Dev

离开页面时执行操作

来自分类Dev

键盘关闭时执行操作

来自分类Dev

Android-执行拖放操作时检测触摸的元素

来自分类Dev

触摸精灵节点的透明区域

来自分类Dev

翻转网格标题的问题以及触摸设备时的操作

来自分类Dev

仅在需要时执行操作?