 
 open class Node: SKShapeNode {
     
+    var selectedScale: CGFloat = 4/3
+    var ordinaryScale: CGFloat = 1.0
+    var selectedDuration: Double = 1.2
+    var unselectedDuration: Double = 0.2
+
     lazy var mask: SKCropNode = { [unowned self] in
         let node = SKCropNode()
         node.maskNode = {

        didSet {
            guard selected != oldValue else { return }
            if selected {
                run(.scale(to: 4/3, duration: 0.2))
                sprite.run(SKAction.setTexture(texture))
            } else {
                run(.scale(to: 1, duration: 0.2))
                sprite.texture = nil
            }
        }

        _ = self.text
        configure(text: text, image: image, color: color)
    }

    public convenience init(text: String?, image: UIImage?, color: UIColor, radius: CGFloat, selectedScale: CGFloat, ordinaryScale: CGFloat, selectedDuration: Double, unselectedDuration: Double) {
        self.init(text: text, image: image, color: color, radius: radius)
        self.selectedScale = selectedScale
        self.ordinaryScale = ordinaryScale
        self.selectedDuration = selectedDuration
        self.unselectedDuration = unselectedDuration
    }

    open func configure(text: String?, image: UIImage?, color: UIColor) {
        self.text = text
        self.image = image
