updated update() method with delta parameter