crimsonland 0.1.0.dev8__py3-none-any.whl → 0.1.0.dev9__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -939,24 +939,20 @@ class WorldRenderer:
939
939
  # Native: chain reach is derived from the streak scale (`fVar29 * perk_scale * 40.0`).
940
940
  radius = effect_scale * perk_scale * 40.0
941
941
 
942
- # Pick a stable set of targets so the arc visuals don't flicker.
943
- candidates: list[tuple[float, object]] = []
944
- for creature in self.creatures.entries:
945
- if not creature.active or float(creature.hp) <= 0.0:
942
+ # Native iterates via creature_find_in_radius(pos, radius, start_index) in pool order.
943
+ targets: list[object] = []
944
+ for creature in self.creatures.entries[1:]:
945
+ if not creature.active:
946
946
  continue
947
- if float(getattr(creature, "hitbox_size", 0.0)) < 5.0:
947
+ if float(getattr(creature, "hitbox_size", 0.0)) <= 5.0:
948
948
  continue
949
949
  d = math.hypot(float(creature.x) - pos_x, float(creature.y) - pos_y)
950
950
  threshold = float(creature.size) * 0.142857149 + 3.0
951
- if d > radius + threshold:
952
- continue
953
- candidates.append((d, creature))
954
-
955
- candidates.sort(key=lambda item: item[0])
956
- targets = [creature for _d, creature in candidates[:8]]
951
+ if d - radius < threshold:
952
+ targets.append(creature)
957
953
 
958
- inner = 10.0 * perk_scale * scale
959
- outer = 14.0 * perk_scale * scale
954
+ inner_half = 10.0 * perk_scale * scale
955
+ outer_half = 14.0 * perk_scale * scale
960
956
  u = 0.625
961
957
  v0 = 0.0
962
958
  v1 = 0.25
@@ -980,7 +976,7 @@ class WorldRenderer:
980
976
  py = nx
981
977
 
982
978
  # Outer strip (softer).
983
- half = outer * 0.5
979
+ half = outer_half
984
980
  off_x = px * half
985
981
  off_y = py * half
986
982
  x0 = sx - off_x
@@ -992,7 +988,7 @@ class WorldRenderer:
992
988
  x3 = tx - off_x
993
989
  y3 = ty - off_y
994
990
 
995
- outer_tint = self._color_from_rgba((0.5, 0.6, 1.0, base_alpha * 0.5))
991
+ outer_tint = self._color_from_rgba((0.5, 0.6, 1.0, base_alpha))
996
992
  rl.rl_color4ub(outer_tint.r, outer_tint.g, outer_tint.b, outer_tint.a)
997
993
  rl.rl_tex_coord2f(u, v0)
998
994
  rl.rl_vertex2f(x0, y0)
@@ -1004,7 +1000,7 @@ class WorldRenderer:
1004
1000
  rl.rl_vertex2f(x3, y3)
1005
1001
 
1006
1002
  # Inner strip (brighter).
1007
- half = inner * 0.5
1003
+ half = inner_half
1008
1004
  off_x = px * half
1009
1005
  off_y = py * half
1010
1006
  x0 = sx - off_x
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: crimsonland
3
- Version: 0.1.0.dev8
3
+ Version: 0.1.0.dev9
4
4
  Requires-Dist: construct>=2.10.70
5
5
  Requires-Dist: pillow>=12.1.0
6
6
  Requires-Dist: platformdirs>=4.5.1
@@ -61,7 +61,7 @@ crimson/quests/timeline.py,sha256=leK898fPt3zq52v-O6dK4c-wJBcY-E6v-y57Fk3kJ3Q,40
61
61
  crimson/quests/types.py,sha256=iSrz8VSiRZh1pUDSyq37ir7B28c0HF8DjdF6OJ3FoBo,1772
62
62
  crimson/render/__init__.py,sha256=U4S_2y3zgLZVfMenHRaJFBW8yqh2mUBuI291LGQVOJ8,35
63
63
  crimson/render/terrain_fx.py,sha256=MpBV6ukGwGqDluIO86BQhHRVWUvcFOi8MV-z_TfLsiw,2705
64
- crimson/render/world_renderer.py,sha256=9Gq2uya5duQAv4ievnqbGjJ2kXSAohVUwC36poDAp8M,88852
64
+ crimson/render/world_renderer.py,sha256=6NCNGJScrULtIQQiHfweBj5y1eEpYttiiuJmXkLM_rY,88655
65
65
  crimson/sim/__init__.py,sha256=U4S_2y3zgLZVfMenHRaJFBW8yqh2mUBuI291LGQVOJ8,35
66
66
  crimson/sim/world_defs.py,sha256=HiMl--THnII3BTpt6mWAd20Xu-SRzCyHcs5pCR8aMbU,2195
67
67
  crimson/sim/world_state.py,sha256=h_PPaomj-1KPscPsW3zZ07tVFb3DYPM-FQq3pepMGng,15653
@@ -133,7 +133,7 @@ grim/sfx.py,sha256=cpn2Mmeio7BSDgbStSft-eZchO9Ot2MrK6iXJqxlLqU,7836
133
133
  grim/sfx_map.py,sha256=FM5iBzKkG30Vtu78SRavVNgXMbGK7ZFcQ8i6lgMlzVw,4697
134
134
  grim/terrain_render.py,sha256=EZ7ySYJyTZwXcrJx1mKbY3ewZtPi7Y270XnZgGJyZG8,31509
135
135
  grim/view.py,sha256=oF4pHZehBqOxPjKMU28TDg3qATh_amMIRJp-vMQnpn4,334
136
- crimsonland-0.1.0.dev8.dist-info/WHEEL,sha256=fAguSjoiATBe7TNBkJwOjyL1Tt4wwiaQGtNtjRPNMQA,80
137
- crimsonland-0.1.0.dev8.dist-info/entry_points.txt,sha256=jzzcExxiE9xpt4Iw2nbB1lwTv2Zj4H14WJTIPMkAjoE,77
138
- crimsonland-0.1.0.dev8.dist-info/METADATA,sha256=6ALOUljgYCIetA5lP2ivj6868urGHIRlDoTDfMkwoCs,243
139
- crimsonland-0.1.0.dev8.dist-info/RECORD,,
136
+ crimsonland-0.1.0.dev9.dist-info/WHEEL,sha256=fAguSjoiATBe7TNBkJwOjyL1Tt4wwiaQGtNtjRPNMQA,80
137
+ crimsonland-0.1.0.dev9.dist-info/entry_points.txt,sha256=jzzcExxiE9xpt4Iw2nbB1lwTv2Zj4H14WJTIPMkAjoE,77
138
+ crimsonland-0.1.0.dev9.dist-info/METADATA,sha256=OIZtL8pFrEVbZqJrzWdDTl4aipSITtUMTm25outkCIM,243
139
+ crimsonland-0.1.0.dev9.dist-info/RECORD,,