Prototype/Lamp: Difference between revisions
LazyFridge (talk | contribs) (A page for the Lamp Prototype Definition.) |
(0.16.23) |
||
Line 12: | Line 12: | ||
The type of energy the lamp uses. | The type of energy the lamp uses. | ||
=== | === energy_usage_per_tick === | ||
Type: [[Types/ | Type: [[Types/Energy]] | ||
The amount of energy the lamp uses. | The amount of energy the lamp uses. | ||
=== light === | === light === | ||
Type: [[Types/ | Type: [[Types/LightDefinition]] | ||
What color the lamp will be when it is on, and receiving power. | What color the lamp will be when it is on, and receiving power. | ||
=== light_when_colored === | === light_when_colored === | ||
Type: [[Types/ | Type: [[Types/LightDefinition]] | ||
This refers to when the light is in a Circuit Network, and is lit a certain color based on a Circuit value. | This refers to when the light is in a Circuit Network, and is lit a certain color based on a Circuit value. | ||
Line 36: | Line 36: | ||
The lamp's entity if it's off. | The lamp's entity if it's off. | ||
=== circuit_wire_connection_point === | |||
'''Type''': [[Types/WireConnectionPoint]] | |||
Defines how wires visually connect to this lamp. | |||
=== circuit_wire_max_distance === | |||
'''Type''': [[Types/double]] | |||
'''Default''': 0 | |||
The maximum circuit wire distance for this lamp. | |||
=== circuit_connector_sprites === | |||
'''Type''': [[Types/CircuitConnectorSprites]] | |||
The pictures displayed for circuit connections to this lamp. Not mandatory. | |||
=== glow_size === | |||
'''Type''': [[Types/float]] | |||
'''Default''': 0 | |||
=== glow_color_intensity === | |||
'''Type''': [[Types/float]] | |||
'''Default''': 0 | |||
=== darkness_for_all_lamps_on === | |||
'''Type''': [[Types/float]] | |||
'''Default''': 0.5 | |||
darkness_for_all_lamps_on must be > darkness_for_all_lamps_off. Values must be from 0 to 1. | |||
=== darkness_for_all_lamps_off === | |||
'''Type''': [[Types/float]] | |||
'''Default''': 0.3 | |||
darkness_for_all_lamps_on must be > darkness_for_all_lamps_off. Values must be from 0 to 1. | |||
=== signal_to_color_mapping === | |||
'''Type''': [[Types/table]] of [[Types/SignalColorMapping]] | |||
=== glow_render_mode === | |||
'''Type''': [[Types/string]] | |||
'''Default''': "additive" | |||
Options: "additive", "multiplicative" | |||
==Example== | ==Example== | ||
<syntaxhighlight lang="lua">{ | |||
type = "lamp", | type = "lamp", | ||
name = "small-lamp", | name = "small-lamp", | ||
icon = "__base__/graphics/icons/small-lamp.png", | icon = "__base__/graphics/icons/small-lamp.png", | ||
icon_size = 32, | |||
flags = {"placeable-neutral", "player-creation"}, | flags = {"placeable-neutral", "player-creation"}, | ||
minable = {hardness = 0.2, mining_time = 0.5, result = "small-lamp"}, | minable = {hardness = 0.2, mining_time = 0.5, result = "small-lamp"}, | ||
Line 52: | Line 104: | ||
{ | { | ||
type = "electric", | type = "electric", | ||
usage_priority = " | usage_priority = "lamp" | ||
}, | }, | ||
energy_usage_per_tick = "5KW", | energy_usage_per_tick = "5KW", | ||
darkness_for_all_lamps_on = 0.5, | |||
darkness_for_all_lamps_off = 0.3, | |||
light = {intensity = 0.9, size = 40, color = {r=1.0, g=1.0, b=1.0}}, | light = {intensity = 0.9, size = 40, color = {r=1.0, g=1.0, b=1.0}}, | ||
light_when_colored = {intensity = 1, size = 6, color = {r=1.0, g=1.0, b=1.0}}, | light_when_colored = {intensity = 1, size = 6, color = {r=1.0, g=1.0, b=1.0}}, | ||
glow_size = 6, | glow_size = 6, | ||
glow_color_intensity = 0.135, | glow_color_intensity = 0.135, | ||
picture_off = | picture_off = { | ||
layers = { | |||
{ | |||
filename = "__base__/graphics/entity/small-lamp/lamp.png", | |||
priority = "high", | |||
width = 42, | |||
height = 36, | |||
frame_count = 1, | |||
axially_symmetrical = false, | |||
direction_count = 1, | |||
shift = util.by_pixel(0,3), | |||
hr_version = { | |||
filename = "__base__/graphics/entity/small-lamp/hr-lamp.png", | |||
priority = "high", | |||
width = 83, | |||
height = 70, | |||
frame_count = 1, | |||
axially_symmetrical = false, | |||
direction_count = 1, | |||
shift = util.by_pixel(0.25,3), | |||
scale = 0.5 | |||
} | |||
}, | |||
{ | |||
filename = "__base__/graphics/entity/small-lamp/lamp-shadow.png", | |||
priority = "high", | |||
width = 38, | |||
height = 24, | |||
frame_count = 1, | |||
axially_symmetrical = false, | |||
direction_count = 1, | |||
shift = util.by_pixel(4,5), | |||
draw_as_shadow = true, | |||
hr_version = { | |||
filename = "__base__/graphics/entity/small-lamp/hr-lamp-shadow.png", | |||
priority = "high", | |||
width = 76, | |||
height = 47, | |||
frame_count = 1, | |||
axially_symmetrical = false, | |||
direction_count = 1, | |||
shift = util.by_pixel(4, 4.75), | |||
draw_as_shadow = true, | |||
scale = 0.5 | |||
} | |||
} | |||
} | |||
}, | |||
picture_on = | |||
{ | { | ||
filename = "__base__/graphics/entity/small-lamp/light | filename = "__base__/graphics/entity/small-lamp/lamp-light.png", | ||
priority = "high", | priority = "high", | ||
width = | width = 46, | ||
height = | height = 40, | ||
frame_count = 1, | frame_count = 1, | ||
axially_symmetrical = false, | axially_symmetrical = false, | ||
direction_count = 1, | direction_count = 1, | ||
shift = {-0 | shift = util.by_pixel(0, -7), | ||
hr_version = { | |||
filename = "__base__/graphics/entity/small-lamp/hr-lamp-light.png", | |||
priority = "high", | |||
width = 90, | |||
height = 78, | |||
frame_count = 1, | |||
axially_symmetrical = false, | |||
direction_count = 1, | |||
shift = util.by_pixel(0, -7), | |||
scale = 0.5 | |||
} | |||
}, | }, | ||
signal_to_color_mapping = | |||
{ | { | ||
{type="virtual", name="signal-red", color={r=1,g=0,b=0}}, | |||
{type="virtual", name="signal-green", color={r=0,g=1,b=0}}, | |||
{type="virtual", name="signal-blue", color={r=0,g=0,b=1}}, | |||
{type="virtual", name="signal-yellow", color={r=1,g=1,b=0}}, | |||
{type="virtual", name="signal-pink", color={r=1,g=0,b=1}}, | |||
{type="virtual", name="signal-cyan", color={r=0,g=1,b=1}}, | |||
}, | }, | ||
circuit_wire_connection_point = circuit_connector_definitions["lamp"].points, | |||
circuit_connector_sprites = circuit_connector_definitions["lamp"].sprites, | |||
circuit_wire_max_distance = default_circuit_wire_max_distance | |||
}</syntaxhighlight> |
Revision as of 20:10, 6 February 2018
Basics
A lamp to provide light, using energy. Based on Prototype/EntityWithHealth.
Usage in base
Properties
energy_source
Type: Types/EnergySource
The type of energy the lamp uses.
energy_usage_per_tick
Type: Types/Energy
The amount of energy the lamp uses.
light
Type: Types/LightDefinition
What color the lamp will be when it is on, and receiving power.
light_when_colored
Type: Types/LightDefinition
This refers to when the light is in a Circuit Network, and is lit a certain color based on a Circuit value.
picture_on
Type: Types/Sprite
The lamp's entity if it's on.
picture_off
Type: Types/Sprite
The lamp's entity if it's off.
circuit_wire_connection_point
Type: Types/WireConnectionPoint
Defines how wires visually connect to this lamp.
circuit_wire_max_distance
Type: Types/double
Default: 0
The maximum circuit wire distance for this lamp.
circuit_connector_sprites
Type: Types/CircuitConnectorSprites
The pictures displayed for circuit connections to this lamp. Not mandatory.
glow_size
Type: Types/float
Default: 0
glow_color_intensity
Type: Types/float
Default: 0
darkness_for_all_lamps_on
Type: Types/float
Default: 0.5
darkness_for_all_lamps_on must be > darkness_for_all_lamps_off. Values must be from 0 to 1.
darkness_for_all_lamps_off
Type: Types/float
Default: 0.3
darkness_for_all_lamps_on must be > darkness_for_all_lamps_off. Values must be from 0 to 1.
signal_to_color_mapping
Type: Types/table of Types/SignalColorMapping
glow_render_mode
Type: Types/string
Default: "additive"
Options: "additive", "multiplicative"
Example
{
type = "lamp",
name = "small-lamp",
icon = "__base__/graphics/icons/small-lamp.png",
icon_size = 32,
flags = {"placeable-neutral", "player-creation"},
minable = {hardness = 0.2, mining_time = 0.5, result = "small-lamp"},
max_health = 100,
corpse = "small-remnants",
collision_box = {{-0.15, -0.15}, {0.15, 0.15}},
selection_box = {{-0.5, -0.5}, {0.5, 0.5}},
vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 },
energy_source =
{
type = "electric",
usage_priority = "lamp"
},
energy_usage_per_tick = "5KW",
darkness_for_all_lamps_on = 0.5,
darkness_for_all_lamps_off = 0.3,
light = {intensity = 0.9, size = 40, color = {r=1.0, g=1.0, b=1.0}},
light_when_colored = {intensity = 1, size = 6, color = {r=1.0, g=1.0, b=1.0}},
glow_size = 6,
glow_color_intensity = 0.135,
picture_off = {
layers = {
{
filename = "__base__/graphics/entity/small-lamp/lamp.png",
priority = "high",
width = 42,
height = 36,
frame_count = 1,
axially_symmetrical = false,
direction_count = 1,
shift = util.by_pixel(0,3),
hr_version = {
filename = "__base__/graphics/entity/small-lamp/hr-lamp.png",
priority = "high",
width = 83,
height = 70,
frame_count = 1,
axially_symmetrical = false,
direction_count = 1,
shift = util.by_pixel(0.25,3),
scale = 0.5
}
},
{
filename = "__base__/graphics/entity/small-lamp/lamp-shadow.png",
priority = "high",
width = 38,
height = 24,
frame_count = 1,
axially_symmetrical = false,
direction_count = 1,
shift = util.by_pixel(4,5),
draw_as_shadow = true,
hr_version = {
filename = "__base__/graphics/entity/small-lamp/hr-lamp-shadow.png",
priority = "high",
width = 76,
height = 47,
frame_count = 1,
axially_symmetrical = false,
direction_count = 1,
shift = util.by_pixel(4, 4.75),
draw_as_shadow = true,
scale = 0.5
}
}
}
},
picture_on =
{
filename = "__base__/graphics/entity/small-lamp/lamp-light.png",
priority = "high",
width = 46,
height = 40,
frame_count = 1,
axially_symmetrical = false,
direction_count = 1,
shift = util.by_pixel(0, -7),
hr_version = {
filename = "__base__/graphics/entity/small-lamp/hr-lamp-light.png",
priority = "high",
width = 90,
height = 78,
frame_count = 1,
axially_symmetrical = false,
direction_count = 1,
shift = util.by_pixel(0, -7),
scale = 0.5
}
},
signal_to_color_mapping =
{
{type="virtual", name="signal-red", color={r=1,g=0,b=0}},
{type="virtual", name="signal-green", color={r=0,g=1,b=0}},
{type="virtual", name="signal-blue", color={r=0,g=0,b=1}},
{type="virtual", name="signal-yellow", color={r=1,g=1,b=0}},
{type="virtual", name="signal-pink", color={r=1,g=0,b=1}},
{type="virtual", name="signal-cyan", color={r=0,g=1,b=1}},
},
circuit_wire_connection_point = circuit_connector_definitions["lamp"].points,
circuit_connector_sprites = circuit_connector_definitions["lamp"].sprites,
circuit_wire_max_distance = default_circuit_wire_max_distance
}