@Override
    public Set<SnapShotObject> handleEvent(InputEventDescriptor eventDescriptor, SnapShot snapShot, float time) {
        final PlayerSSObject player = (PlayerSSObject)snapShot.getSnapShotObjects().get(new SSOId(eventDescriptor.getOriginId()));
        
        if(player == null) {
            return REJECT;
        }
        
        JumpEvent jumpEvent = (JumpEvent)eventDescriptor.getInputEvent();
        
        if(jumpEvent.isUp()) {
            player.setFloor((byte)(player.getFloor() + 1));
        }
        else {
            player.setFloor((byte)(player.getFloor() - 1));
        }
        
        player.getPosition().y = player.getFloor() * 3.5f;
        
        Set<SnapShotObject> changedObjects = new HashSet<>(1);
        changedObjects.add(player);
        
        return changedObjects;
    }