package ru.dbotthepony.kstarbound.defs.item

import ru.dbotthepony.kommons.util.AABB
import ru.dbotthepony.kommons.vector.Vector2d
import ru.dbotthepony.kstarbound.defs.MovementParameters

data class ItemDropConfig(
	val randomizedDistance: Double = 1.0,
	val randomizedSpeed: Double = 5.0,
	val throwSpeed: Double = 30.0,
	val throwIntangibleTime: Double = 1.0,
	val velocity: Double = 60.0,
	val velocityApproach: Double = 300.0,
	val pickupDistance: Double = 1.5,
	val combineChance: Float = 0.02f, // for random.nextFloat()
	val combineRadius: Double = 0.5,
	val afterTakenLife: Double = 2.0,

	val movementSettings: MovementParameters = MovementParameters.EMPTY,
) {
	val combineRadiusBox = AABB(Vector2d(-combineRadius, -combineRadius), Vector2d(combineRadius, combineRadius))
}
