Fixed box glitch
parent
51dd969e23
commit
9acea09359
|
@ -58,10 +58,19 @@ class PhysicsElementsHandler:
|
||||||
|
|
||||||
skip_sprites = []
|
skip_sprites = []
|
||||||
for sprite in sorted_dynamic_sprites:
|
for sprite in sorted_dynamic_sprites:
|
||||||
if sprite.last_effective_motion == (0, 0) and random.randint(0, 100) > 50\
|
if sprite.last_effective_motion == (0, 0) and random.randint(0, 100) > 50 \
|
||||||
and not sprite.id == 'player':
|
and not sprite.id == 'player':
|
||||||
skip_sprites.append(sprite)
|
skip_sprites.append(sprite)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
# remove all skip sprites that are closer than 100 pixels to the player
|
||||||
|
players = [sprite for sprite in sprites if hasattr(sprite, 'id') and sprite.id == 'player']
|
||||||
|
if len(players) > 0:
|
||||||
|
player = players[0]
|
||||||
|
for sprite in skip_sprites:
|
||||||
|
if sprite.position_scale.position[1] - player.position_scale.position[1] < 100:
|
||||||
|
skip_sprites.remove(sprite)
|
||||||
|
|
||||||
sorted_dynamic_sprites = [sprite for sprite in sorted_dynamic_sprites if sprite not in skip_sprites]
|
sorted_dynamic_sprites = [sprite for sprite in sorted_dynamic_sprites if sprite not in skip_sprites]
|
||||||
|
|
||||||
closest_sprites: dict[UiElement, list[tuple[int, StaticSprite]]] = {}
|
closest_sprites: dict[UiElement, list[tuple[int, StaticSprite]]] = {}
|
||||||
|
|
Loading…
Reference in New Issue