# Class cocos.actions.tiledgrid_actions.TurnOffTiles

        base_actions.Action --+
                              |
    base_actions.IntervalAction --+
                                  |
    basegrid_actions.GridBaseAction --+
                                      |
     basegrid_actions.TiledGrid3DAction --+
                                          |
                                         TurnOffTiles

TurnOffTiles turns off each in random order

Example:

    scene.do( TurnOffTiles( grid=(16,12), seed=1, duration=10) )

## Methods

| init(self, seed=-1, *args, **kw) Initialize the Grid Action
| 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.
| get_tile_pos(self, idx)
| turn_on_tile(self, t)
| turn_off_tile(self, t)
| __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)
| __reversed__(self) (Inherited from cocos.actions.basegrid_actions.GridBaseAction)
| done(self) When in the worker role, this method is reliable. (Inherited from cocos.actions.base_actions.IntervalAction)
| get_grid(self) (Inherited from cocos.actions.basegrid_actions.TiledGrid3DAction)
[ float, float, float, float, float, float, float, float, float, float, float, float ] | get_original_tile(self, x, y) Get the 4-original tile coordinates. (Inherited from cocos.actions.basegrid_actions.TiledGrid3DAction)
[ float, float, float, float, float, float, float, float, float, float, float, float ] | get_tile(self, x, y) Get the current tile coordinates. (Inherited from cocos.actions.basegrid_actions.TiledGrid3DAction)
| set_tile(self, x, y, coords) Set the 4 tile coordinates (Inherited from cocos.actions.basegrid_actions.TiledGrid3DAction)
| 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, seed=-1, *args, **kw)
Initialize the Grid Action

Overrides:
  basegrid_actions.GridBaseAction.init

### start

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

Overrides:
  basegrid_actions.GridBaseAction.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