Prototype/EntityWithHealth: Difference between revisions
 0.16  | 
				 →integration_patch:  add comment from file  | 
				||
| Line 174: | Line 174: | ||
=== integration_patch ===  | === integration_patch ===  | ||
'''Type''': [[Types/Sprite4Way]]  | '''Type''': [[Types/Sprite4Way]]  | ||
Sprite drawn on ground under the entity to make it feel more integrated into the ground.  | |||
== Example ==  | == Example ==  | ||
Revision as of 20:16, 31 December 2017
Basics
The common properties of all entities with health in the game. Extends the Prototype/Entity
Extensions
- Prototype/Accumulator accumulator
 - Prototype/ArtilleryTurret artillery-turret
 - Prototype/Beacon beacon
 - Prototype/Boiler boiler
 - Prototype/Character player
 - Prototype/Combinator <abstract>
- Prototype/ArithmeticCombinator arithmetic-combinator
 - Prototype/DeciderCombinator decider-combinator
 
 - Prototype/ConstantCombinator constant-combinator
 - Prototype/Container container
- Prototype/LegacySmartContainer smart-container (unused in the base-game, but exists for migration)
 - Prototype/LogisticContainer logistic-container
- Prototype/InfinityContainer infinity-container
 
 
 - Prototype/CraftingMachine <abstract>
- Prototype/AssemblingMachine assembling-machine
- Prototype/RocketSilo rocket-silo
 
 - Prototype/Furnace furnace
 
 - Prototype/AssemblingMachine assembling-machine
 - Prototype/ElectricEnergyInterface electric-energy-interface
 - Prototype/ElectricPole electric-pole
 - Prototype/EnemySpawner unit-spawner
 - Prototype/Fish fish
 - Prototype/FlyingRobot <abstract>
- Prototype/CombatRobot combat-robot
 - Prototype/RobotWithLogisticInterface <abstract>
- Prototype/ConstructionRobot construction-robot
 - Prototype/LogisticRobot logistic-robot
 
 
 - Prototype/Gate gate
 - Prototype/Generator generator
 - Prototype/HeatPipe heat-pipe
 - Prototype/Inserter inserter
 - Prototype/Lab lab
 - Prototype/Lamp lamp
 - Prototype/LandMine land-mine
 - Prototype/LegacyRocketDefense rocket-defense (unused in the base-game, but exists for migration)
 - Prototype/Market market
 - Prototype/MiningDrill mining-drill
 - Prototype/OffshorePump offshore-pump
 - Prototype/Pipe pipe
 - Prototype/PipeToGround pipe-to-ground
 - Prototype/PlayerPort player-port
 - Prototype/PowerSwitch power-switch
 - Prototype/ProgrammableSpeaker programmable-speaker
 - Prototype/Pump pump
 - Prototype/Radar radar
 - Prototype/Rail <abstract>
- Prototype/CurvedRail curved-rail
 - Prototype/StraightRail straight-rail
 
 - Prototype/RailSignalBase <abstract>
- Prototype/RailChainSignal rail-chain-signal
 - Prototype/RailSignal rail-signal
 
 - Prototype/Reactor reactor
 - Prototype/Roboport roboport
 - Prototype/SimpleEntity simple-entity
 - Prototype/SimpleEntityWithOwner simple-entity-with-owner
- Prototype/SimpleEntityWtihForce simple-entity-with-force
 
 - Prototype/SolarPanel solar-panel
 - Prototype/StorageTank storage-tank
 - Prototype/TrainStop train-stop
 - Prototype/TransportBeltConnectable <abstract>
- Prototype/Loader loader
 - Prototype/Splitter splitter
 - Prototype/TransportBelt transport-belt
 - Prototype/UndergroundBelt underground-belt
 
 - Prototype/Tree tree
 - Prototype/Turret turret
- Prototype/AmmoTurret ammo-turret
 - Prototype/ElectricTurret electric-turret
 - Prototype/FluidTurret fluid-turret
 
 - Prototype/Unit unit
 - Prototype/Vehicle <abstract>
- Prototype/Car car
 - Prototype/RollingStock <abstract>
- Prototype/ArtilleryWagon artillery-wagon
 - Prototype/CargoWagon cargo-wagon
 - Prototype/FluidWagon fluid-wagon
 - Prototype/Locomotive locomotive
 
 
 - Prototype/Wall wall
 
Properties
max_health
Type: Types/float
Default: 10
The unit health can never go over the maxmum. Default health of units on creation is set to max.
max_health = 50
healing_per_tick
Type: Types/float
Default: 0
The amount of health cured by tick naturally. Works only on active entities. (Todo explain)
healing_per_tick = 0.01
repair_speed_modifier
Type: Types/float
Default: 1
flammability
Type: Types/float
Default: 0
dying_explosion
Type: Types/string
The entity that is spawned in place of this one when it dies.
loot
Type: Types/Loot The loot is generated when the entity is killed.
loot =
{
  {
    count_max = 10,
    count_min = 2,
    item = "stone",
    probability = 1
  }
}
resistances
Type: Types/Resistances
See: Damage
resistances = 
{
  {
    type = "fire",
    percent = 80
  },
  {
    type = "explosion",
    percent = 30
  }
}
attack_reaction
Type: Types/AttackReaction
Default: Empty
repair_sound
Type: Types/Sound
Default: Utility sound (defaultManualRepair)
alert_when_damaged
Type: Types/bool
Default: true
hide_resistances
Type: Types/bool
Default: true
corpse
Type: Types/string or Types/table of Types/strings
Default: Empty
Specifies the name(s) of the Prototypes/Corpse entity to be used when this entity dies.
integration_patch
Type: Types/Sprite4Way
Sprite drawn on ground under the entity to make it feel more integrated into the ground.
Example
{
    type = "container",
    name = "wooden-chest",
    icon = "__base__/graphics/icons/wooden-chest.png",
    flags = {"placeable-neutral", "player-creation"},
    minable = {mining_time = 1, result = "wooden-chest"},
    max_health = 100,
    corpse = "small-remnants",
    collision_box = {{-0.35, -0.35}, {0.35, 0.35}},
    fast_replaceable_group = "container",
    selection_box = {{-0.5, -0.5}, {0.5, 0.5}},
    inventory_size = 16,
    open_sound = { filename = "__base__/sound/wooden-chest-open.ogg" },
    close_sound = { filename = "__base__/sound/wooden-chest-close.ogg" },
    vehicle_impact_sound =  { filename = "__base__/sound/car-wood-impact.ogg", volume = 1.0 },
    picture =
    {
      filename = "__base__/graphics/entity/wooden-chest/wooden-chest.png",
      priority = "extra-high",
      width = 46,
      height = 33,
      shift = {0.25, 0.015625}
    },
    circuit_wire_connection_point =
    {
      shadow =
      {
        red = {0.734375, 0.453125},
        green = {0.609375, 0.515625},
      },
      wire =
      {
        red = {0.40625, 0.21875},
        green = {0.40625, 0.375},
      }
    },
    circuit_connector_sprites = get_circuit_connector_sprites({0.1875, 0.15625}, nil, 18),
    circuit_wire_max_distance = 9
  }