Good enough to launch game
This commit is contained in:
parent
5d0fe34778
commit
cca2c2a70f
|
@ -0,0 +1 @@
|
|||
*.zip
|
|
@ -0,0 +1,274 @@
|
|||
Baseless = {}
|
||||
Baseless.Needs = {}
|
||||
|
||||
|
||||
-- FIXME
|
||||
Baseless.RenderLayer = "water-tile"
|
||||
|
||||
Baseless.Image = "__core__/graphics/empty.png"
|
||||
Baseless.Image32 = "__core__/graphics/factorio-icon.png"
|
||||
Baseless.Sound =
|
||||
{
|
||||
filename = "__core__/sound/achievement-unlocked.ogg",
|
||||
}
|
||||
|
||||
Baseless.RotatedAnimation =
|
||||
{
|
||||
filename = Baseless.Image,
|
||||
size = 1,
|
||||
direction_count = 18,
|
||||
}
|
||||
Baseless.RotatedAnimation32 =
|
||||
{
|
||||
filename = Baseless.Image32,
|
||||
size = 1,
|
||||
direction_count = 18,
|
||||
}
|
||||
Baseless.RotatedAnimation4Way = Baseless.RotatedAnimation
|
||||
Baseless.RotatedAnimation4Way32 = Baseless.RotatedAnimation32
|
||||
-- END
|
||||
|
||||
|
||||
|
||||
Baseless._AmmoType = {category = "dummy-ammo-category"}
|
||||
Baseless.AmmoType = function (register)
|
||||
if register then
|
||||
Baseless.Needs.AmmoType = true
|
||||
end
|
||||
return Baseless._AmmoType
|
||||
end
|
||||
|
||||
Baseless.AttackParameters = {}
|
||||
Baseless.AttackParameters._Stream =
|
||||
{
|
||||
type = "stream",
|
||||
range = 0,
|
||||
cooldown = 0,
|
||||
ammo_type = Baseless._AmmoType,
|
||||
animation = Baseless.RotatedAnimation32,
|
||||
}
|
||||
Baseless.AttackParameters.Stream = function (register)
|
||||
if register then
|
||||
Baseless.AmmoType(true)
|
||||
end
|
||||
return Baseless.AttackParameters._Stream
|
||||
end
|
||||
|
||||
|
||||
Baseless._DamagePrototype =
|
||||
{
|
||||
amount = 1,
|
||||
type = "dummy-damage-type",
|
||||
}
|
||||
Baseless.DamagePrototype = function (register)
|
||||
if register then
|
||||
Baseless.Needs.DamageType = true
|
||||
end
|
||||
return Baseless._DamagePrototype
|
||||
end
|
||||
|
||||
|
||||
Baseless.EnergySource = {}
|
||||
Baseless.EnergySource._Burner =
|
||||
{
|
||||
type = "burner",
|
||||
fuel_inventory_size = 0,
|
||||
fuel_category = "dummy-fuel-category",
|
||||
}
|
||||
Baseless.EnergySource.Burner = function (register)
|
||||
if register then
|
||||
Baseless.Needs.FuelType = true
|
||||
end
|
||||
return Baseless.EnergySource._Burner
|
||||
end
|
||||
|
||||
Baseless.EnergySource.Electric =
|
||||
{
|
||||
type = "electric",
|
||||
usage_priority = "tertiary",
|
||||
}
|
||||
|
||||
Baseless.EnergySource.Void =
|
||||
{
|
||||
type = "void",
|
||||
usage_priority = "tertiary",
|
||||
}
|
||||
|
||||
|
||||
Baseless._ModuleType = "dummy-module-category"
|
||||
Baseless.ModuleType = function (register)
|
||||
if register then
|
||||
Baseless.Needs.ModuleType = true
|
||||
end
|
||||
return Baseless._ModuleType
|
||||
end
|
||||
|
||||
|
||||
Baseless._RecipeType = "dummy-recipe-category"
|
||||
Baseless.RecipeType = function (register)
|
||||
if register then
|
||||
Baseless.Needs.RecipeType = true
|
||||
end
|
||||
return Baseless._RecipeType
|
||||
end
|
||||
|
||||
|
||||
Baseless._ResourceType = "dummy-resource-category"
|
||||
Baseless.ResourceType = function (register)
|
||||
if register then
|
||||
Baseless.Needs.ResourceType = true
|
||||
end
|
||||
return Baseless._ResourceType
|
||||
end
|
||||
|
||||
|
||||
Baseless._ScienceType = "dummy-science-pack"
|
||||
Baseless.ScienceType = function (register)
|
||||
if register then
|
||||
Baseless.Needs.ScienceType = true
|
||||
end
|
||||
return Baseless._ScienceType
|
||||
end
|
||||
|
||||
|
||||
|
||||
-- FIXME
|
||||
|
||||
Baseless.IconSpecification =
|
||||
{
|
||||
icon = Baseless.Image,
|
||||
icon_size = 1,
|
||||
}
|
||||
|
||||
Baseless.BoundingBox = {{0, 0}, {0, 0}}
|
||||
|
||||
Baseless.Color = {0, 0, 0}
|
||||
|
||||
Baseless.Sprite =
|
||||
{
|
||||
filename = Baseless.Image32,
|
||||
size = 1,
|
||||
}
|
||||
Baseless.RotatedSprite =
|
||||
{
|
||||
filename = Baseless.Image,
|
||||
size = 1,
|
||||
direction_count = 1,
|
||||
}
|
||||
|
||||
Baseless.SpriteVariations =
|
||||
{
|
||||
sheet = Baseless.Sprite,
|
||||
}
|
||||
|
||||
Baseless.Animation =
|
||||
{
|
||||
filename = Baseless.Image32,
|
||||
size = 1,
|
||||
variation_count = 12,
|
||||
}
|
||||
Baseless.Animation4Way = Baseless.Animation
|
||||
Baseless.AnimationVariations =
|
||||
{
|
||||
sheet = Baseless.Animation,
|
||||
}
|
||||
|
||||
Baseless.RotatedAnimation =
|
||||
{
|
||||
filename = Baseless.Image32,
|
||||
size = 1,
|
||||
direction_count = 18,
|
||||
}
|
||||
Baseless.RotatedAnimation4Way = Baseless.RotatedAnimation
|
||||
|
||||
Baseless.Sprite4Way = Baseless.Sprite
|
||||
Baseless.Sprite8Way =
|
||||
{
|
||||
sheets = {Baseless.Sprite},
|
||||
}
|
||||
|
||||
Baseless.CombinatorOffsets =
|
||||
{
|
||||
{0, 0},
|
||||
{0, 0},
|
||||
{0, 0},
|
||||
{0, 0},
|
||||
}
|
||||
|
||||
Baseless.WireConnectionPoint = {}
|
||||
Baseless.WireConnectionPoint.Combinator =
|
||||
{
|
||||
{wire = {}, shadow = {}},
|
||||
{wire = {}, shadow = {}},
|
||||
{wire = {}, shadow = {}},
|
||||
{wire = {}, shadow = {}},
|
||||
}
|
||||
Baseless.WireConnectionPoint.Pole =
|
||||
{
|
||||
{wire = {}, shadow = {}},
|
||||
}
|
||||
Baseless.WireConnectionPoint.PowerSwitch = {wire = {}, shadow = {}}
|
||||
|
||||
Baseless.FluidBox = {pipe_connections = {}}
|
||||
|
||||
Baseless.HeatBuffer =
|
||||
{
|
||||
max_temperature = 15,
|
||||
specific_heat = "1W",
|
||||
max_transfer = "1W",
|
||||
}
|
||||
|
||||
Baseless.TransportBeltConnectorFrame =
|
||||
{
|
||||
frame_main = Baseless.AnimationVariations,
|
||||
frame_shadow = Baseless.AnimationVariations,
|
||||
frame_main_scanner = Baseless.Animation,
|
||||
frame_main_scanner_movement_speed = 1,
|
||||
frame_main_scanner_horizontal_start_shift = {0, 0},
|
||||
frame_main_scanner_horizontal_end_shift = {0, 0},
|
||||
frame_main_scanner_horizontal_y_scale = 1,
|
||||
frame_main_scanner_horizontal_rotation = 0,
|
||||
frame_main_scanner_vertical_start_shift = {0, 0},
|
||||
frame_main_scanner_vertical_end_shift = {0, 0},
|
||||
frame_main_scanner_vertical_y_scale = 1,
|
||||
frame_main_scanner_vertical_rotation = 0,
|
||||
frame_main_scanner_cross_horizontal_start_shift = {0, 0},
|
||||
frame_main_scanner_cross_horizontal_end_shift = {0, 0},
|
||||
frame_main_scanner_cross_horizontal_y_scale = 1,
|
||||
frame_main_scanner_cross_horizontal_rotation = 0,
|
||||
frame_main_scanner_cross_vertical_start_shift = {0, 0},
|
||||
frame_main_scanner_cross_vertical_end_shift = {0, 0},
|
||||
frame_main_scanner_cross_vertical_y_scale = 1,
|
||||
frame_main_scanner_cross_vertical_rotation = 0,
|
||||
frame_main_scanner_nw_ne = Baseless.Animation,
|
||||
frame_main_scanner_sw_se = Baseless.Animation,
|
||||
}
|
||||
|
||||
Baseless.BeltAnimation =
|
||||
{
|
||||
filename = Baseless.Image32,
|
||||
size = 1,
|
||||
variation_count = 1,
|
||||
direction_count = 12,
|
||||
}
|
||||
|
||||
Baseless.EquipmentShape =
|
||||
{
|
||||
width = 1,
|
||||
height = 1,
|
||||
type = "full",
|
||||
}
|
||||
|
||||
Baseless.TileTransitionSprite =
|
||||
{
|
||||
count = 1,
|
||||
picture = Baseless.Image32,
|
||||
size = 1,
|
||||
}
|
||||
Baseless.Transitions =
|
||||
{
|
||||
main = {Baseless.TileTransitionSprite},
|
||||
empty_transitions = true,
|
||||
}
|
||||
|
||||
-- END
|
|
@ -0,0 +1,5 @@
|
|||
# Baseless
|
||||
|
||||
Defines missing prototypes required to launch the game.
|
||||
|
||||
**Incompatible with the base mod.**
|
|
@ -0,0 +1,198 @@
|
|||
require("Baseless")
|
||||
|
||||
require("helpers.MergeTables")
|
||||
|
||||
-- Prototype Hierarchy
|
||||
require("helpers.CreatePrototype")
|
||||
require("helpers.CreateItem")
|
||||
require("helpers.CreateItemWithLabel")
|
||||
require("helpers.CreateItemWithInventory")
|
||||
require("helpers.CreateItemWithTags")
|
||||
require("helpers.CreateSelectionTool")
|
||||
require("helpers.CreateTool")
|
||||
require("helpers.CreateEntity")
|
||||
require("helpers.CreateCorpse")
|
||||
require("helpers.CreateEntityWithHealth")
|
||||
require("helpers.CreateCombinator")
|
||||
require("helpers.CreateContainer")
|
||||
require("helpers.CreateLogisticContainer")
|
||||
require("helpers.CreateCraftingMachine")
|
||||
require("helpers.CreateAssemblingMachine")
|
||||
require("helpers.CreateFlyingRobot")
|
||||
require("helpers.CreateRobotWithLogisticInterface")
|
||||
require("helpers.CreatePipe")
|
||||
require("helpers.CreateRail")
|
||||
require("helpers.CreateRailSignalBase")
|
||||
require("helpers.CreateTransportBeltConnectable")
|
||||
require("helpers.CreateTurret")
|
||||
require("helpers.CreateVehicle")
|
||||
require("helpers.CreateRollingStock")
|
||||
require("helpers.CreateExplosion")
|
||||
require("helpers.CreateSmoke")
|
||||
require("helpers.CreateEquipment")
|
||||
|
||||
-- Items
|
||||
require("prototypes.item.ammo")
|
||||
require("prototypes.item.armor")
|
||||
require("prototypes.item.blueprint")
|
||||
require("prototypes.item.blueprint-book")
|
||||
require("prototypes.item.capsule")
|
||||
require("prototypes.item.copy-paste-tool")
|
||||
require("prototypes.item.deconstruction-item")
|
||||
require("prototypes.item.gun")
|
||||
require("prototypes.item.item")
|
||||
require("prototypes.item.item-with-entity-data")
|
||||
require("prototypes.item.item-with-inventory")
|
||||
require("prototypes.item.item-with-label")
|
||||
require("prototypes.item.item-with-tags")
|
||||
require("prototypes.item.mining-tool")
|
||||
require("prototypes.item.module")
|
||||
require("prototypes.item.rail-planner")
|
||||
require("prototypes.item.repair-tool")
|
||||
require("prototypes.item.selection-tool")
|
||||
require("prototypes.item.tool")
|
||||
require("prototypes.item.upgrade-item")
|
||||
|
||||
-- Entities (depends on above)
|
||||
|
||||
|
||||
-- Entities
|
||||
require("prototypes.entity.accumulator")
|
||||
require("prototypes.entity.ammo-turret")
|
||||
require("prototypes.entity.arithmetic-combinator")
|
||||
require("prototypes.entity.arrow")
|
||||
require("prototypes.entity.artillery-flare")
|
||||
require("prototypes.entity.artillery-projectile")
|
||||
require("prototypes.entity.artillery-turret")
|
||||
require("prototypes.entity.artillery-wagon")
|
||||
require("prototypes.entity.assembling-machine")
|
||||
require("prototypes.entity.beacon")
|
||||
require("prototypes.entity.beam")
|
||||
require("prototypes.entity.boiler")
|
||||
require("prototypes.entity.burner-generator")
|
||||
require("prototypes.entity.car")
|
||||
require("prototypes.entity.cargo-wagon")
|
||||
require("prototypes.entity.character")
|
||||
require("prototypes.entity.character-corpse")
|
||||
require("prototypes.entity.cliff")
|
||||
require("prototypes.entity.combat-robot")
|
||||
require("prototypes.entity.constant-combinator")
|
||||
require("prototypes.entity.construction-robot")
|
||||
require("prototypes.entity.container")
|
||||
require("prototypes.entity.corpse")
|
||||
require("prototypes.entity.decider-combinator")
|
||||
require("prototypes.entity.deconstructible-tile-proxy")
|
||||
require("prototypes.entity.decorative")
|
||||
require("prototypes.entity.electric-energy-interface")
|
||||
require("prototypes.entity.electric-pole")
|
||||
require("prototypes.entity.electric-turret")
|
||||
require("prototypes.entity.entity-ghost")
|
||||
require("prototypes.entity.explosion")
|
||||
require("prototypes.entity.fire")
|
||||
require("prototypes.entity.fish")
|
||||
require("prototypes.entity.flame-thrower-explosion")
|
||||
require("prototypes.entity.fluid-turret")
|
||||
require("prototypes.entity.fluid-wagon")
|
||||
require("prototypes.entity.flying-text")
|
||||
require("prototypes.entity.furnace")
|
||||
require("prototypes.entity.gate")
|
||||
require("prototypes.entity.generator")
|
||||
require("prototypes.entity.heat-interface")
|
||||
require("prototypes.entity.heat-pipe")
|
||||
require("prototypes.entity.highlight-box")
|
||||
require("prototypes.entity.infinity-container")
|
||||
require("prototypes.entity.infinity-pipe")
|
||||
require("prototypes.entity.inserter")
|
||||
require("prototypes.entity.item-entity")
|
||||
require("prototypes.entity.item-request-proxy")
|
||||
require("prototypes.entity.lab")
|
||||
require("prototypes.entity.lamp")
|
||||
require("prototypes.entity.land-mine")
|
||||
require("prototypes.entity.leaf-particle")
|
||||
require("prototypes.entity.loader")
|
||||
require("prototypes.entity.loader-1x1")
|
||||
require("prototypes.entity.locomotive")
|
||||
require("prototypes.entity.logistic-container")
|
||||
require("prototypes.entity.logistic-robot")
|
||||
require("prototypes.entity.market")
|
||||
require("prototypes.entity.mining-drill")
|
||||
require("prototypes.entity.offshore-pump")
|
||||
require("prototypes.entity.particle")
|
||||
require("prototypes.entity.particle-source")
|
||||
require("prototypes.entity.pipe")
|
||||
require("prototypes.entity.pipe-to-ground")
|
||||
require("prototypes.entity.player-port")
|
||||
require("prototypes.entity.power-switch")
|
||||
require("prototypes.entity.programmable-speaker")
|
||||
require("prototypes.entity.projectile")
|
||||
require("prototypes.entity.pump")
|
||||
require("prototypes.entity.radar")
|
||||
require("prototypes.entity.rail-chain-signal")
|
||||
require("prototypes.entity.rail-remnants")
|
||||
require("prototypes.entity.rail-signal")
|
||||
require("prototypes.entity.reactor")
|
||||
require("prototypes.entity.resource")
|
||||
require("prototypes.entity.roboport")
|
||||
require("prototypes.entity.rocket-silo")
|
||||
require("prototypes.entity.rocket-silo-rocket-shadow")
|
||||
require("prototypes.entity.simple-entity")
|
||||
require("prototypes.entity.simple-entity-with-force")
|
||||
require("prototypes.entity.simple-entity-with-owner")
|
||||
require("prototypes.entity.smoke")
|
||||
require("prototypes.entity.smoke-with-trigger")
|
||||
require("prototypes.entity.solar-panel")
|
||||
require("prototypes.entity.speech-bubble")
|
||||
require("prototypes.entity.splitter")
|
||||
require("prototypes.entity.sticker")
|
||||
require("prototypes.entity.storage-tank")
|
||||
require("prototypes.entity.stream")
|
||||
require("prototypes.entity.tile-ghost")
|
||||
require("prototypes.entity.train-stop")
|
||||
require("prototypes.entity.transport-belt")
|
||||
require("prototypes.entity.tree")
|
||||
require("prototypes.entity.turret")
|
||||
require("prototypes.entity.underground-belt")
|
||||
require("prototypes.entity.unit-spawner")
|
||||
require("prototypes.entity.wall")
|
||||
|
||||
-- Equipment
|
||||
require("prototypes.equipment.active-defense-equipment")
|
||||
require("prototypes.equipment.battery-equipment")
|
||||
require("prototypes.equipment.belt-immunity-equipment")
|
||||
require("prototypes.equipment.energy-shield-equipment")
|
||||
require("prototypes.equipment.generator-equipment")
|
||||
require("prototypes.equipment.movement-bonus-equipment")
|
||||
require("prototypes.equipment.night-vision-equipment")
|
||||
require("prototypes.equipment.roboport-equipment")
|
||||
require("prototypes.equipment.solar-panel-equipment")
|
||||
|
||||
-- Items (depends on above)
|
||||
require("prototypes.item.science")
|
||||
|
||||
-- Entities (depends on above)
|
||||
require("prototypes.entity.curved-rail")
|
||||
require("prototypes.entity.rocket-silo-rocket")
|
||||
require("prototypes.entity.straight-rail")
|
||||
require("prototypes.entity.unit")
|
||||
|
||||
-- Categories (depends on above)
|
||||
require("prototypes.category.ammo")
|
||||
require("prototypes.category.damage")
|
||||
require("prototypes.category.equipment")
|
||||
require("prototypes.category.fuel")
|
||||
require("prototypes.category.module")
|
||||
require("prototypes.category.recipe")
|
||||
require("prototypes.category.resource")
|
||||
require("prototypes.category.trigger-target")
|
||||
|
||||
-- Other (depends on above)
|
||||
require("prototypes.item-group")
|
||||
require("prototypes.item.copper-cable")
|
||||
require("prototypes.item.green-wire")
|
||||
require("prototypes.item.red-wire")
|
||||
require("prototypes.other.equipment-grid")
|
||||
require("prototypes.other.fluid")
|
||||
require("prototypes.other.optimized-particle")
|
||||
require("prototypes.other.tile")
|
||||
require("prototypes.other.trivial-smoke")
|
||||
require("prototypes.other.virtual-signal")
|
|
@ -0,0 +1,3 @@
|
|||
function CreateAssemblingMachine (type, prototype)
|
||||
return CreateCraftingMachine(type, prototype)
|
||||
end
|
|
@ -0,0 +1,20 @@
|
|||
function CreateCombinator (type, prototype)
|
||||
return CreateEntityWithHealth(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
active_energy_usage = "1W",
|
||||
activity_led_light_offsets = Baseless.CombinatorOffsets,
|
||||
activity_led_sprites = Baseless.Sprite4Way,
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
input_connection_bounding_box = Baseless.BoundingBox,
|
||||
input_connection_points = Baseless.WireConnectionPoint.Combinator,
|
||||
output_connection_bounding_box = Baseless.BoundingBox,
|
||||
output_connection_points = Baseless.WireConnectionPoint.Combinator,
|
||||
screen_light_offsets = Baseless.CombinatorOffsets,
|
||||
sprites = Baseless.Sprite4Way,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,12 @@
|
|||
function CreateContainer (type, prototype)
|
||||
return CreateEntityWithHealth(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
inventory_size = 1,
|
||||
picture = Baseless.Sprite,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,3 @@
|
|||
function CreateCorpse (type, prototype)
|
||||
return CreateEntity(type, prototype)
|
||||
end
|
|
@ -0,0 +1,18 @@
|
|||
function CreateCraftingMachine (type, prototype)
|
||||
if CreateEntityWithHealth(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
crafting_categories = {Baseless.RecipeType()},
|
||||
crafting_speed = 1,
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
energy_usage = "1W",
|
||||
}
|
||||
)
|
||||
) then
|
||||
Baseless.RecipeType(true)
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
|
@ -0,0 +1,16 @@
|
|||
function CreateEntity (type, prototype)
|
||||
if CreateUniquePrototype(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
Baseless.IconSpecification,
|
||||
{
|
||||
subgroup = "dummy-item-subgroup",
|
||||
}
|
||||
)
|
||||
) then
|
||||
Baseless.Needs.ItemGroup = true
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
|
@ -0,0 +1,3 @@
|
|||
function CreateEntityWithHealth (type, prototype)
|
||||
return CreateEntity(type, prototype)
|
||||
end
|
|
@ -0,0 +1,30 @@
|
|||
function CreateEquipment (type, prototype)
|
||||
if CreateUniquePrototype(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
Baseless.IconSpecification,
|
||||
{
|
||||
categories = {"dummy-equipment-category"},
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
shape = Baseless.EquipmentShape,
|
||||
sprite = Baseless.Sprite,
|
||||
}
|
||||
)
|
||||
) then
|
||||
Baseless.Needs.EquipmentType = true
|
||||
data:extend
|
||||
{
|
||||
{
|
||||
type = "item",
|
||||
name = "dummy-" .. type,
|
||||
icon = Baseless.Image,
|
||||
icon_size = 1,
|
||||
stack_size = 1,
|
||||
subgroup = "dummy-item-subgroup",
|
||||
},
|
||||
}
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
|
@ -0,0 +1,11 @@
|
|||
function CreateExplosion (type, prototype)
|
||||
return CreateEntity(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
animations = Baseless.AnimationVariations,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,11 @@
|
|||
function CreateFlyingRobot (type, prototype)
|
||||
return CreateEntityWithHealth(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
speed = 1,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,17 @@
|
|||
function CreateItem (type, prototype)
|
||||
if CreateUniquePrototype(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
Baseless.IconSpecification,
|
||||
{
|
||||
stack_size = 1,
|
||||
subgroup = "dummy-item-subgroup",
|
||||
}
|
||||
)
|
||||
) then
|
||||
Baseless.Needs.ItemGroup = true
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
|
@ -0,0 +1,11 @@
|
|||
function CreateItemWithInventory (type, prototype)
|
||||
return CreateItemWithLabel(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
inventory_size = 0,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,3 @@
|
|||
function CreateItemWithLabel (type, prototype)
|
||||
return CreateItem(type, prototype)
|
||||
end
|
|
@ -0,0 +1,3 @@
|
|||
function CreateItemWithTags (type, prototype)
|
||||
return CreateItemWithLabel(type, prototype)
|
||||
end
|
|
@ -0,0 +1,11 @@
|
|||
function CreateLogisticContainer (type, prototype)
|
||||
return CreateContainer(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
logistic_mode = "storage",
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,43 @@
|
|||
Baseless.PipePictures =
|
||||
{
|
||||
straight_vertical_single = Baseless.Sprite,
|
||||
straight_vertical = Baseless.Sprite,
|
||||
straight_vertical_window = Baseless.Sprite,
|
||||
straight_horizontal = Baseless.Sprite,
|
||||
straight_horizontal_window = Baseless.Sprite,
|
||||
corner_up_right = Baseless.Sprite,
|
||||
corner_up_left = Baseless.Sprite,
|
||||
corner_down_right = Baseless.Sprite,
|
||||
corner_down_left = Baseless.Sprite,
|
||||
t_up = Baseless.Sprite,
|
||||
t_down = Baseless.Sprite,
|
||||
t_right = Baseless.Sprite,
|
||||
t_left = Baseless.Sprite,
|
||||
cross = Baseless.Sprite,
|
||||
ending_up = Baseless.Sprite,
|
||||
ending_down = Baseless.Sprite,
|
||||
ending_right = Baseless.Sprite,
|
||||
ending_left = Baseless.Sprite,
|
||||
horizontal_window_background = Baseless.Sprite,
|
||||
vertical_window_background = Baseless.Sprite,
|
||||
fluid_background = Baseless.Sprite,
|
||||
low_temperature_flow = Baseless.Sprite,
|
||||
middle_temperature_flow = Baseless.Sprite,
|
||||
high_temperature_flow = Baseless.Sprite,
|
||||
gas_flow = Baseless.Animation,
|
||||
}
|
||||
|
||||
function CreatePipe (type, prototype)
|
||||
return CreateEntityWithHealth(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
fluid_box = Baseless.FluidBox,
|
||||
horizontal_window_bounding_box = Baseless.BoundingBox,
|
||||
pictures = Baseless.PipePictures,
|
||||
vertical_window_bounding_box = Baseless.BoundingBox,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,22 @@
|
|||
function CreatePrototype (type, prototype)
|
||||
data:extend
|
||||
{
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
type = type,
|
||||
name = "dummy-" .. type,
|
||||
flags = {"hidden"}, -- Make everything hidden
|
||||
}
|
||||
),
|
||||
}
|
||||
end
|
||||
|
||||
-- Does not create if that type already exists
|
||||
function CreateUniquePrototype (type, prototype)
|
||||
if data.raw[type] == nil then
|
||||
CreatePrototype(type, prototype)
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
|
@ -0,0 +1,38 @@
|
|||
Baseless.RailPieceLayers =
|
||||
{
|
||||
metals = Baseless.SpriteVariations,
|
||||
backplates = Baseless.SpriteVariations,
|
||||
ties = Baseless.SpriteVariations,
|
||||
stone_path = Baseless.SpriteVariations,
|
||||
}
|
||||
|
||||
Baseless.RailPictures =
|
||||
{
|
||||
straight_rail_horizontal = Baseless.RailPieceLayers,
|
||||
straight_rail_vertical = Baseless.RailPieceLayers,
|
||||
straight_rail_diagonal_left_top = Baseless.RailPieceLayers,
|
||||
straight_rail_diagonal_right_top = Baseless.RailPieceLayers,
|
||||
straight_rail_diagonal_right_bottom = Baseless.RailPieceLayers,
|
||||
straight_rail_diagonal_left_bottom = Baseless.RailPieceLayers,
|
||||
curved_rail_vertical_left_top = Baseless.RailPieceLayers,
|
||||
curved_rail_vertical_right_top = Baseless.RailPieceLayers,
|
||||
curved_rail_vertical_right_bottom = Baseless.RailPieceLayers,
|
||||
curved_rail_vertical_left_bottom = Baseless.RailPieceLayers,
|
||||
curved_rail_horizontal_left_top = Baseless.RailPieceLayers,
|
||||
curved_rail_horizontal_right_top = Baseless.RailPieceLayers,
|
||||
curved_rail_horizontal_right_bottom = Baseless.RailPieceLayers,
|
||||
curved_rail_horizontal_left_bottom = Baseless.RailPieceLayers,
|
||||
rail_endings = Baseless.Sprite8Way,
|
||||
}
|
||||
|
||||
function CreateRail (type, prototype)
|
||||
return CreateEntityWithHealth(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
pictures = Baseless.RailPictures,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,11 @@
|
|||
function CreateRailSignalBase (type, prototype)
|
||||
return CreateEntityWithHealth(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
animation = Baseless.RotatedAnimation,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,12 @@
|
|||
function CreateRobotWithLogisticInterface (type, prototype)
|
||||
return CreateFlyingRobot(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
cargo_centered = {0, 0},
|
||||
max_payload_size = 1,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,19 @@
|
|||
function CreateRollingStock (type, prototype)
|
||||
return CreateVehicle(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
air_resistance = 1,
|
||||
connection_distance = 1,
|
||||
joint_distance = 2, -- Must be compatible with collision_box
|
||||
max_speed = 1,
|
||||
pictures = Baseless.RotatedSprite,
|
||||
vertical_selection_shift = 1,
|
||||
|
||||
-- Required for joint_distance to work
|
||||
collision_box = {{-0.1, -2}, {0.1, 2}},
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,16 @@
|
|||
function CreateSelectionTool (type, prototype)
|
||||
return CreateItemWithLabel(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
alt_selection_color = Baseless.Color,
|
||||
alt_selection_cursor_box_type = "not-allowed",
|
||||
alt_selection_mode = {"nothing"},
|
||||
selection_color = Baseless.Color,
|
||||
selection_cursor_box_type = "not-allowed",
|
||||
selection_mode = {"nothing"},
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,11 @@
|
|||
function CreateSmoke (type, prototype)
|
||||
return CreateEntity(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
animation = Baseless.Animation,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,11 @@
|
|||
function CreateTool (type, prototype)
|
||||
return CreateItem(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
infinite = true,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,20 @@
|
|||
function CreateTransportBeltConnectable (type, prototype)
|
||||
return CreateEntityWithHealth(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
speed = 1,
|
||||
belt_horizontal = Baseless.Animation,
|
||||
belt_vertical = Baseless.Animation,
|
||||
ending_bottom = Baseless.Animation,
|
||||
ending_side = Baseless.Animation,
|
||||
ending_top = Baseless.Animation,
|
||||
starting_bottom = Baseless.Animation,
|
||||
starting_side = Baseless.Animation,
|
||||
starting_top = Baseless.Animation,
|
||||
collision_box = {{-1, -1}, {1, 1}},
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,17 @@
|
|||
function CreateTurret (type, prototype)
|
||||
if CreateEntityWithHealth(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
attack_parameters = Baseless.AttackParameters.Stream(),
|
||||
call_for_help_radius = 0,
|
||||
folded_animation = Baseless.RotatedAnimation4Way,
|
||||
}
|
||||
)
|
||||
) then
|
||||
Baseless.AttackParameters.Stream(true)
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
|
@ -0,0 +1,14 @@
|
|||
function CreateVehicle (type, prototype)
|
||||
return CreateEntityWithHealth(
|
||||
type,
|
||||
MergeTables(
|
||||
prototype,
|
||||
{
|
||||
braking_force = 1,
|
||||
energy_per_hit_point = 1,
|
||||
friction_force = 1,
|
||||
weight = 1,
|
||||
}
|
||||
)
|
||||
)
|
||||
end
|
|
@ -0,0 +1,13 @@
|
|||
-- Combine multiple tables into one
|
||||
--
|
||||
-- *Tables should not share keys
|
||||
-- *Values are not deep copies
|
||||
function MergeTables(...)
|
||||
local newTable = {}
|
||||
for _, table in pairs({...}) do
|
||||
for key, value in pairs(table) do
|
||||
newTable[key] = value
|
||||
end
|
||||
end
|
||||
return newTable
|
||||
end
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
"name":"Baseless",
|
||||
"version":"0.0.1",
|
||||
"title":"Baseless",
|
||||
"description":"Defines missing prototypes required to launch the game.",
|
||||
"author":"David Skrundz",
|
||||
"contact": "david@skrundz.ca",
|
||||
"homepage": "https://github.com/DavidSkrundz/Baseless",
|
||||
"factorio_version": "0.18",
|
||||
"dependencies": [
|
||||
"! base"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
import json
|
||||
import os
|
||||
from zipfile import ZipFile
|
||||
|
||||
modFiles = [
|
||||
"info.json",
|
||||
"changelog.txt",
|
||||
"thumbnail.png",
|
||||
]
|
||||
modFolders = [
|
||||
"helpers",
|
||||
"prototypes",
|
||||
]
|
||||
|
||||
with open("info.json") as file:
|
||||
modInfo = json.load(file)
|
||||
|
||||
zipName = "{}_{}".format(modInfo["name"], modInfo["version"])
|
||||
|
||||
with ZipFile("{}.zip".format(zipName), 'w') as modZip:
|
||||
for file in modFiles:
|
||||
modZip.write(file, arcname="{}/{}".format(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="{}/{}".format(zipName, archivePath))
|
|
@ -0,0 +1,3 @@
|
|||
if Baseless.Needs.AmmoType then
|
||||
CreatePrototype("ammo-category", {})
|
||||
end
|
|
@ -0,0 +1,26 @@
|
|||
if data.raw["damage-type"] == nil or
|
||||
data.raw["damage-type"]["physical"] == nil then
|
||||
data:extend
|
||||
{
|
||||
{
|
||||
type = "damage-type",
|
||||
name = "physical",
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
if data.raw["damage-type"] == nil or
|
||||
data.raw["damage-type"]["impact"] == nil then
|
||||
data:extend
|
||||
{
|
||||
{
|
||||
type = "damage-type",
|
||||
name = "impact",
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
|
||||
if Baseless.Needs.DamageType then
|
||||
CreatePrototype("damage-type", {})
|
||||
end
|
|
@ -0,0 +1,3 @@
|
|||
if Baseless.Needs.EquipmentType then
|
||||
CreatePrototype("equipment-category", {})
|
||||
end
|
|
@ -0,0 +1,3 @@
|
|||
if Baseless.Needs.FuelType then
|
||||
CreatePrototype("fuel-category", {})
|
||||
end
|
|
@ -0,0 +1,3 @@
|
|||
if Baseless.Needs.ModuleType then
|
||||
CreatePrototype("module-category", {})
|
||||
end
|
|
@ -0,0 +1,14 @@
|
|||
if data.raw["recipe-category"] == nil or
|
||||
data.raw["recipe-category"]["crafting"] == nil then
|
||||
data:extend
|
||||
{
|
||||
{
|
||||
type = "recipe-category",
|
||||
name = "crafting",
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
if Baseless.Needs.RecipeType then
|
||||
CreatePrototype("recipe-category", {})
|
||||
end
|
|
@ -0,0 +1,14 @@
|
|||
if data.raw["resource-category"] == nil or
|
||||
data.raw["resource-category"]["basic-solid"] == nil then
|
||||
data:extend
|
||||
{
|
||||
{
|
||||
type = "resource-category",
|
||||
name = "basic-solid",
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
if Baseless.Needs.ResourceType then
|
||||
CreatePrototype("resource-category", {})
|
||||
end
|
|
@ -0,0 +1,21 @@
|
|||
if data.raw["trigger-target-type"] == nil or
|
||||
data.raw["trigger-target-type"]["common"] == nil then
|
||||
data:extend
|
||||
{
|
||||
{
|
||||
type = "trigger-target-type",
|
||||
name = "common",
|
||||
},
|
||||
}
|
||||
end
|
||||
|
||||
if data.raw["trigger-target-type"] == nil or
|
||||
data.raw["trigger-target-type"]["ground-unit"] == nil then
|
||||
data:extend
|
||||
{
|
||||
{
|
||||
type = "trigger-target-type",
|
||||
name = "ground-unit",
|
||||
},
|
||||
}
|
||||
end
|
|
@ -0,0 +1,6 @@
|
|||
CreateEntityWithHealth("accumulator", {
|
||||
charge_cooldown = 0,
|
||||
discharge_cooldown = 0,
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
picture = Baseless.Sprite,
|
||||
})
|
|
@ -0,0 +1,4 @@
|
|||
CreateTurret("ammo-turret", {
|
||||
automated_ammo_count = 0,
|
||||
inventory_size = 0,
|
||||
})
|
|
@ -0,0 +1,13 @@
|
|||
CreateCombinator("arithmetic-combinator", {
|
||||
and_symbol_sprites = Baseless.Sprite4Way,
|
||||
divide_symbol_sprites = Baseless.Sprite4Way,
|
||||
left_shift_symbol_sprites = Baseless.Sprite4Way,
|
||||
minus_symbol_sprites = Baseless.Sprite4Way,
|
||||
modulo_symbol_sprites = Baseless.Sprite4Way,
|
||||
multiply_symbol_sprites = Baseless.Sprite4Way,
|
||||
or_symbol_sprites = Baseless.Sprite4Way,
|
||||
plus_symbol_sprites = Baseless.Sprite4Way,
|
||||
power_symbol_sprites = Baseless.Sprite4Way,
|
||||
right_shift_symbol_sprites = Baseless.Sprite4Way,
|
||||
xor_symbol_sprites = Baseless.Sprite4Way,
|
||||
})
|
|
@ -0,0 +1,3 @@
|
|||
CreateEntity("arrow", {
|
||||
arrow_picture = Baseless.Sprite,
|
||||
})
|
|
@ -0,0 +1,5 @@
|
|||
CreateEntity("artillery-flare", {
|
||||
life_time = 1,
|
||||
pictures = Baseless.AnimationVariations,
|
||||
map_color = Baseless.Color,
|
||||
})
|
|
@ -0,0 +1,4 @@
|
|||
CreateEntity("artillery-projectile", {
|
||||
reveal_map = false,
|
||||
map_color = Baseless.Color,
|
||||
})
|
|
@ -0,0 +1,8 @@
|
|||
CreateEntityWithHealth("artillery-turret", {
|
||||
ammo_stack_limit = 1,
|
||||
automated_ammo_count = 0,
|
||||
gun = "dummy-gun",
|
||||
inventory_size = 1,
|
||||
manual_range_modifier = 1,
|
||||
turret_rotation_speed = 1,
|
||||
})
|
|
@ -0,0 +1,7 @@
|
|||
CreateRollingStock("artillery-wagon", {
|
||||
ammo_stack_limit = 1,
|
||||
gun = "dummy-gun",
|
||||
inventory_size = 1,
|
||||
manual_range_modifier = 1,
|
||||
turret_rotation_speed = 1,
|
||||
})
|
|
@ -0,0 +1 @@
|
|||
CreateAssemblingMachine("assembling-machine", {})
|
|
@ -0,0 +1,10 @@
|
|||
CreateEntityWithHealth("beacon", {
|
||||
animation = Baseless.Animation,
|
||||
animation_shadow = Baseless.Animation,
|
||||
base_picture = Baseless.Sprite,
|
||||
distribution_effectivity = 1,
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
energy_usage = "1W",
|
||||
module_specification = {},
|
||||
supply_area_distance = 1,
|
||||
})
|
|
@ -0,0 +1,7 @@
|
|||
CreateEntity("beam", {
|
||||
body = Baseless.AnimationVariations,
|
||||
damage_interval = 1,
|
||||
head = Baseless.Animation,
|
||||
tail = Baseless.Animation,
|
||||
width = 1,
|
||||
})
|
|
@ -0,0 +1,17 @@
|
|||
CreateEntityWithHealth("boiler", {
|
||||
burning_cooldown = 0,
|
||||
energy_consumption = "1W",
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
fire = {},
|
||||
fire_glow = {},
|
||||
fluid_box = Baseless.FluidBox,
|
||||
output_fluid_box = Baseless.FluidBox,
|
||||
structure =
|
||||
{
|
||||
north = Baseless.Sprite,
|
||||
south = Baseless.Sprite,
|
||||
east = Baseless.Sprite,
|
||||
west = Baseless.Sprite,
|
||||
},
|
||||
target_temperature = 1,
|
||||
})
|
|
@ -0,0 +1,8 @@
|
|||
if CreateEntityWithHealth("burner-generator", {
|
||||
animation = Baseless.Animation4Way,
|
||||
burner = Baseless.EnergySource.Burner(),
|
||||
energy_source = Baseless.EnergySource.Electric,
|
||||
max_power_output = "1W",
|
||||
}) then
|
||||
Baseless.EnergySource.Burner(true)
|
||||
end
|
|
@ -0,0 +1,8 @@
|
|||
CreateVehicle("car", {
|
||||
animation = Baseless.RotatedAnimation,
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
consumption = "1W",
|
||||
effectivity = 1,
|
||||
inventory_size = 0,
|
||||
rotation_speed = 1,
|
||||
})
|
|
@ -0,0 +1,3 @@
|
|||
CreateRollingStock("cargo-wagon", {
|
||||
inventory_size = 1,
|
||||
})
|
|
@ -0,0 +1,4 @@
|
|||
CreateEntity("character-corpse", {
|
||||
time_to_live = 0,
|
||||
picture = Baseless.Animation,
|
||||
})
|
|
@ -0,0 +1,31 @@
|
|||
CreateEntityWithHealth("character", {
|
||||
animations =
|
||||
{
|
||||
{
|
||||
idle = Baseless.RotatedAnimation,
|
||||
idle_with_gun = Baseless.RotatedAnimation,
|
||||
running = Baseless.RotatedAnimation,
|
||||
running_with_gun = Baseless.RotatedAnimation,
|
||||
mining_with_tool = Baseless.RotatedAnimation,
|
||||
},
|
||||
},
|
||||
build_distance = 0,
|
||||
damage_hit_tint = Baseless.Color,
|
||||
distance_per_frame = 0,
|
||||
drop_item_distance = 0,
|
||||
eat = Baseless.Sound,
|
||||
heartbeat = Baseless.Sound,
|
||||
inventory_size = 0,
|
||||
item_pickup_distance = 0,
|
||||
loot_pickup_distance = 0,
|
||||
maximum_corner_sliding_distance = 0,
|
||||
mining_speed = 0,
|
||||
mining_with_tool_particles_animation_positions = {},
|
||||
reach_distance = 0,
|
||||
reach_resource_distance = 0,
|
||||
running_sound_animation_positions = {},
|
||||
running_speed = 0,
|
||||
ticks_to_keep_aiming_direction = 0,
|
||||
ticks_to_keep_gun = 0,
|
||||
ticks_to_stay_in_combat = 0,
|
||||
})
|
|
@ -0,0 +1,34 @@
|
|||
Baseless.OrientedCliffPrototype =
|
||||
{
|
||||
collision_bounding_box = Baseless.BoundingBox,
|
||||
pictures = Baseless.SpriteVariations,
|
||||
fill_volume = 1,
|
||||
}
|
||||
|
||||
CreateEntity("cliff", {
|
||||
grid_offset = {0, 0},
|
||||
grid_size = {1, 1},
|
||||
orientations =
|
||||
{
|
||||
west_to_east = Baseless.OrientedCliffPrototype,
|
||||
north_to_south = Baseless.OrientedCliffPrototype,
|
||||
east_to_west = Baseless.OrientedCliffPrototype,
|
||||
south_to_north = Baseless.OrientedCliffPrototype,
|
||||
west_to_north = Baseless.OrientedCliffPrototype,
|
||||
north_to_east = Baseless.OrientedCliffPrototype,
|
||||
east_to_south = Baseless.OrientedCliffPrototype,
|
||||
south_to_west = Baseless.OrientedCliffPrototype,
|
||||
west_to_south = Baseless.OrientedCliffPrototype,
|
||||
north_to_west = Baseless.OrientedCliffPrototype,
|
||||
east_to_north = Baseless.OrientedCliffPrototype,
|
||||
south_to_east = Baseless.OrientedCliffPrototype,
|
||||
west_to_none = Baseless.OrientedCliffPrototype,
|
||||
none_to_east = Baseless.OrientedCliffPrototype,
|
||||
north_to_none = Baseless.OrientedCliffPrototype,
|
||||
none_to_south = Baseless.OrientedCliffPrototype,
|
||||
east_to_none = Baseless.OrientedCliffPrototype,
|
||||
none_to_west = Baseless.OrientedCliffPrototype,
|
||||
south_to_none = Baseless.OrientedCliffPrototype,
|
||||
none_to_north = Baseless.OrientedCliffPrototype,
|
||||
},
|
||||
})
|
|
@ -0,0 +1,10 @@
|
|||
if CreateFlyingRobot("combat-robot", {
|
||||
attack_parameters = Baseless.AttackParameters.Stream(),
|
||||
idle = Baseless.RotatedAnimation,
|
||||
in_motion = Baseless.RotatedAnimation,
|
||||
shadow_idle = Baseless.RotatedAnimation,
|
||||
shadow_in_motion = Baseless.RotatedAnimation,
|
||||
time_to_live = 1,
|
||||
}) then
|
||||
Baseless.AttackParameters.Stream(true)
|
||||
end
|
|
@ -0,0 +1,7 @@
|
|||
CreateEntityWithHealth("constant-combinator", {
|
||||
activity_led_light_offsets = Baseless.CombinatorOffsets,
|
||||
activity_led_sprites = Baseless.Sprite4Way,
|
||||
circuit_wire_connection_points = Baseless.WireConnectionPoint.Combinator,
|
||||
item_slot_count = 0,
|
||||
sprites = Baseless.Sprite4Way,
|
||||
})
|
|
@ -0,0 +1,3 @@
|
|||
CreateRobotWithLogisticInterface("construction-robot", {
|
||||
construction_vector = {0, 0},
|
||||
})
|
|
@ -0,0 +1 @@
|
|||
CreateContainer("container", {})
|
|
@ -0,0 +1 @@
|
|||
CreateCorpse("corpse", {})
|
|
@ -0,0 +1,3 @@
|
|||
if Baseless.Needs.RailEntity then
|
||||
CreateRail("curved-rail", {})
|
||||
end
|
|
@ -0,0 +1,8 @@
|
|||
CreateCombinator("decider-combinator", {
|
||||
equal_symbol_sprites = Baseless.Sprite4Way,
|
||||
greater_or_equal_symbol_sprites = Baseless.Sprite4Way,
|
||||
greater_symbol_sprites = Baseless.Sprite4Way,
|
||||
less_or_equal_symbol_sprites = Baseless.Sprite4Way,
|
||||
less_symbol_sprites = Baseless.Sprite4Way,
|
||||
not_equal_symbol_sprites = Baseless.Sprite4Way,
|
||||
})
|
|
@ -0,0 +1 @@
|
|||
CreateEntity("deconstructible-tile-proxy", {})
|
|
@ -0,0 +1 @@
|
|||
CreateEntity("decorative", {})
|
|
@ -0,0 +1,3 @@
|
|||
CreateEntityWithHealth("electric-energy-interface", {
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
})
|
|
@ -0,0 +1,5 @@
|
|||
CreateEntityWithHealth("electric-pole", {
|
||||
connection_points = Baseless.WireConnectionPoint.Pole,
|
||||
pictures = Baseless.RotatedSprite,
|
||||
supply_area_distance = 1,
|
||||
})
|
|
@ -0,0 +1,3 @@
|
|||
CreateTurret("electric-turret", {
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
})
|
|
@ -0,0 +1 @@
|
|||
CreateEntity("entity-ghost", {})
|
|
@ -0,0 +1 @@
|
|||
CreateExplosion("explosion", {})
|
|
@ -0,0 +1,7 @@
|
|||
if CreateEntity("fire", {
|
||||
damage_per_tick = Baseless.DamagePrototype(),
|
||||
spread_delay = 1,
|
||||
spread_delay_deviation = 1,
|
||||
}) then
|
||||
Baseless.DamagePrototype(true)
|
||||
end
|
|
@ -0,0 +1,3 @@
|
|||
CreateEntityWithHealth("fish", {
|
||||
pictures = Baseless.SpriteVariations,
|
||||
})
|
|
@ -0,0 +1,6 @@
|
|||
if CreateExplosion("flame-thrower-explosion", {
|
||||
damage = Baseless.DamagePrototype(),
|
||||
slow_down_factor = 1,
|
||||
}) then
|
||||
Baseless.DamagePrototype(true)
|
||||
end
|
|
@ -0,0 +1,7 @@
|
|||
CreateTurret("fluid-turret", {
|
||||
activation_buffer_ratio = 1,
|
||||
fluid_box = Baseless.FluidBox,
|
||||
fluid_buffer_input_flow = 1,
|
||||
fluid_buffer_size = 1,
|
||||
turret_base_has_direction = true,
|
||||
})
|
|
@ -0,0 +1,3 @@
|
|||
CreateRollingStock("fluid-wagon", {
|
||||
capacity = 1,
|
||||
})
|
|
@ -0,0 +1,4 @@
|
|||
CreateEntity("flying-text", {
|
||||
speed = 1,
|
||||
time_to_live = 1,
|
||||
})
|
|
@ -0,0 +1,4 @@
|
|||
CreateCraftingMachine("furnace", {
|
||||
result_inventory_size = 1,
|
||||
source_inventory_size = 1,
|
||||
})
|
|
@ -0,0 +1,16 @@
|
|||
CreateEntityWithHealth("gate", {
|
||||
activation_distance = 1,
|
||||
close_sound = Baseless.Sound,
|
||||
horizontal_animation = Baseless.Animation,
|
||||
horizontal_rail_animation_left = Baseless.Animation,
|
||||
horizontal_rail_animation_right = Baseless.Animation,
|
||||
horizontal_rail_base = Baseless.Animation,
|
||||
open_sound = Baseless.Sound,
|
||||
opening_speed = 1,
|
||||
timeout_to_close = 1,
|
||||
vertical_animation = Baseless.Animation,
|
||||
vertical_rail_animation_left = Baseless.Animation,
|
||||
vertical_rail_animation_right = Baseless.Animation,
|
||||
vertical_rail_base = Baseless.Animation,
|
||||
wall_patch = Baseless.Animation,
|
||||
})
|
|
@ -0,0 +1,10 @@
|
|||
CreateEntityWithHealth("generator", {
|
||||
effectivity = 1,
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
fluid_box = Baseless.FluidBox,
|
||||
fluid_usage_per_tick = 1,
|
||||
horizontal_animation = Baseless.Animation,
|
||||
maximum_temperature = 1,
|
||||
vertical_animation = Baseless.Animation,
|
||||
max_power_output = "1W",
|
||||
})
|
|
@ -0,0 +1,3 @@
|
|||
CreateEntityWithHealth("heat-interface", {
|
||||
heat_buffer = Baseless.HeatBuffer,
|
||||
})
|
|
@ -0,0 +1,25 @@
|
|||
Baseless.ConnectableEntityGraphics =
|
||||
{
|
||||
single = Baseless.SpriteVariations,
|
||||
straight_vertical = Baseless.SpriteVariations,
|
||||
straight_horizontal = Baseless.SpriteVariations,
|
||||
corner_right_down = Baseless.SpriteVariations,
|
||||
corner_left_down = Baseless.SpriteVariations,
|
||||
corner_right_up = Baseless.SpriteVariations,
|
||||
corner_left_up = Baseless.SpriteVariations,
|
||||
t_up = Baseless.SpriteVariations,
|
||||
t_right = Baseless.SpriteVariations,
|
||||
t_down = Baseless.SpriteVariations,
|
||||
t_left = Baseless.SpriteVariations,
|
||||
ending_up = Baseless.SpriteVariations,
|
||||
ending_right = Baseless.SpriteVariations,
|
||||
ending_down = Baseless.SpriteVariations,
|
||||
ending_left = Baseless.SpriteVariations,
|
||||
cross = Baseless.SpriteVariations,
|
||||
}
|
||||
|
||||
CreateEntityWithHealth("heat-pipe", {
|
||||
connection_sprites = Baseless.ConnectableEntityGraphics,
|
||||
heat_buffer = Baseless.HeatBuffer,
|
||||
heat_glow_sprites = Baseless.ConnectableEntityGraphics,
|
||||
})
|
|
@ -0,0 +1 @@
|
|||
CreateEntity("highlight-box", {})
|
|
@ -0,0 +1,3 @@
|
|||
CreateLogisticContainer("infinity-container", {
|
||||
erase_contents_when_mined = true,
|
||||
})
|
|
@ -0,0 +1 @@
|
|||
CreatePipe("infinity-pipe", {})
|
|
@ -0,0 +1,15 @@
|
|||
CreateEntityWithHealth("inserter", {
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
extension_speed = 1,
|
||||
hand_base_picture = Baseless.Sprite,
|
||||
hand_base_shadow = Baseless.Sprite,
|
||||
hand_closed_picture = Baseless.Sprite,
|
||||
hand_closed_shadow = Baseless.Sprite,
|
||||
hand_open_picture = Baseless.Sprite,
|
||||
hand_open_shadow = Baseless.Sprite,
|
||||
insert_position = {0, 1},
|
||||
pickup_position = {0, -1},
|
||||
platform_picture = Baseless.Sprite4Way,
|
||||
rotation_speed = 1,
|
||||
collision_box = {{-0.1, -0.1}, {0.1, 0.1}},
|
||||
})
|
|
@ -0,0 +1 @@
|
|||
CreateEntity("item-entity", {})
|
|
@ -0,0 +1,3 @@
|
|||
CreateEntity("item-request-proxy", {
|
||||
picture = Baseless.Sprite,
|
||||
})
|
|
@ -0,0 +1,9 @@
|
|||
if CreateEntityWithHealth("lab", {
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
energy_usage = "1W",
|
||||
inputs = {Baseless.ScienceType()},
|
||||
off_animation = Baseless.Animation,
|
||||
on_animation = Baseless.Animation,
|
||||
}) then
|
||||
Baseless.ScienceType(true)
|
||||
end
|
|
@ -0,0 +1,6 @@
|
|||
CreateEntityWithHealth("lamp", {
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
energy_usage_per_tick = "1W",
|
||||
picture_off = Baseless.Sprite,
|
||||
picture_on = Baseless.Sprite,
|
||||
})
|
|
@ -0,0 +1,5 @@
|
|||
CreateEntityWithHealth("land-mine", {
|
||||
picture_safe = Baseless.Sprite,
|
||||
picture_set = Baseless.Sprite,
|
||||
trigger_radius = 1,
|
||||
})
|
|
@ -0,0 +1,7 @@
|
|||
data:extend
|
||||
{
|
||||
{
|
||||
type = "leaf-particle",
|
||||
name = "leaf-particle-for-migration",
|
||||
},
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
CreateTransportBeltConnectable("loader-1x1", {
|
||||
filter_count = 0,
|
||||
structure =
|
||||
{
|
||||
direction_in = Baseless.Sprite4Way,
|
||||
direction_out = Baseless.Sprite4Way,
|
||||
},
|
||||
})
|
|
@ -0,0 +1,8 @@
|
|||
CreateTransportBeltConnectable("loader", {
|
||||
filter_count = 0,
|
||||
structure =
|
||||
{
|
||||
direction_in = Baseless.Sprite4Way,
|
||||
direction_out = Baseless.Sprite4Way,
|
||||
},
|
||||
})
|
|
@ -0,0 +1,5 @@
|
|||
CreateRollingStock("locomotive", {
|
||||
energy_source = Baseless.EnergySource.Void,
|
||||
max_power = "1W",
|
||||
reversing_power_modifier = 1,
|
||||
})
|
|
@ -0,0 +1 @@
|
|||
CreateLogisticContainer("logistic-container", {})
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue