mirror of
https://github.com/ZGCA-Forge/Elevator.git
synced 2025-12-14 13:04:41 +00:00
Fix: client completed_passengers calculation error
This commit is contained in:
@@ -162,12 +162,13 @@ class PassengerInfo(SerializableModel):
|
||||
arrive_tick: int
|
||||
pickup_tick: int = 0
|
||||
dropoff_tick: int = 0
|
||||
arrived: bool = False
|
||||
elevator_id: Optional[int] = None
|
||||
|
||||
@property
|
||||
def status(self) -> PassengerStatus:
|
||||
"""乘客状态"""
|
||||
if self.dropoff_tick > 0:
|
||||
if self.arrived:
|
||||
return PassengerStatus.COMPLETED
|
||||
elif self.pickup_tick > 0:
|
||||
return PassengerStatus.IN_ELEVATOR
|
||||
|
||||
@@ -457,6 +457,7 @@ class ElevatorSimulation:
|
||||
passenger = self.passengers[passenger_id]
|
||||
if passenger.destination == current_floor:
|
||||
passenger.dropoff_tick = self.tick
|
||||
passenger.arrived = True
|
||||
passengers_to_remove.append(passenger_id)
|
||||
|
||||
# Remove passengers who alighted
|
||||
|
||||
Reference in New Issue
Block a user