SKTiledScene
open class SKTiledScene : SKScene, SKPhysicsContactDelegate, SKTiledSceneDelegate, SKTilemapDelegate, SKTilesetDataSource
extension SKTiledScene: SKTiledSceneCameraDelegate
Overview
Custom scene type for managing SKTilemap nodes.
Conforms to the SKTiledSceneDelegate, SKTilemapDelegate & SKTilesetDataSource protocols.
Properties
| Property | Description |
|---|---|
| worldNode | Root container node. |
| tilemap | Tile map object. |
| cameraNode | Custom scene camera. |
Instance Methods
| Method | Description |
|---|---|
| sceneDoubleTapped | Called when the scene receives a double-tap event (iOS only). |
| cameraPositionChanged | Called when the camera positon changes. |
| cameraZoomChanged | Called when the camera zoom changes. |
| cameraBoundsChanged | Called when the camera bounds updated. |
| sceneDoubleClicked | Called when the scene is double-clicked (macOS only). |
| mousePositionChanged | Called when the mouse moves in the scene (macOS only). |
-
World container node.
Declaration
Swift
open var worldNode: SKNode! -
▶︎tilemapTile map node.
Declaration
Swift
open var tilemap: SKTilemap! -
Custom scene camera.
Declaration
Swift
open var cameraNode: SKTiledSceneCamera! -
Logging verbosity level.
Declaration
Swift
open var loggingLevel: LoggingLevel -
▶︎graphsReference to navigation graphs.
Declaration
Swift
open var graphs: [String : GKGridGraph<GKGridGraphNode>] -
Receive notifications from camera.
Declaration
Swift
open var receiveCameraUpdates: Bool -
▶︎speedSet the tilemap speed.
Declaration
Swift
override open var speed: CGFloat { get set }
-
Initialize without a tiled map.
Declaration
Swift
required override public init(size: CGSize)Parameters
sizeCGSizescene size.Return Value
SKTiledScenescene. -
Default initializer.
Declaration
Swift
required public init?(coder aDecoder: NSCoder)Parameters
aDecoderdecoder instance.
-
Called when the parent view size changes.
Declaration
Swift
override open func didChangeSize(_ oldSize: CGSize)Parameters
oldSizeprevious size.
-
Called when the parent view is displayed.
Declaration
Swift
override open func didMove(to view: SKView)Parameters
viewparent view.
-
Load and setup a named TMX file, with optional tilesets.
Declaration
Swift
open func setup(url: URL, withTilesets: [SKTileset] = [], ignoreProperties: Bool = false, loggingLevel: LoggingLevel = TiledGlobals.default.loggingLevel, _ completion: ((_ tilemap: SKTilemap) -> Void)? = nil)Parameters
urlURLTiled file url.withTilesets[SKTileset]pre-loaded tilesets.ignorePropertiesBooldon’t parse custom properties.loggingLevelLoggingLevellogging verbosity.completion((_ SKTilemap) -> Void)?optional completion handler. -
Load and setup a named TMX file, with optional tilesets. Allows for an optional completion handler.
Declaration
Swift
open func setup(tmxFile: String, inDirectory: String? = nil, withTilesets tilesets: [SKTileset] = [], ignoreProperties: Bool = false, loggingLevel: LoggingLevel = TiledGlobals.default.loggingLevel, _ completion: ((_ tilemap: SKTilemap) -> Void)? = nil)Parameters
tmxFileStringTMX file name.inDirectoryString?search path for assets.withTilesets[SKTileset]optional pre-loaded tilesets.ignorePropertiesBooldon’t parse custom properties.loggingLevelLoggingLevellogging verbosity.completion((_ SKTilemap) -> Void)?optional completion handler.
-
Called before each frame is rendered.
Declaration
Swift
override open func update(_ currentTime: TimeInterval)Parameters
currentTimeTimeIntervalupdate interval. -
Update the camera bounds.
Declaration
Swift
open func updateCamera() -
Return a custom graph node type.
Declaration
Swift
open func objectForGraphType(named: String?) -> GKGridGraphNode.TypeParameters
namedStringgraph node type.Return Value
GKGridGraphNode.Typedictionary insertion was successfull. -
Add a
GKGridGraphinstance to theSKTIledScene.graphsproperty. Returns false if that name exists already.Declaration
Swift
open func addGraph(named: String, graph: GKGridGraph<GKGridGraphNode>) -> BoolParameters
namedStringname of graph.graphGKGridGraph<GKGridGraphNode>Return Value
Booldictionary insertion was successfull. -
Remove a named
GKGridGraphfrom theSKTIledScene.graphsproperty.Declaration
Swift
open func removeGraph(named: String) -> GKGridGraph<GKGridGraphNode>?Parameters
namedStringname of graph.Return Value
GKGridGraph?removed graph instance. -
Mouse click event handler.
Declaration
Swift
override open func mouseDown(with event: NSEvent)Parameters
eventmouse event.
-
Mouse move event handler.
Declaration
Swift
override open func mouseMoved(with event: NSEvent)Parameters
eventmouse event.
-
Mouse scroll wheel event handler.
Declaration
Swift
override open func scrollWheel(with event: NSEvent)Parameters
eventmouse event.
-
Called when the scene receives a double-tap event (iOS only).
-
Called when the camera positon changes.
Declaration
Swift
@objc public func cameraPositionChanged(newPosition: CGPoint)Parameters
newPositonCGPointupdated camera position. -
Called when the camera zoom changes.
Declaration
Swift
@objc public func cameraZoomChanged(newZoom: CGFloat)Parameters
newZoomCGFloatcamera zoom amount. -
Called when the camera bounds updated.
Declaration
Swift
@objc public func cameraBoundsChanged(bounds: CGRect, position: CGPoint, zoom: CGFloat)Parameters
boundsCGRectcamera view bounds.positonCGPointcamera position.zoomCGFloatcamera zoom amount. -
Called when the scene is double-clicked (macOS only).
Declaration
Swift
@objc public func sceneDoubleClicked(event: NSEvent)Parameters
eventNSEventmouse click event. -
Called when the mouse moves in the scene (macOS only).
Declaration
Swift
@objc public func mousePositionChanged(event: NSEvent)Parameters
eventNSEventmouse click event.
View on GitHub
SKTiledScene Class Reference