Cleanup sprite_position usage (#539)
* Cleanup sprite_position usage * Add IWRAM_CODE attr for inline sprite function * removed extra sprite_position call
This commit is contained in:
@@ -1360,7 +1360,6 @@ static inline void card_draw(void)
|
|||||||
|
|
||||||
card_object->sprite_object->x = deck_x;
|
card_object->sprite_object->x = deck_x;
|
||||||
card_object->sprite_object->y = deck_y;
|
card_object->sprite_object->y = deck_y;
|
||||||
sprite_position(card_object->sprite_object->sprite, fx2int(deck_x), fx2int(deck_y));
|
|
||||||
|
|
||||||
set_hand_top(get_hand_top() + 1);
|
set_hand_top(get_hand_top() + 1);
|
||||||
get_hand_array()[get_hand_top()] = card_object;
|
get_hand_array()[get_hand_top()] = card_object;
|
||||||
@@ -2360,11 +2359,6 @@ static inline void cards_in_hand_update_loop(void)
|
|||||||
if (i != selected_card_idx && hand[i]->sprite_object->y > hand_y)
|
if (i != selected_card_idx && hand[i]->sprite_object->y > hand_y)
|
||||||
{
|
{
|
||||||
hand[i]->sprite_object->y = hand_y;
|
hand[i]->sprite_object->y = hand_y;
|
||||||
sprite_position(
|
|
||||||
hand[i]->sprite_object->sprite,
|
|
||||||
fx2int(hand[i]->sprite_object->x),
|
|
||||||
fx2int(hand_y)
|
|
||||||
);
|
|
||||||
// Set target y to match y. Ensures target is updated even when vy becomes
|
// Set target y to match y. Ensures target is updated even when vy becomes
|
||||||
// 0, preventing immediate snap back.
|
// 0, preventing immediate snap back.
|
||||||
hand[i]->sprite_object->ty = hand_y;
|
hand[i]->sprite_object->ty = hand_y;
|
||||||
|
|||||||
@@ -362,12 +362,6 @@ static void game_shop_create_items(void)
|
|||||||
|
|
||||||
sprite_object_print_price_under(joker_object->sprite_object, joker_object->joker->value);
|
sprite_object_print_price_under(joker_object->sprite_object, joker_object->joker->value);
|
||||||
|
|
||||||
sprite_position(
|
|
||||||
joker_object_get_sprite(joker_object),
|
|
||||||
fx2int(joker_object->sprite_object->x),
|
|
||||||
fx2int(joker_object->sprite_object->y)
|
|
||||||
);
|
|
||||||
|
|
||||||
list_push_back(shop_jokers_list, joker_object);
|
list_push_back(shop_jokers_list, joker_object);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+8
-4
@@ -226,11 +226,8 @@ static inline bool is_sprite_object_static(const SpriteObject* sprite_object)
|
|||||||
return !sprite_object_has_velocity(sprite_object) && sprite_object_at_target(sprite_object);
|
return !sprite_object_has_velocity(sprite_object) && sprite_object_at_target(sprite_object);
|
||||||
}
|
}
|
||||||
|
|
||||||
IWRAM_CODE void sprite_object_update(SpriteObject* sprite_object)
|
static inline IWRAM_CODE void update_sprite_position(SpriteObject* sprite_object)
|
||||||
{
|
{
|
||||||
if (is_sprite_object_static(sprite_object))
|
|
||||||
return;
|
|
||||||
|
|
||||||
sprite_object->vx += ((sprite_object->tx - sprite_object->x) * g_game_vars.game_speed) / 8;
|
sprite_object->vx += ((sprite_object->tx - sprite_object->x) * g_game_vars.game_speed) / 8;
|
||||||
sprite_object->vy += ((sprite_object->ty - sprite_object->y) * g_game_vars.game_speed) / 8;
|
sprite_object->vy += ((sprite_object->ty - sprite_object->y) * g_game_vars.game_speed) / 8;
|
||||||
|
|
||||||
@@ -297,6 +294,13 @@ IWRAM_CODE void sprite_object_update(SpriteObject* sprite_object)
|
|||||||
sprite_object->scale,
|
sprite_object->scale,
|
||||||
-sprite_object->vx + sprite_object->rotation
|
-sprite_object->vx + sprite_object->rotation
|
||||||
);
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
IWRAM_CODE void sprite_object_update(SpriteObject* sprite_object)
|
||||||
|
{
|
||||||
|
if (!is_sprite_object_static(sprite_object))
|
||||||
|
update_sprite_position(sprite_object);
|
||||||
|
|
||||||
sprite_position(sprite_object->sprite, fx2int(sprite_object->x), fx2int(sprite_object->y));
|
sprite_position(sprite_object->sprite, fx2int(sprite_object->x), fx2int(sprite_object->y));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user