diff --git a/icon.png b/icon.png index 5a716d5..d35959b 100644 Binary files a/icon.png and b/icon.png differ diff --git a/src/dragon_outfit.gd b/src/dragon_outfit.gd index ca918b5..d2e29c5 100644 --- a/src/dragon_outfit.gd +++ b/src/dragon_outfit.gd @@ -31,6 +31,10 @@ func pick_previous() -> SpriteFrames: return _pick_non_nullable() +func _get_array_index(index: int, size: int) -> int: + return ((index % size) + size) % len(outfits) + + func _pick_nullable() -> SpriteFrames: _index %= (len(outfits) + 1) if _index == 0: @@ -45,6 +49,8 @@ func _pick_non_nullable() -> SpriteFrames: func get_texture(index: int) -> SpriteFrames: + if not allow_null: + index = _get_array_index(index, len(outfits)) if index < 0 or index >= len(outfits): return null