         super.init()
     }
     
+    /**
+        Decode for NSCoder
+    */
     required init(coder decoder: NSCoder) {
         super.init()
     

        coder.encodeObject(self.skipTurnsOnPlace, forKey: "skipTurnsOnPlace")
    }
    
    func getMinMergeValue() -> Int {
        return self.value
    }
    
    func getMaxMergeValue() -> Int {
        return self.value
    }
    
    func getStatsKey() -> String {
        return "piece_value_\(self.value)"
    }
    
    func canMergeWithPiece(hexPiece: HexPiece) -> Bool {
        var result = false
        

        self.skipTurnsOnPlace = (decoder.decodeObjectForKey("skipTurnsOnPlace") as? Int)!
    }
    
    /**
        Encode for NSCoder
    */
    func encodeWithCoder(coder: NSCoder) {
        coder.encodeObject(self.originalValue, forKey: "originalValue")
        coder.encodeObject(self.value, forKey: "value")
