Skip to content

Latest commit

 

History

History
87 lines (56 loc) · 2.37 KB

README.md

File metadata and controls

87 lines (56 loc) · 2.37 KB

RPTileScroller

Sample Gif

A simple tile scroller following a UITableView's datasource pattern to get the content. It can be extended to support tiled maps.

Notice

This project is under development and probably not ready for production

Installation

RPTileScroller is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'RPTileScroller', '~> 0.2'

Usage

Import the library

#import <RPTileScroller.h>

Instance and configure it

_tileScroller = [[RPTileScroller alloc] initWithSize:view.bounds.size];
_tileScroller.position = CGPointMake(0,0);
_tileScroller.dataSource = self;
_tileScroller.tileSize = CGSizeMake(16, 16);
_tileScroller.backgroundNode.color = [UIColor blackColor];

Implement tileScroller:nodeForIndex: in the DataSource

- (SKNode *)tileScroller:(RPTileSc	roller *)tileScroller nodeForIndex:(RPIndexPoint)index
{
    //Use different identifiers for reusing nodes with the same content (like a tile map). 
    NSString *idt = @"Your node identifier";  
       
    SKSpriteNode *node = (SKSpriteNode *)[tileScroller dequeueReusableNodeWithIdentifier:idt];
    
    if(!node)
    {
        node = [SKSpriteNode spriteNodeWithColor:[UIColor redColor] size:tileScroller.tileSize];
        node.identifier = idt;
        //Configure your node here for position index.x,index.y
    }
    
    return node;
}

Call the update method every scene update.

- (void)update:(CFTimeInterval)currentTime 
{
    [_tileScroller update:currentTime];
}

Scroll it!

_tileScroller.moveVector = CGVectorMake(15,15); 

License

RPTileScroller is available under the MIT license. See the LICENSE file for more info.