// automatically generated by the FlatBuffers compiler, do not modify

package MyGame.Example

import java.nio.*
import kotlin.math.sign
import com.google.flatbuffers.*

@Suppress("unused")
@ExperimentalUnsignedTypes
class Ability : Struct() {

    fun __init(_i: Int, _bb: ByteBuffer)  {
        __reset(_i, _bb)
    }
    fun __assign(_i: Int, _bb: ByteBuffer) : Ability {
        __init(_i, _bb)
        return this
    }
    val id : UInt get() = bb.getInt(bb_pos + 0).toUInt()
    fun mutateId(id: UInt) : ByteBuffer = bb.putInt(bb_pos + 0, id.toInt())
    val distance : UInt get() = bb.getInt(bb_pos + 4).toUInt()
    fun mutateDistance(distance: UInt) : ByteBuffer = bb.putInt(bb_pos + 4, distance.toInt())
    companion object {
        fun createAbility(builder: FlatBufferBuilder, id: UInt, distance: UInt) : Int {
            builder.prep(4, 8)
            builder.putInt(distance.toInt())
            builder.putInt(id.toInt())
            return builder.offset()
        }
    }
}
