# Class AlienLifeSupport

java.lang.Object
it.polimi.ingsw.is25am31.model.components.Component
it.polimi.ingsw.is25am31.model.components.AlienLifeSupport

All Implemented Interfaces:
  `Serializable`

public class AlienLifeSupport extends Component
Represents a specialized component which, if attached to the ship next to a cabin, ensures it can contain alien inhabitants.

See Also:
  - Serialized Form

- ## Field Summary

  ### Fields inherited from class it.polimi.ingsw.is25am31.model.components.Component

  `connector, id, name, orientation, x, y`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AlienLifeSupport(int id, String name, Map<Side,Connector> connector, Side orientation, AlienColor color)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `AlienColor`
  `getAlienColor()`
  Returns the alien color if applicable
  `String[]`
  `getAsciiArt()`
  Provides ASCII art representation for structural components
  `boolean`
  `isAlienLifeSupport()`
  Indicates whether this component supports alien life
  `boolean`
  `isAlienStructural()`
  Indicates whether this is a structural component containing aliens
  `boolean`
  `isStructural()`
  `void`
  `setAsStructural()`

  ### Methods inherited from class it.polimi.ingsw.is25am31.model.components.Component

  `activate, addContains, calculateFirePower, calculateThrust, getCapacity, getConnector, getConnectors, getContains, getCrewMembers, getCurrentAlien, getId, getMaxGoodValue, getName, getOrientation, getOrientationShield, getPower, getX, getY, isActive, modifyCapacity, modifyCrewMembers, modifyOrientation, protectedSides, removeContains, setOrientationShield, setX, setY`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### AlienLifeSupport

    public AlienLifeSupport(int id, String name, Map<Side,Connector> connector, Side orientation, AlienColor color)

- ## Method Details

  - ### setAsStructural

    public void setAsStructural()

  - ### isStructural

    public boolean isStructural()

  - ### getAsciiArt

    public String[] getAsciiArt()
    Description copied from class: `Component`
    Provides ASCII art representation for structural components
    Overrides:
      `getAsciiArt` in class `Component`
    Returns:
      array of ASCII art lines

  - ### isAlienLifeSupport

    public boolean isAlienLifeSupport()
    Description copied from class: `Component`
    Indicates whether this component supports alien life
    Overrides:
      `isAlienLifeSupport` in class `Component`
    Returns:
      false by default; override in AlienLifeSupport

  - ### getAlienColor

    public AlienColor getAlienColor()
    Description copied from class: `Component`
    Returns the alien color if applicable
    Overrides:
      `getAlienColor` in class `Component`
    Returns:
      AlienColor.NONE by default

  - ### isAlienStructural

    public boolean isAlienStructural()
    Description copied from class: `Component`
    Indicates whether this is a structural component containing aliens
    Overrides:
      `isAlienStructural` in class `Component`
    Returns:
      false by default