From f2e5f492039ad8f6099a8e16bdd098b83447a65c Mon Sep 17 00:00:00 2001 From: Qatavin <108201496+Qatavin@users.noreply.github.com> Date: Mon, 25 Nov 2024 22:16:41 -0800 Subject: [PATCH] Bobequip2.0 (#217) * Update for changes to how icons works * Update equipment.lua Update with new sounds and weight, reorganize items to account for changes in vanilla, * Update beams.lua Update with graphics_set and enhanced visual effects. Replace cyclic_sound with working_sound. * Update personal-roboport.lua Correct KW to kW. Move icon_size to new correct locations. Add new items sounds. Adjust personal roboport robot_limit to 10, 20, 30, 40, equal to 2 personal robot controllers. Reorganize subgroups. * Update equipment.lua Update graphics dimensions. Revise color lookup for night vision equipment. Change bob_personal_laser_defense_equipment to use (inputs). Replace category with ammo_category. Remove flow limits from batteries to match vanilla. Add sounds to night vision equipment. Nerf personal lasers to match vanilla. * Hide beams from Factoriopedia --- bobequipment/data.lua | 2 +- bobequipment/prototypes/beams.lua | 964 +++++++++++++----- .../prototypes/equipment/equipment.lua | 189 ++-- bobequipment/prototypes/item/equipment.lua | 307 +++++- bobequipment/prototypes/personal-roboport.lua | 280 ++++- 5 files changed, 1364 insertions(+), 378 deletions(-) diff --git a/bobequipment/data.lua b/bobequipment/data.lua index b1d3cb2f7..f8e8d42f5 100644 --- a/bobequipment/data.lua +++ b/bobequipment/data.lua @@ -6,7 +6,7 @@ if not bobmods.equipment then end function bobmods.equipment.technology_icon_constant_equipment(technology_icon) - local scale = ((technology_icon.icon_size or 256) / 256) * (technology_icon.scale or 1) + local scale = 0.5 local icons = { technology_icon, { diff --git a/bobequipment/prototypes/beams.lua b/bobequipment/prototypes/beams.lua index 02915e40f..1f36f242d 100644 --- a/bobequipment/prototypes/beams.lua +++ b/bobequipment/prototypes/beams.lua @@ -1,4 +1,14 @@ local laser_beam_blend_mode = "additive" +local laserBeamSound = { + sound = + { + category = "weapon", + filename = "__base__/sound/fight/laser-beam.ogg", + volume = 0.75, + modifiers = volume_multiplier("main-menu", 2.5) + }, + max_sounds_per_type = 1 +} data:extend({ { @@ -20,50 +30,130 @@ data:extend({ }, }, }, - head = { - filename = "__bobequipment__/graphics/beam/laser-body.png", - tint = { r = 0.8, g = 0.8, b = 0.8 }, - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - tail = { - filename = "__bobequipment__/graphics/beam/laser-end.png", - tint = { r = 0.8, g = 0.8, b = 0.8 }, - flags = { "no-crop", "mipmap" }, - width = 110, - height = 62, - frame_count = 8, - shift = util.by_pixel(11.5, 1), - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - body = { - { - filename = "__bobequipment__/graphics/beam/laser-body.png", - tint = { r = 0.8, g = 0.8, b = 0.8 }, - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - }, - working_sound = { - { - filename = "__base__/sound/fight/electric-beam.ogg", - volume = 0.7, + graphics_set = { + beam = { + head = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body.png", + tint = { r = 0.8, g = 0.8, b = 0.8 }, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + tail = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-end.png", + tint = { r = 0.8, g = 0.8, b = 0.8 }, + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-end-light.png", + flags = { "light" }, + draw_as_light = true, + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + body = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body.png", + tint = { r = 0.8, g = 0.8, b = 0.8 }, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, }, + ground = { + head = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-head.png", + tint = { r = 0.7, g = 0.7, b = 0.7 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { -1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + tail = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-tail.png", + tint = { r = 0.7, g = 0.7, b = 0.7 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { 1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + body = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-body.png", + tint = { r = 0.7, g = 0.7, b = 0.7 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 64, + height = 256, + scale = 0.5, + animation_speed = 0.5, + }, + } }, + working_sound = laserBeamSound, + hidden = true }, { type = "beam", @@ -84,47 +174,127 @@ data:extend({ }, }, }, - head = { - filename = "__bobequipment__/graphics/beam/laser-body-sapphire.png", - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - tail = { - filename = "__bobequipment__/graphics/beam/laser-end-sapphire.png", - flags = { "no-crop", "mipmap" }, - width = 110, - height = 62, - frame_count = 8, - shift = util.by_pixel(11.5, 1), - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - body = { - { - filename = "__bobequipment__/graphics/beam/laser-body-sapphire.png", - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - }, - working_sound = { - { - filename = "__base__/sound/fight/electric-beam.ogg", - volume = 0.7, + graphics_set = { + beam = { + head = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body-sapphire.png", + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + tail = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-end-sapphire.png", + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-end-light.png", + flags = { "light" }, + draw_as_light = true, + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + body = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body-sapphire.png", + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, }, + ground = { + head = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-head.png", + tint = { r = 0.35, g = 0.6, b = 0.85 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { -1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + tail = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-tail.png", + tint = { r = 0.35, g = 0.6, b = 0.85 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { 1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + body = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-body.png", + tint = { r = 0.35, g = 0.6, b = 0.85 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 64, + height = 256, + scale = 0.5, + animation_speed = 0.5, + }, + } }, + working_sound = laserBeamSound, + hidden = true }, { type = "beam", @@ -145,47 +315,127 @@ data:extend({ }, }, }, - head = { - filename = "__bobequipment__/graphics/beam/laser-body-emerald.png", - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - tail = { - filename = "__bobequipment__/graphics/beam/laser-end-emerald.png", - flags = { "no-crop", "mipmap" }, - width = 110, - height = 62, - frame_count = 8, - shift = util.by_pixel(11.5, 1), - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - body = { - { - filename = "__bobequipment__/graphics/beam/laser-body-emerald.png", - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - }, - working_sound = { - { - filename = "__base__/sound/fight/electric-beam.ogg", - volume = 0.7, + graphics_set = { + beam = { + head = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body-emerald.png", + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + tail = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-end-emerald.png", + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-end-light.png", + flags = { "light" }, + draw_as_light = true, + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + body = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body-emerald.png", + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, }, + ground = { + head = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-head.png", + tint = { r = 0.36, g = 0.84, b = 0.34 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { -1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + tail = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-tail.png", + tint = { r = 0.36, g = 0.84, b = 0.34 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { 1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + body = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-body.png", + tint = { r = 0.36, g = 0.84, b = 0.34 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 64, + height = 256, + scale = 0.5, + animation_speed = 0.5, + }, + } }, + working_sound = laserBeamSound, + hidden = true }, { type = "beam", @@ -206,47 +456,127 @@ data:extend({ }, }, }, - head = { - filename = "__bobequipment__/graphics/beam/laser-body-amethyst.png", - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - tail = { - filename = "__bobequipment__/graphics/beam/laser-end-amethyst.png", - flags = { "no-crop", "mipmap" }, - width = 110, - height = 62, - frame_count = 8, - shift = util.by_pixel(11.5, 1), - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - body = { - { - filename = "__bobequipment__/graphics/beam/laser-body-amethyst.png", - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - }, - working_sound = { - { - filename = "__base__/sound/fight/electric-beam.ogg", - volume = 0.7, + graphics_set = { + beam = { + head = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body-amethyst.png", + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + tail = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-end-amethyst.png", + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-end-light.png", + flags = { "light" }, + draw_as_light = true, + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + body = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body-amethyst.png", + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, }, + ground = { + head = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-head.png", + tint = { r = 0.67, g = 0.44, b = 0.93 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { -1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + tail = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-tail.png", + tint = { r = 0.67, g = 0.44, b = 0.93 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { 1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + body = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-body.png", + tint = { r = 0.67, g = 0.44, b = 0.93 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 64, + height = 256, + scale = 0.5, + animation_speed = 0.5, + }, + } }, + working_sound = laserBeamSound, + hidden = true }, { type = "beam", @@ -267,47 +597,127 @@ data:extend({ }, }, }, - head = { - filename = "__bobequipment__/graphics/beam/laser-body-topaz.png", - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - tail = { - filename = "__bobequipment__/graphics/beam/laser-end-topaz.png", - flags = { "no-crop", "mipmap" }, - width = 110, - height = 62, - frame_count = 8, - shift = util.by_pixel(11.5, 1), - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - body = { - { - filename = "__bobequipment__/graphics/beam/laser-body-topaz.png", - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - }, - working_sound = { - { - filename = "__base__/sound/fight/electric-beam.ogg", - volume = 0.7, + graphics_set = { + beam = { + head = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body-topaz.png", + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + tail = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-end-topaz.png", + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-end-light.png", + flags = { "light" }, + draw_as_light = true, + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + body = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body-topaz.png", + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, }, + ground = { + head = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-head.png", + tint = { r = 0.85, g = 0.83, b = 0.4 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { -1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + tail = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-tail.png", + tint = { r = 0.85, g = 0.83, b = 0.4 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { 1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + body = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-body.png", + tint = { r = 0.85, g = 0.83, b = 0.4 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 64, + height = 256, + scale = 0.5, + animation_speed = 0.5, + }, + } }, + working_sound = laserBeamSound, + hidden = true }, { type = "beam", @@ -328,46 +738,126 @@ data:extend({ }, }, }, - head = { - filename = "__bobequipment__/graphics/beam/laser-body.png", - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - tail = { - filename = "__bobequipment__/graphics/beam/laser-end.png", - flags = { "no-crop", "mipmap" }, - width = 110, - height = 62, - frame_count = 8, - shift = util.by_pixel(11.5, 1), - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - body = { - { - filename = "__bobequipment__/graphics/beam/laser-body.png", - flags = { "mipmap" }, - line_length = 8, - width = 64, - height = 12, - frame_count = 8, - scale = 0.5, - animation_speed = 0.5, - blend_mode = laser_beam_blend_mode, - }, - }, - working_sound = { - { - filename = "__base__/sound/fight/electric-beam.ogg", - volume = 0.7, + graphics_set = { + beam = { + head = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body.png", + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + tail = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-end.png", + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-end-light.png", + flags = { "light" }, + draw_as_light = true, + width = 110, + height = 62, + frame_count = 8, + shift = util.by_pixel(11.5, 1), + scale = 0.5, + animation_speed = 0.5, + }, + } + }, + body = { + layers = { + { + filename = "__bobequipment__/graphics/beam/laser-body.png", + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + blend_mode = laser_beam_blend_mode, + }, + { + filename = "__base__/graphics/entity/laser-turret/laser-body-light.png", + flags = { "light" }, + draw_as_light = true, + line_length = 8, + width = 64, + height = 12, + frame_count = 8, + scale = 0.5, + animation_speed = 0.5, + }, + } + }, }, + ground = { + head = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-head.png", + tint = { r = 0.8, g = 0.8, b = 0.8 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { -1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + tail = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-tail.png", + tint = { r = 0.8, g = 0.8, b = 0.8 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 256, + height = 256, + shift = { 1, 0 }, + scale = 0.5, + animation_speed = 0.5, + }, + body = { + filename = "__base__/graphics/entity/laser-turret/laser-ground-light-body.png", + tint = { r = 0.8, g = 0.8, b = 0.8 }, + flags = { "light" }, + draw_as_light = true, + line_length = 1, + repeat_count = 8, + width = 64, + height = 256, + scale = 0.5, + animation_speed = 0.5, + }, + } }, + working_sound = laserBeamSound, + hidden = true }, }) diff --git a/bobequipment/prototypes/equipment/equipment.lua b/bobequipment/prototypes/equipment/equipment.lua index bfbadcb36..5b360cb3d 100644 --- a/bobequipment/prototypes/equipment/equipment.lua +++ b/bobequipment/prototypes/equipment/equipment.lua @@ -1,11 +1,14 @@ +data.raw["night-vision-equipment"]["night-vision-equipment"].color_lookup = { { 0.5, "__core__/graphics/color_luts/lut-dawn.png" } } + data:extend({ { type = "night-vision-equipment", name = "night-vision-equipment-2", sprite = { filename = "__base__/graphics/equipment/night-vision-equipment.png", - width = 64, - height = 64, + width = 128, + height = 128, + scale = 0.5, priority = "medium", }, shape = { @@ -22,15 +25,24 @@ data:extend({ energy_input = "15kW", categories = { "armor" }, darkness_to_turn_on = 0.4, - color_lookup = { { 0.5, "__core__/graphics/color_luts/lut-dawn.png" } }, + color_lookup = { { 0.5, "__core__/graphics/color_luts/nightvision.png" } }, + activate_sound = { + filename = "__base__/sound/nightvision-on.ogg", + volume = 0.5 + }, + deactivate_sound = { + filename = "__base__/sound/nightvision-off.ogg", + volume = 0.5 + }, }, { type = "night-vision-equipment", name = "night-vision-equipment-3", sprite = { filename = "__base__/graphics/equipment/night-vision-equipment.png", - width = 64, - height = 64, + width = 128, + height = 128, + scale = 0.5, priority = "medium", }, shape = { @@ -48,6 +60,14 @@ data:extend({ categories = { "armor" }, darkness_to_turn_on = 0.05, color_lookup = { { 0.5, "__core__/graphics/color_luts/identity-lut.png" } }, + activate_sound = { + filename = "__base__/sound/nightvision-on.ogg", + volume = 0.5 + }, + deactivate_sound = { + filename = "__base__/sound/nightvision-off.ogg", + volume = 0.5 + }, }, }) @@ -176,12 +196,16 @@ data:extend({ data.raw["battery-equipment"]["battery-equipment"].sprite.filename = "__bobequipment__/graphics/equipment/battery-equipment.png" +data.raw["battery-equipment"]["battery-equipment"].sprite.height = 64 +data.raw["battery-equipment"]["battery-equipment"].sprite.width = 32 +data.raw["battery-equipment"]["battery-equipment"].sprite.scale = 1 data.raw["battery-equipment"]["battery-mk2-equipment"].sprite.filename = "__bobequipment__/graphics/equipment/battery-mk2-equipment.png" +data.raw["battery-equipment"]["battery-mk2-equipment"].sprite.height = 64 +data.raw["battery-equipment"]["battery-mk2-equipment"].sprite.width = 32 +data.raw["battery-equipment"]["battery-mk2-equipment"].sprite.scale = 1 data.raw["battery-equipment"]["battery-mk2-equipment"].energy_source.buffer_capacity = "50MJ" -data.raw["battery-equipment"]["battery-mk2-equipment"].energy_source.input_flow_limit = "500MW" -data.raw["battery-equipment"]["battery-mk2-equipment"].energy_source.output_flow_limit = "500MW" data:extend({ { @@ -201,8 +225,6 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "120MJ", - input_flow_limit = "1200MW", - output_flow_limit = "1200MW", usage_priority = "tertiary", }, categories = { "armor" }, @@ -224,8 +246,6 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "300MJ", - input_flow_limit = "3000MW", - output_flow_limit = "3000MW", usage_priority = "tertiary", }, categories = { "armor" }, @@ -247,8 +267,6 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "750MJ", - input_flow_limit = "7500MW", - output_flow_limit = "7500MW", usage_priority = "tertiary", }, categories = { "armor" }, @@ -270,8 +288,6 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "1800MJ", - input_flow_limit = "18000MW", - output_flow_limit = "18000MW", usage_priority = "tertiary", }, categories = { "armor" }, @@ -424,21 +440,12 @@ data:extend({ }, }) -local function bob_personal_laser_defense_equipment( - name, - sprite, - buffer_capacity, - energy_consumption, - beam, - damage_modifier, - cooldown, - range -) +local function bob_personal_laser_defense_equipment(inputs) return { type = "active-defense-equipment", - name = name, + name = inputs.name, sprite = { - filename = sprite, + filename = inputs.sprite, width = 128, height = 128, priority = "medium", @@ -451,25 +458,25 @@ local function bob_personal_laser_defense_equipment( energy_source = { type = "electric", usage_priority = "secondary-input", - buffer_capacity = buffer_capacity, + buffer_capacity = inputs.buffer_capacity, }, attack_parameters = { type = "beam", - cooldown = cooldown, - damage_modifier = 4 * damage_modifier, - range = range, + cooldown = inputs.cooldown, + damage_modifier = 4 * inputs.damage_modifier, + range = inputs.range, + ammo_category = "laser", ammo_type = { - category = "laser", - energy_consumption = energy_consumption, + energy_consumption = inputs.energy_consumption, action = { { type = "direct", action_delivery = { type = "beam", - beam = beam, - max_length = range, - duration = cooldown, + beam = inputs.beam, + max_length = inputs.range, + duration = inputs.cooldown, source_offset = { 0, -1.31439 }, }, }, @@ -490,56 +497,56 @@ data.raw["active-defense-equipment"]["personal-laser-defense-equipment"].sprite data:extend({ -- bob_personal_laser_defense_equipment(name, sprite, buffer_capacity, energy_consumption, projectile, damage_modifier, cooldown, range) - bob_personal_laser_defense_equipment( - "personal-laser-defense-equipment-2", - "__bobequipment__/graphics/icons/technology/personal-laser-defense-equipment-2.png", - "380kJ", - "60kJ", - "bob-laser-beam-sapphire", - 1.5, - 15, - 16 - ), - bob_personal_laser_defense_equipment( - "personal-laser-defense-equipment-3", - "__bobequipment__/graphics/icons/technology/personal-laser-defense-equipment-3.png", - "580kJ", - "70kJ", - "bob-laser-beam-emerald", - 2.1, - 12, - 17 - ), - bob_personal_laser_defense_equipment( - "personal-laser-defense-equipment-4", - "__bobequipment__/graphics/icons/technology/personal-laser-defense-equipment-4.png", - "820kJ", - "80kJ", - "bob-laser-beam-amethyst", - 2.8, - 10, - 18 - ), - bob_personal_laser_defense_equipment( - "personal-laser-defense-equipment-5", - "__bobequipment__/graphics/icons/technology/personal-laser-defense-equipment-5.png", - "1100kJ", - "90kJ", - "bob-laser-beam-topaz", - 3.6, - 8.5, - 19 - ), - bob_personal_laser_defense_equipment( - "personal-laser-defense-equipment-6", - "__bobequipment__/graphics/icons/technology/personal-laser-defense-equipment-6.png", - "1420kJ", - "100kJ", - "bob-laser-beam-diamond", - 4.5, - 7.5, - 20 - ), + bob_personal_laser_defense_equipment({ + name = "personal-laser-defense-equipment-2", + sprite = "__bobequipment__/graphics/icons/technology/personal-laser-defense-equipment-2.png", + buffer_capacity = "380kJ", + energy_consumption = "60kJ", + beam = "bob-laser-beam-sapphire", + damage_modifier = 0.4, + cooldown = 36, + range = 16 + }), + bob_personal_laser_defense_equipment({ + name = "personal-laser-defense-equipment-3", + sprite = "__bobequipment__/graphics/icons/technology/personal-laser-defense-equipment-3.png", + buffer_capacity = "580kJ", + energy_consumption = "70kJ", + beam = "bob-laser-beam-emerald", + damage_modifier = 0.55, + cooldown = 32, + range = 17 + }), + bob_personal_laser_defense_equipment({ + name = "personal-laser-defense-equipment-4", + sprite = "__bobequipment__/graphics/icons/technology/personal-laser-defense-equipment-4.png", + buffer_capacity = "820kJ", + energy_consumption = "80kJ", + beam = "bob-laser-beam-amethyst", + damage_modifier = 0.7, + cooldown = 28, + range = 18 + }), + bob_personal_laser_defense_equipment({ + name = "personal-laser-defense-equipment-5", + sprite = "__bobequipment__/graphics/icons/technology/personal-laser-defense-equipment-5.png", + buffer_capacity = "1100kJ", + energy_consumption = "90kJ", + beam = "bob-laser-beam-topaz", + damage_modifier = 0.85, + cooldown = 24, + range = 19 + }), + bob_personal_laser_defense_equipment({ + name = "personal-laser-defense-equipment-6", + sprite = "__bobequipment__/graphics/icons/technology/personal-laser-defense-equipment-6.png", + buffer_capacity = "1420kJ", + energy_consumption = "100kJ", + beam = "bob-laser-beam-diamond", + damage_modifier = 1, + cooldown = 20, + range = 20 + }), }) data:extend({ @@ -548,8 +555,9 @@ data:extend({ name = "exoskeleton-equipment-2", sprite = { filename = "__base__/graphics/equipment/exoskeleton-equipment.png", - width = 64, - height = 128, + width = 128, + height = 256, + scale = 0.5, priority = "medium", }, shape = { @@ -570,8 +578,9 @@ data:extend({ name = "exoskeleton-equipment-3", sprite = { filename = "__base__/graphics/equipment/exoskeleton-equipment.png", - width = 64, - height = 128, + width = 128, + height = 256, + scale = 0.5, priority = "medium", }, shape = { diff --git a/bobequipment/prototypes/item/equipment.lua b/bobequipment/prototypes/item/equipment.lua index 62e4c9a09..cf90103d5 100644 --- a/bobequipment/prototypes/item/equipment.lua +++ b/bobequipment/prototypes/item/equipment.lua @@ -1,8 +1,11 @@ data.raw.item["fission-reactor-equipment"].order = "a[energy-source]-b[fission-reactor-1]" data.raw.item["night-vision-equipment"].order = "f[night-vision]-a[night-vision-equipment-1]" +data.raw.item["night-vision-equipment"].subgroup = "equipment" data.raw.item["solar-panel-equipment"].order = "a[energy-source]-a[solar-panel-1]" data.raw.item["personal-laser-defense-equipment"].order = "d[active-defense]-a[personal-laser-defense-equipment-1]" data.raw.item["exoskeleton-equipment"].order = "e[exoskeleton]-a[exoskeleton-equipment-1]" +data.raw.item["exoskeleton-equipment"].subgroup = "equipment" +data.raw.item["belt-immunity-equipment"].subgroup = "equipment" data.raw.item["energy-shield-equipment"].icon = "__bobequipment__/graphics/equipment/energy-shield-mk1-equipment.png" data.raw.item["energy-shield-equipment"].icon_size = 64 @@ -18,9 +21,22 @@ data:extend({ icon_size = 64, place_as_equipment_result = "energy-shield-mk3-equipment", subgroup = "military-equipment", - order = "b[shield]-c[energy-shield-equipment-mk3]", + order = "a[shield]-c[energy-shield-equipment-mk3]", stack_size = 50, default_request_amount = 10, + drop_sound = { + filename = "__base__/sound/item/energy-shield-inventory-move.ogg", + volume = 0.4 + }, + inventory_move_sound = { + filename = "__base__/sound/item/energy-shield-inventory-move.ogg", + volume = 0.4 + }, + pick_sound = { + filename = "__base__/sound/item/energy-shield-inventory-pickup.ogg", + volume = 0.4 + }, + weight = 100000 }, { type = "item", @@ -29,9 +45,22 @@ data:extend({ icon_size = 64, place_as_equipment_result = "energy-shield-mk4-equipment", subgroup = "military-equipment", - order = "b[shield]-d[energy-shield-equipment-mk4]", + order = "a[shield]-d[energy-shield-equipment-mk4]", stack_size = 50, default_request_amount = 10, + drop_sound = { + filename = "__base__/sound/item/energy-shield-inventory-move.ogg", + volume = 0.4 + }, + inventory_move_sound = { + filename = "__base__/sound/item/energy-shield-inventory-move.ogg", + volume = 0.4 + }, + pick_sound = { + filename = "__base__/sound/item/energy-shield-inventory-pickup.ogg", + volume = 0.4 + }, + weight = 100000 }, { type = "item", @@ -40,9 +69,22 @@ data:extend({ icon_size = 64, place_as_equipment_result = "energy-shield-mk5-equipment", subgroup = "military-equipment", - order = "b[shield]-e[energy-shield-equipment-mk5]", + order = "a[shield]-e[energy-shield-equipment-mk5]", stack_size = 50, default_request_amount = 10, + drop_sound = { + filename = "__base__/sound/item/energy-shield-inventory-move.ogg", + volume = 0.4 + }, + inventory_move_sound = { + filename = "__base__/sound/item/energy-shield-inventory-move.ogg", + volume = 0.4 + }, + pick_sound = { + filename = "__base__/sound/item/energy-shield-inventory-pickup.ogg", + volume = 0.4 + }, + weight = 100000 }, { type = "item", @@ -51,9 +93,22 @@ data:extend({ icon_size = 64, place_as_equipment_result = "energy-shield-mk6-equipment", subgroup = "military-equipment", - order = "b[shield]-f[energy-shield-equipment-mk6]", + order = "a[shield]-f[energy-shield-equipment-mk6]", stack_size = 50, default_request_amount = 10, + drop_sound = { + filename = "__base__/sound/item/energy-shield-inventory-move.ogg", + volume = 0.4 + }, + inventory_move_sound = { + filename = "__base__/sound/item/energy-shield-inventory-move.ogg", + volume = 0.4 + }, + pick_sound = { + filename = "__base__/sound/item/energy-shield-inventory-pickup.ogg", + volume = 0.4 + }, + weight = 100000 }, }) @@ -73,6 +128,19 @@ data:extend({ order = "c[battery]-c[battery-mk3-equipment]", stack_size = 50, default_request_amount = 10, + drop_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + inventory_move_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + pick_sound = { + filename = "__base__/sound/item/electric-small-inventory-pickup.ogg", + volume = 0.7 + }, + weight = 100000 }, { type = "item", @@ -84,6 +152,19 @@ data:extend({ order = "c[battery]-d[battery-mk4-equipment]", stack_size = 50, default_request_amount = 10, + drop_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + inventory_move_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + pick_sound = { + filename = "__base__/sound/item/electric-small-inventory-pickup.ogg", + volume = 0.7 + }, + weight = 100000 }, { type = "item", @@ -95,6 +176,19 @@ data:extend({ order = "c[battery]-e[battery-mk5-equipment]", stack_size = 50, default_request_amount = 10, + drop_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + inventory_move_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + pick_sound = { + filename = "__base__/sound/item/electric-small-inventory-pickup.ogg", + volume = 0.7 + }, + weight = 100000 }, { type = "item", @@ -106,6 +200,19 @@ data:extend({ order = "c[battery]-f[battery-mk6-equipment]", stack_size = 50, default_request_amount = 10, + drop_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + inventory_move_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + pick_sound = { + filename = "__base__/sound/item/electric-small-inventory-pickup.ogg", + volume = 0.7 + }, + weight = 100000 }, }) @@ -123,6 +230,19 @@ data:extend({ subgroup = "equipment", order = "a[energy-source]-b[fission-reactor-2]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/reactor-inventory-move.ogg", + volume = 0.7 + }, + inventory_move_sound = { + filename = "__base__/sound/item/reactor-inventory-move.ogg", + volume = 0.7 + }, + pick_sound = { + filename = "__base__/sound/item/reactor-inventory-pickup.ogg", + volume = 0.6 + }, + weight = 250000 }, { type = "item", @@ -133,6 +253,19 @@ data:extend({ subgroup = "equipment", order = "a[energy-source]-b[fission-reactor-3]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/reactor-inventory-move.ogg", + volume = 0.7 + }, + inventory_move_sound = { + filename = "__base__/sound/item/reactor-inventory-move.ogg", + volume = 0.7 + }, + pick_sound = { + filename = "__base__/sound/item/reactor-inventory-pickup.ogg", + volume = 0.6 + }, + weight = 250000 }, { type = "item", @@ -143,6 +276,19 @@ data:extend({ subgroup = "equipment", order = "a[energy-source]-b[fission-reactor-4]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/reactor-inventory-move.ogg", + volume = 0.7 + }, + inventory_move_sound = { + filename = "__base__/sound/item/reactor-inventory-move.ogg", + volume = 0.7 + }, + pick_sound = { + filename = "__base__/sound/item/reactor-inventory-pickup.ogg", + volume = 0.6 + }, + weight = 250000 }, { @@ -154,6 +300,18 @@ data:extend({ subgroup = "equipment", order = "f[night-vision]-b[night-vision-equipment-2]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + inventory_move_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + pick_sound = { + filename = "__base__/sound/item/electric-small-inventory-pickup.ogg", + volume = 0.7 + }, }, { type = "item", @@ -164,6 +322,18 @@ data:extend({ subgroup = "equipment", order = "f[night-vision]-c[night-vision-equipment-3]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + inventory_move_sound = { + filename = "__base__/sound/item/electric-small-inventory-move.ogg", + volume = 1 + }, + pick_sound = { + filename = "__base__/sound/item/electric-small-inventory-pickup.ogg", + volume = 0.7 + }, }, }) @@ -180,6 +350,18 @@ data:extend({ subgroup = "equipment", order = "a[energy-source]-a[solar-panel-2]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/electric-large-inventory-move.ogg", + volume = 0.7 + }, + inventory_move_sound = { + filename = "__base__/sound/item/electric-large-inventory-move.ogg", + volume = 0.7 + }, + pick_sound = { + filename = "__base__/sound/item/electric-large-inventory-pickup.ogg", + volume = 0.7 + }, }, { type = "item", @@ -190,6 +372,18 @@ data:extend({ subgroup = "equipment", order = "a[energy-source]-a[solar-panel-3]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/electric-large-inventory-move.ogg", + volume = 0.7 + }, + inventory_move_sound = { + filename = "__base__/sound/item/electric-large-inventory-move.ogg", + volume = 0.7 + }, + pick_sound = { + filename = "__base__/sound/item/electric-large-inventory-pickup.ogg", + volume = 0.7 + }, }, { type = "item", @@ -200,6 +394,18 @@ data:extend({ subgroup = "equipment", order = "a[energy-source]-a[solar-panel-4]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/electric-large-inventory-move.ogg", + volume = 0.7 + }, + inventory_move_sound = { + filename = "__base__/sound/item/electric-large-inventory-move.ogg", + volume = 0.7 + }, + pick_sound = { + filename = "__base__/sound/item/electric-large-inventory-pickup.ogg", + volume = 0.7 + }, }, }) @@ -217,6 +423,19 @@ data:extend({ subgroup = "military-equipment", order = "d[active-defense]-a[personal-laser-defense-equipment-2]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/turret-inventory-move.ogg", + volume = 0.6 + }, + inventory_move_sound = { + filename = "__base__/sound/item/turret-inventory-move.ogg", + volume = 0.6 + }, + pick_sound = { + filename = "__base__/sound/item/turret-inventory-pickup.ogg", + volume = 0.5 + }, + weight = 200000 }, { type = "item", @@ -227,6 +446,19 @@ data:extend({ subgroup = "military-equipment", order = "d[active-defense]-a[personal-laser-defense-equipment-3]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/turret-inventory-move.ogg", + volume = 0.6 + }, + inventory_move_sound = { + filename = "__base__/sound/item/turret-inventory-move.ogg", + volume = 0.6 + }, + pick_sound = { + filename = "__base__/sound/item/turret-inventory-pickup.ogg", + volume = 0.5 + }, + weight = 200000 }, { type = "item", @@ -237,6 +469,19 @@ data:extend({ subgroup = "military-equipment", order = "d[active-defense]-a[personal-laser-defense-equipment-4]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/turret-inventory-move.ogg", + volume = 0.6 + }, + inventory_move_sound = { + filename = "__base__/sound/item/turret-inventory-move.ogg", + volume = 0.6 + }, + pick_sound = { + filename = "__base__/sound/item/turret-inventory-pickup.ogg", + volume = 0.5 + }, + weight = 200000 }, { type = "item", @@ -247,6 +492,19 @@ data:extend({ subgroup = "military-equipment", order = "d[active-defense]-a[personal-laser-defense-equipment-5]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/turret-inventory-move.ogg", + volume = 0.6 + }, + inventory_move_sound = { + filename = "__base__/sound/item/turret-inventory-move.ogg", + volume = 0.6 + }, + pick_sound = { + filename = "__base__/sound/item/turret-inventory-pickup.ogg", + volume = 0.5 + }, + weight = 200000 }, { type = "item", @@ -257,6 +515,19 @@ data:extend({ subgroup = "military-equipment", order = "d[active-defense]-a[personal-laser-defense-equipment-6]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/turret-inventory-move.ogg", + volume = 0.6 + }, + inventory_move_sound = { + filename = "__base__/sound/item/turret-inventory-move.ogg", + volume = 0.6 + }, + pick_sound = { + filename = "__base__/sound/item/turret-inventory-pickup.ogg", + volume = 0.5 + }, + weight = 200000 }, { @@ -267,7 +538,19 @@ data:extend({ place_as_equipment_result = "exoskeleton-equipment-2", subgroup = "equipment", order = "e[exoskeleton]-a[exoskeleton-equipment-2]", - stack_size = 10, + stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/exoskeleton-inventory-move.ogg", + volume = 0.6 + }, + inventory_move_sound = { + filename = "__base__/sound/item/exoskeleton-inventory-move.ogg", + volume = 0.6 + }, + pick_sound = { + filename = "__base__/sound/item/exoskeleton-inventory-pickup.ogg", + volume = 0.6 + }, }, { type = "item", @@ -277,6 +560,18 @@ data:extend({ place_as_equipment_result = "exoskeleton-equipment-3", subgroup = "equipment", order = "e[exoskeleton]-a[exoskeleton-equipment-3]", - stack_size = 10, + stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/exoskeleton-inventory-move.ogg", + volume = 0.6 + }, + inventory_move_sound = { + filename = "__base__/sound/item/exoskeleton-inventory-move.ogg", + volume = 0.6 + }, + pick_sound = { + filename = "__base__/sound/item/exoskeleton-inventory-pickup.ogg", + volume = 0.6 + }, }, }) diff --git a/bobequipment/prototypes/personal-roboport.lua b/bobequipment/prototypes/personal-roboport.lua index 2d42b8bc4..e07db5450 100644 --- a/bobequipment/prototypes/personal-roboport.lua +++ b/bobequipment/prototypes/personal-roboport.lua @@ -23,9 +23,9 @@ data.raw.technology["personal-roboport-mk2-equipment"].icons = bobmods.equipment }) data.raw["roboport-equipment"]["personal-roboport-mk2-equipment"].energy_source.buffer_capacity = "75MJ" -data.raw["roboport-equipment"]["personal-roboport-mk2-equipment"].energy_source.input_flow_limit = "7500KW" +data.raw["roboport-equipment"]["personal-roboport-mk2-equipment"].energy_source.input_flow_limit = "7500kW" data.raw["roboport-equipment"]["personal-roboport-mk2-equipment"].charging_energy = "1500kW" -data.raw["roboport-equipment"]["personal-roboport-mk2-equipment"].robot_limit = 15 +data.raw["roboport-equipment"]["personal-roboport-mk2-equipment"].robot_limit = 20 data:extend({ { @@ -35,9 +35,21 @@ data:extend({ icon = "__bobequipment__/graphics/icons/technology/personal-roboport-mk3-equipment.png", icon_size = 128, place_as_equipment_result = "personal-roboport-mk3-equipment", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-b[personal-roboport-mk3-equipment]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, }, { type = "item", @@ -46,9 +58,21 @@ data:extend({ icon = "__bobequipment__/graphics/icons/technology/personal-roboport-mk4-equipment.png", icon_size = 128, place_as_equipment_result = "personal-roboport-mk4-equipment", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-b[personal-roboport-mk4-equipment]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, }, { @@ -98,11 +122,11 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "135MJ", - input_flow_limit = "13500KW", + input_flow_limit = "13500kW", usage_priority = "secondary-input", }, charging_energy = "2000kW", - robot_limit = 20, + robot_limit = 30, construction_radius = 25, spawn_and_station_height = 0.4, charge_approach_distance = 2.6, @@ -141,11 +165,11 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "215MJ", - input_flow_limit = "21500KW", + input_flow_limit = "21500kW", usage_priority = "secondary-input", }, charging_energy = "2500kW", - robot_limit = 25, + robot_limit = 40, construction_radius = 30, spawn_and_station_height = 0.4, charge_approach_distance = 2.6, @@ -236,16 +260,30 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/roboport-antenna.png", + icon_size = 32, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-antenna-equipment", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-antenna-1]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { type = "item", @@ -253,16 +291,30 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/roboport-antenna-2.png", + icon_size = 32, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-antenna-equipment-2", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-antenna-2]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { type = "item", @@ -270,16 +322,30 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/roboport-antenna-3.png", + icon_size = 32, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-antenna-equipment-3", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-antenna-3]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { type = "item", @@ -287,16 +353,30 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/roboport-antenna-4.png", + icon_size = 32, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-antenna-equipment-4", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-antenna-4]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { @@ -305,17 +385,31 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/roboport-chargepad.png", + icon_size = 32, scale = 0.75, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-chargepad-equipment", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-chargepad-1]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { type = "item", @@ -323,17 +417,31 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/roboport-chargepad-2.png", + icon_size = 32, scale = 0.75, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-chargepad-equipment-2", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-chargepad-2]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { type = "item", @@ -341,17 +449,31 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/roboport-chargepad-3.png", + icon_size = 32, scale = 0.75, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-chargepad-equipment-3", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-chargepad-3]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { type = "item", @@ -359,17 +481,31 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/roboport-chargepad-4.png", + icon_size = 32, scale = 0.75, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-chargepad-equipment-4", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-chargepad-4]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { @@ -378,17 +514,31 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/construction-robot-1.png", + icon_size = 32, scale = 0.75, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-robot-equipment", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-robot-1]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { type = "item", @@ -396,17 +546,31 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/construction-robot-2.png", + icon_size = 32, scale = 0.75, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-robot-equipment-2", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-robot-2]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { type = "item", @@ -414,17 +578,31 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/construction-robot-3.png", + icon_size = 32, scale = 0.75, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-robot-equipment-3", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-robot-3]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { type = "item", @@ -432,17 +610,31 @@ data:extend({ icons = { { icon = "__bobequipment__/graphics/icons/personal-roboport-equipment-base.png", + icon_size = 32, }, { icon = "__bobequipment__/graphics/icons/construction-robot-4.png", + icon_size = 32, scale = 0.75, }, }, - icon_size = 32, place_as_equipment_result = "personal-roboport-robot-equipment-4", - subgroup = "equipment", + subgroup = "utility-equipment", order = "e[robotics]-a[personal-roboport-equipment-robot-4]", stack_size = 20, + drop_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + inventory_move_sound = { + filename = "__base__/sound/item/roboport-inventory-move.ogg", + volume = 0.45 + }, + pick_sound = { + filename = "__base__/sound/item/roboport-inventory-pickup.ogg", + volume = 0.35 + }, + weight = 50000 }, { @@ -463,7 +655,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "100kJ", - input_flow_limit = "20KW", + input_flow_limit = "20kW", drain = "10kW", usage_priority = "secondary-input", }, @@ -507,7 +699,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "150kJ", - input_flow_limit = "30KW", + input_flow_limit = "30kW", drain = "15kW", usage_priority = "secondary-input", }, @@ -551,7 +743,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "200kJ", - input_flow_limit = "40KW", + input_flow_limit = "40kW", drain = "20kW", usage_priority = "secondary-input", }, @@ -595,7 +787,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "250kJ", - input_flow_limit = "50KW", + input_flow_limit = "50kW", drain = "25kW", usage_priority = "secondary-input", }, @@ -640,7 +832,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "35MJ", - input_flow_limit = "3500KW", + input_flow_limit = "3500kW", usage_priority = "secondary-input", }, charging_energy = "1000kW", @@ -683,7 +875,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "75MJ", - input_flow_limit = "7500KW", + input_flow_limit = "7500kW", usage_priority = "secondary-input", }, charging_energy = "1500kW", @@ -726,7 +918,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "135MJ", - input_flow_limit = "13500KW", + input_flow_limit = "13500kW", usage_priority = "secondary-input", }, charging_energy = "2000kW", @@ -769,7 +961,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "215MJ", - input_flow_limit = "21500KW", + input_flow_limit = "21500kW", usage_priority = "secondary-input", }, charging_energy = "2500kW", @@ -813,7 +1005,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "50kJ", - input_flow_limit = "10KW", + input_flow_limit = "10kW", drain = "5kW", usage_priority = "secondary-input", }, @@ -857,7 +1049,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "100kJ", - input_flow_limit = "20KW", + input_flow_limit = "20kW", drain = "10kW", usage_priority = "secondary-input", }, @@ -901,7 +1093,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "150kJ", - input_flow_limit = "30KW", + input_flow_limit = "30kW", drain = "15kW", usage_priority = "secondary-input", }, @@ -945,7 +1137,7 @@ data:extend({ energy_source = { type = "electric", buffer_capacity = "200kJ", - input_flow_limit = "40KW", + input_flow_limit = "40kW", drain = "20kW", usage_priority = "secondary-input", },