Skip to content

Commit 46454dc

Browse files
committed
Adds time_in_current_state to Entity; Fixes removed users from Resources.
1 parent 0132d8f commit 46454dc

2 files changed

Lines changed: 6 additions & 0 deletions

File tree

datasim/entity.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,10 @@ def _tick(self):
155155
self._state.tick()
156156
self.ticks_in_current_state += 1
157157

158+
@property
159+
def time_in_current_state(self) -> float:
160+
return self.ticks_in_current_state / self.world.tpu
161+
158162
def _change_state(self, new_state: "State | None"):
159163
if self._state == new_state:
160164
return

datasim/resource.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -278,6 +278,8 @@ def remove_user(self, user: Entity) -> bool:
278278

279279
def usage_tick(self, user: Entity) -> bool:
280280
"""Override this function for more complex usage time than a flat number of time units."""
281+
if user not in self.users:
282+
return False
281283
index = self.user_index[user]
282284
left = self.simple_time_left[index]
283285
left -= self.world.tick_time

0 commit comments

Comments
 (0)