20 lines
452 B
GDScript
20 lines
452 B
GDScript
class_name IntRange extends RefCounted
|
|
|
|
var min: int
|
|
var max: int
|
|
|
|
func _init(start: int, end: int, inclusive: bool = false) -> void:
|
|
min = start
|
|
max = end if not inclusive else end + 1
|
|
|
|
func length() -> int:
|
|
return absi(max - min)
|
|
|
|
func clamp(value: int) -> int:
|
|
return clampi(value, min, max)
|
|
|
|
func wrap(value: int) -> int:
|
|
return wrapi(value, min, max)
|
|
|
|
func contains(value: int) -> bool:
|
|
return value >= min and value < max
|