#NEWLINE# def handleElevatorAction( self , target , owner , expected_elevator_action , effect_name ) : #NEWLINE# #INDENT# static_service = self . getKernel ( ) . serviceManager ( ) . staticService ( ) #NEWLINE# simulation_service = self . getKernel ( ) . serviceManager ( ) . simulationService ( ) #NEWLINE# for data in static_service . getElevatorDataForObject ( target . id ) : #NEWLINE# #INDENT# if ( data . going_down == expected_elevator_action ) : #NEWLINE# #INDENT# destination_cell = simulation_service . findObjectById ( data . dst_cell ) #NEWLINE# new_position = vector3 ( owner . position . x , data . dst_position . y , owner . position . z ) #NEWLINE# owner . updatePosition ( new_position , owner . orientation , target ) #NEWLINE# SystemMessage . sendEffect ( owner , effect_name , data . dst_orientation , data . dst_position )