# Class cocos.actions.interval_actions.Speed

        base_actions.Action --+
                              |
    base_actions.IntervalAction --+
                                  |
                                 Speed

Changes the speed of an action, making it take longer (speed>1) or less (speed<1)

Example:

    # rotates the sprite 180 degrees in 1 secondclockwise
    action = Speed( Rotate( 180, 2 ), 2 )
    sprite.do( action )

## Methods

| init(self, other, speed) Init method.
| start(self) External code sets self.target and then calls this method.
| update(self, t) Gets called on every frame 't' is the time elapsed normalized to [0, 1] If this action takes 5 seconds to execute, `t` will be equal to 0 at 0 seconds.
| __reversed__(self)
| __add__(self, action) sequence operator - concatenates actions action1 + action2 -> action_result where action_result performs as: first do all that action1 would do; then perform all that action2 would do (Inherited from cocos.actions.base_actions.Action)
| __init__(self, *args, **kwargs) dont override - use init (Inherited from cocos.actions.base_actions.Action)
| __mul__(self, other) repeats ntimes the action action * n -> action_result where action result performs as: repeat n times the changes that action would do (Inherited from cocos.actions.base_actions.IntervalAction)
| __or__(self, action) spawn operator - runs two actions in parallel action1 | action2 -> action_result (Inherited from cocos.actions.base_actions.Action)
| done(self) When in the worker role, this method is reliable. (Inherited from cocos.actions.base_actions.IntervalAction)
| step(self, dt) Dont customize this method: it will not be called when in the component role for certain composite actions (like Sequence_IntervalAction). (Inherited from cocos.actions.base_actions.IntervalAction)
| stop(self) When the action must cease to perform this function is called by external code; after this call no other method should be called. (Inherited from cocos.actions.base_actions.Action)

## Instance Variables

| target CocosNode object that is the target of the action (Inherited from cocos.actions.base_actions.Action)

## Method Details

### init

init(self, other, speed)
Init method.

Parameters:
  other : IntervalAction
    The action that will be affected
  speed : float
    The speed change. 1 is no change. 2 means twice as fast, takes half the time 0.5 means half as fast, takes double the time
Overrides:
  base_actions.Action.init

### start

start(self)
External code sets self.target and then calls this method. Perform here any extra initialization needed.

Overrides:
  base_actions.Action.start

### update

update(self, t)
Gets called on every frame 't' is the time elapsed normalized to [0, 1] If this action takes 5 seconds to execute, `t` will be equal to 0 at 0 seconds. `t` will be 0.5 at 2.5 seconds and `t` will be 1 at 5sec. This method must not use self._elapsed, which is not guaranted to be updated.

Overrides:
  base_actions.IntervalAction.update

### __reversed__

__reversed__(self)

Overrides:
  base_actions.Action.__reversed__