code: def act(self, action):
          
          # FIXME: Hack to change in return type
          action = int(action)
          assert isinstance(action, int)
          assert action < self.actions_num, "%r (%s) invalid"%(action, type(action))
  
          # Reset buttons
          for k in self.world_layer.buttons:
              self.world_layer.buttons[k] = 0
  
          # Apply each button defined in action config
          for key in self.world_layer.player.controls[action]:
              if key in self.world_layer.buttons:
                  self.world_layer.buttons[key] = 1
  
          # Act in the environment
          self.step()
  
          observation = self.world_layer.get_state()
          reward = self.world_layer.player.get_reward()
          terminal = self.world_layer.player.game_over
          info = {}
  
          return observation, reward, terminal, info
docs: Take one action for one step