Prototype/Beacon: Difference between revisions
(0.17, again) |
(Set prototype parent) |
||
Line 1: | Line 1: | ||
==Basics== | {{Prototype parent|Prototype/EntityWithHealth}} | ||
== Basics == | |||
Prototype type: '''beacon''' | Prototype type: '''beacon''' | ||
Revision as of 15:43, 24 July 2019
Prototype definitions » PrototypeBase » Prototype/Entity » Prototype/EntityWithHealth » Prototype/EntityWithOwner » Prototype/Beacon
Basics
Prototype type: beacon
Entity with the ability to transfer module's effects to it's neighboring entities. Extends the Prototype/EntityWithHealth
Usage in base
Mandatory properties
This prototype inherits all the properties from Prototype/EntityWithHealth.
energy_usage
Type: Types/Energy
animation
Type: Types/Animation
The animation for the Beacon, when in use.
animation_shadow
Type: Types/Animation
energy_source
Type: Types/EnergySource
Must be an electric or void energy source.
base_picture
Type: Types/Sprite
The picture of the Beacon when it is not on.
supply_area_distance
Type: Types/double
The maximum distance that this Beacon can supply it's neighbors with it's module's effects. Max distance is 64.
distribution_effectivity
Type: Types/double
The multiplier of the module's effects, when shared between neighbors.
module_specification
Type: Types/ModuleSpecification
The number of module slots in this beacon, and their icon positions.
Optional properties
radius_visualisation_picture
Type: Types/Sprite
allowed_effects
Type: Types/EffectTypeLimitation
The types of modules that a player can place inside of the Beacon.
Example
{
type = "beacon",
name = "beacon",
icon = "__base__/graphics/icons/beacon.png",
icon_size = 32,
flags = {"placeable-player", "player-creation"},
minable = {mining_time = 1, result = "beacon"},
max_health = 200,
corpse = "big-remnants",
dying_explosion = "medium-explosion",
collision_box = {{-1.2, -1.2}, {1.2, 1.2}},
selection_box = {{-1.5, -1.5}, {1.5, 1.5}},
allowed_effects = {"consumption", "speed", "pollution"},
base_picture =
{
filename = "__base__/graphics/entity/beacon/beacon-base.png",
width = 116,
height = 93,
shift = { 0.34375, 0.046875}
},
animation =
{
filename = "__base__/graphics/entity/beacon/beacon-antenna.png",
width = 54,
height = 50,
line_length = 8,
frame_count = 32,
shift = { -0.03125, -1.71875},
animation_speed = 0.5
},
animation_shadow =
{
filename = "__base__/graphics/entity/beacon/beacon-antenna-shadow.png",
width = 63,
height = 49,
line_length = 8,
frame_count = 32,
shift = { 3.140625, 0.484375},
animation_speed = 0.5
},
radius_visualisation_picture =
{
filename = "__base__/graphics/entity/beacon/beacon-radius-visualization.png",
width = 10,
height = 10
},
supply_area_distance = 3,
energy_source =
{
type = "electric",
usage_priority = "secondary-input"
},
vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 },
energy_usage = "480kW",
distribution_effectivity = 0.5,
module_specification =
{
module_slots = 2,
module_info_icon_shift = {0, 0.5},
module_info_multi_row_initial_height_modifier = -0.3
}
},