Berry animation update palettes (#24251)

This commit is contained in:
s-hadinger 2025-12-23 21:00:11 +01:00 committed by GitHub
parent 7536fb7eb6
commit 30cef9c501
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 13795 additions and 13753 deletions

View File

@ -16,28 +16,67 @@ var PALETTE_RAINBOW = bytes(
"FF00FFFF" # Cyan
"FF0080FF" # Blue
"FF8000FF" # Violet
)
# Standard rainbow palette (7 colors with roughly constant brightness) with roll-over
var PALETTE_RAINBOW2 = bytes(
"FFFC0000" # Red
"FFFF8000" # Orange
"FFFFFF00" # Yellow
"FF00FF00" # Green
"FF00FFFF" # Cyan
"FF0080FF" # Blue
"FF8000FF" # Violet
"FFFC0000" # Red
)
# Standard rainbow palette (7 colors + white with roughly constant brightness)
var PALETTE_RAINBOW_W = bytes(
"FFFC0000" # Red
"FFFF8000" # Orange
"FFFFFF00" # Yellow
"FF00FF00" # Green
"FF00FFFF" # Cyan
"FF0080FF" # Blue
"FF8000FF" # Violet
"FFCCCCCC" # White
)
# Standard rainbow palette (7 colors + white with roughly constant brightness) with roll-over
var PALETTE_RAINBOW_W2 = bytes(
"FFFC0000" # Red
"FFFF8000" # Orange
"FFFFFF00" # Yellow
"FF00FF00" # Green
"FF00FFFF" # Cyan
"FF0080FF" # Blue
"FF8000FF" # Violet
"FFCCCCCC" # White
"FFFC0000" # Red
)
# Simple RGB palette (3 colors)
var PALETTE_RGB = bytes(
"00FF0000" # Red (value 0)
"8000FF00" # Green (value 128)
"FFFF0000" # Red (value 0)
"FF00FF00" # Green (value 128)
"FF0000FF" # Blue (value 255)
)
# Fire effect palette (warm colors)
var PALETTE_FIRE = bytes(
"00000000" # Black (value 0)
"40800000" # Dark red (value 64)
"80FF0000" # Red (value 128)
"C0FF8000" # Orange (value 192)
"FF000000" # Black (value 0)
"FF800000" # Dark red (value 64)
"FFFF0000" # Red (value 128)
"FFFF8000" # Orange (value 192)
"FFFFFF00" # Yellow (value 255)
)
# Export all palettes
return {
"PALETTE_RAINBOW": PALETTE_RAINBOW,
"PALETTE_RAINBOW2": PALETTE_RAINBOW2,
"PALETTE_RAINBOW_W": PALETTE_RAINBOW_W,
"PALETTE_RAINBOW_W2": PALETTE_RAINBOW_W2,
"PALETTE_RGB": PALETTE_RGB,
"PALETTE_FIRE": PALETTE_FIRE
}

File diff suppressed because it is too large Load Diff

View File

@ -22,9 +22,9 @@ def test_palette_size_parameter_access()
var engine = MockEngine()
var provider = animation.color_cycle(engine)
# Test 1: Default palette_size should be 3
# Test 1: Default palette_size should be 7
var default_size = provider.palette_size
assert(default_size == 3, f"Default palette_size should be 3, got {default_size}")
assert(default_size == 7, f"Default palette_size should be 7, got {default_size}")
# Test 2: palette_size should match _get_palette_size()
var internal_size = provider._get_palette_size()
@ -131,15 +131,15 @@ def test_palette_size_with_new_instances()
var provider1 = animation.color_cycle(engine)
var provider2 = animation.color_cycle(engine)
assert(provider1.palette_size == 3, "First provider should have default palette_size of 3")
assert(provider2.palette_size == 3, "Second provider should have default palette_size of 3")
assert(provider1.palette_size == 7, "First provider should have default palette_size of 7")
assert(provider2.palette_size == 7, "Second provider should have default palette_size of 7")
# Test 2: Changing one instance shouldn't affect the other
var custom_palette = bytes("FFFF0000" "FF00FF00")
provider1.palette = custom_palette
assert(provider1.palette_size == 2, "First provider should have palette_size of 2 after change")
assert(provider2.palette_size == 3, "Second provider should still have palette_size of 3")
assert(provider2.palette_size == 7, "Second provider should still have palette_size of 7")
# Test 3: Both instances should maintain read-only behavior
var caught_exception_1 = false
@ -161,7 +161,7 @@ def test_palette_size_with_new_instances()
assert(caught_exception_2, "Second provider should reject palette_size writes")
assert(provider1.palette_size == 2, "First provider palette_size should remain 2")
assert(provider2.palette_size == 3, "Second provider palette_size should remain 3")
assert(provider2.palette_size == 7, "Second provider palette_size should remain 7")
print("✓ Multiple instance tests passed!")
end