PanGesture in Sprite Kit

Create sword like sign on display.
Drag and drop is recognized using UIPanGestureRecognizer

Sample

PanGestureScene.h

#import <SpriteKit/SpriteKit.h>
@interface PanGestureScene : SKScene
@end

PanGestureScene.m

#import "PanGestureScene.h"
#import "LineNode.h"

@interface PanGestureScene()

@property (nonatomic)CGPoint start;
@property (nonatomic)CGPoint end;

@end

@implementation PanGestureScene

- (id)initWithSize:(CGSize)size {
    
    if (self = [super initWithSize:size]) {
    }
    return self;
}

- (void)didMoveToView:(SKView *)view {
    UIPanGestureRecognizer *gestureRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePanFrom:)];
    [[self view] addGestureRecognizer:gestureRecognizer];
}

- (void)handlePanFrom:(UIPanGestureRecognizer *)recognizer {
    
    if (recognizer.state == UIGestureRecognizerStateBegan) {
        
        self.start = [recognizer locationInView:recognizer.view];
        self.start = [self convertPointFromView:self.start];
        
        // Remove
        [[self childNodeWithName:@"samurai"] removeFromParent];
    }
    else if (recognizer.state == UIGestureRecognizerStateChanged) {
        //NSLog(@"Change");
    }
    else if (recognizer.state == UIGestureRecognizerStateEnded) {
        self.end = [recognizer locationInView:recognizer.view];
        self.end = [self convertPointFromView:self.end];
        
        NSLog(@"start (%f, %f), end(%f, %f)", self.start.x, self.start.y, self.end.x, self.end.y);
        
        LineNode *node = [LineNode createLineNode:self.start end:self.end strokeColor:[UIColor cyanColor] lineWidth:3.0];
        node.name = @"samurai";
        [self addChild:node];
    }
}
@end

Result

iOS Simulator Screen Shot Aug 11, 2014, 10.33.56 PM