Initial commit
This commit is contained in:
commit
1449e0a3d5
|
@ -0,0 +1 @@
|
||||||
|
*.zip
|
|
@ -0,0 +1,33 @@
|
||||||
|
column_limit: 100
|
||||||
|
indent_width: 2
|
||||||
|
use_tab: false
|
||||||
|
tab_width: 4
|
||||||
|
continuation_indent_width: 4
|
||||||
|
keep_simple_control_block_one_line: false
|
||||||
|
keep_simple_function_one_line: false
|
||||||
|
align_args: true
|
||||||
|
break_after_functioncall_lp: false
|
||||||
|
break_before_functioncall_rp: false
|
||||||
|
align_parameter: true
|
||||||
|
chop_down_parameter: true
|
||||||
|
break_after_functiondef_lp: true
|
||||||
|
break_before_functiondef_rp: true
|
||||||
|
align_table_field: true
|
||||||
|
break_after_table_lb: true
|
||||||
|
break_before_table_rb: true
|
||||||
|
chop_down_table: false
|
||||||
|
chop_down_kv_table: true
|
||||||
|
column_table_limit: 100
|
||||||
|
column_table_limit_kv: 100
|
||||||
|
table_sep: ","
|
||||||
|
extra_sep_at_table_end: true
|
||||||
|
break_after_operator: false
|
||||||
|
single_quote_to_double_quote: true
|
||||||
|
double_quote_to_single_quote: false
|
||||||
|
spaces_before_call: 1
|
||||||
|
spaces_inside_functiondef_parens: false
|
||||||
|
spaces_inside_functioncall_parens: false
|
||||||
|
spaces_inside_table_braces: false
|
||||||
|
spaces_around_equals_in_field: true
|
||||||
|
line_breaks_after_function_body: 1
|
||||||
|
line_separator: input
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"recommendations": [
|
||||||
|
"koihik.vscode-lua-format",
|
||||||
|
],
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
"editor.detectIndentation": false,
|
||||||
|
"editor.tabSize": 4,
|
||||||
|
"editor.insertSpaces": false,
|
||||||
|
"[lua]": {
|
||||||
|
"editor.detectIndentation": false,
|
||||||
|
"editor.tabSize": 2,
|
||||||
|
"editor.insertSpaces": true,
|
||||||
|
},
|
||||||
|
"vscode-lua-format.configPath": ".vscode/.lua-format"
|
||||||
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
How to Contribute
|
||||||
|
=================
|
||||||
|
|
||||||
|
We'd love to accept your patches and contributions to this project.
|
||||||
|
We just need you to follow the Contributor License Agreement outlined
|
||||||
|
in the latest v0.0.x of https://github.com/Skrunix/license
|
|
@ -0,0 +1,7 @@
|
||||||
|
Skrunix Software License
|
||||||
|
========================
|
||||||
|
|
||||||
|
Permission to use, copy, modify, and/or distribute this software is
|
||||||
|
outlined in the latest v0.0.x of https://github.com/Skrunix/license
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS"
|
|
@ -0,0 +1,10 @@
|
||||||
|
# Baseless Mod
|
||||||
|
|
||||||
|
Defines missing prototypes required to launch the game
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Folder structure
|
||||||
|
|
||||||
|
- `baseless` - shared constants
|
||||||
|
- `prototypes` - constructors mirroring [https://lua-api.factorio.com/latest/tree.html](https://lua-api.factorio.com/latest/tree.html)
|
|
@ -0,0 +1,9 @@
|
||||||
|
local Baseless = {}
|
||||||
|
|
||||||
|
require("baseless.data")(Baseless)
|
||||||
|
require("baseless.graphics")(Baseless)
|
||||||
|
require("baseless.logging")(Baseless)
|
||||||
|
require("baseless.register")(Baseless)
|
||||||
|
require("baseless.sound")(Baseless)
|
||||||
|
|
||||||
|
return Baseless
|
|
@ -0,0 +1,148 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Data = {}
|
||||||
|
|
||||||
|
Baseless.Data.array = {}
|
||||||
|
Baseless.Data.bool = false
|
||||||
|
Baseless.Data.double = 0.0
|
||||||
|
Baseless.Data.float = 0.0
|
||||||
|
Baseless.Data.int16 = 0
|
||||||
|
Baseless.Data.uint16 = 0
|
||||||
|
Baseless.Data.uint32 = 0
|
||||||
|
Baseless.Data.uint8 = 0
|
||||||
|
|
||||||
|
Baseless.Data.Cyclic = true
|
||||||
|
Baseless.Data.DirectionCount = Baseless.Data.uint32 + 1
|
||||||
|
Baseless.Data.double_positive = Baseless.Data.double + 1
|
||||||
|
Baseless.Data.float_positive = Baseless.Data.float + 1
|
||||||
|
Baseless.Data.ItemCountType = Baseless.Data.uint32
|
||||||
|
Baseless.Data.ItemStackIndex = Baseless.Data.uint16
|
||||||
|
Baseless.Data.MinDamageInterval = Baseless.Data.uint32 + 1
|
||||||
|
Baseless.Data.MinItemCount = Baseless.Data.ItemCountType + 1
|
||||||
|
Baseless.Data.MinItemCount = Baseless.Data.uint32 + 1
|
||||||
|
Baseless.Data.MinItemStack = Baseless.Data.ItemStackIndex + 1
|
||||||
|
Baseless.Data.MinSpriteSize = Baseless.Data.int16 + 1
|
||||||
|
Baseless.Data.uint32_positive = Baseless.Data.uint32 + 1
|
||||||
|
|
||||||
|
Baseless.Data.BoilerFire = {}
|
||||||
|
Baseless.Data.BoilerFireGlow = {}
|
||||||
|
Baseless.Data.BoundingBox = {{-1, -1}, {1, 1}}
|
||||||
|
Baseless.Data.CollisionMask = {}
|
||||||
|
Baseless.Data.Color = {}
|
||||||
|
Baseless.Data.DaytimeColorLookupTable = {{Baseless.Data.double, "identity"}}
|
||||||
|
Baseless.Data.Effect = {}
|
||||||
|
Baseless.Data.Energy = "1W"
|
||||||
|
Baseless.Data.FluidBox = {pipe_connections = {}}
|
||||||
|
Baseless.Data.ModuleSpecification = {}
|
||||||
|
Baseless.Data.NonzeroVector = {1, 1}
|
||||||
|
Baseless.Data.RealOrientation = Baseless.Data.float
|
||||||
|
Baseless.Data.SelectionMode = "nothing"
|
||||||
|
Baseless.Data.SelectionType = "not-allowed"
|
||||||
|
Baseless.Data.SpeechBubbleStyle = "compilatron_speech_bubble"
|
||||||
|
Baseless.Data.Vector = {0, 0}
|
||||||
|
Baseless.Data.Vector_negative = {-1, -1}
|
||||||
|
Baseless.Data.Vector_positive = {1, 1}
|
||||||
|
Baseless.Data.WirePosition = {}
|
||||||
|
|
||||||
|
Baseless.Data.AmmoCategory = "baseless-ammo-category"
|
||||||
|
Baseless.Data.CurvedRailEntity = "baseless-curved-rail"
|
||||||
|
Baseless.Data.DamageType = "baseless-damage-type"
|
||||||
|
Baseless.Data.EquipmentType = "baseless-equipment-category"
|
||||||
|
Baseless.Data.Fluid = "baseless-fluid"
|
||||||
|
Baseless.Data.FuelType = "baseless-fuel-category"
|
||||||
|
Baseless.Data.Gun = "baseless-gun"
|
||||||
|
Baseless.Data.ItemGroup = "baseless-item-group"
|
||||||
|
Baseless.Data.ItemSubGroup = "baseless-item-subgroup"
|
||||||
|
Baseless.Data.ModuleCategory = "baseless-module-category"
|
||||||
|
Baseless.Data.Particle = "baseless-optimized-particle"
|
||||||
|
Baseless.Data.RailPlanner = "baseless-rail-planner"
|
||||||
|
Baseless.Data.RecipeCategory = "baseless-recipe-category"
|
||||||
|
Baseless.Data.ResourceType = "baseless-resource-category"
|
||||||
|
Baseless.Data.RocketEntity = "baseless-rocket-silo-rocket"
|
||||||
|
Baseless.Data.SpiderLeg = "baseless-spider-leg"
|
||||||
|
Baseless.Data.StraightRailEntity = "baseless-straight-rail"
|
||||||
|
Baseless.Data.UnitEntity = "baseless-unit"
|
||||||
|
|
||||||
|
Baseless.Data.AmmoType = {category = Baseless.Data.AmmoCategory}
|
||||||
|
Baseless.Data.ElectricUsagePriority = "tertiary"
|
||||||
|
Baseless.Data.ElectricEnergySource = {usage_priority = Baseless.Data.ElectricUsagePriority}
|
||||||
|
Baseless.Data.BurnerEnergySource = {
|
||||||
|
type = "burner",
|
||||||
|
fuel_inventory_size = Baseless.Data.ItemStackIndex,
|
||||||
|
fuel_category = Baseless.Data.FuelType,
|
||||||
|
}
|
||||||
|
Baseless.Data.VoidEnergySource = {type = "void"}
|
||||||
|
Baseless.Data.WireConnectionPoint = {
|
||||||
|
wire = Baseless.Data.WirePosition,
|
||||||
|
shadow = Baseless.Data.WirePosition,
|
||||||
|
}
|
||||||
|
Baseless.Data.BeamAttackParameters = {
|
||||||
|
type = "beam",
|
||||||
|
range = Baseless.Data.float,
|
||||||
|
cooldown = Baseless.Data.float,
|
||||||
|
ammo_type = Baseless.Data.AmmoType,
|
||||||
|
}
|
||||||
|
Baseless.Data.StreamAttackParameters = {
|
||||||
|
type = "stream",
|
||||||
|
range = Baseless.Data.float,
|
||||||
|
cooldown = Baseless.Data.float,
|
||||||
|
ammo_type = Baseless.Data.AmmoType,
|
||||||
|
}
|
||||||
|
Baseless.Data.DamagePrototype = {amount = Baseless.Data.float, type = Baseless.Data.DamageType}
|
||||||
|
Baseless.Data.HeatBuffer = {
|
||||||
|
max_temperature = 15, -- minimum 15
|
||||||
|
specific_heat = Baseless.Data.Energy,
|
||||||
|
max_transfer = Baseless.Data.Energy,
|
||||||
|
}
|
||||||
|
Baseless.Data.MinableProperties = {mining_time = Baseless.Data.double_positive}
|
||||||
|
Baseless.Data.SpawnPoint = {
|
||||||
|
evolution_factor = Baseless.Data.double,
|
||||||
|
spawn_weight = Baseless.Data.double,
|
||||||
|
}
|
||||||
|
|
||||||
|
Baseless.Data.BeltTileHeight = 1 -- must be 1
|
||||||
|
Baseless.Data.BeltTileWidth = 1 -- must be 1
|
||||||
|
Baseless.Data.fwd2bwd_ratio = 2 -- minimum 2
|
||||||
|
Baseless.Data.LoaderTileHeight = 2 -- must be 2
|
||||||
|
Baseless.Data.MaxLogisticSlots = 1 -- maximum 1
|
||||||
|
Baseless.Data.SplitterTileWidth = 2 -- must be 2
|
||||||
|
|
||||||
|
Baseless.Data.ThrowCapsuleAction = {
|
||||||
|
type = "throw",
|
||||||
|
attack_parameters = Baseless.Data.BeamAttackParameters,
|
||||||
|
}
|
||||||
|
Baseless.Data.CombinatorOffsets = {
|
||||||
|
Baseless.Data.Vector, Baseless.Data.Vector, Baseless.Data.Vector, Baseless.Data.Vector,
|
||||||
|
}
|
||||||
|
Baseless.Data.CombinatorConnectionPoints = {
|
||||||
|
Baseless.Data.WireConnectionPoint, Baseless.Data.WireConnectionPoint,
|
||||||
|
Baseless.Data.WireConnectionPoint, Baseless.Data.WireConnectionPoint,
|
||||||
|
}
|
||||||
|
Baseless.Data.RollingStockCollisionBox = {{-0.1, -2}, {0.1, 2}}
|
||||||
|
Baseless.Data.ElectricPoleConnectionPoints = {Baseless.Data.WireConnectionPoint}
|
||||||
|
Baseless.Data.RailChainSignalBoxOffsets = {
|
||||||
|
Baseless.Data.Vector, Baseless.Data.Vector, Baseless.Data.Vector, Baseless.Data.Vector,
|
||||||
|
Baseless.Data.Vector, Baseless.Data.Vector, Baseless.Data.Vector, Baseless.Data.Vector,
|
||||||
|
}
|
||||||
|
Baseless.Data.ResourceStageCounts = {Baseless.Data.uint32}
|
||||||
|
Baseless.Data.SpiderLegSpecification = {
|
||||||
|
leg = Baseless.Data.SpiderLeg,
|
||||||
|
mount_position = Baseless.Data.Vector,
|
||||||
|
ground_position = Baseless.Data.Vector,
|
||||||
|
blocking_legs = Baseless.Data.array,
|
||||||
|
}
|
||||||
|
Baseless.Data.SpiderEnginePrototype = {legs = Baseless.Data.SpiderLegSpecification}
|
||||||
|
Baseless.Data.UnitSpawnDefinition = {
|
||||||
|
unit = Baseless.Data.UnitEntity,
|
||||||
|
spawn_points = {Baseless.Data.SpawnPoint},
|
||||||
|
}
|
||||||
|
Baseless.Data.EquipmentShape = {
|
||||||
|
width = Baseless.Data.uint32,
|
||||||
|
height = Baseless.Data.uint32,
|
||||||
|
type = "full",
|
||||||
|
}
|
||||||
|
Baseless.Data.RailPlaceableBy = {
|
||||||
|
item = Baseless.Data.RailPlanner,
|
||||||
|
count = Baseless.Data.uint32_positive,
|
||||||
|
}
|
||||||
|
Baseless.Data.InserterCollisionBox = {{-0.1, -0.1}, {0.1, 0.1}}
|
||||||
|
end
|
|
@ -0,0 +1,251 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Graphics = {}
|
||||||
|
|
||||||
|
Baseless.Graphics.Image = "__core__/graphics/empty.png"
|
||||||
|
Baseless.Graphics.Image32 = "__core__/graphics/too-far.png"
|
||||||
|
|
||||||
|
Baseless.Graphics.Icon = {icon = Baseless.Graphics.Image, icon_size = Baseless.Data.MinSpriteSize}
|
||||||
|
|
||||||
|
Baseless.Graphics.Sprite = {
|
||||||
|
filename = Baseless.Graphics.Image,
|
||||||
|
size = Baseless.Data.MinSpriteSize,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.Sprite32 = {
|
||||||
|
filename = Baseless.Graphics.Image32,
|
||||||
|
size = Baseless.Data.MinSpriteSize,
|
||||||
|
}
|
||||||
|
|
||||||
|
Baseless.Graphics.Animation = Baseless.Graphics.Sprite
|
||||||
|
Baseless.Graphics.Sprite4Way = Baseless.Graphics.Sprite
|
||||||
|
Baseless.Graphics.Animation4Way = {north = Baseless.Graphics.Sprite4Way}
|
||||||
|
Baseless.Graphics.Sprite8Way = {sheets = {Baseless.Graphics.Sprite}}
|
||||||
|
Baseless.Graphics.Sprite8Way32 = {sheets = {Baseless.Graphics.Sprite32}}
|
||||||
|
Baseless.Graphics.SpriteSheet = Baseless.Graphics.Sprite
|
||||||
|
Baseless.Graphics.SpriteSheet32 = Baseless.Graphics.Sprite32
|
||||||
|
Baseless.Graphics.SpriteVariations = {sheet = Baseless.Graphics.SpriteSheet}
|
||||||
|
Baseless.Graphics.SpriteVariations32 = {sheet = Baseless.Graphics.SpriteSheet32}
|
||||||
|
Baseless.Graphics.RotatedSprite = table.merge_new(Baseless.Graphics.Sprite, {
|
||||||
|
direction_count = Baseless.Data.DirectionCount,
|
||||||
|
})
|
||||||
|
Baseless.Graphics.RotatedSprite32 = table.merge_new(Baseless.Graphics.Sprite32, {
|
||||||
|
direction_count = Baseless.Data.DirectionCount,
|
||||||
|
})
|
||||||
|
Baseless.Graphics.RotatedAnimation = Baseless.Graphics.RotatedSprite
|
||||||
|
Baseless.Graphics.RotatedAnimation32 = Baseless.Graphics.RotatedSprite32
|
||||||
|
Baseless.Graphics.RotatedAnimation4Way = {north = Baseless.Graphics.RotatedSprite}
|
||||||
|
Baseless.Graphics.AnimationSheet =
|
||||||
|
table.merge_new(Baseless.Graphics.Sprite, {variation_count = 1})
|
||||||
|
Baseless.Graphics.AnimationSheet32 = table.merge_new(Baseless.Graphics.Sprite32,
|
||||||
|
{variation_count = 1})
|
||||||
|
Baseless.Graphics.AnimationVariations = {sheet = Baseless.Graphics.AnimationSheet}
|
||||||
|
|
||||||
|
Baseless.Graphics.RailPieceLayers = {
|
||||||
|
metals = Baseless.Graphics.SpriteVariations32,
|
||||||
|
backplates = Baseless.Graphics.SpriteVariations32,
|
||||||
|
ties = Baseless.Graphics.SpriteVariations32,
|
||||||
|
stone_path = Baseless.Graphics.SpriteVariations32,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.RailPictureSet = {
|
||||||
|
straight_rail_horizontal = Baseless.Graphics.RailPieceLayers,
|
||||||
|
straight_rail_vertical = Baseless.Graphics.RailPieceLayers,
|
||||||
|
straight_rail_diagonal_left_top = Baseless.Graphics.RailPieceLayers,
|
||||||
|
straight_rail_diagonal_right_top = Baseless.Graphics.RailPieceLayers,
|
||||||
|
straight_rail_diagonal_right_bottom = Baseless.Graphics.RailPieceLayers,
|
||||||
|
straight_rail_diagonal_left_bottom = Baseless.Graphics.RailPieceLayers,
|
||||||
|
curved_rail_vertical_left_top = Baseless.Graphics.RailPieceLayers,
|
||||||
|
curved_rail_vertical_right_top = Baseless.Graphics.RailPieceLayers,
|
||||||
|
curved_rail_vertical_right_bottom = Baseless.Graphics.RailPieceLayers,
|
||||||
|
curved_rail_vertical_left_bottom = Baseless.Graphics.RailPieceLayers,
|
||||||
|
curved_rail_horizontal_left_top = Baseless.Graphics.RailPieceLayers,
|
||||||
|
curved_rail_horizontal_right_top = Baseless.Graphics.RailPieceLayers,
|
||||||
|
curved_rail_horizontal_right_bottom = Baseless.Graphics.RailPieceLayers,
|
||||||
|
curved_rail_horizontal_left_bottom = Baseless.Graphics.RailPieceLayers,
|
||||||
|
rail_endings = Baseless.Graphics.Sprite8Way32,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.BoilerStructure = {
|
||||||
|
north = Baseless.Graphics.Sprite,
|
||||||
|
south = Baseless.Graphics.Sprite,
|
||||||
|
east = Baseless.Graphics.Sprite,
|
||||||
|
west = Baseless.Graphics.Sprite,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.CharacterRotatedAnimation = table.merge_new(
|
||||||
|
Baseless.Graphics.RotatedAnimation32,
|
||||||
|
{direction_count = 18})
|
||||||
|
Baseless.Graphics.CharacterArmorAnimation = {
|
||||||
|
idle = Baseless.Graphics.CharacterRotatedAnimation,
|
||||||
|
idle_with_gun = Baseless.Graphics.CharacterRotatedAnimation,
|
||||||
|
running = Baseless.Graphics.CharacterRotatedAnimation,
|
||||||
|
running_with_gun = Baseless.Graphics.CharacterRotatedAnimation,
|
||||||
|
mining_with_tool = Baseless.Graphics.CharacterRotatedAnimation,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.OrientedCliffPrototype = {
|
||||||
|
collision_bounding_box = Baseless.Data.BoundingBox,
|
||||||
|
pictures = Baseless.Graphics.SpriteVariations,
|
||||||
|
fill_volume = Baseless.Data.uint32,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.OrientedCliffPrototypeSet = {
|
||||||
|
west_to_east = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
north_to_south = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
east_to_west = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
south_to_north = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
west_to_north = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
north_to_east = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
east_to_south = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
south_to_west = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
west_to_south = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
north_to_west = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
east_to_north = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
south_to_east = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
west_to_none = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
none_to_east = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
north_to_none = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
none_to_south = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
east_to_none = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
none_to_west = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
south_to_none = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
none_to_north = Baseless.Graphics.OrientedCliffPrototype,
|
||||||
|
}
|
||||||
|
Baseless.Data.ConnectableEntityGraphics = {
|
||||||
|
single = Baseless.Graphics.SpriteVariations,
|
||||||
|
straight_vertical = Baseless.Graphics.SpriteVariations,
|
||||||
|
straight_horizontal = Baseless.Graphics.SpriteVariations,
|
||||||
|
corner_right_down = Baseless.Graphics.SpriteVariations,
|
||||||
|
corner_left_down = Baseless.Graphics.SpriteVariations,
|
||||||
|
corner_right_up = Baseless.Graphics.SpriteVariations,
|
||||||
|
corner_left_up = Baseless.Graphics.SpriteVariations,
|
||||||
|
t_up = Baseless.Graphics.SpriteVariations,
|
||||||
|
t_right = Baseless.Graphics.SpriteVariations,
|
||||||
|
t_down = Baseless.Graphics.SpriteVariations,
|
||||||
|
t_left = Baseless.Graphics.SpriteVariations,
|
||||||
|
ending_up = Baseless.Graphics.SpriteVariations,
|
||||||
|
ending_right = Baseless.Graphics.SpriteVariations,
|
||||||
|
ending_down = Baseless.Graphics.SpriteVariations,
|
||||||
|
ending_left = Baseless.Graphics.SpriteVariations,
|
||||||
|
cross = Baseless.Graphics.SpriteVariations,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.PipePictures = {
|
||||||
|
straight_vertical_single = Baseless.Graphics.Sprite,
|
||||||
|
straight_vertical = Baseless.Graphics.Sprite,
|
||||||
|
straight_vertical_window = Baseless.Graphics.Sprite,
|
||||||
|
straight_horizontal = Baseless.Graphics.Sprite,
|
||||||
|
straight_horizontal_window = Baseless.Graphics.Sprite,
|
||||||
|
corner_up_right = Baseless.Graphics.Sprite,
|
||||||
|
corner_up_left = Baseless.Graphics.Sprite,
|
||||||
|
corner_down_right = Baseless.Graphics.Sprite,
|
||||||
|
corner_down_left = Baseless.Graphics.Sprite,
|
||||||
|
t_up = Baseless.Graphics.Sprite,
|
||||||
|
t_down = Baseless.Graphics.Sprite,
|
||||||
|
t_right = Baseless.Graphics.Sprite,
|
||||||
|
t_left = Baseless.Graphics.Sprite,
|
||||||
|
cross = Baseless.Graphics.Sprite,
|
||||||
|
ending_up = Baseless.Graphics.Sprite,
|
||||||
|
ending_down = Baseless.Graphics.Sprite,
|
||||||
|
ending_right = Baseless.Graphics.Sprite,
|
||||||
|
ending_left = Baseless.Graphics.Sprite,
|
||||||
|
horizontal_window_background = Baseless.Graphics.Sprite,
|
||||||
|
vertical_window_background = Baseless.Graphics.Sprite,
|
||||||
|
fluid_background = Baseless.Graphics.Sprite,
|
||||||
|
low_temperature_flow = Baseless.Graphics.Sprite,
|
||||||
|
middle_temperature_flow = Baseless.Graphics.Sprite,
|
||||||
|
high_temperature_flow = Baseless.Graphics.Sprite,
|
||||||
|
gas_flow = Baseless.Graphics.Animation,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.TransportBeltAnimationSet = {
|
||||||
|
animation_set = Baseless.Graphics.RotatedAnimation,
|
||||||
|
east_index = 1,
|
||||||
|
west_index = 1,
|
||||||
|
north_index = 1,
|
||||||
|
south_index = 1,
|
||||||
|
starting_south_index = 1,
|
||||||
|
ending_south_index = 1,
|
||||||
|
starting_west_index = 1,
|
||||||
|
ending_west_index = 1,
|
||||||
|
starting_north_index = 1,
|
||||||
|
ending_north_index = 1,
|
||||||
|
starting_east_index = 1,
|
||||||
|
ending_east_index = 1,
|
||||||
|
|
||||||
|
-- required by TransportBeltPrototype 'transport-belt'
|
||||||
|
east_to_north_index = 1,
|
||||||
|
north_to_east_index = 1,
|
||||||
|
west_to_north_index = 1,
|
||||||
|
north_to_west_index = 1,
|
||||||
|
south_to_east_index = 1,
|
||||||
|
east_to_south_index = 1,
|
||||||
|
south_to_west_index = 1,
|
||||||
|
west_to_south_index = 1,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.LinkedBeltStructure = {
|
||||||
|
direction_in = Baseless.Graphics.Sprite4Way,
|
||||||
|
direction_out = Baseless.Graphics.Sprite4Way,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.LoaderStructure = {
|
||||||
|
direction_in = Baseless.Graphics.Sprite4Way,
|
||||||
|
direction_out = Baseless.Graphics.Sprite4Way,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.UndergroundBeltStructure = {
|
||||||
|
direction_in = Baseless.Graphics.Sprite4Way,
|
||||||
|
direction_out = Baseless.Graphics.Sprite4Way,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.PipeToGroundPictures = {
|
||||||
|
down = Baseless.Graphics.Sprite,
|
||||||
|
up = Baseless.Graphics.Sprite,
|
||||||
|
left = Baseless.Graphics.Sprite,
|
||||||
|
right = Baseless.Graphics.Sprite,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.SpiderLegGraphicsSet = {}
|
||||||
|
Baseless.Graphics.SpiderVehicleGraphicsSet = {}
|
||||||
|
Baseless.Graphics.StorageTankPictures = {
|
||||||
|
picture = Baseless.Graphics.Sprite4Way,
|
||||||
|
window_background = Baseless.Graphics.Sprite,
|
||||||
|
fluid_background = Baseless.Graphics.Sprite,
|
||||||
|
flow_sprite = Baseless.Graphics.Sprite,
|
||||||
|
gas_flow = Baseless.Graphics.Animation,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.TransportBeltAnimationVariations = {
|
||||||
|
sheet = table.merge_new(Baseless.Graphics.AnimationSheet32, {variation_count = 7}),
|
||||||
|
}
|
||||||
|
Baseless.Graphics.TransportBeltConnectorFrame = {
|
||||||
|
frame_main = Baseless.Graphics.TransportBeltAnimationVariations,
|
||||||
|
frame_shadow = Baseless.Graphics.TransportBeltAnimationVariations,
|
||||||
|
frame_main_scanner = Baseless.Graphics.Animation,
|
||||||
|
frame_main_scanner_movement_speed = Baseless.Data.float,
|
||||||
|
frame_main_scanner_horizontal_start_shift = Baseless.Data.Vector,
|
||||||
|
frame_main_scanner_horizontal_end_shift = Baseless.Data.Vector,
|
||||||
|
frame_main_scanner_horizontal_y_scale = Baseless.Data.float,
|
||||||
|
frame_main_scanner_horizontal_rotation = Baseless.Data.RealOrientation,
|
||||||
|
frame_main_scanner_vertical_start_shift = Baseless.Data.Vector,
|
||||||
|
frame_main_scanner_vertical_end_shift = Baseless.Data.Vector,
|
||||||
|
frame_main_scanner_vertical_y_scale = Baseless.Data.float,
|
||||||
|
frame_main_scanner_vertical_rotation = Baseless.Data.RealOrientation,
|
||||||
|
frame_main_scanner_cross_horizontal_start_shift = Baseless.Data.Vector,
|
||||||
|
frame_main_scanner_cross_horizontal_end_shift = Baseless.Data.Vector,
|
||||||
|
frame_main_scanner_cross_horizontal_y_scale = Baseless.Data.float,
|
||||||
|
frame_main_scanner_cross_horizontal_rotation = Baseless.Data.RealOrientation,
|
||||||
|
frame_main_scanner_cross_vertical_start_shift = Baseless.Data.Vector,
|
||||||
|
frame_main_scanner_cross_vertical_end_shift = Baseless.Data.Vector,
|
||||||
|
frame_main_scanner_cross_vertical_y_scale = Baseless.Data.float,
|
||||||
|
frame_main_scanner_cross_vertical_rotation = Baseless.Data.RealOrientation,
|
||||||
|
frame_main_scanner_nw_ne = Baseless.Graphics.Animation,
|
||||||
|
frame_main_scanner_sw_se = Baseless.Graphics.Animation,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.WallPictures = {
|
||||||
|
single = Baseless.Graphics.SpriteVariations,
|
||||||
|
straight_vertical = Baseless.Graphics.SpriteVariations,
|
||||||
|
straight_horizontal = Baseless.Graphics.SpriteVariations,
|
||||||
|
corner_right_down = Baseless.Graphics.SpriteVariations,
|
||||||
|
corner_left_down = Baseless.Graphics.SpriteVariations,
|
||||||
|
t_up = Baseless.Graphics.SpriteVariations,
|
||||||
|
ending_right = Baseless.Graphics.SpriteVariations,
|
||||||
|
ending_left = Baseless.Graphics.SpriteVariations,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.TileTransitionSprite = {
|
||||||
|
count = 1,
|
||||||
|
picture = Baseless.Graphics.Image32,
|
||||||
|
size = Baseless.Data.MinSpriteSize,
|
||||||
|
}
|
||||||
|
Baseless.Graphics.Transitions = {
|
||||||
|
main = {Baseless.Graphics.TileTransitionSprite},
|
||||||
|
empty_transitions = true,
|
||||||
|
}
|
||||||
|
end
|
|
@ -0,0 +1,5 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.log = function(success, block, message)
|
||||||
|
log(fmsl.log.checkmark(success) .. " [" .. block .. "] " .. serpent.line(message))
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,17 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Needs = {}
|
||||||
|
|
||||||
|
Baseless.name_of = function(type, name)
|
||||||
|
return name or ("baseless-" .. type)
|
||||||
|
end
|
||||||
|
|
||||||
|
Baseless.needs = function(type, name)
|
||||||
|
table.insert(Baseless.Needs, {type = type, name = name})
|
||||||
|
end
|
||||||
|
|
||||||
|
Baseless.needs_dependencies = function(dependencies)
|
||||||
|
for _, dependency in ipairs(dependencies or {}) do
|
||||||
|
Baseless.needs(dependency.type, Baseless.name_of(dependency.type, dependency.name))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Sound = {filename = "__core__/sound/achievement-unlocked.ogg"}
|
||||||
|
end
|
|
@ -0,0 +1,5 @@
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 1.1.0
|
||||||
|
Date: 15.09.2024
|
||||||
|
Major Features:
|
||||||
|
- Full rewrite supporting 1.1
|
|
@ -0,0 +1,200 @@
|
||||||
|
fmsl.log.color = true
|
||||||
|
|
||||||
|
baseless = require("baseless._baseless")
|
||||||
|
require("prototypes._prototype")(baseless)
|
||||||
|
|
||||||
|
-- Required by name
|
||||||
|
baseless.needs("map-settings", "map-settings")
|
||||||
|
baseless.needs("recipe-category", "crafting")
|
||||||
|
baseless.needs("resource-category", "basic-solid")
|
||||||
|
baseless.needs("item-subgroup", "other")
|
||||||
|
baseless.needs("item-subgroup", "fluid")
|
||||||
|
baseless.needs("trigger-target-type", "ground-unit")
|
||||||
|
baseless.needs("equipment-grid", "small-equipment-grid")
|
||||||
|
baseless.needs("item", "copper-cable")
|
||||||
|
baseless.needs("item", "red-wire")
|
||||||
|
baseless.needs("item", "green-wire")
|
||||||
|
baseless.needs("virtual-signal", "signal-everything")
|
||||||
|
baseless.needs("virtual-signal", "signal-anything")
|
||||||
|
baseless.needs("virtual-signal", "signal-each")
|
||||||
|
baseless.needs("damage-type", "physical")
|
||||||
|
baseless.needs("damage-type", "impact")
|
||||||
|
baseless.needs("trivial-smoke", "smoke-building")
|
||||||
|
|
||||||
|
-- Required by type
|
||||||
|
baseless.needs("ammo")
|
||||||
|
baseless.needs("armor")
|
||||||
|
baseless.needs("blueprint")
|
||||||
|
baseless.needs("blueprint-book")
|
||||||
|
baseless.needs("capsule")
|
||||||
|
baseless.needs("copy-paste-tool")
|
||||||
|
baseless.needs("deconstruction-item")
|
||||||
|
baseless.needs("item-with-entity-data")
|
||||||
|
baseless.needs("item-with-inventory")
|
||||||
|
baseless.needs("item-with-label")
|
||||||
|
baseless.needs("item-with-tags")
|
||||||
|
baseless.needs("module")
|
||||||
|
baseless.needs("rail-planner")
|
||||||
|
baseless.needs("repair-tool")
|
||||||
|
baseless.needs("selection-tool")
|
||||||
|
baseless.needs("spidertron-remote")
|
||||||
|
baseless.needs("tool")
|
||||||
|
baseless.needs("upgrade-item")
|
||||||
|
baseless.needs("accumulator")
|
||||||
|
baseless.needs("ammo-turret")
|
||||||
|
baseless.needs("arithmetic-combinator")
|
||||||
|
baseless.needs("arrow")
|
||||||
|
baseless.needs("artillery-flare")
|
||||||
|
baseless.needs("artillery-projectile")
|
||||||
|
baseless.needs("artillery-turret")
|
||||||
|
baseless.needs("artillery-wagon")
|
||||||
|
baseless.needs("assembling-machine")
|
||||||
|
baseless.needs("beacon")
|
||||||
|
baseless.needs("beam")
|
||||||
|
baseless.needs("boiler")
|
||||||
|
baseless.needs("burner-generator")
|
||||||
|
baseless.needs("car")
|
||||||
|
baseless.needs("cargo-wagon")
|
||||||
|
baseless.needs("character")
|
||||||
|
baseless.needs("character-corpse")
|
||||||
|
baseless.needs("cliff")
|
||||||
|
baseless.needs("combat-robot")
|
||||||
|
baseless.needs("constant-combinator")
|
||||||
|
baseless.needs("construction-robot")
|
||||||
|
baseless.needs("container")
|
||||||
|
baseless.needs("corpse")
|
||||||
|
baseless.needs("decider-combinator")
|
||||||
|
baseless.needs("deconstructible-tile-proxy")
|
||||||
|
baseless.needs("electric-energy-interface")
|
||||||
|
baseless.needs("electric-pole")
|
||||||
|
baseless.needs("electric-turret")
|
||||||
|
baseless.needs("entity-ghost")
|
||||||
|
baseless.needs("explosion")
|
||||||
|
baseless.needs("fire")
|
||||||
|
baseless.needs("fish")
|
||||||
|
baseless.needs("flame-thrower-explosion")
|
||||||
|
baseless.needs("fluid-turret")
|
||||||
|
baseless.needs("fluid-wagon")
|
||||||
|
baseless.needs("furnace")
|
||||||
|
baseless.needs("gate")
|
||||||
|
baseless.needs("generator")
|
||||||
|
baseless.needs("heat-interface")
|
||||||
|
baseless.needs("heat-pipe")
|
||||||
|
baseless.needs("highlight-box")
|
||||||
|
baseless.needs("infinity-container")
|
||||||
|
baseless.needs("infinity-pipe")
|
||||||
|
baseless.needs("inserter")
|
||||||
|
baseless.needs("item-entity")
|
||||||
|
baseless.needs("item-request-proxy")
|
||||||
|
baseless.needs("lab")
|
||||||
|
baseless.needs("lamp")
|
||||||
|
baseless.needs("land-mine")
|
||||||
|
baseless.needs("linked-belt")
|
||||||
|
baseless.needs("linked-container")
|
||||||
|
baseless.needs("loader")
|
||||||
|
baseless.needs("loader-1x1")
|
||||||
|
baseless.needs("locomotive")
|
||||||
|
baseless.needs("logistic-container")
|
||||||
|
baseless.needs("logistic-robot")
|
||||||
|
baseless.needs("market")
|
||||||
|
baseless.needs("mining-drill")
|
||||||
|
baseless.needs("offshore-pump")
|
||||||
|
baseless.needs("particle-source")
|
||||||
|
baseless.needs("pipe")
|
||||||
|
baseless.needs("pipe-to-ground")
|
||||||
|
baseless.needs("player-port")
|
||||||
|
baseless.needs("power-switch")
|
||||||
|
baseless.needs("programmable-speaker")
|
||||||
|
baseless.needs("projectile")
|
||||||
|
baseless.needs("pump")
|
||||||
|
baseless.needs("radar")
|
||||||
|
baseless.needs("rail-chain-signal")
|
||||||
|
baseless.needs("rail-remnants")
|
||||||
|
baseless.needs("rail-signal")
|
||||||
|
baseless.needs("reactor")
|
||||||
|
baseless.needs("resource")
|
||||||
|
baseless.needs("roboport")
|
||||||
|
baseless.needs("rocket-silo")
|
||||||
|
baseless.needs("rocket-silo-rocket-shadow")
|
||||||
|
baseless.needs("simple-entity")
|
||||||
|
baseless.needs("simple-entity-with-force")
|
||||||
|
baseless.needs("simple-entity-with-owner")
|
||||||
|
baseless.needs("smoke-with-trigger")
|
||||||
|
baseless.needs("solar-panel")
|
||||||
|
baseless.needs("speech-bubble")
|
||||||
|
baseless.needs("spider-vehicle")
|
||||||
|
baseless.needs("splitter")
|
||||||
|
baseless.needs("sticker")
|
||||||
|
baseless.needs("storage-tank")
|
||||||
|
baseless.needs("stream")
|
||||||
|
baseless.needs("tile-ghost")
|
||||||
|
baseless.needs("train-stop")
|
||||||
|
baseless.needs("transport-belt")
|
||||||
|
baseless.needs("tree")
|
||||||
|
baseless.needs("turret")
|
||||||
|
baseless.needs("underground-belt")
|
||||||
|
baseless.needs("unit-spawner")
|
||||||
|
baseless.needs("wall")
|
||||||
|
baseless.needs("active-defense-equipment")
|
||||||
|
baseless.needs("battery-equipment")
|
||||||
|
baseless.needs("belt-immunity-equipment")
|
||||||
|
baseless.needs("energy-shield-equipment")
|
||||||
|
baseless.needs("generator-equipment")
|
||||||
|
baseless.needs("movement-bonus-equipment")
|
||||||
|
baseless.needs("night-vision-equipment")
|
||||||
|
baseless.needs("roboport-equipment")
|
||||||
|
baseless.needs("solar-panel-equipment")
|
||||||
|
|
||||||
|
-- Deprecated prototypes
|
||||||
|
baseless.needs("mining-tool", "dummy-steel-axe")
|
||||||
|
baseless.needs("leaf-particle", "leaf-particle-for-migration")
|
||||||
|
baseless.needs("particle", "particle-for-migration")
|
||||||
|
baseless.needs("smoke", "smoke-for-migration")
|
||||||
|
|
||||||
|
local AddedCount = 0
|
||||||
|
local AttemptCount = 0
|
||||||
|
local BaselessHas = {}
|
||||||
|
|
||||||
|
-- Requires at least one tile that is walkable and not minable
|
||||||
|
for _, tile in pairs(data.raw["tile"] or {}) do
|
||||||
|
if tile.minable == nil then
|
||||||
|
for _, mask in pairs(tile.collision_mask or {}) do
|
||||||
|
if mask == "ground-tile" then
|
||||||
|
goto after_tile
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if true then
|
||||||
|
local block = baseless.Make["tile"](nil, {collision_mask = {"ground-tile"}})
|
||||||
|
baseless.needs_dependencies(block.dependencies)
|
||||||
|
data:extend{block.prototype}
|
||||||
|
end
|
||||||
|
::after_tile::
|
||||||
|
|
||||||
|
local next = next
|
||||||
|
while next(baseless.Needs) ~= nil do
|
||||||
|
local requirement = table.remove(baseless.Needs)
|
||||||
|
local type = requirement.type
|
||||||
|
local name = requirement.name
|
||||||
|
|
||||||
|
AttemptCount = AttemptCount + 1
|
||||||
|
local HasID = type .. "-" .. baseless.name_of(type, name)
|
||||||
|
|
||||||
|
if (data.raw[type] == nil) or (name and data.raw[type][name] == nil) then
|
||||||
|
AddedCount = AddedCount + 1
|
||||||
|
local block = baseless.Make[type](name)
|
||||||
|
BaselessHas[HasID] = true
|
||||||
|
baseless.needs_dependencies(block.dependencies)
|
||||||
|
data:extend{block.prototype}
|
||||||
|
baseless.log(true, type, name)
|
||||||
|
else
|
||||||
|
if BaselessHas[HasID] == nil then
|
||||||
|
baseless.log(false, type, name)
|
||||||
|
else
|
||||||
|
AttemptCount = AttemptCount - 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
log("Added " .. AddedCount .. "/" .. AttemptCount .. " prototypes")
|
|
@ -0,0 +1,14 @@
|
||||||
|
{
|
||||||
|
"name": "baseless",
|
||||||
|
"version": "1.1.0",
|
||||||
|
"title": "Baseless Mod",
|
||||||
|
"description": "Defines missing prototypes required to launch the game",
|
||||||
|
"author": "David Skrundz",
|
||||||
|
"contact": "david@skrundz.ca",
|
||||||
|
"homepage": "https://git.skrundz.dev/skrundztorio/baseless",
|
||||||
|
"factorio_version": "1.1",
|
||||||
|
"dependencies": [
|
||||||
|
"!base",
|
||||||
|
"fmsl"
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,35 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import json
|
||||||
|
import os
|
||||||
|
from zipfile import ZipFile
|
||||||
|
|
||||||
|
modFiles = [
|
||||||
|
"info.json",
|
||||||
|
"changelog.txt",
|
||||||
|
"thumbnail.png",
|
||||||
|
"LICENSE.md",
|
||||||
|
|
||||||
|
"data-final-fixes.lua",
|
||||||
|
]
|
||||||
|
modFolders = [
|
||||||
|
"baseless",
|
||||||
|
"prototypes",
|
||||||
|
]
|
||||||
|
|
||||||
|
with open("info.json") as file:
|
||||||
|
modInfo = json.load(file)
|
||||||
|
|
||||||
|
mod_name = modInfo["name"]
|
||||||
|
mod_version = modInfo["version"]
|
||||||
|
zipName = f"{mod_name}_{mod_version}"
|
||||||
|
|
||||||
|
with ZipFile(f"{zipName}.zip", 'w') as modZip:
|
||||||
|
for file in modFiles:
|
||||||
|
modZip.write(file, arcname=f"{zipName}/{file}")
|
||||||
|
for folder in modFolders:
|
||||||
|
for root, dirs, files in os.walk(folder):
|
||||||
|
for file in files:
|
||||||
|
filePath = os.path.join(root, file)
|
||||||
|
archivePath = os.path.relpath(filePath, os.path.join(folder, '..'))
|
||||||
|
modZip.write(filePath, arcname=f"{zipName}/{archivePath}")
|
|
@ -0,0 +1,135 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.PollutionSettings = function()
|
||||||
|
return {
|
||||||
|
enabled = Baseless.Data.bool,
|
||||||
|
diffusion_ratio = Baseless.Data.double,
|
||||||
|
min_to_diffuse = Baseless.Data.double,
|
||||||
|
ageing = Baseless.Data.double,
|
||||||
|
expected_max_per_chunk = Baseless.Data.double,
|
||||||
|
min_to_show_per_chunk = Baseless.Data.double,
|
||||||
|
min_pollution_to_damage_trees = Baseless.Data.double,
|
||||||
|
pollution_with_max_forest_damage = Baseless.Data.double,
|
||||||
|
pollution_restored_per_tree_damage = Baseless.Data.double,
|
||||||
|
pollution_per_tree_damage = Baseless.Data.double,
|
||||||
|
max_pollution_to_restore_trees = Baseless.Data.double,
|
||||||
|
enemy_attack_pollution_consumption_modifier = Baseless.Data.double,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
Baseless.Make.StateSteeringSettings = function()
|
||||||
|
return {
|
||||||
|
radius = Baseless.Data.double,
|
||||||
|
separation_factor = Baseless.Data.double,
|
||||||
|
separation_force = Baseless.Data.double,
|
||||||
|
force_unit_fuzzy_goto_behavior = Baseless.Data.bool,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
Baseless.Make.SteeringSettings = function()
|
||||||
|
return {
|
||||||
|
default = Baseless.Make.StateSteeringSettings(),
|
||||||
|
moving = Baseless.Make.StateSteeringSettings(),
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
Baseless.Make.EnemyEvolutionSettings = function()
|
||||||
|
return {
|
||||||
|
enabled = Baseless.Data.bool,
|
||||||
|
time_factor = Baseless.Data.double,
|
||||||
|
destroy_factor = Baseless.Data.double,
|
||||||
|
pollution_factor = Baseless.Data.double,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
Baseless.Make.EnemyExpansionSettings = function()
|
||||||
|
return {
|
||||||
|
enabled = Baseless.Data.bool,
|
||||||
|
max_expansion_distance = Baseless.Data.uint32,
|
||||||
|
friendly_base_influence_radius = Baseless.Data.uint32,
|
||||||
|
enemy_building_influence_radius = Baseless.Data.uint32,
|
||||||
|
building_coefficient = Baseless.Data.double,
|
||||||
|
other_base_coefficient = Baseless.Data.double,
|
||||||
|
neighbouring_chunk_coefficient = Baseless.Data.double,
|
||||||
|
neighbouring_base_chunk_coefficient = Baseless.Data.double,
|
||||||
|
max_colliding_tiles_coefficient = Baseless.Data.double,
|
||||||
|
settler_group_min_size = Baseless.Data.uint32,
|
||||||
|
settler_group_max_size = Baseless.Data.uint32,
|
||||||
|
min_expansion_cooldown = Baseless.Data.uint32,
|
||||||
|
max_expansion_cooldown = Baseless.Data.uint32,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
Baseless.Make.UnitGroupSettings = function()
|
||||||
|
return {
|
||||||
|
min_group_gathering_time = Baseless.Data.uint32,
|
||||||
|
max_group_gathering_time = Baseless.Data.uint32,
|
||||||
|
max_wait_time_for_late_members = Baseless.Data.uint32,
|
||||||
|
max_group_radius = Baseless.Data.double,
|
||||||
|
min_group_radius = Baseless.Data.double,
|
||||||
|
max_member_speedup_when_behind = Baseless.Data.double,
|
||||||
|
max_member_slowdown_when_ahead = Baseless.Data.double,
|
||||||
|
max_group_slowdown_factor = Baseless.Data.double,
|
||||||
|
max_group_member_fallback_factor = Baseless.Data.double,
|
||||||
|
member_disown_distance = Baseless.Data.double,
|
||||||
|
tick_tolerance_when_member_arrives = Baseless.Data.uint32,
|
||||||
|
max_gathering_unit_groups = Baseless.Data.uint32,
|
||||||
|
max_unit_group_size = Baseless.Data.uint32,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
Baseless.Make.PathFinderSettings = function()
|
||||||
|
return {
|
||||||
|
fwd2bwd_ratio = Baseless.Data.fwd2bwd_ratio,
|
||||||
|
goal_pressure_ratio = Baseless.Data.double,
|
||||||
|
use_path_cache = Baseless.Data.bool,
|
||||||
|
max_steps_worked_per_tick = Baseless.Data.double,
|
||||||
|
max_work_done_per_tick = Baseless.Data.uint32,
|
||||||
|
short_cache_size = Baseless.Data.uint32,
|
||||||
|
long_cache_size = Baseless.Data.uint32,
|
||||||
|
short_cache_min_cacheable_distance = Baseless.Data.double,
|
||||||
|
short_cache_min_algo_steps_to_cache = Baseless.Data.uint32,
|
||||||
|
long_cache_min_cacheable_distance = Baseless.Data.double,
|
||||||
|
cache_max_connect_to_cache_steps_multiplier = Baseless.Data.uint32,
|
||||||
|
cache_accept_path_start_distance_ratio = Baseless.Data.double,
|
||||||
|
cache_accept_path_end_distance_ratio = Baseless.Data.double,
|
||||||
|
negative_cache_accept_path_start_distance_ratio = Baseless.Data.double,
|
||||||
|
negative_cache_accept_path_end_distance_ratio = Baseless.Data.double,
|
||||||
|
cache_path_start_distance_rating_multiplier = Baseless.Data.double,
|
||||||
|
cache_path_end_distance_rating_multiplier = Baseless.Data.double,
|
||||||
|
stale_enemy_with_same_destination_collision_penalty = Baseless.Data.double,
|
||||||
|
ignore_moving_enemy_collision_distance = Baseless.Data.double,
|
||||||
|
enemy_with_different_destination_collision_penalty = Baseless.Data.double,
|
||||||
|
general_entity_collision_penalty = Baseless.Data.double,
|
||||||
|
general_entity_subsequent_collision_penalty = Baseless.Data.double,
|
||||||
|
extended_collision_penalty = Baseless.Data.double,
|
||||||
|
max_clients_to_accept_any_new_request = Baseless.Data.uint32,
|
||||||
|
max_clients_to_accept_short_new_request = Baseless.Data.uint32,
|
||||||
|
direct_distance_to_consider_short_request = Baseless.Data.uint32,
|
||||||
|
short_request_max_steps = Baseless.Data.uint32,
|
||||||
|
short_request_ratio = Baseless.Data.double,
|
||||||
|
min_steps_to_check_path_find_termination = Baseless.Data.uint32,
|
||||||
|
start_to_goal_cost_multiplier_to_terminate_path_find = Baseless.Data.double,
|
||||||
|
overload_levels = Baseless.Data.array,
|
||||||
|
overload_multipliers = Baseless.Data.array,
|
||||||
|
negative_path_cache_delay_interval = Baseless.Data.double,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
Baseless.Make.DifficultySettings = function()
|
||||||
|
return {
|
||||||
|
recipe_difficulty = defines.difficulty_settings.recipe_difficulty.normal,
|
||||||
|
technology_difficulty = defines.difficulty_settings.technology_difficulty.normal,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
Baseless.Make.Gen("_Proto", "map-settings", {
|
||||||
|
pollution = Baseless.Make.PollutionSettings(),
|
||||||
|
steering = Baseless.Make.SteeringSettings(),
|
||||||
|
enemy_evolution = Baseless.Make.EnemyEvolutionSettings(),
|
||||||
|
enemy_expansion = Baseless.Make.EnemyExpansionSettings(),
|
||||||
|
unit_group = Baseless.Make.UnitGroupSettings(),
|
||||||
|
path_finder = Baseless.Make.PathFinderSettings(),
|
||||||
|
max_failed_behavior_count = Baseless.Data.uint32,
|
||||||
|
difficulty_settings = Baseless.Make.DifficultySettings(),
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,22 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("_Proto", "PrototypeBase")
|
||||||
|
|
||||||
|
require("prototypes.PrototypeBase.AmmoCategory")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.DamageType")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EquipmentCategory")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EquipmentGridPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EquipmentPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.FluidPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.FuelCategory")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.ItemGroup")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.ItemPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.ItemSubGroup")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.ModuleCategory")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.ParticlePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.RecipeCategory")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.ResourceCategory")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.TilePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.TrivialSmokePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.VirtualSignalPrototype")(Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("PrototypeBase", "ammo-category")
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("PrototypeBase", "damage-type")
|
||||||
|
end
|
|
@ -0,0 +1,32 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("PrototypeBase", "EntityPrototype")
|
||||||
|
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.ArrowPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.ArtilleryFlarePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.ArtilleryProjectilePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.BeamPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.CharacterCorpsePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.CliffPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.CorpsePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.DeconstructibleTileProxyPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.EntityGhostPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.ExplosionPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.FireFlamePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.HighlightBoxEntityPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.ItemEntityPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.ItemRequestProxyPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.ParticleSourcePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.ProjectilePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.ResourceEntityPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.RocketSiloRocketPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.RocketSiloRocketShadowPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.SmokePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.SpeechBubblePrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.StickerPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.FluidStreamPrototype")(Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.TileGhostPrototype")(Baseless)
|
||||||
|
|
||||||
|
-- Deprecated
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.EntityParticlePrototype")(Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityPrototype", "arrow", {arrow_picture = Baseless.Graphics.Sprite})
|
||||||
|
end
|
|
@ -0,0 +1,7 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityPrototype", "artillery-flare", {
|
||||||
|
pictures = Baseless.Graphics.AnimationVariations,
|
||||||
|
life_time = Baseless.Data.uint16,
|
||||||
|
map_color = Baseless.Data.Color,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityPrototype", "artillery-projectile",
|
||||||
|
{reveal_map = Baseless.Data.bool, map_color = Baseless.Data.Color})
|
||||||
|
end
|
|
@ -0,0 +1,9 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityPrototype", "beam", {
|
||||||
|
width = Baseless.Data.double,
|
||||||
|
damage_interval = Baseless.Data.MinDamageInterval,
|
||||||
|
head = Baseless.Graphics.Animation,
|
||||||
|
tail = Baseless.Graphics.Animation,
|
||||||
|
body = Baseless.Graphics.AnimationVariations,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityPrototype", "character-corpse",
|
||||||
|
{time_to_live = Baseless.Data.uint32, picture = Baseless.Graphics.Animation})
|
||||||
|
end
|
|
@ -0,0 +1,7 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityPrototype", "cliff", {
|
||||||
|
orientations = Baseless.Graphics.OrientedCliffPrototypeSet,
|
||||||
|
grid_size = Baseless.Data.NonzeroVector,
|
||||||
|
grid_offset = Baseless.Data.Vector,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,6 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityPrototype", "CorpsePrototype")
|
||||||
|
Baseless.Make.Gen("CorpsePrototype", "corpse")
|
||||||
|
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.CorpsePrototype.RailRemnantsPrototype")(Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,8 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("CorpsePrototype", "rail-remnants", {
|
||||||
|
bending_type = "turn",
|
||||||
|
pictures = Baseless.Graphics.RailPictureSet,
|
||||||
|
secondary_collision_box = Baseless.Data.BoundingBox,
|
||||||
|
collision_box = Baseless.Data.BoundingBox,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityPrototype", "deconstructible-tile-proxy")
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityPrototype", "entity-ghost")
|
||||||
|
end
|
|
@ -0,0 +1,9 @@
|
||||||
|
-- Deprecated
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityPrototype", "EntityParticlePrototype")
|
||||||
|
Baseless.Make.Gen("EntityParticlePrototype", "particle")
|
||||||
|
|
||||||
|
-- Deprecated
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.EntityParticlePrototype.LeafParticlePrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
-- Deprecated
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityParticlePrototype", "leaf-particle")
|
||||||
|
end
|
|
@ -0,0 +1,15 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityPrototype", "EntityWithHealthPrototype")
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.FishPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.SimpleEntityPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.SpiderLegPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require("prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.TreePrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,142 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityWithHealthPrototype", "EntityWithOwnerPrototype")
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.AccumulatorPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.ArtilleryTurretPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.BeaconPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.BoilerPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.BurnerGeneratorPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.CharacterPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.CombinatorPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.ConstantCombinatorPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.ContainerPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.CraftingMachinePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.ElectricEnergyInterfacePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.ElectricPolePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.EnemySpawnerPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.FlyingRobotPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.GatePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.GeneratorPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.HeatInterfacePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.HeatPipePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.InserterPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.LabPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.LampPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.LandMinePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.LinkedContainerPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.MarketPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.MiningDrillPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.OffshorePumpPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.PipePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.PipeToGroundPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.PlayerPortPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.PowerSwitchPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.ProgrammableSpeakerPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.PumpPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.RadarPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.RailPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.RailSignalBasePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.ReactorPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.RoboportPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.SimpleEntityWithOwnerPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.SolarPanelPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.StorageTankPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.TrainStopPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.TransportBeltConnectablePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.TurretPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.UnitPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.VehiclePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.WallPrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,7 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "accumulator", {
|
||||||
|
energy_source = Baseless.Data.ElectricEnergySource,
|
||||||
|
charge_cooldown = Baseless.Data.uint16,
|
||||||
|
discharge_cooldown = Baseless.Data.uint16,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,10 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "artillery-turret", {
|
||||||
|
gun = Baseless.Data.Gun,
|
||||||
|
inventory_size = Baseless.Data.MinItemStack,
|
||||||
|
ammo_stack_limit = Baseless.Data.MinItemCount,
|
||||||
|
automated_ammo_count = Baseless.Data.ItemCountType,
|
||||||
|
turret_rotation_speed = Baseless.Data.double,
|
||||||
|
manual_range_modifier = Baseless.Data.double_positive,
|
||||||
|
}, {{type = "gun"}})
|
||||||
|
end
|
|
@ -0,0 +1,9 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "beacon", {
|
||||||
|
energy_usage = Baseless.Data.Energy,
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
distribution_effectivity = Baseless.Data.double,
|
||||||
|
supply_area_distance = Baseless.Data.double,
|
||||||
|
module_specification = Baseless.Data.ModuleSpecification,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,13 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "boiler", {
|
||||||
|
structure = Baseless.Graphics.BoilerStructure,
|
||||||
|
fire = Baseless.Data.BoilerFire,
|
||||||
|
fire_glow = Baseless.Data.BoilerFireGlow,
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
fluid_box = Baseless.Data.FluidBox,
|
||||||
|
output_fluid_box = Baseless.Data.FluidBox,
|
||||||
|
energy_consumption = Baseless.Data.Energy,
|
||||||
|
burning_cooldown = Baseless.Data.uint16,
|
||||||
|
target_temperature = Baseless.Data.double,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,7 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "burner-generator", {
|
||||||
|
energy_source = Baseless.Data.ElectricEnergySource,
|
||||||
|
burner = Baseless.Data.BurnerEnergySource,
|
||||||
|
max_power_output = Baseless.Data.Energy,
|
||||||
|
}, {{type = "fuel-category"}})
|
||||||
|
end
|
|
@ -0,0 +1,24 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "character", {
|
||||||
|
mining_speed = Baseless.Data.double,
|
||||||
|
running_speed = Baseless.Data.double,
|
||||||
|
distance_per_frame = Baseless.Data.double,
|
||||||
|
maximum_corner_sliding_distance = Baseless.Data.double,
|
||||||
|
heartbeat = Baseless.Sound,
|
||||||
|
eat = Baseless.Sound,
|
||||||
|
inventory_size = Baseless.Data.ItemStackIndex,
|
||||||
|
build_distance = Baseless.Data.uint32,
|
||||||
|
drop_item_distance = Baseless.Data.uint32,
|
||||||
|
reach_distance = Baseless.Data.uint32,
|
||||||
|
reach_resource_distance = Baseless.Data.double,
|
||||||
|
item_pickup_distance = Baseless.Data.double,
|
||||||
|
loot_pickup_distance = Baseless.Data.double,
|
||||||
|
ticks_to_keep_gun = Baseless.Data.uint32,
|
||||||
|
ticks_to_keep_aiming_direction = Baseless.Data.uint32,
|
||||||
|
ticks_to_stay_in_combat = Baseless.Data.uint32,
|
||||||
|
damage_hit_tint = Baseless.Data.Color,
|
||||||
|
mining_with_tool_particles_animation_positions = Baseless.Data.array,
|
||||||
|
running_sound_animation_positions = Baseless.Data.array,
|
||||||
|
animations = {Baseless.Graphics.CharacterArmorAnimation},
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,19 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityWithOwnerPrototype", "CombinatorPrototype", {
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
active_energy_usage = Baseless.Data.Energy,
|
||||||
|
input_connection_bounding_box = Baseless.Data.BoundingBox,
|
||||||
|
output_connection_bounding_box = Baseless.Data.BoundingBox,
|
||||||
|
activity_led_light_offsets = Baseless.Data.CombinatorOffsets,
|
||||||
|
screen_light_offsets = Baseless.Data.CombinatorOffsets,
|
||||||
|
input_connection_points = Baseless.Data.CombinatorConnectionPoints,
|
||||||
|
output_connection_points = Baseless.Data.CombinatorConnectionPoints,
|
||||||
|
})
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.CombinatorPrototype.ArithmeticCombinatorPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.CombinatorPrototype.DeciderCombinatorPrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("CombinatorPrototype", "arithmetic-combinator")
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("CombinatorPrototype", "decider-combinator")
|
||||||
|
end
|
|
@ -0,0 +1,7 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "constant-combinator", {
|
||||||
|
item_slot_count = Baseless.Data.uint32,
|
||||||
|
activity_led_light_offsets = Baseless.Data.CombinatorOffsets,
|
||||||
|
circuit_wire_connection_points = Baseless.Data.CombinatorConnectionPoints,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,11 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityWithOwnerPrototype", "ContainerPrototype", {
|
||||||
|
inventory_size = Baseless.Data.ItemStackIndex,
|
||||||
|
picture = Baseless.Graphics.Sprite,
|
||||||
|
})
|
||||||
|
Baseless.Make.Gen("ContainerPrototype", "container")
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.ContainerPrototype.LogisticContainerPrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,11 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("ContainerPrototype", "LogisticContainerPrototype", {
|
||||||
|
logistic_mode = "storage",
|
||||||
|
max_logistic_slots = Baseless.Data.MaxLogisticSlots,
|
||||||
|
})
|
||||||
|
Baseless.Make.Gen("LogisticContainerPrototype", "logistic-container")
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.ContainerPrototype.LogisticContainerPrototype.InfinityContainerPrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,6 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("LogisticContainerPrototype", "infinity-container", {
|
||||||
|
erase_contents_when_mined = Baseless.Data.bool,
|
||||||
|
inventory_size = Baseless.Data.MinItemStack,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,15 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityWithOwnerPrototype", "CraftingMachinePrototype", {
|
||||||
|
energy_usage = Baseless.Data.Energy,
|
||||||
|
crafting_speed = Baseless.Data.double_positive,
|
||||||
|
crafting_categories = {Baseless.Data.RecipeCategory},
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
}, {{type = "recipe-category"}})
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.CraftingMachinePrototype.AssemblingMachinePrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.CraftingMachinePrototype.FurnacePrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,8 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("CraftingMachinePrototype", "AssemblingMachinePrototype")
|
||||||
|
Baseless.Make.Gen("AssemblingMachinePrototype", "assembling-machine")
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.CraftingMachinePrototype.AssemblingMachinePrototype.RocketSiloPrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,30 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("AssemblingMachinePrototype", "rocket-silo", {
|
||||||
|
active_energy_usage = Baseless.Data.Energy,
|
||||||
|
lamp_energy_usage = Baseless.Data.Energy,
|
||||||
|
rocket_entity = Baseless.Data.RocketEntity,
|
||||||
|
arm_02_right_animation = Baseless.Graphics.Animation,
|
||||||
|
arm_01_back_animation = Baseless.Graphics.Animation,
|
||||||
|
arm_03_front_animation = Baseless.Graphics.Animation,
|
||||||
|
shadow_sprite = Baseless.Graphics.Sprite,
|
||||||
|
hole_sprite = Baseless.Graphics.Sprite,
|
||||||
|
hole_light_sprite = Baseless.Graphics.Sprite,
|
||||||
|
rocket_shadow_overlay_sprite = Baseless.Graphics.Sprite,
|
||||||
|
rocket_glow_overlay_sprite = Baseless.Graphics.Sprite,
|
||||||
|
door_back_sprite = Baseless.Graphics.Sprite,
|
||||||
|
door_front_sprite = Baseless.Graphics.Sprite,
|
||||||
|
base_day_sprite = Baseless.Graphics.Sprite,
|
||||||
|
base_front_sprite = Baseless.Graphics.Sprite,
|
||||||
|
red_lights_back_sprites = Baseless.Graphics.Sprite,
|
||||||
|
red_lights_front_sprites = Baseless.Graphics.Sprite,
|
||||||
|
hole_clipping_box = Baseless.Data.BoundingBox,
|
||||||
|
door_back_open_offset = Baseless.Data.Vector,
|
||||||
|
door_front_open_offset = Baseless.Data.Vector,
|
||||||
|
silo_fade_out_start_distance = Baseless.Data.double,
|
||||||
|
silo_fade_out_end_distance = Baseless.Data.double,
|
||||||
|
times_to_blink = Baseless.Data.uint8,
|
||||||
|
light_blinking_speed = Baseless.Data.double,
|
||||||
|
door_opening_speed = Baseless.Data.double,
|
||||||
|
rocket_parts_required = Baseless.Data.uint32,
|
||||||
|
}, {{type = "rocket-silo-rocket"}})
|
||||||
|
end
|
|
@ -0,0 +1,6 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("CraftingMachinePrototype", "furnace", {
|
||||||
|
source_inventory_size = Baseless.Data.ItemStackIndex,
|
||||||
|
result_inventory_size = Baseless.Data.ItemStackIndex,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "electric-energy-interface",
|
||||||
|
{energy_source = Baseless.Data.ElectricEnergySource})
|
||||||
|
end
|
|
@ -0,0 +1,7 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "electric-pole", {
|
||||||
|
pictures = Baseless.Graphics.RotatedSprite,
|
||||||
|
supply_area_distance = Baseless.Data.double,
|
||||||
|
connection_points = Baseless.Data.ElectricPoleConnectionPoints,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,16 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "unit-spawner", {
|
||||||
|
animations = Baseless.Graphics.AnimationVariations,
|
||||||
|
max_count_of_owned_units = Baseless.Data.uint32,
|
||||||
|
max_friends_around_to_spawn = Baseless.Data.uint32,
|
||||||
|
spawning_cooldown = {Baseless.Data.double, Baseless.Data.double},
|
||||||
|
spawning_radius = Baseless.Data.double,
|
||||||
|
spawning_spacing = Baseless.Data.double,
|
||||||
|
max_richness_for_spawn_shift = Baseless.Data.double,
|
||||||
|
max_spawn_shift = Baseless.Data.double,
|
||||||
|
pollution_absorption_absolute = Baseless.Data.double,
|
||||||
|
pollution_absorption_proportional = Baseless.Data.double,
|
||||||
|
call_for_help_radius = Baseless.Data.double,
|
||||||
|
result_units = {Baseless.Data.UnitSpawnDefinition},
|
||||||
|
}, {{type = "unit"}})
|
||||||
|
end
|
|
@ -0,0 +1,11 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityWithOwnerPrototype", "FlyingRobotPrototype",
|
||||||
|
{speed = Baseless.Data.double})
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.FlyingRobotPrototype.CombatRobotPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.FlyingRobotPrototype.RobotWithLogisticInterfacePrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,10 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("FlyingRobotPrototype", "combat-robot", {
|
||||||
|
time_to_live = Baseless.Data.uint32,
|
||||||
|
attack_parameters = Baseless.Data.BeamAttackParameters,
|
||||||
|
idle = Baseless.Graphics.RotatedAnimation,
|
||||||
|
shadow_idle = Baseless.Graphics.RotatedAnimation,
|
||||||
|
in_motion = Baseless.Graphics.RotatedAnimation,
|
||||||
|
shadow_in_motion = Baseless.Graphics.RotatedAnimation,
|
||||||
|
}, {{type = "ammo-category"}})
|
||||||
|
end
|
|
@ -0,0 +1,13 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("FlyingRobotPrototype", "RobotWithLogisticInterfacePrototype", {
|
||||||
|
max_payload_size = Baseless.Data.ItemCountType,
|
||||||
|
cargo_centered = Baseless.Data.Vector,
|
||||||
|
})
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.FlyingRobotPrototype.RobotWithLogisticInterfacePrototype.ConstructionRobotPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.FlyingRobotPrototype.RobotWithLogisticInterfacePrototype.LogisticRobotPrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("RobotWithLogisticInterfacePrototype", "construction-robot",
|
||||||
|
{construction_vector = Baseless.Data.Vector})
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("RobotWithLogisticInterfacePrototype", "logistic-robot")
|
||||||
|
end
|
|
@ -0,0 +1,18 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "gate", {
|
||||||
|
vertical_animation = Baseless.Graphics.Animation,
|
||||||
|
horizontal_animation = Baseless.Graphics.Animation,
|
||||||
|
vertical_rail_animation_left = Baseless.Graphics.Animation,
|
||||||
|
vertical_rail_animation_right = Baseless.Graphics.Animation,
|
||||||
|
horizontal_rail_animation_left = Baseless.Graphics.Animation,
|
||||||
|
horizontal_rail_animation_right = Baseless.Graphics.Animation,
|
||||||
|
vertical_rail_base = Baseless.Graphics.Animation,
|
||||||
|
horizontal_rail_base = Baseless.Graphics.Animation,
|
||||||
|
wall_patch = Baseless.Graphics.Animation,
|
||||||
|
opening_speed = Baseless.Data.float,
|
||||||
|
activation_distance = Baseless.Data.double,
|
||||||
|
timeout_to_close = Baseless.Data.uint32,
|
||||||
|
open_sound = Baseless.Sound,
|
||||||
|
close_sound = Baseless.Sound,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,9 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "generator", {
|
||||||
|
energy_source = Baseless.Data.ElectricEnergySource,
|
||||||
|
fluid_box = Baseless.Data.FluidBox,
|
||||||
|
fluid_usage_per_tick = Baseless.Data.double,
|
||||||
|
maximum_temperature = Baseless.Data.double,
|
||||||
|
max_power_output = Baseless.Data.Energy,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "heat-interface",
|
||||||
|
{heat_buffer = Baseless.Data.HeatBuffer})
|
||||||
|
end
|
|
@ -0,0 +1,7 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "heat-pipe", {
|
||||||
|
connection_sprites = Baseless.Data.ConnectableEntityGraphics,
|
||||||
|
heat_glow_sprites = Baseless.Data.ConnectableEntityGraphics,
|
||||||
|
heat_buffer = Baseless.Data.HeatBuffer,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,14 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "inserter", {
|
||||||
|
extension_speed = Baseless.Data.double,
|
||||||
|
rotation_speed = Baseless.Data.double,
|
||||||
|
insert_position = Baseless.Data.Vector_positive,
|
||||||
|
pickup_position = Baseless.Data.Vector_negative,
|
||||||
|
platform_picture = Baseless.Graphics.Sprite4Way,
|
||||||
|
hand_base_picture = Baseless.Graphics.Sprite,
|
||||||
|
hand_open_picture = Baseless.Graphics.Sprite,
|
||||||
|
hand_closed_picture = Baseless.Graphics.Sprite,
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
collision_box = Baseless.Data.InserterCollisionBox,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,9 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "lab", {
|
||||||
|
energy_usage = Baseless.Data.Energy,
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
on_animation = Baseless.Graphics.Animation,
|
||||||
|
off_animation = Baseless.Graphics.Animation,
|
||||||
|
inputs = Baseless.Data.array,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,8 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "lamp", {
|
||||||
|
picture_on = Baseless.Graphics.Sprite,
|
||||||
|
picture_off = Baseless.Graphics.Sprite,
|
||||||
|
energy_usage_per_tick = Baseless.Data.Energy,
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,7 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "land-mine", {
|
||||||
|
picture_safe = Baseless.Graphics.Sprite,
|
||||||
|
picture_set = Baseless.Graphics.Sprite,
|
||||||
|
trigger_radius = Baseless.Data.double,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "linked-container",
|
||||||
|
{inventory_size = Baseless.Data.MinItemStack})
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "market", {picture = Baseless.Graphics.Sprite})
|
||||||
|
end
|
|
@ -0,0 +1,10 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "mining-drill", {
|
||||||
|
vector_to_place_result = Baseless.Data.Vector,
|
||||||
|
energy_usage = Baseless.Data.Energy,
|
||||||
|
mining_speed = Baseless.Data.double,
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
resource_categories = {Baseless.Data.ResourceType},
|
||||||
|
resource_searching_radius = Baseless.Data.double,
|
||||||
|
}, {{type = "resource-category"}})
|
||||||
|
end
|
|
@ -0,0 +1,8 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "offshore-pump", {
|
||||||
|
fluid_box = Baseless.Data.FluidBox,
|
||||||
|
pumping_speed = Baseless.Data.float_positive,
|
||||||
|
fluid = Baseless.Data.Fluid,
|
||||||
|
picture = Baseless.Graphics.Animation4Way,
|
||||||
|
}, {{type = "fluid"}})
|
||||||
|
end
|
|
@ -0,0 +1,13 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityWithOwnerPrototype", "PipePrototype", {
|
||||||
|
fluid_box = Baseless.Data.FluidBox,
|
||||||
|
pictures = Baseless.Graphics.PipePictures,
|
||||||
|
horizontal_window_bounding_box = Baseless.Data.BoundingBox,
|
||||||
|
vertical_window_bounding_box = Baseless.Data.BoundingBox,
|
||||||
|
})
|
||||||
|
Baseless.Make.Gen("PipePrototype", "pipe")
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.PipePrototype.InfinityPipePrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("PipePrototype", "infinity-pipe")
|
||||||
|
end
|
|
@ -0,0 +1,6 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "pipe-to-ground", {
|
||||||
|
fluid_box = Baseless.Data.FluidBox,
|
||||||
|
pictures = Baseless.Graphics.PipeToGroundPictures,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "player-port",
|
||||||
|
{animation = Baseless.Graphics.Animation})
|
||||||
|
end
|
|
@ -0,0 +1,13 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "power-switch", {
|
||||||
|
power_on_animation = Baseless.Graphics.Animation,
|
||||||
|
overlay_start = Baseless.Graphics.Animation,
|
||||||
|
overlay_loop = Baseless.Graphics.Animation,
|
||||||
|
led_on = Baseless.Graphics.Sprite,
|
||||||
|
led_off = Baseless.Graphics.Sprite,
|
||||||
|
overlay_start_delay = Baseless.Data.uint8,
|
||||||
|
circuit_wire_connection_point = Baseless.Data.WireConnectionPoint,
|
||||||
|
left_wire_connection_point = Baseless.Data.WireConnectionPoint,
|
||||||
|
right_wire_connection_point = Baseless.Data.WireConnectionPoint,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,9 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "programmable-speaker", {
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
energy_usage_per_tick = Baseless.Data.Energy,
|
||||||
|
sprite = Baseless.Graphics.Sprite,
|
||||||
|
maximum_polyphony = Baseless.Data.uint32,
|
||||||
|
instruments = Baseless.Data.array,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,9 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "pump", {
|
||||||
|
fluid_box = Baseless.Data.FluidBox,
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
energy_usage = Baseless.Data.Energy,
|
||||||
|
pumping_speed = Baseless.Data.double,
|
||||||
|
animations = Baseless.Graphics.Animation4Way,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,11 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "radar", {
|
||||||
|
energy_usage = Baseless.Data.Energy,
|
||||||
|
energy_per_sector = Baseless.Data.Energy,
|
||||||
|
energy_per_nearby_scan = Baseless.Data.Energy,
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
pictures = Baseless.Graphics.RotatedSprite,
|
||||||
|
max_distance_of_sector_revealed = Baseless.Data.uint32,
|
||||||
|
max_distance_of_nearby_sector_revealed = Baseless.Data.uint32,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,13 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityWithOwnerPrototype", "RailPrototype", {
|
||||||
|
pictures = Baseless.Graphics.RailPictureSet,
|
||||||
|
placeable_by = Baseless.Data.RailPlaceableBy,
|
||||||
|
}, {{type = "rail-planner"}})
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.RailPrototype.CurvedRailPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.RailPrototype.StraightRailPrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("RailPrototype", "curved-rail")
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("RailPrototype", "straight-rail")
|
||||||
|
end
|
|
@ -0,0 +1,11 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityWithOwnerPrototype", "RailSignalBasePrototype",
|
||||||
|
{animation = Baseless.Graphics.RotatedAnimation})
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.RailSignalBasePrototype.RailChainSignalPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.RailSignalBasePrototype.RailSignalPrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("RailSignalBasePrototype", "rail-chain-signal",
|
||||||
|
{selection_box_offsets = Baseless.Data.RailChainSignalBoxOffsets})
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("RailSignalBasePrototype", "rail-signal")
|
||||||
|
end
|
|
@ -0,0 +1,8 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "reactor", {
|
||||||
|
working_light_picture = Baseless.Graphics.Sprite,
|
||||||
|
heat_buffer = Baseless.Data.HeatBuffer,
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
consumption = Baseless.Data.Energy,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,21 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "roboport", {
|
||||||
|
energy_source = Baseless.Data.VoidEnergySource,
|
||||||
|
energy_usage = Baseless.Data.Energy,
|
||||||
|
recharge_minimum = Baseless.Data.Energy,
|
||||||
|
robot_slots_count = Baseless.Data.ItemStackIndex,
|
||||||
|
material_slots_count = Baseless.Data.ItemStackIndex,
|
||||||
|
base = Baseless.Graphics.Sprite,
|
||||||
|
base_patch = Baseless.Graphics.Sprite,
|
||||||
|
base_animation = Baseless.Graphics.Animation,
|
||||||
|
door_animation_up = Baseless.Graphics.Animation,
|
||||||
|
door_animation_down = Baseless.Graphics.Animation,
|
||||||
|
request_to_open_door_timeout = Baseless.Data.uint32,
|
||||||
|
recharging_animation = Baseless.Graphics.Animation,
|
||||||
|
spawn_and_station_height = Baseless.Data.float,
|
||||||
|
charge_approach_distance = Baseless.Data.float,
|
||||||
|
logistics_radius = Baseless.Data.float,
|
||||||
|
construction_radius = Baseless.Data.float,
|
||||||
|
charging_energy = Baseless.Data.Energy,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,8 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityWithOwnerPrototype", "SimpleEntityWithOwnerPrototype")
|
||||||
|
Baseless.Make.Gen("SimpleEntityWithOwnerPrototype", "simple-entity-with-owner")
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.SimpleEntityWithOwnerPrototype.SimpleEntityWithForcePrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("SimpleEntityWithOwnerPrototype", "simple-entity-with-force")
|
||||||
|
end
|
|
@ -0,0 +1,7 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "solar-panel", {
|
||||||
|
energy_source = Baseless.Data.ElectricEnergySource,
|
||||||
|
picture = Baseless.Graphics.SpriteVariations,
|
||||||
|
production = Baseless.Data.Energy,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,8 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "storage-tank", {
|
||||||
|
fluid_box = Baseless.Data.FluidBox,
|
||||||
|
window_bounding_box = Baseless.Data.BoundingBox,
|
||||||
|
pictures = Baseless.Graphics.StorageTankPictures,
|
||||||
|
flow_length_in_ticks = Baseless.Data.uint32_positive,
|
||||||
|
})
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("EntityWithOwnerPrototype", "train-stop",
|
||||||
|
{animation_ticks_per_frame = Baseless.Data.uint32})
|
||||||
|
end
|
|
@ -0,0 +1,25 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("EntityWithOwnerPrototype", "TransportBeltConnectablePrototype", {
|
||||||
|
belt_animation_set = Baseless.Graphics.TransportBeltAnimationSet,
|
||||||
|
speed = Baseless.Data.double_positive,
|
||||||
|
collision_box = Baseless.Data.BoundingBox,
|
||||||
|
tile_width = Baseless.Data.BeltTileWidth,
|
||||||
|
tile_height = Baseless.Data.BeltTileHeight,
|
||||||
|
})
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.TransportBeltConnectablePrototype.LinkedBeltPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.TransportBeltConnectablePrototype.LoaderPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.TransportBeltConnectablePrototype.SplitterPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.TransportBeltConnectablePrototype.TransportBeltPrototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.TransportBeltConnectablePrototype.UndergroundBeltPrototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,4 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("TransportBeltConnectablePrototype", "linked-belt",
|
||||||
|
{structure = Baseless.Graphics.LinkedBeltStructure})
|
||||||
|
end
|
|
@ -0,0 +1,13 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Def("TransportBeltConnectablePrototype", "LoaderPrototype", {
|
||||||
|
filter_count = Baseless.Data.uint8,
|
||||||
|
structure = Baseless.Graphics.LoaderStructure,
|
||||||
|
})
|
||||||
|
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.TransportBeltConnectablePrototype.LoaderPrototype.Loader1x1Prototype")(
|
||||||
|
Baseless)
|
||||||
|
require(
|
||||||
|
"prototypes.PrototypeBase.EntityPrototype.EntityWithHealthPrototype.EntityWithOwnerPrototype.TransportBeltConnectablePrototype.LoaderPrototype.Loader1x2Prototype")(
|
||||||
|
Baseless)
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("LoaderPrototype", "loader-1x1")
|
||||||
|
end
|
|
@ -0,0 +1,3 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("LoaderPrototype", "loader", {tile_height = Baseless.Data.LoaderTileHeight})
|
||||||
|
end
|
|
@ -0,0 +1,6 @@
|
||||||
|
return function(Baseless)
|
||||||
|
Baseless.Make.Gen("TransportBeltConnectablePrototype", "splitter", {
|
||||||
|
structure = Baseless.Graphics.Animation4Way,
|
||||||
|
tile_width = Baseless.Data.SplitterTileWidth,
|
||||||
|
})
|
||||||
|
end
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue