diff --git a/src/Animation.cpp b/src/Animation.cpp index 4fd20c2..535b1d9 100644 --- a/src/Animation.cpp +++ b/src/Animation.cpp @@ -154,13 +154,13 @@ void Animation::startEntity(std::shared_ptr target) { } else if constexpr (std::is_same_v) { // For entities, we might need to handle sprite_index differently - if (targetProperty == "sprite_index" || targetProperty == "sprite_number") { + if (targetProperty == "sprite_index") { startValue = target->sprite.getSpriteIndex(); } } else if constexpr (std::is_same_v>) { // For sprite animation frame lists, get current sprite index - if (targetProperty == "sprite_index" || targetProperty == "sprite_number") { + if (targetProperty == "sprite_index") { startValue = target->sprite.getSpriteIndex(); } } diff --git a/src/Animation.h b/src/Animation.h index 04d15d2..28f90f7 100644 --- a/src/Animation.h +++ b/src/Animation.h @@ -101,7 +101,7 @@ public: } private: - std::string targetProperty; // Property name to animate (e.g., "x", "color.r", "sprite_number") + std::string targetProperty; // Property name to animate (e.g., "x", "color.r", "sprite_index") AnimationValue startValue; // Starting value (captured when animation starts) AnimationValue targetValue; // Target value to animate to float duration; // Animation duration in seconds diff --git a/src/PyAnimation.h b/src/PyAnimation.h index 5b338cf..a0ebb13 100644 --- a/src/PyAnimation.h +++ b/src/PyAnimation.h @@ -56,7 +56,7 @@ namespace mcrfpydef { " property: Property name to animate. Valid properties depend on target type:\n" " - Position/Size: 'x', 'y', 'w', 'h', 'pos', 'size'\n" " - Appearance: 'fill_color', 'outline_color', 'outline', 'opacity'\n" - " - Sprite: 'sprite_index', 'sprite_number', 'scale'\n" + " - Sprite: 'sprite_index', 'scale'\n" " - Grid: 'center', 'zoom'\n" " - Caption: 'text'\n" " - Sub-properties: 'fill_color.r', 'fill_color.g', 'fill_color.b', 'fill_color.a'\n" diff --git a/src/UIEntity.cpp b/src/UIEntity.cpp index a752bf3..e48199e 100644 --- a/src/UIEntity.cpp +++ b/src/UIEntity.cpp @@ -1578,7 +1578,6 @@ PyGetSetDef UIEntity::getsetters[] = { "Get: Returns the Grid or None. " "Set: Assign a Grid to move entity, or None to remove from grid.", NULL}, {"sprite_index", (getter)UIEntity::get_spritenumber, (setter)UIEntity::set_spritenumber, "Sprite index on the texture on the display", NULL}, - {"sprite_number", (getter)UIEntity::get_spritenumber, (setter)UIEntity::set_spritenumber, "Sprite index (DEPRECATED: use sprite_index instead)", NULL}, {"visible", (getter)UIEntity_get_visible, (setter)UIEntity_set_visible, "Visibility flag", NULL}, {"opacity", (getter)UIEntity_get_opacity, (setter)UIEntity_set_opacity, "Opacity (0.0 = transparent, 1.0 = opaque)", NULL}, {"name", (getter)UIEntity_get_name, (setter)UIEntity_set_name, "Name for finding elements", NULL}, @@ -1675,7 +1674,7 @@ bool UIEntity::setProperty(const std::string& name, float value) { } bool UIEntity::setProperty(const std::string& name, int value) { - if (name == "sprite_index" || name == "sprite_number") { + if (name == "sprite_index") { sprite.setSpriteIndex(value); if (grid) grid->markDirty(); // #144 - Content change return true; @@ -1718,7 +1717,7 @@ bool UIEntity::hasProperty(const std::string& name) const { return true; } // Int properties - if (name == "sprite_index" || name == "sprite_number") { + if (name == "sprite_index") { return true; } // #106: Shader uniform properties - delegate to sprite diff --git a/src/UISprite.cpp b/src/UISprite.cpp index 7559359..e5ddee4 100644 --- a/src/UISprite.cpp +++ b/src/UISprite.cpp @@ -406,7 +406,6 @@ PyGetSetDef UISprite::getsetters[] = { {"scale_x", (getter)UISprite::get_float_member, (setter)UISprite::set_float_member, "Horizontal scale factor", (void*)3}, {"scale_y", (getter)UISprite::get_float_member, (setter)UISprite::set_float_member, "Vertical scale factor", (void*)4}, {"sprite_index", (getter)UISprite::get_int_member, (setter)UISprite::set_int_member, "Which sprite on the texture is shown", NULL}, - {"sprite_number", (getter)UISprite::get_int_member, (setter)UISprite::set_int_member, "Sprite index (DEPRECATED: use sprite_index instead)", NULL}, {"texture", (getter)UISprite::get_texture, (setter)UISprite::set_texture, "Texture object", NULL}, {"on_click", (getter)UIDrawable::get_click, (setter)UIDrawable::set_click, MCRF_PROPERTY(on_click, @@ -683,7 +682,7 @@ bool UISprite::setProperty(const std::string& name, float value) { } bool UISprite::setProperty(const std::string& name, int value) { - if (name == "sprite_index" || name == "sprite_number") { + if (name == "sprite_index") { setSpriteIndex(value); markDirty(); // #144 - Content change return true; @@ -745,7 +744,7 @@ bool UISprite::getProperty(const std::string& name, float& value) const { } bool UISprite::getProperty(const std::string& name, int& value) const { - if (name == "sprite_index" || name == "sprite_number") { + if (name == "sprite_index") { value = sprite_index; return true; } @@ -765,7 +764,7 @@ bool UISprite::hasProperty(const std::string& name) const { return true; } // Int properties - if (name == "sprite_index" || name == "sprite_number") { + if (name == "sprite_index") { return true; } // Vector2f properties diff --git a/stubs/mcrfpy.pyi b/stubs/mcrfpy.pyi index 653b8c1..c68685e 100644 --- a/stubs/mcrfpy.pyi +++ b/stubs/mcrfpy.pyi @@ -417,7 +417,6 @@ class Sprite(Drawable): texture: Texture sprite_index: int - sprite_number: int # Deprecated alias for sprite_index scale: float w: float # Read-only, computed from texture h: float # Read-only, computed from texture @@ -865,7 +864,6 @@ class Entity(Drawable): grid_y: float texture: Texture sprite_index: int - sprite_number: int # Deprecated alias for sprite_index grid: Optional[Grid] def at(self, grid_x: float, grid_y: float) -> None: diff --git a/stubs/mcrfpy/__init__.pyi b/stubs/mcrfpy/__init__.pyi index d080723..20ed59f 100644 --- a/stubs/mcrfpy/__init__.pyi +++ b/stubs/mcrfpy/__init__.pyi @@ -594,7 +594,6 @@ class Sprite(Drawable): texture: Texture sprite_index: int - sprite_number: int # Deprecated alias for sprite_index scale: float w: float # Read-only, computed from texture h: float # Read-only, computed from texture @@ -1042,7 +1041,6 @@ class Entity(Drawable): grid_y: float texture: Texture sprite_index: int - sprite_number: int # Deprecated alias for sprite_index grid: Optional[Grid] def at(self, grid_x: float, grid_y: float) -> None: diff --git a/tests/unit/ui_Entity_issue73_test.py b/tests/unit/ui_Entity_issue73_test.py index 304db18..46c5ba2 100644 --- a/tests/unit/ui_Entity_issue73_test.py +++ b/tests/unit/ui_Entity_issue73_test.py @@ -35,11 +35,11 @@ def test_Entity(): try: print(f" Entity1 pos: {entity1.pos}") print(f" Entity1 draw_pos: {entity1.draw_pos}") - print(f" Entity1 sprite_number: {entity1.sprite_number}") - + print(f" Entity1 sprite_index: {entity1.sprite_index}") + # Modify properties entity1.pos = mcrfpy.Vector(3, 3) - entity1.sprite_number = 5 + entity1.sprite_index = 5 print(" Entity properties modified") except Exception as e: print(f"X Entity property access failed: {e}") diff --git a/tests/unit/ui_Sprite_issue19_test.py b/tests/unit/ui_Sprite_issue19_test.py index b8cefe5..ba0da38 100644 --- a/tests/unit/ui_Sprite_issue19_test.py +++ b/tests/unit/ui_Sprite_issue19_test.py @@ -38,21 +38,21 @@ except AttributeError: except Exception as e: print(f"✗ Unexpected error setting texture: {e}") -# Test sprite_number property +# Test sprite_index property try: - print(f"Sprite2 sprite_number: {sprite2.sprite_number}") - sprite2.sprite_number = 10 - print(f"✓ Changed sprite_number to: {sprite2.sprite_number}") + print(f"Sprite2 sprite_index: {sprite2.sprite_index}") + sprite2.sprite_index = 10 + print(f"sprite_index set to: {sprite2.sprite_index}") except Exception as e: - print(f"✗ sprite_number property failed: {e}") + print(f"sprite_index property failed: {e}") # Test sprite index validation (Issue #33) try: # Try to set invalid sprite index - sprite2.sprite_number = 9999 - print("✗ Should validate sprite index against texture range (Issue #33)") + sprite2.sprite_index = 9999 + print("Should validate sprite index against texture range (Issue #33)") except Exception as e: - print(f"✓ Sprite index validation works: {e}") + print(f"Sprite index validation works: {e}") # Create grid of sprites to show different indices y_offset = 100