init
63
bk_sprites.lua
Normal file
|
|
@ -0,0 +1,63 @@
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/booktorio/bk_sprite_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
data:extend(
|
||||||
|
{
|
||||||
|
{
|
||||||
|
type = "sprite",
|
||||||
|
name = "bk_sprite_1",
|
||||||
|
filename = sprite('1.png'),
|
||||||
|
width = 1117,
|
||||||
|
height = 948,
|
||||||
|
scale = 0.5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "sprite",
|
||||||
|
name = "bk_sprite_2",
|
||||||
|
filename = sprite('2.png'),
|
||||||
|
width = 1044,
|
||||||
|
height = 826,
|
||||||
|
scale = 0.5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "sprite",
|
||||||
|
name = "bk_sprite_3",
|
||||||
|
filename = sprite('3.png'),
|
||||||
|
width = 988,
|
||||||
|
height = 696,
|
||||||
|
scale = 0.9
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "sprite",
|
||||||
|
name = "bk_sprite_4",
|
||||||
|
filename = '__248k__/ressources/fusion/fu_fusor/fu_fusor_entity_animation.png',
|
||||||
|
width = 512*2,
|
||||||
|
height = 512*2,
|
||||||
|
scale = 0.4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "sprite",
|
||||||
|
name = "bk_sprite_5",
|
||||||
|
filename = '__248k__/ressources/fusion/fu_boiler/fu_boiler_entity_animation.png',
|
||||||
|
width = 512,
|
||||||
|
height = 512,
|
||||||
|
scale = 0.7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "sprite",
|
||||||
|
name = "bk_sprite_6",
|
||||||
|
filename = sprite('6.png'),
|
||||||
|
width = 1190,
|
||||||
|
height = 1020,
|
||||||
|
scale = 0.7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "sprite",
|
||||||
|
name = "bk_sprite_7",
|
||||||
|
filename = sprite('7.png'),
|
||||||
|
width = 1292,
|
||||||
|
height = 627,
|
||||||
|
scale = 0.7
|
||||||
|
}
|
||||||
|
})
|
||||||
395
changelog.txt
Normal file
|
|
@ -0,0 +1,395 @@
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.6.4
|
||||||
|
Date: 14.7.2021
|
||||||
|
Changes:
|
||||||
|
- Portable nuclear reactor is now cheaper
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.6.3
|
||||||
|
Date: 13.7.2021
|
||||||
|
Bugfixes:
|
||||||
|
- fixed white hole machine bounding box
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.6.2
|
||||||
|
Date: 12.7.2021
|
||||||
|
Features:
|
||||||
|
- added fission stage shield equipment
|
||||||
|
- added bug zapper discharge equipment
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.6.1
|
||||||
|
Date: 11.7.2021
|
||||||
|
Bugfixes:
|
||||||
|
- fixed a bug caused by non-stackeable items
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.6.0
|
||||||
|
Date: 10.7.2021
|
||||||
|
Features:
|
||||||
|
- added white hole generator
|
||||||
|
- added up to 248k elements
|
||||||
|
- added S-Lab and science packs
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.5.3
|
||||||
|
Date: 16.6.2021
|
||||||
|
Features:
|
||||||
|
- added tank to kerosene producing
|
||||||
|
- added recipe for building nuclear bombs from plutonium
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.5.2
|
||||||
|
Date: 29.5.2021
|
||||||
|
Changes:
|
||||||
|
- adjusted water pressurizer energy input
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.5.1
|
||||||
|
Date: 27.5.2021
|
||||||
|
Bugfixes:
|
||||||
|
- fixed KI migration bug
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.5.0
|
||||||
|
Date: 27.5.2021
|
||||||
|
Features:
|
||||||
|
- added black hole generator
|
||||||
|
- added Informatron support
|
||||||
|
Changes:
|
||||||
|
- changed pollution and production values for modules
|
||||||
|
- changed kerosene burner output
|
||||||
|
Bugfixes:
|
||||||
|
- fixed a bug where KI amplifier did not update properly
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.10
|
||||||
|
Date: 12.5.2021
|
||||||
|
Bugfixes:
|
||||||
|
- fixed old KI beacon crash on mine
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.9
|
||||||
|
Date: 12.5.2021
|
||||||
|
Features:
|
||||||
|
- updated nearly all tech/item icons
|
||||||
|
- increased stack sizes for energy crystals
|
||||||
|
- added matter charger, stabilizer, crushed exotic matter
|
||||||
|
- added Black hole gnerator [WIP, disabled]
|
||||||
|
- updated Krastorio 2 integration
|
||||||
|
Bugfixes:
|
||||||
|
- core slaves are no longer destructible
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.8
|
||||||
|
Date: 12.5.2021
|
||||||
|
Bugfixes:
|
||||||
|
- fixed migration bug: handling already reinited KI buildings
|
||||||
|
- fixed bug with max rate calculator: cursor stack being invalid for read
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.7
|
||||||
|
Date: 12.5.2021
|
||||||
|
Features:
|
||||||
|
- added first part of SE compatibility [WIP]
|
||||||
|
Bugfixes:
|
||||||
|
- fixed migration bug, which caused to reinit KI buildings
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.6
|
||||||
|
Date: 11.5.2021
|
||||||
|
Features:
|
||||||
|
- added another magnet train
|
||||||
|
- added crystal growth facility
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.5
|
||||||
|
Date: 9.5.2021
|
||||||
|
Bugfixes:
|
||||||
|
- fixed migration error
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.4
|
||||||
|
Date: 8.5.2021
|
||||||
|
Features:
|
||||||
|
- reworked KI mechanic [NOTE: old KI link setups will be reseted to channel 1]
|
||||||
|
Bugfixes:
|
||||||
|
- fixed lang
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.3
|
||||||
|
Date: 5.3.2021
|
||||||
|
Bugfixes:
|
||||||
|
- fixed a bug caused by biters
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.2
|
||||||
|
Date: 4.3.2021
|
||||||
|
Features:
|
||||||
|
- added more support for Ind2 WIP
|
||||||
|
Bugfixes:
|
||||||
|
- fixed inputs for KI2 and KI3 machines
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.1
|
||||||
|
Date: 4.3.2021
|
||||||
|
Features:
|
||||||
|
- added custom description for KI linker
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.4.0
|
||||||
|
Date: 4.3.2021
|
||||||
|
Features:
|
||||||
|
- added KI2 and KI3 core
|
||||||
|
- added KI2 and KI3 beacons
|
||||||
|
- added KI2 and KI3 machines
|
||||||
|
- added KI2 and KI3 tech tree
|
||||||
|
- adjusted booktorio wiki and some item descriptions
|
||||||
|
- adjusted sprites for Core fluids
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.20
|
||||||
|
Date: 25.2.2021
|
||||||
|
Features:
|
||||||
|
- adding compatibility between ind2 and 248k, WIP
|
||||||
|
Bugfixes:
|
||||||
|
- fixed missing lang key
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.19
|
||||||
|
Date: 23.2.2021
|
||||||
|
Features:
|
||||||
|
- added new sprites for fusion stage: exchanger and thermochemical seperator
|
||||||
|
- added new sprites for exotic stage: crafter
|
||||||
|
Bugfixes:
|
||||||
|
- fixes ingame changelog file
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.18
|
||||||
|
Date: 21.2.2021
|
||||||
|
Features:
|
||||||
|
- added new sprites for fusion stage: stelerator, burner, fusor and activator
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.17
|
||||||
|
Date: 21.2.2021
|
||||||
|
Features:
|
||||||
|
- added new sprites for fission stage: reactor, roboports, charger, crafter and crusher
|
||||||
|
Bugfixes:
|
||||||
|
- added Migrations for new recipes
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.16
|
||||||
|
Date: 20.2.2021
|
||||||
|
Features:
|
||||||
|
- added remainding textures for stage 1
|
||||||
|
- Kerosene burner now generates pollution
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.15
|
||||||
|
Date: 19.2.2021
|
||||||
|
Features:
|
||||||
|
- added tanker wagon for em suspension train
|
||||||
|
- updated textures for water pressurizer, water turbine, burner generator. more graphic updates will follow soon
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.14
|
||||||
|
Date: 8.1.2021
|
||||||
|
Features:
|
||||||
|
- buffed gauss modules
|
||||||
|
- added koaverx for matter
|
||||||
|
- updated gr train texture
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.13
|
||||||
|
Date: 29.12.2020
|
||||||
|
Features:
|
||||||
|
- Portable train reactor now usable in K2
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.12
|
||||||
|
Date: 28.12.2020
|
||||||
|
Bugfixes:
|
||||||
|
- fixed Booktorio wiki
|
||||||
|
Changes:
|
||||||
|
- changed lang keys for aluminum (AE) to BE
|
||||||
|
- fixed stuff for sandros fixes
|
||||||
|
- changed ingredients of last recipe
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.11
|
||||||
|
Date: 19.12.2020
|
||||||
|
Features:
|
||||||
|
- modified krastorio endgame recipes (config)
|
||||||
|
- relocated recipe from 0.3.10
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.10
|
||||||
|
Date: 16.12.2020
|
||||||
|
Features:
|
||||||
|
- added recipe for petroleum usage
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.9
|
||||||
|
Date: 06.12.2020
|
||||||
|
Features:
|
||||||
|
- added krastorio 2 sprite for tech card - thanks to romner_set
|
||||||
|
Bugfixes:
|
||||||
|
- fixed krastorio 2 bug with rfp
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.8
|
||||||
|
Date: 06.12.2020
|
||||||
|
Bugfixes:
|
||||||
|
- fixed sprite bug
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.7
|
||||||
|
Date: 05.12.2020
|
||||||
|
Features:
|
||||||
|
- updated to factorio version 1.1
|
||||||
|
- shifted some dependencies (booktorio is now no longer required)
|
||||||
|
- added support for krastorio 2
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.6
|
||||||
|
Date: 29.11.2020
|
||||||
|
Features:
|
||||||
|
- added fusion train, wagon + tech
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.5
|
||||||
|
Date: 25.11.2020
|
||||||
|
Features:
|
||||||
|
- added modules 1 to 3 for 248k recipes
|
||||||
|
- added universal modules 4 to 6
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.4
|
||||||
|
Date: 23.11.2020
|
||||||
|
Bugfixes:
|
||||||
|
- adressed fluid temperature issues
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.3
|
||||||
|
Date: 20.11.2020
|
||||||
|
Features:
|
||||||
|
- added booktorio ingame wiki
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.2
|
||||||
|
Date: 19.11.2020
|
||||||
|
Features:
|
||||||
|
- added steel and wheels recipes for star engine
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.3.1
|
||||||
|
Date: 19.11.2020
|
||||||
|
Features:
|
||||||
|
- added exotic matter usage
|
||||||
|
- added super crafting machine
|
||||||
|
- added fusion cell
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.12
|
||||||
|
Date: 18.11.2020
|
||||||
|
Features:
|
||||||
|
- added new science pack, and exotic matter with space probes
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.11
|
||||||
|
Date: 17.11.2020
|
||||||
|
Features:
|
||||||
|
- added star engine techs: copper, sulfur, lithium, uranium
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.10
|
||||||
|
Date: 15.11.2020
|
||||||
|
Features:
|
||||||
|
- added star engine: core, cooler and heating units
|
||||||
|
- added new hydrogen refining techs
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.9
|
||||||
|
Date: 9.11.2020
|
||||||
|
Changes:
|
||||||
|
- added dependency for extractor inserter, to get used up fuel cells from machines
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.8
|
||||||
|
Date: 9.11.2020
|
||||||
|
Changes:
|
||||||
|
- Fixed fluid inputs for el_pressurizer
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.7
|
||||||
|
Date: 8.11.2020
|
||||||
|
Changes:
|
||||||
|
- Fixed fusor inputs, again
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.6
|
||||||
|
Date: 7.11.2020
|
||||||
|
Changes:
|
||||||
|
- Fixed kerosene burner texture
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.5
|
||||||
|
Date: 6.11.2020
|
||||||
|
Features:
|
||||||
|
- added new fusion reactor
|
||||||
|
- added advanced isotopes
|
||||||
|
- removed fusion reactors module slots
|
||||||
|
- Lead cooling cycle now available in fu_energy_tech
|
||||||
|
- updated liquid lead exchanger sprite
|
||||||
|
Changes:
|
||||||
|
- changed tech tree graphics
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.4
|
||||||
|
Date: 1.11.2020
|
||||||
|
Features:
|
||||||
|
- added Tesla and Hertz bots
|
||||||
|
Changes:
|
||||||
|
- robo charger now consumes less energy
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.3
|
||||||
|
Date: 27.10.2020
|
||||||
|
Changes:
|
||||||
|
- fixed bug with fusor inputs, input slots are now accessible
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.2
|
||||||
|
Date: 23.10.2020
|
||||||
|
Changes:
|
||||||
|
- buffed kerosene producing, now each recipe has a bit increased output
|
||||||
|
- nerferd uranium power
|
||||||
|
- less time to produce diesle fuel
|
||||||
|
- buffed fusion, now consumes less isotopes
|
||||||
|
- buffed fusor output
|
||||||
|
- increased stack size of fusor tech
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.1
|
||||||
|
Date: 22.10.2020
|
||||||
|
Features:
|
||||||
|
- added Stellarator fusion reactor
|
||||||
|
- added lead
|
||||||
|
- added liquid lead and cooling cycle
|
||||||
|
Changes:
|
||||||
|
- buffed lithium-6 Isotope producing to make it viable for fusion and changed tech signs ratios to reflect lithium changes
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.2.0
|
||||||
|
Date: 21.10.2020
|
||||||
|
Features:
|
||||||
|
- added Fusion stage
|
||||||
|
- added Seperator, Burner, basic Isotopes
|
||||||
|
- added Fusor, fusion tech signs
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.1.9
|
||||||
|
Date: 19.10.2020
|
||||||
|
Features:
|
||||||
|
- added roboport and robo charger
|
||||||
|
- added kerosene engine for burning kerosene
|
||||||
|
- little visual update for the train
|
||||||
|
- config for blueprinting KI1 beacons, may get some more attention in the future
|
||||||
|
Changes:
|
||||||
|
- decreased overall crafting time for machines (inventory) but also for kerosene producing
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.1.8
|
||||||
|
Date: 16.10.2020
|
||||||
|
Features:
|
||||||
|
- added sound for machines and trains
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.1.7
|
||||||
|
Date: 16.10.2020
|
||||||
|
Changes:
|
||||||
|
- visual update for KI1 beacon
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.1.6
|
||||||
|
Date: 15.10.2020
|
||||||
|
Changes:
|
||||||
|
- buffed thorium fuel cycle
|
||||||
|
- nerfed uranium fuel cycle
|
||||||
|
- changed energy crystal recipe ratios
|
||||||
|
- increased science cost of some techs
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.1.5
|
||||||
|
Date: 14.10.2020
|
||||||
|
Features:
|
||||||
|
- Added crushing
|
||||||
|
- Added new line of energy crstals
|
||||||
|
- Added new train fuel
|
||||||
|
- Added new materials: industrial steel
|
||||||
|
Changes:
|
||||||
|
- changed el_energy_crystal stack size to 100
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.1.4
|
||||||
|
Date: 12.10.2020
|
||||||
|
Features:
|
||||||
|
- Added nuclear miner
|
||||||
|
- Added train and player equipment: nuclear reactor
|
||||||
|
- new recipe for low density structures
|
||||||
|
Changes:
|
||||||
|
- balanced thorium fuel cycle
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.1.3
|
||||||
|
Date: 11.10.2020
|
||||||
|
Features:
|
||||||
|
- Added nuclear crafting machine
|
||||||
|
Changes:
|
||||||
|
- changed technology for meterials: now includes new crafting machine
|
||||||
|
- nerfed basic nuclear fuel
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
166
control.lua
Normal file
|
|
@ -0,0 +1,166 @@
|
||||||
|
require('scripts/electronic/el_ki_script')
|
||||||
|
require('scripts/bk_main')
|
||||||
|
require('scripts/gravitation/gr_black_hole_script')
|
||||||
|
local gui = require('scripts/gui')
|
||||||
|
local gr_gui = require('scripts/gravitation/gui')
|
||||||
|
|
||||||
|
--informatron
|
||||||
|
require('scripts/informatron/inf_main')
|
||||||
|
|
||||||
|
--===================================================================================================================
|
||||||
|
|
||||||
|
--init
|
||||||
|
|
||||||
|
script.on_init(
|
||||||
|
function(e)
|
||||||
|
el_ki_init(e)
|
||||||
|
gr_black_hole_init(e)
|
||||||
|
|
||||||
|
if game.active_mods["Booktorio"] then
|
||||||
|
registerThread_248k()
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.players) do
|
||||||
|
gui.add_top_gui(game.players[i])
|
||||||
|
end
|
||||||
|
end
|
||||||
|
)
|
||||||
|
|
||||||
|
--===================================================================================================================
|
||||||
|
|
||||||
|
--on player creation
|
||||||
|
|
||||||
|
script.on_event({
|
||||||
|
defines.events.on_player_created
|
||||||
|
},
|
||||||
|
function(e)
|
||||||
|
gui.add_top_gui(game.get_player(e["player_index"]))
|
||||||
|
end
|
||||||
|
)
|
||||||
|
|
||||||
|
--===================================================================================================================
|
||||||
|
|
||||||
|
--on built
|
||||||
|
|
||||||
|
script.on_event({
|
||||||
|
defines.events.on_built_entity,
|
||||||
|
defines.events.on_robot_built_entity,
|
||||||
|
defines.events.script_raised_built,
|
||||||
|
defines.events.script_raised_revive,
|
||||||
|
--defines.events.on_entity_cloned
|
||||||
|
},
|
||||||
|
function(e)
|
||||||
|
el_ki_on_built(e)
|
||||||
|
gr_black_hole_on_built(e)
|
||||||
|
end
|
||||||
|
)
|
||||||
|
|
||||||
|
--===================================================================================================================
|
||||||
|
|
||||||
|
--on remove
|
||||||
|
|
||||||
|
script.on_event({
|
||||||
|
defines.events.on_entity_died,
|
||||||
|
defines.events.on_pre_player_mined_item,
|
||||||
|
defines.events.on_robot_pre_mined,
|
||||||
|
defines.events.script_raised_destroy
|
||||||
|
},
|
||||||
|
function(e)
|
||||||
|
el_ki_on_remove(e)
|
||||||
|
gr_black_hole_on_remove(e)
|
||||||
|
end
|
||||||
|
)
|
||||||
|
|
||||||
|
--===================================================================================================================
|
||||||
|
|
||||||
|
--on tick
|
||||||
|
|
||||||
|
script.on_nth_tick(60,
|
||||||
|
function(e)
|
||||||
|
el_ki_buffer1_working()
|
||||||
|
el_ki_buffer1_update()
|
||||||
|
|
||||||
|
el_ki_buffer2_working()
|
||||||
|
el_ki_buffer2_update()
|
||||||
|
|
||||||
|
el_ki_core_working()
|
||||||
|
el_ki_core_update()
|
||||||
|
|
||||||
|
el_ki_supported_adder()
|
||||||
|
|
||||||
|
if global.ki.dirty then
|
||||||
|
--game.print("f")
|
||||||
|
el_ki_beacon_update()
|
||||||
|
gui.update_main()
|
||||||
|
global.ki.dirty = false
|
||||||
|
end
|
||||||
|
|
||||||
|
if global.black_hole.dirty then
|
||||||
|
gr_gui.update_main()
|
||||||
|
global.black_hole.dirty = false
|
||||||
|
end
|
||||||
|
gr_gui.update_main()
|
||||||
|
end
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
script.on_nth_tick(30,
|
||||||
|
function(e)
|
||||||
|
black_hole_base_update()
|
||||||
|
end
|
||||||
|
)
|
||||||
|
--===================================================================================================================
|
||||||
|
|
||||||
|
script.on_event({
|
||||||
|
defines.events.on_gui_click,
|
||||||
|
defines.events.on_gui_text_changed
|
||||||
|
},
|
||||||
|
function(e)
|
||||||
|
gui.on_change(e)
|
||||||
|
gr_gui.on_change(e)
|
||||||
|
end
|
||||||
|
)
|
||||||
|
|
||||||
|
script.on_event({
|
||||||
|
defines.events.on_player_selected_area
|
||||||
|
},
|
||||||
|
gui.on_selected
|
||||||
|
)
|
||||||
|
|
||||||
|
script.on_event({
|
||||||
|
defines.events.on_gui_opened,
|
||||||
|
defines.events.on_gui_closed
|
||||||
|
},
|
||||||
|
function(e)
|
||||||
|
if e["entity"] then
|
||||||
|
if e["entity"].name == "el_ki_core_entity" then
|
||||||
|
gui.add_core_gui(e,false)
|
||||||
|
end
|
||||||
|
|
||||||
|
if e["entity"].name == "fi_ki_core_entity" then
|
||||||
|
gui.add_buffer1_gui(e,false)
|
||||||
|
end
|
||||||
|
|
||||||
|
if e["entity"].name == "fu_ki_core_entity" then
|
||||||
|
gui.add_buffer2_gui(e,false)
|
||||||
|
end
|
||||||
|
|
||||||
|
if e["entity"].name == "gr_black_hole_base_entity" then
|
||||||
|
gr_gui.add_black_hole_gui(e,false)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
)
|
||||||
|
|
||||||
|
--===================================================================================================================
|
||||||
|
|
||||||
|
--config change
|
||||||
|
|
||||||
|
script.on_configuration_changed(
|
||||||
|
function()
|
||||||
|
if game.active_mods["Booktorio"] then
|
||||||
|
registerThread_248k()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
)
|
||||||
|
|
||||||
18
data-final-fixes.lua
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
--insert tech
|
||||||
|
if data.raw.lab['lab'] then
|
||||||
|
table.insert(data.raw.lab['lab'].inputs, 'fu_space_probe_science_item')
|
||||||
|
table.insert(data.raw.lab['lab'].inputs, 'fi_ki_science')
|
||||||
|
table.insert(data.raw.lab['lab'].inputs, 'fu_ki_science')
|
||||||
|
end
|
||||||
|
--krastorio2
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
require('scripts/krastorio2/data-final-fixes')
|
||||||
|
end
|
||||||
|
--ind2
|
||||||
|
if mods["IndustrialRevolution"] then
|
||||||
|
require('scripts/ind2/data-final-fixes')
|
||||||
|
end
|
||||||
|
--SE
|
||||||
|
if mods["space-exploration"] then
|
||||||
|
require('scripts/SE/data-final-fixes')
|
||||||
|
end
|
||||||
100
data.lua
Normal file
|
|
@ -0,0 +1,100 @@
|
||||||
|
require('prototypes/electronic/el_solar')
|
||||||
|
require('prototypes/electronic/el_tank')
|
||||||
|
require('prototypes/electronic/el_water_generator')
|
||||||
|
require('prototypes/electronic/el_pressurizer')
|
||||||
|
require('prototypes/electronic/el_burner')
|
||||||
|
require('prototypes/electronic/el_aluminum')
|
||||||
|
require('prototypes/electronic/el_lithium')
|
||||||
|
require('prototypes/electronic/el_ki/el_ki_beacon')
|
||||||
|
require('prototypes/electronic/el_ki/el_ki_linker')
|
||||||
|
require('prototypes/electronic/el_ki/el_ki_memory')
|
||||||
|
require('prototypes/electronic/el_ki/el_ki_cpu')
|
||||||
|
require('prototypes/electronic/el_ki/el_ki_core')
|
||||||
|
require('prototypes/electronic/el_ki/fi_ki_circuit')
|
||||||
|
require('prototypes/electronic/el_ki/fu_ki_circuit')
|
||||||
|
require('prototypes/electronic/el_diesel_train')
|
||||||
|
require('prototypes/electronic/el_train_fuel')
|
||||||
|
require('prototypes/electronic/el_train_equipment')
|
||||||
|
require('prototypes/electronic/el_energy_crystal')
|
||||||
|
|
||||||
|
require('prototypes/fission/fi_crafter')
|
||||||
|
require('prototypes/fission/fi_miner')
|
||||||
|
require('prototypes/fission/fi_fuel')
|
||||||
|
require('prototypes/fission/fi_solid_reactor')
|
||||||
|
require('prototypes/fission/fi_compound_material')
|
||||||
|
require('prototypes/fission/fi_materials')
|
||||||
|
require('prototypes/fission/fi_equipment')
|
||||||
|
require('prototypes/fission/fi_crusher')
|
||||||
|
require('prototypes/fission/fi_crushed')
|
||||||
|
require('prototypes/fission/fi_energy_crystal')
|
||||||
|
require('prototypes/fission/fi_robo')
|
||||||
|
require('prototypes/fission/fi_modules')
|
||||||
|
|
||||||
|
require('prototypes/fusion/fu_fusor')
|
||||||
|
require('prototypes/fusion/fu_boiler')
|
||||||
|
require('prototypes/fusion/fu_burner')
|
||||||
|
require('prototypes/fusion/fu_reactor')
|
||||||
|
require('prototypes/fusion/fu_lead')
|
||||||
|
require('prototypes/fusion/fu_exchanger')
|
||||||
|
require('prototypes/fusion/fu_robo')
|
||||||
|
require('prototypes/fusion/fu_activator')
|
||||||
|
require('prototypes/fusion/fu_star_engine/fu_star_engine_core')
|
||||||
|
require('prototypes/fusion/fu_star_engine/fu_star_engine_cooler')
|
||||||
|
require('prototypes/fusion/fu_star_engine/fu_star_engine_cooler_up')
|
||||||
|
--require('prototypes/fusion/fu_star_engine/fu_star_engine_caster')
|
||||||
|
require('prototypes/fusion/fu_star_engine/fu_star_engine_heater')
|
||||||
|
require('prototypes/fusion/fu_star_engine/fu_star_engine_heater_left')
|
||||||
|
require('prototypes/fusion/fu_space_probe')
|
||||||
|
|
||||||
|
require('prototypes/gravitation/gr_crafter')
|
||||||
|
require('prototypes/gravitation/gr_materials')
|
||||||
|
require('prototypes/gravitation/gr_train')
|
||||||
|
require('prototypes/gravitation/gr_cooker')
|
||||||
|
require('prototypes/gravitation/gr_charger')
|
||||||
|
require('prototypes/gravitation/gr_black_hole')
|
||||||
|
require('prototypes/gravitation/gr_white_hole')
|
||||||
|
require('prototypes/gravitation/gr_lab')
|
||||||
|
|
||||||
|
require('prototypes/248k_fluids')
|
||||||
|
require('prototypes/248k_elements')
|
||||||
|
|
||||||
|
require('prototypes/248k_subgroups')
|
||||||
|
|
||||||
|
require('prototypes/248k_techs')
|
||||||
|
require('prototypes/el_recipes')
|
||||||
|
require('prototypes/fi_recipes')
|
||||||
|
require('prototypes/fu_recipes')
|
||||||
|
require('prototypes/gr_recipes')
|
||||||
|
|
||||||
|
--booktorio
|
||||||
|
if mods["Booktorio"] then
|
||||||
|
require('bk_sprites')
|
||||||
|
end
|
||||||
|
--informatron
|
||||||
|
if mods["informatron"] then
|
||||||
|
require('bk_sprites')
|
||||||
|
require('scripts/informatron/inf_sprites')
|
||||||
|
end
|
||||||
|
--SE
|
||||||
|
if mods["space-exploration"] then
|
||||||
|
require('scripts/SE/data')
|
||||||
|
end
|
||||||
|
|
||||||
|
require('scripts/gravitation/gr_make_white_hole_recipes')
|
||||||
|
|
||||||
|
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "sprite",
|
||||||
|
name = "sprite_248kmainbutton",
|
||||||
|
filename = "__248k__/ressources/groups/gr_group_icon.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 64,
|
||||||
|
height = 64,
|
||||||
|
scale = 1,
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
if data.raw.technology["atomic-bomb"] then
|
||||||
|
table.insert(data.raw.technology["atomic-bomb"].effects, {type ="unlock-recipe", recipe ="fi_atomic_bomb_recipe"})
|
||||||
|
end
|
||||||
19
info.json
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
"name": "248k",
|
||||||
|
"version": "0.6.3",
|
||||||
|
"title": "248k Mod",
|
||||||
|
"author": "PreLeyZero",
|
||||||
|
"factorio_version": "1.1",
|
||||||
|
"description": "Advance through 4 stages of tech. Start with simple machines and work your way through nuclear fission and fusion up to black and white holes, in order to tame the 248k Element. This mod is designed to be playable in already existing worlds since it changes nothing on world generation or vanilla itself. Does include a booktorio/Informatron ingame wiki!",
|
||||||
|
"dependencies": [
|
||||||
|
"base >= 1.0.0",
|
||||||
|
"Squeak Through",
|
||||||
|
"?BurntExtractor",
|
||||||
|
"?Booktorio",
|
||||||
|
"?informatron",
|
||||||
|
"?FluidMustFlow",
|
||||||
|
"?Krastorio2",
|
||||||
|
"?IndustrialRevolution",
|
||||||
|
"?space-exploration"
|
||||||
|
]
|
||||||
|
}
|
||||||
500
locale/en/lang_en.cfg
Normal file
|
|
@ -0,0 +1,500 @@
|
||||||
|
#item-groups
|
||||||
|
[item-group-name]
|
||||||
|
el_item_group=Electronics Stage
|
||||||
|
fi_item_group=Fission Stage
|
||||||
|
fu_item_group=Fusion Stage
|
||||||
|
fu_star_engine_group=Star engine recipes
|
||||||
|
gr_item_group=Exotic stage
|
||||||
|
|
||||||
|
#items
|
||||||
|
[item-name]
|
||||||
|
el_solar_item=Solar Panel 2.0
|
||||||
|
el_burner_item=Burner generator
|
||||||
|
el_aluminum_item=Aluminium
|
||||||
|
el_aluminum_ore_item=Aluminium ore
|
||||||
|
el_lithium_item=Lithium
|
||||||
|
el_lithium_ore_item=Lithium ore
|
||||||
|
el_lithium_battery=Lithium battery
|
||||||
|
el_train_fuel_diesel_item=Diesel fuel unit
|
||||||
|
el_train_fuel_diesel_energized_item=Energized diesel fuel unit
|
||||||
|
el_energy_crystal_item=Mysterious energy crystal
|
||||||
|
el_ki_linker=KI1 linker
|
||||||
|
fi_ki_science=KI2 tech
|
||||||
|
fu_ki_science=KI3 tech
|
||||||
|
el_ki_selction_tool=KI selctor
|
||||||
|
|
||||||
|
fi_uranium233_item=Uranium-233
|
||||||
|
fi_plutonium239_item=Plutonium-239
|
||||||
|
fi_thorium232_item=Thorium-232
|
||||||
|
fi_compound_material_item=Compound Material
|
||||||
|
fi_basic_fuel_item=Uranium-235 fuel rods
|
||||||
|
fi_basic_thorium_fuel_item=Thorium-232 fuel rods
|
||||||
|
fi_advanced_fuel_item=Mox fuel rods
|
||||||
|
fi_advanced_thorium_fuel_item=Uranium-233 fuel rods
|
||||||
|
fi_pure_fuel_item=High energy Mox fuel rods
|
||||||
|
fi_used_basic_fuel_item=Consumed Uranium-235 fuel rods
|
||||||
|
fi_used_basic_thorium_fuel_item=Consumed Thorium-232 fuel rods
|
||||||
|
fi_used_advanced_fuel_item=Consumed Mox fuel rods
|
||||||
|
fi_used_advanced_thorium_fuel_item=Consumed Uranium-233 fuel rods
|
||||||
|
fi_used_pure_fuel_item=Consumed high energy Mox fuel rods
|
||||||
|
fi_energy_crystal_item=Artificial energy crystal
|
||||||
|
fi_catalyst_crystal_item=Crystal catalyst
|
||||||
|
fi_base_crystal_item=Energy crystal matrix
|
||||||
|
fi_crushed_crystal_item=Crushed energy crystal
|
||||||
|
fi_crushed_iron_item=Crushed iron
|
||||||
|
fi_crushed_copper_item=Crushed copper
|
||||||
|
fi_crushed_lithium_item=Crushed lithium
|
||||||
|
fi_crushed_aluminum_item=Crushed aluminium
|
||||||
|
fi_crushed_coal_item=Crushed coal
|
||||||
|
fi_industrial_steel_blend_item=Steel blend
|
||||||
|
fi_industrial_steel_item=Industrial Steel
|
||||||
|
fi_fuel_train_crystal_item=Super energized fuel unit
|
||||||
|
fi_modules_base_item=Module frame
|
||||||
|
fi_modules_core_item=Module core
|
||||||
|
fi_modules_productivity_1_item=Stokes Module "1.Art"
|
||||||
|
fi_modules_productivity_2_item=Stokes Module "2.Art"
|
||||||
|
fi_modules_productivity_3_item=Stokes Module "3.Art"
|
||||||
|
fi_modules_productivity_4_item=Gauss Module "4.Art"
|
||||||
|
fi_modules_productivity_5_item=Gauss Module "5.Art"
|
||||||
|
fi_modules_productivity_6_item=Gauss Module "6.Art"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
fu_tech_sign_item=Fusion tech
|
||||||
|
fu_lead_ore_item=Lead ore
|
||||||
|
fu_lead_item=Lead
|
||||||
|
fu_crushed_lead_item=Crushed lead
|
||||||
|
fu_space_probe_sputnik_item='Sputnik' satellite
|
||||||
|
fu_space_probe_probe_item=Space probe
|
||||||
|
fu_space_probe_deep_probe_item=Deep space probe
|
||||||
|
fu_space_probe_data_card_1_item=Basic space data card
|
||||||
|
fu_space_probe_data_card_2_item=Compact space data card
|
||||||
|
fu_space_probe_data_card_3_item=Deep space data card
|
||||||
|
fu_space_probe_up_matter_item=Structured exotic matter(up)
|
||||||
|
fu_space_probe_down_matter_item=Structured exotic matter(down)
|
||||||
|
fu_space_probe_ore_item=Deep space ore
|
||||||
|
fu_space_probe_science_item=Exotic science pack
|
||||||
|
|
||||||
|
gr_materials_fusion_cell_item=Compact fusion cell
|
||||||
|
gr_materials_stack_down_item=Combined matter (down)
|
||||||
|
gr_materials_stack_up_item=Combined matter (up)
|
||||||
|
gr_materials_cooked_crystal_item=Freshly grown crystal
|
||||||
|
gr_materials_refined_crystal_item=Freshly refined crystal
|
||||||
|
gr_materials_crushed_exotic_item=Crushed exotic matter
|
||||||
|
gr_materials_stabilizer_item=Exotic matter stabilizer
|
||||||
|
|
||||||
|
|
||||||
|
gr_materials_red_item=3,6k element
|
||||||
|
gr_materials_red_pack_item=Red pack
|
||||||
|
gr_materials_red_data_item=Red data
|
||||||
|
|
||||||
|
gr_materials_green_item=7,2k element
|
||||||
|
gr_materials_green_pack_item=Green pack
|
||||||
|
gr_materials_green_data_item=Green data
|
||||||
|
|
||||||
|
gr_materials_blue_item=15,5k element
|
||||||
|
gr_materials_blue_pack_item=Blue pack
|
||||||
|
gr_materials_blue_data_item=Blue data
|
||||||
|
|
||||||
|
gr_materials_purple_item=31k element
|
||||||
|
gr_materials_purple_pack_item=Purple pack
|
||||||
|
gr_materials_purple_data_item=Purple data
|
||||||
|
|
||||||
|
gr_materials_yellow_item=62k element
|
||||||
|
gr_materials_yellow_pack_item=Yellow pack
|
||||||
|
gr_materials_yellow_data_item=Yellow data
|
||||||
|
|
||||||
|
gr_materials_grey_item=124k element
|
||||||
|
gr_materials_grey_pack_item=Black pack
|
||||||
|
gr_materials_grey_data_item=Black data
|
||||||
|
|
||||||
|
gr_materials_white_item=248k element
|
||||||
|
gr_materials_white_pack_item=White pack
|
||||||
|
gr_materials_white_data_item=White data
|
||||||
|
|
||||||
|
gr_materials_data_item=Deep data
|
||||||
|
gr_materials_stacked_data_item=Stacked deep data
|
||||||
|
|
||||||
|
gr_materials_charge_remote=Ultimate bug zapper remote
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#fluid
|
||||||
|
[fluid-name]
|
||||||
|
el_pressurized_water=Pressurized Water
|
||||||
|
el_kerosene=Kerosene
|
||||||
|
el_acidic_water=Acidic water
|
||||||
|
el_desulfurized_kerosene=Desulfurized kerosene
|
||||||
|
el_ki_memory_fluid=KI1 memory
|
||||||
|
el_ki_cpu_fluid=KI1 computing power
|
||||||
|
|
||||||
|
fi_crystal_fluid=Crystal matrix (liquid)
|
||||||
|
|
||||||
|
fu_hydrogen=Hydrogen
|
||||||
|
fu_oxygen=Oxygen
|
||||||
|
fu_lead_fluid=Liquid lead
|
||||||
|
fu_protium=Protium-H[1]
|
||||||
|
fu_deuterium=Deuterium-H[2]
|
||||||
|
fu_tritium=Tritium-H[3]
|
||||||
|
fu_lithium_6=Lithium-Li[6]
|
||||||
|
fu_helium_3=Helium-He[3]
|
||||||
|
fu_helium_4=Helium-He[4]
|
||||||
|
fu_iron=Iron-Fe[56]
|
||||||
|
|
||||||
|
fu_protium_heated=Heated protium-H[1]
|
||||||
|
fu_iron_heated=Heated iron-Fe[56]
|
||||||
|
fu_copper=Copper-Cu[63]
|
||||||
|
fu_copper_heated=Heated copper-Cu[63]
|
||||||
|
fu_lithium_7=Lithium-Li[7]
|
||||||
|
fu_lithium_7_heated=Heated lithium-Li[7]
|
||||||
|
fu_sulfur=Sulfur-S[32]
|
||||||
|
fu_sulfur_heated=Heated sulfur-S[32]
|
||||||
|
fu_uranium_238=Uranium-U[238]
|
||||||
|
fu_uranium_238_heated=Heated uranium-U[238]
|
||||||
|
fu_uranium_235=Uranium-U[235]
|
||||||
|
fu_uranium_235_heated=Heated uranium-U[235]
|
||||||
|
|
||||||
|
fi_ki_circuit_fluid=KI2 energy
|
||||||
|
fu_ki_circuit_fluid=KI3 energy
|
||||||
|
|
||||||
|
|
||||||
|
#item description
|
||||||
|
[item-description]
|
||||||
|
el_solar_item=Made with some knowledge.
|
||||||
|
el_burner_item=A compact burner generator.
|
||||||
|
el_energy_crystal_item=This crystal is made of a unknown substance. It radiates a little bit of energy, but what could it be used for?
|
||||||
|
|
||||||
|
fi_solid_reactor_item=A water moderated nuclear fission reactor capable of producing large amounts of heat. The consumed fuel rods can be refined and used again!
|
||||||
|
fi_crafter_item=This machine can assemble and smelt stuff, powered by basic nuclear fuel. But it cant handle liquids.
|
||||||
|
fi_energy_crystal_item=A artificial energy crystal. It radiates a lot of energy maybe it can be useful for building advanced machines.
|
||||||
|
|
||||||
|
fu_tech_sign_item=Knowledge about nuclear fusion. With these information it may be possible to construct even bigger fusion machines in the future!
|
||||||
|
fu_stelar_reactor_item=A nuclear fusion reactor based on the stellarator design. It can output about 2GW of consistent power. The heat from the core is transferred to a liquid lead cooling cycle, through which you can produce steam and at the end electricity. Although there is still no method to capture the fusion products this flaw may be fixed in the next generation UMR reactor.
|
||||||
|
fu_tokamak_reactor_item=A nuclear fusion reactor based on the tokamak design. This reactor will output from 2 to 4GW power in pulsing, depending on the fuel. In contrast to the stellarator the tokamak is mainly designed for D-T fusions. Although there is still no method to capture the fusion products this flaw may be fixed in the next generation UMR reactor.
|
||||||
|
fu_robo_logistic_item=Those 4 engines will output massive thrust if you can supply them with enough energy.
|
||||||
|
fu_robo_construction_item=Build structures with insane speed.
|
||||||
|
fu_star_engine_core_item=This is it, nuclear fusion at its finest! With this machine you are able to produce elements in the core of a little star. However to keep the reaction active lots and lots of power are required. The star engine is made of the core and at least one cooler and heating unit facing towards the core. It will produce 500 to 1000 Iron or any other basic element per second, depending on how many cooling/heating units are used (1 or 2 each).
|
||||||
|
|
||||||
|
gr_materials_fusion_cell_item=This device contains contains a little star, stored in another dimension. Dont touch it!
|
||||||
|
gr_crafter_item=Drawing its power from a little star, this machine will fulfill all your wishes. It can also smelt like a furnace!
|
||||||
|
gr_magnet_train_item=This train levitates with the power of EM fields - leaving its effecitve mass nearly at zero. This train is constructed for high speeds and long railways! And keep in mind: Being powered by a compact star this train always has energy.
|
||||||
|
gr_magnet_wagon_item=Transport your stuff at insane speeds! Use a EM suspension train as locomotive.
|
||||||
|
gr_magnet_tanker_item=Get that delicious oil where you need it, fast! Use a EM suspension train as locomotive.
|
||||||
|
|
||||||
|
gr_magnet_train_pre_item=This train levitates with the power of EM fields - leaving its effecitve mass nearly at zero. This train is constructed for high speeds and long railways! And keep in mind: Being powered by a compact star this train always has energy.
|
||||||
|
gr_magnet_wagon_pre_item=Transport your stuff at insane speeds! Use a EM suspension train as locomotive.
|
||||||
|
gr_magnet_tanker_pre_item=Get that delicious oil where you need it, fast! Use a EM suspension train as locomotive.
|
||||||
|
|
||||||
|
fi_modules_productivity_1_item=A module made to be usable in some of 248k machines/recipes.
|
||||||
|
fi_modules_productivity_2_item=A module made to be usable in some of 248k machines/recipes.
|
||||||
|
fi_modules_productivity_3_item=A module made to be usable in some of 248k machines/recipes.
|
||||||
|
fi_modules_productivity_4_item=This module is universal. It can be used in every machine which accepts productivity.
|
||||||
|
fi_modules_productivity_5_item=This module is universal. It can be used in every machine which accepts productivity.
|
||||||
|
fi_modules_productivity_6_item=This module is universal. It can be used in every machine which accepts productivity.
|
||||||
|
|
||||||
|
el_ki_core_item=For usage please look into the ingame booktorio/Informatron wiki (top left corner)
|
||||||
|
fi_ki_core_item=For usage please look into the ingame booktorio/Informatron wiki (top left corner)
|
||||||
|
fu_ki_core_item=For usage please look into the ingame booktorio/Informatron wiki (top left corner)
|
||||||
|
|
||||||
|
gr_white_hole_item=This machine can nearly replicate any item you put into!
|
||||||
|
gr_materials_white_item=||Well done! You did it. You have reached the ultimate goal. With holding the 248k element you have beaten the 248k mod.||
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#buildable entities
|
||||||
|
[entity-name]
|
||||||
|
el_solar_entity=Solar panel 2.0
|
||||||
|
el_tank_entity=Silo tank
|
||||||
|
el_burner_entity=Burner generator
|
||||||
|
el_burner_kerosene_entity=Kerosene burner
|
||||||
|
el_water_generator_entity=Water turbine
|
||||||
|
el_pressurizer_entity=Water pressurizer
|
||||||
|
el_diesel_train_entity=Diesel train
|
||||||
|
el_ki_cpu_entity=KI1 data center
|
||||||
|
el_ki_memory_entity=KI1 memory provider
|
||||||
|
el_ki_beacon_entity=KI1 beacon
|
||||||
|
el_ki_core_entity=KI1 core
|
||||||
|
el_ki_beacon_slave_entity=Beacon link slot
|
||||||
|
el_ki_core_slave_entity=KI1 core module slot
|
||||||
|
el_ki_core_slave_container_entity=KI1 core
|
||||||
|
fi_ki_beacon_entity=KI2 beacon
|
||||||
|
fi_ki_core_entity=KI2 core
|
||||||
|
fi_ki_core_slave_entity=KI2 core module slot
|
||||||
|
fi_ki_core_slave_container_entity=KI2 core
|
||||||
|
fu_ki_beacon_entity=KI3 beacon
|
||||||
|
fu_ki_core_entity=KI3 core
|
||||||
|
fu_ki_core_slave_entity=KI3 core module slot
|
||||||
|
fu_ki_core_slave_container_entity=KI3 core
|
||||||
|
fi_ki_circuit_entity=KI2 energy provider
|
||||||
|
fu_ki_circuit_entity=KI3 energy provider
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
fi_crafter_entity=Nuclear assembling machine
|
||||||
|
fi_miner_entity=Nuclear miner
|
||||||
|
fi_solid_reactor_entity=Nuclear reactor (solid fuel)
|
||||||
|
fi_crusher_entity=Crushing factory
|
||||||
|
fi_robo_port_entity=Advanced roboport
|
||||||
|
fi_robo_charger_entity=Charging station
|
||||||
|
|
||||||
|
fu_boiler_entity=Thermochemical separator
|
||||||
|
fu_burner_entity=Burner
|
||||||
|
fu_fusor_entity=Research fusor
|
||||||
|
fu_stelar_reactor_entity=Stellarator fusion reactor
|
||||||
|
fu_tokamak_reactor_entity=Tokamak fusion reactor
|
||||||
|
fu_exchanger_entity=Liquid lead heat exchanger
|
||||||
|
fu_robo_construction_entity=Tesla construction bot
|
||||||
|
fu_robo_logistic_entity=Hertz logistic bot
|
||||||
|
fu_activator_entity=Neutron activator
|
||||||
|
fu_star_engine_cooler_entity=Star engine - cooling unit (downside)
|
||||||
|
fu_star_engine_cooler_up_entity=Star engine - cooling unit (top side)
|
||||||
|
fu_star_engine_core_entity=Star engine - fusion core
|
||||||
|
fu_star_engine_heater_entity=Star engine - heating unit (right side)
|
||||||
|
fu_star_engine_heater_left_entity=Star engine - heating unit (left side)
|
||||||
|
|
||||||
|
gr_crafter_entity=Fusion assembling machine
|
||||||
|
gr_magnet_train_pre_entity=EM suspension train 1
|
||||||
|
gr_magnet_wagon_pre_entity=EM suspension wagon 1
|
||||||
|
gr_magnet_tanker_pre_entity=EM suspension tanker wagon 1
|
||||||
|
gr_magnet_train_entity=EM suspension train 2
|
||||||
|
gr_magnet_wagon_entity=EM suspension wagon 2
|
||||||
|
gr_magnet_tanker_entity=EM suspension tanker wagon 2
|
||||||
|
gr_cooker_entity=Crystal growing facility
|
||||||
|
gr_charger_entity=Matter charger
|
||||||
|
gr_black_hole_base_entity=Black hole generator
|
||||||
|
gr_black_hole_energy_entity=Black hole generator
|
||||||
|
|
||||||
|
gr_white_hole_entity=White hole generator
|
||||||
|
gr_lab_entity=S-lab
|
||||||
|
|
||||||
|
#equipment
|
||||||
|
[equipment-name]
|
||||||
|
el_train_equipment_generator_item=Train electricity generator
|
||||||
|
el_train_equipment_accelerator_item=Diesel train turbocharger
|
||||||
|
fi_train_equipment_generator_item=Train nuclear reactor
|
||||||
|
fi_equipment_player_reactor_item=Portable nuclear reactor
|
||||||
|
|
||||||
|
fi_equipment_player_shield_item=Advanced energy shield
|
||||||
|
gr_materials_charge_item=Ultimate bug zapper
|
||||||
|
|
||||||
|
#tech
|
||||||
|
[technology-name]
|
||||||
|
el_stage_tech=Electronics stage
|
||||||
|
el_energy_tech=Basic energy
|
||||||
|
el_solar_tech=Solar panel 2.0
|
||||||
|
el_burner_tech=Burner generator
|
||||||
|
el_aluminum_tech=Aluminium processing
|
||||||
|
el_lithium_tech=Lithium processing
|
||||||
|
el_water_generator_tech=Hydro power
|
||||||
|
el_kerosene_tech=Kerosene producing
|
||||||
|
el_train_tech=Diesel train
|
||||||
|
el_crystal_tech=Energy crystal refining
|
||||||
|
el_ki_tech=KI1 technology
|
||||||
|
fi_stage_tech=Fission stage
|
||||||
|
|
||||||
|
fi_energy_tech=Nuclear fission energy
|
||||||
|
fi_materials_tech=Advanced materials
|
||||||
|
fi_refining_tech=Fission fuel refining
|
||||||
|
fi_solid_reactor_tech=Solid fission
|
||||||
|
fi_miner_tech=Nuclear mining
|
||||||
|
fi_train_tech=Portable nuclear equipment
|
||||||
|
fi_crusher_tech=Crushing
|
||||||
|
fi_crystal_tech=Artifical energy crystals
|
||||||
|
fi_blends_tech=Metal mixing
|
||||||
|
fi_robo_tech=Advanced roboport
|
||||||
|
fi_modules_1_tech=Hekto 248k modules
|
||||||
|
fi_modules_2_tech=Kilo 248k modules
|
||||||
|
fi_modules_3_tech=Mega 248k modules
|
||||||
|
fi_modules_4_tech=Giga 248k modules
|
||||||
|
fi_modules_5_tech=Tera 248k modules
|
||||||
|
fi_modules_6_tech=Peta 248k modules
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
fu_stage_tech=Fusion stage
|
||||||
|
fu_crystal_tech=Advanced energy crystal production
|
||||||
|
fu_basic_elements_tech=Basic isotopes
|
||||||
|
fu_fusor_tech=Fusion reasearch
|
||||||
|
fu_lead_tech=Lead refining
|
||||||
|
fu_energy_tech=Fusion energy!
|
||||||
|
fu_reactor_tech=Stellarator reactor
|
||||||
|
fu_tokamak_tech=Tokamak reactor
|
||||||
|
fu_robo_tech=Advanced bots
|
||||||
|
fu_activator_tech=Advanced isotopes
|
||||||
|
|
||||||
|
fu_hydrogen_1_tech=Hydrogen refining 1
|
||||||
|
fu_hydrogen_2_tech=Hydrogen refining 2
|
||||||
|
fu_hydrogen_3_tech=Hydrogen refining 3
|
||||||
|
fu_star_engine_tech=Star engine
|
||||||
|
fu_star_engine_iron_tech=Iron fusing
|
||||||
|
fu_star_engine_copper_tech=Copper fusing
|
||||||
|
fu_star_engine_lithium_7_tech=Lithium fusing
|
||||||
|
fu_star_engine_sulfur_tech=Sulfur fusing
|
||||||
|
fu_star_engine_uranium_238_tech=Uranium 238 fusing
|
||||||
|
fu_star_engine_uranium_235_tech=Uranium 235 fusing
|
||||||
|
|
||||||
|
fu_space_probe_1_tech=Orbital exploration
|
||||||
|
fu_space_probe_2_tech=Space exploration
|
||||||
|
fu_space_probe_3_tech=Deep Space exploration
|
||||||
|
|
||||||
|
gr_stage_tech=Exotic matter stage
|
||||||
|
gr_compact_fusion_tech=Fusion cells
|
||||||
|
gr_materials_tech=Exotic materials
|
||||||
|
gr_crafter_tech=Super crafting
|
||||||
|
gr_star_engine_2_tech=Steel 4.0
|
||||||
|
gr_star_engine_1_tech=Gears 4.0
|
||||||
|
gr_train_tech=Future trains 1
|
||||||
|
gr_kovarex_tech=Exotic Kovarex
|
||||||
|
gr_train_plus_tech=Future trains 2
|
||||||
|
gr_cooker_tech=Crystal growing
|
||||||
|
gr_charger_tech=Exotic stabilizers
|
||||||
|
gr_black_hole_tech=Black holes
|
||||||
|
|
||||||
|
fi_ki_tech=KI2 technology
|
||||||
|
fi_ki_eff_1_tech=KI2 effectivity 1
|
||||||
|
fi_ki_eff_2_tech=KI2 effectivity 2
|
||||||
|
fi_ki_eff_3_tech=KI2 effectivity 3
|
||||||
|
fu_ki_tech=KI3 technology
|
||||||
|
fu_ki_eff_1_tech=KI3 effectivity 1
|
||||||
|
fu_ki_eff_2_tech=KI3 effectivity 2
|
||||||
|
fu_ki_eff_3_tech=KI3 effectivity 3
|
||||||
|
fu_ki_plus_1_tech=KIX1
|
||||||
|
fu_ki_plus_2_tech=KIX2
|
||||||
|
el_ki_eff_1_tech=KI1 effectivity 1
|
||||||
|
el_ki_eff_2_tech=KI1 effectivity 2
|
||||||
|
el_ki_eff_3_tech=KI1 effectivity 3
|
||||||
|
el_ki_sup_1_tech=More beacon support
|
||||||
|
el_ki_sup_2_tech=A lot of beacon support
|
||||||
|
el_ki_sup_3_tech=Huge beacon support
|
||||||
|
el_ki_sup_4_tech=Max. beacon support
|
||||||
|
|
||||||
|
gr_white_hole_tech=White holes
|
||||||
|
gr_data_tech=S-Data
|
||||||
|
gr_lab_tech=S-Lab
|
||||||
|
gr_red_tech=3,6k element
|
||||||
|
gr_green_tech=7,2k element
|
||||||
|
gr_blue_tech=15,5k element
|
||||||
|
gr_purple_tech=31k element
|
||||||
|
gr_yellow_tech=62k element
|
||||||
|
gr_grey_tech=124k element
|
||||||
|
gr_white_tech=248k element
|
||||||
|
|
||||||
|
gr_ind2_tech=Advanced elements
|
||||||
|
|
||||||
|
#effects
|
||||||
|
[description]
|
||||||
|
el_stage_eff=Allows you to get into the first stage of the 248k mod.
|
||||||
|
el_energy_eff=Basic energy production
|
||||||
|
el_kerosene_tech_eff=Produce kerosene from oil and desulfurize it
|
||||||
|
el_ki_tech_eff=This machine functions as a module effect spreader. Each core has a distinct channel, which can be changed through the core gui. Note: only one core is allowed per channel. In the middle of the core are module slots - place some modules inside and a working core will broadcast their effects to its channel. Once a beacon is placed down it will automatically get registered in the standard channel. So to keep things simple just supply the core with enough liquid and tune its channel to the standard channel.
|
||||||
|
x2_ki_tech_eff=Double the module effects of all your KI cores!
|
||||||
|
x3_ki_tech_eff=Triple the module effects of all your KI cores - stupidly insane if you ask me!
|
||||||
|
sup_1_ki_tech_eff=+150 supported beacons
|
||||||
|
sup_2_ki_tech_eff=+250 supported beacons
|
||||||
|
sup_3_ki_tech_eff=+500 supported beacons
|
||||||
|
sup_4_ki_tech_eff=max supported beacons
|
||||||
|
|
||||||
|
fi_stage_eff=You have masterd the art of electronics. Welcome to the age of nuclear fission!
|
||||||
|
fi_energy_eff=Fission energy at your grasp!
|
||||||
|
|
||||||
|
fu_stage_eff=After splitting the Atom what is next? Merging the Atom!
|
||||||
|
fu_basic_elements_eff=Get your grasp at some Isotopes which can be fused together! These early methods may be very inefficient but at least they work.
|
||||||
|
fu_fusor_eff=Build a basic fusor that can achieve some fusion reactions. There is still a lot to learn about nuclear fusion so keep experimenting.
|
||||||
|
fu_energy_eff=With the knowledge gained through fusor experimenting you can now start building your very first nuclear fusion reactor!
|
||||||
|
fu_reactor_eff=Build a fusion reactor based on the stellarator design. This reactor is capable of running for days, sustaining its plasma for large amounts of time. You should be able to generate power at a consistent rate.
|
||||||
|
fu_tokamak_eff=This reactor is based on the tokamak design. It will fuse its fuel very quickly, meaning it can only be run in pulsing.
|
||||||
|
fu_activator_eff=Collect thermal neutrons from nuclear fission reactions. Basic Isotopes will capture those neutrons and turn into more valuable isotopes.
|
||||||
|
fu_star_engine_eff=A star engine is literally a little star. Using huge amounts of power this multi-unit machine can produce whatever basic element you want, in huge quantities. To make this dream come true you will need one core and at least one cooling/heating unit, a lot of space and energy. Place down the core and after that cooling and heating unit, facing towards the core. The core can run with only one unit of each at half speed. After building the machine you will need to research the tech for each element.
|
||||||
|
|
||||||
|
gr_stage_eff=Using exotic matter you will be able to exceed limits of known technology. Even Fusion will be nothing compared to those infinite possibilities.
|
||||||
|
|
||||||
|
#category
|
||||||
|
[fuel-category-name]
|
||||||
|
el_train_fuel=Train fuel
|
||||||
|
fi_basic_fuel=Basic nuclear fuel
|
||||||
|
fi_advanced_fuel=Advanced nuclear fuel
|
||||||
|
fi_pure_fuel=High energy nuclear fuel
|
||||||
|
|
||||||
|
#settings
|
||||||
|
[mod-setting-name]
|
||||||
|
el_solar_power_output=Solar panel 2.0 output
|
||||||
|
el_burner_power_output=Burner generator output
|
||||||
|
el_water_generator_power_output=Water turbine output
|
||||||
|
el_solar_recipe_enabled=Solar panel 2.0 recipe enabled
|
||||||
|
el_ki_beacon_effectivity=KI1 beacon effectivity
|
||||||
|
el_ki_beacon_supply_area=KI1 beacon area
|
||||||
|
el_ki_beacon_blueprintable=Make the KI beacons blueprintable
|
||||||
|
el_ki_core_energy_usage=KI1 core power usage
|
||||||
|
el_ki_core_energy_usage_input=KI1 core power input maximum
|
||||||
|
el_ki_core_productivity=Enable productivity modules in KI core and amplifier
|
||||||
|
el_burner_kerosene_power_output=Kerosene generator power output
|
||||||
|
fu_burner_power_output=Fusion Stage burner power output
|
||||||
|
override_krastorio_endgame=Adjust Krastorio2 recipes for Anti-matter reactor, Intergalactic transreciever
|
||||||
|
|
||||||
|
el_ki_beacon_effectivity_2=KI2 beacon effectivity
|
||||||
|
el_ki_beacon_supply_area_2=KI2 beacon area
|
||||||
|
el_ki_beacon_effectivity_3=KI3 beacon effectivity
|
||||||
|
el_ki_beacon_supply_area_3=KI3 beacon area
|
||||||
|
el_ki_core_energy_usage_2=KI2 core power usage
|
||||||
|
el_ki_core_energy_usage_3=KI3 core power usage
|
||||||
|
el_ki_core_energy_usage_input_2=KI2 core power input maximum
|
||||||
|
el_ki_core_energy_usage_input_3=KI3 core power input maximum
|
||||||
|
|
||||||
|
|
||||||
|
[item-limitation]
|
||||||
|
limitation_message=This module can not be used here.
|
||||||
|
|
||||||
|
#booktorio
|
||||||
|
[gui]
|
||||||
|
bk_248k_name=248k Mod
|
||||||
|
bk_248k_overview=Overview
|
||||||
|
bk_248k_about=About the mod
|
||||||
|
bk_248k_about_text=This mod is focused to extend vanilla and adding a longer endgame. It introduces new ways to generate energy, materials, alternate options to produce vanilla items and some unique buildings, all ranked in 4 stages. You will start in the electronic stage within the early game and then progress as your factory grows. Here take a peek at what you can accomplish:
|
||||||
|
bk_248k_first_steps=First steps
|
||||||
|
bk_248k_first_steps_text=To start you will need to wash some elements mainly aluminium and lithium out of stone. This is done using sulfuric acid so get a fair amount of that - alongside the vanilla recipe it is also possible to produce kerosene and gain sulfuric acid in the desulfurisation process of kerosene. With these materials you can now build some pretty good solar panels Mk2 for example.
|
||||||
|
|
||||||
|
bk_248k_ki1_core=The KI1 core
|
||||||
|
bk_248k_ki2_core=KI2 and KI3 amplifier
|
||||||
|
bk_248k_ki1_core_text=This machine functions as a module effect spreader. Each core has a distinct channel, which can be changed through the core gui. Note: only one core is allowed per channel. In the middle of the core are module slots - place some modules inside and a working core will broadcast their effects to its channel. Once a beacon is placed down it will automatically get registered in the standard channel. So to keep things simple just supply the core with enough liquid and tune its channel to the standard channel.
|
||||||
|
bk_248k_ki2_core_text=With the fission and fusion stage you will get access to KI2 and KI3 beacon aswell as KI2 and KI3 core/amplifier. Those cores will consume additional liquids to function. KI2 and KI3 core/amplifier can add additional module effects to the KI1 core - to do so tune their channel to the channel of your KI1 core. Modules inserted in the middle of KI2/KI3 core will now add their effects to those of the KI1 core. Keep in mind that the better beacons will also be able to broadcast more module effects. Over time the KI2/KI3 core will produce[item=fi_ki_science] and [item=fu_ki_science] - those will be needed to research techs regarding the KI cores. One KI1 core will always link to only one KI2 and one KI3 core.
|
||||||
|
|
||||||
|
|
||||||
|
bk_248k_diesel_train=The diesel train
|
||||||
|
bk_248k_diesel_train_text=A diesel train, simple as that. But wait is there more? Yes, there is. This diesel train has access to different diesel fuels and engine modules. The fuels all have a fairly high burn value but most importantly the special ones will increase the trains max speed by quite a bit but decrease its acceleration. To counter this drawback you can install modules inside the train equipment grid: A turbocharger f.e. will increase the acceleration of the train by 35 percent.
|
||||||
|
|
||||||
|
bk_248k_fusion=Nuclear Fusion
|
||||||
|
bk_248k_fusion_text=After mastering the fission stage nuclear fusion will be available to you. Fusion, well is complicated - You will first need to build a research fusor [item=fu_fusor_item] and fuse some basic isotopes to get some fusion knowledge [item=fu_tech_sign_item].
|
||||||
|
bk_248k_fusion_1_text=The most basic isotope is protium-H[1][fluid=fu_protium]. Build a thermochemical separator [item=fu_boiler_item] and separate some water into oxygen and hydrogen. Since hydrogen is mainly protium-H[1][fluid=fu_protium] you should be able to get your hands on some fusion tech.
|
||||||
|
bk_248k_fusion_2_text=With fusion tech you can now f.e. build huge fusion reactors or make Hertz and Tesla bots. If possible set up a big enough supply of isotopes and fusion tech - you will need a lot.
|
||||||
|
bk_248k_star_engine=Star engine
|
||||||
|
bk_248k_star_engine_text=The star engine is insane! It is made of 5 parts: The core[item=fu_star_engine_core_item], a left and right heater [item=fu_star_engine_heater_left_item] [item=fu_star_engine_heater_item] and a up and downside cooler [item=fu_star_engine_cooler_up_item] [item=fu_star_engine_cooler_item].
|
||||||
|
bk_248k_star_engine_1_text=First build the core (above) with as much free space around as possible. Then place coolers and heaters next to it - make sure with alt mode that all core inputs match the outputs of heaters/coolers. Set the recipes for all machines and pump a mass of protium into the heaters. In the table below you can see what can be produced at which rate, when the whole machine is working.
|
||||||
|
bk_248k_exotic_science=Exotic matter science
|
||||||
|
bk_248k_exotic_science_text=In the endgame you will need to produce exotic science [item=fu_space_probe_science_item]. To do so you need to get your hands on some exotic matter [item=fu_space_probe_ore_item], since this rare material only exist in outer space you have to build a lot of rockets in order to obtain some. There are 3 new types of satellites: The 'Sputnik' satellite[item=fu_space_probe_sputnik_item], the space probe[item=fu_space_probe_probe_item] and the deep space probe[item=fu_space_probe_deep_probe_item]. The first two return data, which is required for launching the deep space probe resulting in exotic ore. Use the exotic matter to make exotic science packs!
|
||||||
|
bk_248k_blueprints=Blueprints
|
||||||
|
bk_248k_blueprints_text=Here are some blueprints for mod setups. Just click on the text to get one - if you have designed a layout you want to share you can do so in the mod forum and it might be here in the future!
|
||||||
|
|
||||||
|
bk_248k_blueprints_1=Water turbine setup - 40MW|PreLeyZero
|
||||||
|
bk_248k_blueprints_2=Thermochemical setup - 2X|PreLeyZero
|
||||||
|
bk_248k_blueprints_3=Solar farm - 40MW|PreLeyZero
|
||||||
|
|
||||||
|
bk_248k_black_hole=Endgame reactor
|
||||||
|
bk_248k_black_hole_text=The black hole generator can produce energy from anything. When 100 stabilizers[item=gr_materials_stabilizer_item] and at least 1000 other items (matter) are inside the reactor you can create a black hole. Every item put in the reactor will be added to the consumable matter of the black hole, except stabilizers[item=gr_materials_stabilizer_item] - those will add to the reactor stability. Over time the stability of the reactor will drop so keep a steady supply of those matter stabilizers. The reactor will consume matter from its internal buffer, according to its matter consumption rate, and convert it in power. At full reactor stability the reactor will output about 1TW.
|
||||||
|
|
||||||
|
#informatron
|
||||||
|
[inf_248k]
|
||||||
|
menu_inf_248k=248k Mod
|
||||||
|
title_inf_248k=248k Mod
|
||||||
|
menu_ki1core=KI1 core[item=el_ki_core_item]
|
||||||
|
title_ki1core=KI1 core[item=el_ki_core_item]
|
||||||
|
menu_diesel=Diesel train[item=el_diesel_train_item]
|
||||||
|
title_diesel=Diesel train[item=el_diesel_train_item]
|
||||||
|
menu_fusion=Fusion[item=fu_fusor_item]
|
||||||
|
title_fusion=Fusion[item=fu_fusor_item]
|
||||||
|
menu_starengine=Star engine[item=fu_star_engine_core_item]
|
||||||
|
title_starengine=Star engine[item=fu_star_engine_core_item]
|
||||||
|
menu_exoticscience=Exotic science[item=fu_space_probe_science_item]
|
||||||
|
title_exoticscience=Exotic science[item=fu_space_probe_science_item]
|
||||||
|
menu_blackhole=Black hole generator[item=gr_black_hole_item]
|
||||||
|
title_blackhole=Black hole generator[item=gr_black_hole_item]
|
||||||
5
migrations/248k-0.3.12.lua
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
6
migrations/248k-0.3.17.lua
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
38
migrations/248k-0.4.0.lua
Normal file
|
|
@ -0,0 +1,38 @@
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if (not global.fi_ki_module) then
|
||||||
|
global.fi_ki_module = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.el_ki_stats) then
|
||||||
|
global.el_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fi_ki_stats) then
|
||||||
|
global.fi_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fu_ki_module) then
|
||||||
|
global.fu_ki_module = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fu_ki_stats) then
|
||||||
|
global.fu_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
if (not global.el_ki_stats[i]['filink']) then
|
||||||
|
global.el_ki_stats[i]['filink'] = 0
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.el_ki_stats[i]['fulink']) then
|
||||||
|
global.el_ki_stats[i]['fulink'] = 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
36
migrations/248k-0.4.1.lua
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if (not global.fi_ki_module) then
|
||||||
|
global.fi_ki_module = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.el_ki_stats) then
|
||||||
|
global.el_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fi_ki_stats) then
|
||||||
|
global.fi_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fu_ki_module) then
|
||||||
|
global.fu_ki_module = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fu_ki_stats) then
|
||||||
|
global.fu_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
if (not global.el_ki_stats[i]['filink']) then
|
||||||
|
global.el_ki_stats[i]['filink'] = 0
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.el_ki_stats[i]['fulink']) then
|
||||||
|
global.el_ki_stats[i]['fulink'] = 0
|
||||||
|
end
|
||||||
|
end
|
||||||
38
migrations/248k-0.4.2.lua
Normal file
|
|
@ -0,0 +1,38 @@
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if (not global.fi_ki_module) then
|
||||||
|
global.fi_ki_module = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.el_ki_stats) then
|
||||||
|
global.el_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fi_ki_stats) then
|
||||||
|
global.fi_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fu_ki_module) then
|
||||||
|
global.fu_ki_module = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fu_ki_stats) then
|
||||||
|
global.fu_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
if (not global.el_ki_stats[i]['filink']) then
|
||||||
|
global.el_ki_stats[i]['filink'] = 0
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.el_ki_stats[i]['fulink']) then
|
||||||
|
global.el_ki_stats[i]['fulink'] = 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
38
migrations/248k-0.4.3.lua
Normal file
|
|
@ -0,0 +1,38 @@
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if (not global.fi_ki_module) then
|
||||||
|
global.fi_ki_module = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.el_ki_stats) then
|
||||||
|
global.el_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fi_ki_stats) then
|
||||||
|
global.fi_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fu_ki_module) then
|
||||||
|
global.fu_ki_module = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.fu_ki_stats) then
|
||||||
|
global.fu_ki_stats = {}
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
if (not global.el_ki_stats[i]['filink']) then
|
||||||
|
global.el_ki_stats[i]['filink'] = 0
|
||||||
|
end
|
||||||
|
|
||||||
|
if (not global.el_ki_stats[i]['fulink']) then
|
||||||
|
global.el_ki_stats[i]['fulink'] = 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
180
migrations/248k-0.4.9.lua
Normal file
|
|
@ -0,0 +1,180 @@
|
||||||
|
require('scripts/electronic/el_ki_script')
|
||||||
|
require('scripts/gravitation/gr_black_hole_script')
|
||||||
|
local gui = require('scripts/gui')
|
||||||
|
|
||||||
|
local function register_ki_entity(entity,type)
|
||||||
|
if entity then
|
||||||
|
if entity.valid then
|
||||||
|
if global.ki then
|
||||||
|
if global.ki[type] then
|
||||||
|
local unit = entity.unit_number
|
||||||
|
if not global.ki[type][unit] then
|
||||||
|
if type == "core" then
|
||||||
|
make_ki_core(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "buffer1" then
|
||||||
|
make_ki_buffer1(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "buffer2" then
|
||||||
|
make_ki_buffer2(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "beacon" then
|
||||||
|
make_ki_beacon(entity)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function remove_new_slaves(tablein,type,slave)
|
||||||
|
local table = tablein
|
||||||
|
for i,v in pairs(table) do
|
||||||
|
for x,f in pairs(global.ki[type]) do
|
||||||
|
if global.ki[type][x][slave] then
|
||||||
|
if global.ki[type][x][slave].valid then
|
||||||
|
if table[i] then
|
||||||
|
if table[i].valid then
|
||||||
|
if global.ki[type][x][slave].unit_number == table[i].unit_number then
|
||||||
|
table[i] = nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return table
|
||||||
|
end
|
||||||
|
|
||||||
|
local function kill_old_slaves(table,type,slave)
|
||||||
|
local old_slaves = remove_new_slaves(table,type,slave)
|
||||||
|
if old_slaves then
|
||||||
|
for i,v in pairs(old_slaves) do
|
||||||
|
if old_slaves[i] then
|
||||||
|
if old_slaves[i].valid then
|
||||||
|
local slave = old_slaves[i]
|
||||||
|
slave.destroy()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if game.active_mods["Booktorio"] then
|
||||||
|
registerThread_248k()
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.players) do
|
||||||
|
gui.add_top_gui(game.players[i])
|
||||||
|
end
|
||||||
|
|
||||||
|
--if not global.ki then
|
||||||
|
el_ki_init(e)
|
||||||
|
gr_black_hole_init(e)
|
||||||
|
--end
|
||||||
|
|
||||||
|
if global.el_ki_stats then
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
local slave = global.el_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.el_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
make_ki_core(global.el_ki_stats[i].entity)
|
||||||
|
global.el_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fi_ki_stats then
|
||||||
|
for i,v in pairs(global.fi_ki_stats) do
|
||||||
|
local slave = global.fi_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fi_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fi_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer1(global.fi_ki_stats[i].entity)
|
||||||
|
global.fi_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fi_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fu_ki_stats then
|
||||||
|
for i,v in pairs(global.fu_ki_stats) do
|
||||||
|
local slave = global.fu_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fu_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fu_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer2(global.fu_ki_stats[i].entity)
|
||||||
|
global.fu_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fu_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.el_ki_beacons then
|
||||||
|
for i,v in pairs(global.el_ki_beacons) do
|
||||||
|
local slave = global.el_ki_beacons[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
make_ki_beacon(global.el_ki_beacons[i].entity)
|
||||||
|
global.el_ki_beacons[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_beacons = nil
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.surfaces) do
|
||||||
|
local el_cores = game.surfaces[i].find_entities_filtered({name="el_ki_core_entity"})
|
||||||
|
local fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_entity"})
|
||||||
|
local fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_entity"})
|
||||||
|
local el_beacons = game.surfaces[i].find_entities_filtered({name="el_ki_beacon_entity"})
|
||||||
|
local fi_beacons = game.surfaces[i].find_entities_filtered({name="fi_ki_beacon_entity"})
|
||||||
|
local fu_beacons = game.surfaces[i].find_entities_filtered({name="fu_ki_beacon_entity"})
|
||||||
|
|
||||||
|
for x,f in pairs(el_cores) do
|
||||||
|
register_ki_entity(el_cores[i],"core")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fi_cores) do
|
||||||
|
register_ki_entity(fi_cores[i],"buffer1")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fu_cores) do
|
||||||
|
register_ki_entity(fu_cores[i],"buffer2")
|
||||||
|
end
|
||||||
|
|
||||||
|
for x,f in pairs(el_beacons) do
|
||||||
|
register_ki_entity(el_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fi_beacons) do
|
||||||
|
register_ki_entity(fi_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fu_beacons) do
|
||||||
|
register_ki_entity(fu_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
|
||||||
|
local slave_ki_cores = game.surfaces[i].find_entities_filtered({name="el_ki_core_slave_entity"})
|
||||||
|
local slave_fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_slave_entity"})
|
||||||
|
local slave_fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_slave_entity"})
|
||||||
|
local container_fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_slave_container_entity"})
|
||||||
|
local container_fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_slave_container_entity"})
|
||||||
|
|
||||||
|
kill_old_slaves(slave_ki_cores,"core","slave")
|
||||||
|
kill_old_slaves(slave_fi_cores,"buffer1","slave")
|
||||||
|
kill_old_slaves(slave_fu_cores,"buffer2","slave")
|
||||||
|
kill_old_slaves(container_fi_cores,"buffer1","container")
|
||||||
|
kill_old_slaves(container_fu_cores,"buffer2","container")
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
92
migrations/248k-0.5.1.lua
Normal file
|
|
@ -0,0 +1,92 @@
|
||||||
|
require('scripts/electronic/el_ki_script')
|
||||||
|
require('scripts/gravitation/gr_black_hole_script')
|
||||||
|
local gui = require('scripts/gui')
|
||||||
|
|
||||||
|
local function register_ki_entity(entity,type)
|
||||||
|
if entity then
|
||||||
|
if entity.valid then
|
||||||
|
if global.ki then
|
||||||
|
if global.ki[type] then
|
||||||
|
local unit = entity.unit_number
|
||||||
|
if not global.ki[type][unit] then
|
||||||
|
if type == "core" then
|
||||||
|
make_ki_core(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "buffer1" then
|
||||||
|
make_ki_buffer1(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "buffer2" then
|
||||||
|
make_ki_buffer2(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "beacon" then
|
||||||
|
make_ki_beacon(entity)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function remove_new_slaves(tablein,type,slave)
|
||||||
|
local table = tablein
|
||||||
|
for i,v in pairs(table) do
|
||||||
|
for x,f in pairs(global.ki[type]) do
|
||||||
|
if global.ki[type][x][slave] then
|
||||||
|
if global.ki[type][x][slave].valid then
|
||||||
|
if table[i] then
|
||||||
|
if table[i].valid then
|
||||||
|
if global.ki[type][x][slave].unit_number == table[i].unit_number then
|
||||||
|
table[i] = nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return table
|
||||||
|
end
|
||||||
|
|
||||||
|
local function kill_old_slaves(table,type,slave)
|
||||||
|
local old_slaves = remove_new_slaves(table,type,slave)
|
||||||
|
if old_slaves then
|
||||||
|
for i,v in pairs(old_slaves) do
|
||||||
|
if old_slaves[i] then
|
||||||
|
if old_slaves[i].valid then
|
||||||
|
local slave = old_slaves[i]
|
||||||
|
slave.destroy()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if game.active_mods["Booktorio"] then
|
||||||
|
registerThread_248k()
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.players) do
|
||||||
|
gui.add_top_gui(game.players[i])
|
||||||
|
end
|
||||||
|
|
||||||
|
gr_black_hole_init(e)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
180
oldmigration/248k-0.4.10.lua
Normal file
|
|
@ -0,0 +1,180 @@
|
||||||
|
require('scripts/electronic/el_ki_script')
|
||||||
|
require('scripts/gravitation/gr_black_hole_script')
|
||||||
|
local gui = require('scripts/gui')
|
||||||
|
|
||||||
|
local function register_ki_entity(entity,type)
|
||||||
|
if entity then
|
||||||
|
if entity.valid then
|
||||||
|
if global.ki then
|
||||||
|
if global.ki[type] then
|
||||||
|
local unit = entity.unit_number
|
||||||
|
if not global.ki[type][unit] then
|
||||||
|
if type == "core" then
|
||||||
|
make_ki_core(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "buffer1" then
|
||||||
|
make_ki_buffer1(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "buffer2" then
|
||||||
|
make_ki_buffer2(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "beacon" then
|
||||||
|
make_ki_beacon(entity)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function remove_new_slaves(tablein,type,slave)
|
||||||
|
local table = tablein
|
||||||
|
for i,v in pairs(table) do
|
||||||
|
for x,f in pairs(global.ki[type]) do
|
||||||
|
if global.ki[type][x][slave] then
|
||||||
|
if global.ki[type][x][slave].valid then
|
||||||
|
if table[i] then
|
||||||
|
if table[i].valid then
|
||||||
|
if global.ki[type][x][slave].unit_number == table[i].unit_number then
|
||||||
|
table[i] = nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return table
|
||||||
|
end
|
||||||
|
|
||||||
|
local function kill_old_slaves(table,type,slave)
|
||||||
|
local old_slaves = remove_new_slaves(table,type,slave)
|
||||||
|
if old_slaves then
|
||||||
|
for i,v in pairs(old_slaves) do
|
||||||
|
if old_slaves[i] then
|
||||||
|
if old_slaves[i].valid then
|
||||||
|
local slave = old_slaves[i]
|
||||||
|
slave.destroy()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if game.active_mods["Booktorio"] then
|
||||||
|
registerThread_248k()
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.players) do
|
||||||
|
gui.add_top_gui(game.players[i])
|
||||||
|
end
|
||||||
|
|
||||||
|
--if not global.ki then
|
||||||
|
el_ki_init(e)
|
||||||
|
gr_black_hole_init(e)
|
||||||
|
--end
|
||||||
|
|
||||||
|
if global.el_ki_stats then
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
local slave = global.el_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.el_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
make_ki_core(global.el_ki_stats[i].entity)
|
||||||
|
global.el_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fi_ki_stats then
|
||||||
|
for i,v in pairs(global.fi_ki_stats) do
|
||||||
|
local slave = global.fi_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fi_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fi_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer1(global.fi_ki_stats[i].entity)
|
||||||
|
global.fi_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fi_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fu_ki_stats then
|
||||||
|
for i,v in pairs(global.fu_ki_stats) do
|
||||||
|
local slave = global.fu_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fu_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fu_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer2(global.fu_ki_stats[i].entity)
|
||||||
|
global.fu_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fu_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.el_ki_beacons then
|
||||||
|
for i,v in pairs(global.el_ki_beacons) do
|
||||||
|
local slave = global.el_ki_beacons[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
make_ki_beacon(global.el_ki_beacons[i].entity)
|
||||||
|
global.el_ki_beacons[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_beacons = nil
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.surfaces) do
|
||||||
|
local el_cores = game.surfaces[i].find_entities_filtered({name="el_ki_core_entity"})
|
||||||
|
local fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_entity"})
|
||||||
|
local fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_entity"})
|
||||||
|
local el_beacons = game.surfaces[i].find_entities_filtered({name="el_ki_beacon_entity"})
|
||||||
|
local fi_beacons = game.surfaces[i].find_entities_filtered({name="fi_ki_beacon_entity"})
|
||||||
|
local fu_beacons = game.surfaces[i].find_entities_filtered({name="fu_ki_beacon_entity"})
|
||||||
|
|
||||||
|
for x,f in pairs(el_cores) do
|
||||||
|
register_ki_entity(el_cores[i],"core")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fi_cores) do
|
||||||
|
register_ki_entity(fi_cores[i],"buffer1")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fu_cores) do
|
||||||
|
register_ki_entity(fu_cores[i],"buffer2")
|
||||||
|
end
|
||||||
|
|
||||||
|
for x,f in pairs(el_beacons) do
|
||||||
|
register_ki_entity(el_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fi_beacons) do
|
||||||
|
register_ki_entity(fi_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fu_beacons) do
|
||||||
|
register_ki_entity(fu_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
|
||||||
|
local slave_ki_cores = game.surfaces[i].find_entities_filtered({name="el_ki_core_slave_entity"})
|
||||||
|
local slave_fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_slave_entity"})
|
||||||
|
local slave_fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_slave_entity"})
|
||||||
|
local container_fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_slave_container_entity"})
|
||||||
|
local container_fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_slave_container_entity"})
|
||||||
|
|
||||||
|
kill_old_slaves(slave_ki_cores,"core","slave")
|
||||||
|
kill_old_slaves(slave_fi_cores,"buffer1","slave")
|
||||||
|
kill_old_slaves(slave_fu_cores,"buffer2","slave")
|
||||||
|
kill_old_slaves(container_fi_cores,"buffer1","container")
|
||||||
|
kill_old_slaves(container_fu_cores,"buffer2","container")
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
70
oldmigration/248k-0.4.4.lua
Normal file
|
|
@ -0,0 +1,70 @@
|
||||||
|
require('scripts/electronic/el_ki_script')
|
||||||
|
local gui = require('scripts/gui')
|
||||||
|
|
||||||
|
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if game.active_mods["Booktorio"] then
|
||||||
|
registerThread_248k()
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.players) do
|
||||||
|
gui.add_top_gui(game.players[i])
|
||||||
|
end
|
||||||
|
|
||||||
|
if not global.ki then
|
||||||
|
el_ki_init(e)
|
||||||
|
end
|
||||||
|
|
||||||
|
if global.el_ki_stats then
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
local slave = global.el_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.el_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
make_ki_core(global.el_ki_stats[i].entity)
|
||||||
|
global.el_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fi_ki_stats then
|
||||||
|
for i,v in pairs(global.fi_ki_stats) do
|
||||||
|
local slave = global.fi_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fi_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fi_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer1(global.fi_ki_stats[i].entity)
|
||||||
|
global.fi_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fi_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fu_ki_stats then
|
||||||
|
for i,v in pairs(global.fu_ki_stats) do
|
||||||
|
local slave = global.fu_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fu_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fu_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer2(global.fu_ki_stats[i].entity)
|
||||||
|
global.fu_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fu_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.el_ki_beacons then
|
||||||
|
for i,v in pairs(global.el_ki_beacons) do
|
||||||
|
local slave = global.el_ki_beacons[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
make_ki_beacon(global.el_ki_beacons[i].entity)
|
||||||
|
global.el_ki_beacons[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_beacons = nil
|
||||||
|
end
|
||||||
|
|
||||||
69
oldmigration/248k-0.4.6.lua
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
require('scripts/electronic/el_ki_script')
|
||||||
|
local gui = require('scripts/gui')
|
||||||
|
|
||||||
|
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if game.active_mods["Booktorio"] then
|
||||||
|
registerThread_248k()
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.players) do
|
||||||
|
gui.add_top_gui(game.players[i])
|
||||||
|
end
|
||||||
|
|
||||||
|
if not global.ki then
|
||||||
|
el_ki_init(e)
|
||||||
|
end
|
||||||
|
|
||||||
|
if global.el_ki_stats then
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
local slave = global.el_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.el_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
make_ki_core(global.el_ki_stats[i].entity)
|
||||||
|
global.el_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fi_ki_stats then
|
||||||
|
for i,v in pairs(global.fi_ki_stats) do
|
||||||
|
local slave = global.fi_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fi_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fi_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer1(global.fi_ki_stats[i].entity)
|
||||||
|
global.fi_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fi_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fu_ki_stats then
|
||||||
|
for i,v in pairs(global.fu_ki_stats) do
|
||||||
|
local slave = global.fu_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fu_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fu_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer2(global.fu_ki_stats[i].entity)
|
||||||
|
global.fu_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fu_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.el_ki_beacons then
|
||||||
|
for i,v in pairs(global.el_ki_beacons) do
|
||||||
|
local slave = global.el_ki_beacons[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
make_ki_beacon(global.el_ki_beacons[i].entity)
|
||||||
|
global.el_ki_beacons[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_beacons = nil
|
||||||
|
end
|
||||||
69
oldmigration/248k-0.4.7.lua
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
require('scripts/electronic/el_ki_script')
|
||||||
|
local gui = require('scripts/gui')
|
||||||
|
|
||||||
|
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if game.active_mods["Booktorio"] then
|
||||||
|
registerThread_248k()
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.players) do
|
||||||
|
gui.add_top_gui(game.players[i])
|
||||||
|
end
|
||||||
|
|
||||||
|
if not global.ki then
|
||||||
|
el_ki_init(e)
|
||||||
|
end
|
||||||
|
|
||||||
|
if global.el_ki_stats then
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
local slave = global.el_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.el_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
make_ki_core(global.el_ki_stats[i].entity)
|
||||||
|
global.el_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fi_ki_stats then
|
||||||
|
for i,v in pairs(global.fi_ki_stats) do
|
||||||
|
local slave = global.fi_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fi_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fi_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer1(global.fi_ki_stats[i].entity)
|
||||||
|
global.fi_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fi_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fu_ki_stats then
|
||||||
|
for i,v in pairs(global.fu_ki_stats) do
|
||||||
|
local slave = global.fu_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fu_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fu_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer2(global.fu_ki_stats[i].entity)
|
||||||
|
global.fu_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fu_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.el_ki_beacons then
|
||||||
|
for i,v in pairs(global.el_ki_beacons) do
|
||||||
|
local slave = global.el_ki_beacons[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
make_ki_beacon(global.el_ki_beacons[i].entity)
|
||||||
|
global.el_ki_beacons[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_beacons = nil
|
||||||
|
end
|
||||||
178
oldmigration/248k-0.4.8.lua
Normal file
|
|
@ -0,0 +1,178 @@
|
||||||
|
require('scripts/electronic/el_ki_script')
|
||||||
|
local gui = require('scripts/gui')
|
||||||
|
|
||||||
|
local function register_ki_entity(entity,type)
|
||||||
|
if entity then
|
||||||
|
if entity.valid then
|
||||||
|
if global.ki then
|
||||||
|
if global.ki[type] then
|
||||||
|
local unit = entity.unit_number
|
||||||
|
if not global.ki[type][unit] then
|
||||||
|
if type == "core" then
|
||||||
|
make_ki_core(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "buffer1" then
|
||||||
|
make_ki_buffer1(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "buffer2" then
|
||||||
|
make_ki_buffer2(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "beacon" then
|
||||||
|
make_ki_beacon(entity)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function remove_new_slaves(tablein,type,slave)
|
||||||
|
local table = tablein
|
||||||
|
for i,v in pairs(table) do
|
||||||
|
for x,f in pairs(global.ki[type]) do
|
||||||
|
if global.ki[type][x][slave] then
|
||||||
|
if global.ki[type][x][slave].valid then
|
||||||
|
if table[i] then
|
||||||
|
if table[i].valid then
|
||||||
|
if global.ki[type][x][slave].unit_number == table[i].unit_number then
|
||||||
|
table[i] = nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return table
|
||||||
|
end
|
||||||
|
|
||||||
|
local function kill_old_slaves(table,type,slave)
|
||||||
|
local old_slaves = remove_new_slaves(table,type,slave)
|
||||||
|
if old_slaves then
|
||||||
|
for i,v in pairs(old_slaves) do
|
||||||
|
if old_slaves[i] then
|
||||||
|
if old_slaves[i].valid then
|
||||||
|
local slave = old_slaves[i]
|
||||||
|
slave.destroy()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if game.active_mods["Booktorio"] then
|
||||||
|
registerThread_248k()
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.players) do
|
||||||
|
gui.add_top_gui(game.players[i])
|
||||||
|
end
|
||||||
|
|
||||||
|
--if not global.ki then
|
||||||
|
el_ki_init(e)
|
||||||
|
--end
|
||||||
|
|
||||||
|
if global.el_ki_stats then
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
local slave = global.el_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.el_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
make_ki_core(global.el_ki_stats[i].entity)
|
||||||
|
global.el_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fi_ki_stats then
|
||||||
|
for i,v in pairs(global.fi_ki_stats) do
|
||||||
|
local slave = global.fi_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fi_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fi_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer1(global.fi_ki_stats[i].entity)
|
||||||
|
global.fi_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fi_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fu_ki_stats then
|
||||||
|
for i,v in pairs(global.fu_ki_stats) do
|
||||||
|
local slave = global.fu_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fu_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fu_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer2(global.fu_ki_stats[i].entity)
|
||||||
|
global.fu_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fu_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.el_ki_beacons then
|
||||||
|
for i,v in pairs(global.el_ki_beacons) do
|
||||||
|
local slave = global.el_ki_beacons[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
make_ki_beacon(global.el_ki_beacons[i].entity)
|
||||||
|
global.el_ki_beacons[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_beacons = nil
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.surfaces) do
|
||||||
|
local el_cores = game.surfaces[i].find_entities_filtered({name="el_ki_core_entity"})
|
||||||
|
local fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_entity"})
|
||||||
|
local fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_entity"})
|
||||||
|
local el_beacons = game.surfaces[i].find_entities_filtered({name="el_ki_beacon_entity"})
|
||||||
|
local fi_beacons = game.surfaces[i].find_entities_filtered({name="fi_ki_beacon_entity"})
|
||||||
|
local fu_beacons = game.surfaces[i].find_entities_filtered({name="fu_ki_beacon_entity"})
|
||||||
|
|
||||||
|
for x,f in pairs(el_cores) do
|
||||||
|
register_ki_entity(el_cores[i],"core")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fi_cores) do
|
||||||
|
register_ki_entity(fi_cores[i],"buffer1")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fu_cores) do
|
||||||
|
register_ki_entity(fu_cores[i],"buffer2")
|
||||||
|
end
|
||||||
|
|
||||||
|
for x,f in pairs(el_beacons) do
|
||||||
|
register_ki_entity(el_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fi_beacons) do
|
||||||
|
register_ki_entity(fi_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fu_beacons) do
|
||||||
|
register_ki_entity(fu_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
|
||||||
|
local slave_ki_cores = game.surfaces[i].find_entities_filtered({name="el_ki_core_slave_entity"})
|
||||||
|
local slave_fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_slave_entity"})
|
||||||
|
local slave_fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_slave_entity"})
|
||||||
|
local container_fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_slave_container_entity"})
|
||||||
|
local container_fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_slave_container_entity"})
|
||||||
|
|
||||||
|
kill_old_slaves(slave_ki_cores,"core","slave")
|
||||||
|
kill_old_slaves(slave_fi_cores,"buffer1","slave")
|
||||||
|
kill_old_slaves(slave_fu_cores,"buffer2","slave")
|
||||||
|
kill_old_slaves(container_fi_cores,"buffer1","container")
|
||||||
|
kill_old_slaves(container_fu_cores,"buffer2","container")
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
180
oldmigration/248k-0.4.9.lua
Normal file
|
|
@ -0,0 +1,180 @@
|
||||||
|
require('scripts/electronic/el_ki_script')
|
||||||
|
require('scripts/gravitation/gr_black_hole_script')
|
||||||
|
local gui = require('scripts/gui')
|
||||||
|
|
||||||
|
local function register_ki_entity(entity,type)
|
||||||
|
if entity then
|
||||||
|
if entity.valid then
|
||||||
|
if global.ki then
|
||||||
|
if global.ki[type] then
|
||||||
|
local unit = entity.unit_number
|
||||||
|
if not global.ki[type][unit] then
|
||||||
|
if type == "core" then
|
||||||
|
make_ki_core(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "buffer1" then
|
||||||
|
make_ki_buffer1(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "buffer2" then
|
||||||
|
make_ki_buffer2(entity)
|
||||||
|
end
|
||||||
|
|
||||||
|
if type == "beacon" then
|
||||||
|
make_ki_beacon(entity)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function remove_new_slaves(tablein,type,slave)
|
||||||
|
local table = tablein
|
||||||
|
for i,v in pairs(table) do
|
||||||
|
for x,f in pairs(global.ki[type]) do
|
||||||
|
if global.ki[type][x][slave] then
|
||||||
|
if global.ki[type][x][slave].valid then
|
||||||
|
if table[i] then
|
||||||
|
if table[i].valid then
|
||||||
|
if global.ki[type][x][slave].unit_number == table[i].unit_number then
|
||||||
|
table[i] = nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return table
|
||||||
|
end
|
||||||
|
|
||||||
|
local function kill_old_slaves(table,type,slave)
|
||||||
|
local old_slaves = remove_new_slaves(table,type,slave)
|
||||||
|
if old_slaves then
|
||||||
|
for i,v in pairs(old_slaves) do
|
||||||
|
if old_slaves[i] then
|
||||||
|
if old_slaves[i].valid then
|
||||||
|
local slave = old_slaves[i]
|
||||||
|
slave.destroy()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
for _, force in pairs(game.forces) do
|
||||||
|
force.reset_recipes()
|
||||||
|
force.reset_technologies()
|
||||||
|
force.reset_technology_effects()
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if game.active_mods["Booktorio"] then
|
||||||
|
registerThread_248k()
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.players) do
|
||||||
|
gui.add_top_gui(game.players[i])
|
||||||
|
end
|
||||||
|
|
||||||
|
--if not global.ki then
|
||||||
|
el_ki_init(e)
|
||||||
|
gr_black_hole_init(e)
|
||||||
|
--end
|
||||||
|
|
||||||
|
if global.el_ki_stats then
|
||||||
|
for i,v in pairs(global.el_ki_stats) do
|
||||||
|
local slave = global.el_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.el_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
make_ki_core(global.el_ki_stats[i].entity)
|
||||||
|
global.el_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fi_ki_stats then
|
||||||
|
for i,v in pairs(global.fi_ki_stats) do
|
||||||
|
local slave = global.fi_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fi_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fi_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer1(global.fi_ki_stats[i].entity)
|
||||||
|
global.fi_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fi_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.fu_ki_stats then
|
||||||
|
for i,v in pairs(global.fu_ki_stats) do
|
||||||
|
local slave = global.fu_ki_stats[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
local container = global.fu_ki_stats[i].container
|
||||||
|
container.destroy()
|
||||||
|
local container2 = global.fu_ki_stats[i].container2
|
||||||
|
container2.destroy()
|
||||||
|
make_ki_buffer2(global.fu_ki_stats[i].entity)
|
||||||
|
global.fu_ki_stats[i] = nil
|
||||||
|
end
|
||||||
|
global.fu_ki_stats = nil
|
||||||
|
end
|
||||||
|
if global.el_ki_beacons then
|
||||||
|
for i,v in pairs(global.el_ki_beacons) do
|
||||||
|
local slave = global.el_ki_beacons[i].slave
|
||||||
|
slave.destroy()
|
||||||
|
make_ki_beacon(global.el_ki_beacons[i].entity)
|
||||||
|
global.el_ki_beacons[i] = nil
|
||||||
|
end
|
||||||
|
global.el_ki_beacons = nil
|
||||||
|
end
|
||||||
|
|
||||||
|
for i,v in pairs(game.surfaces) do
|
||||||
|
local el_cores = game.surfaces[i].find_entities_filtered({name="el_ki_core_entity"})
|
||||||
|
local fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_entity"})
|
||||||
|
local fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_entity"})
|
||||||
|
local el_beacons = game.surfaces[i].find_entities_filtered({name="el_ki_beacon_entity"})
|
||||||
|
local fi_beacons = game.surfaces[i].find_entities_filtered({name="fi_ki_beacon_entity"})
|
||||||
|
local fu_beacons = game.surfaces[i].find_entities_filtered({name="fu_ki_beacon_entity"})
|
||||||
|
|
||||||
|
for x,f in pairs(el_cores) do
|
||||||
|
register_ki_entity(el_cores[i],"core")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fi_cores) do
|
||||||
|
register_ki_entity(fi_cores[i],"buffer1")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fu_cores) do
|
||||||
|
register_ki_entity(fu_cores[i],"buffer2")
|
||||||
|
end
|
||||||
|
|
||||||
|
for x,f in pairs(el_beacons) do
|
||||||
|
register_ki_entity(el_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fi_beacons) do
|
||||||
|
register_ki_entity(fi_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
for x,f in pairs(fu_beacons) do
|
||||||
|
register_ki_entity(fu_beacons[i],"beacon")
|
||||||
|
end
|
||||||
|
|
||||||
|
local slave_ki_cores = game.surfaces[i].find_entities_filtered({name="el_ki_core_slave_entity"})
|
||||||
|
local slave_fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_slave_entity"})
|
||||||
|
local slave_fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_slave_entity"})
|
||||||
|
local container_fi_cores = game.surfaces[i].find_entities_filtered({name="fi_ki_core_slave_container_entity"})
|
||||||
|
local container_fu_cores = game.surfaces[i].find_entities_filtered({name="fu_ki_core_slave_container_entity"})
|
||||||
|
|
||||||
|
kill_old_slaves(slave_ki_cores,"core","slave")
|
||||||
|
kill_old_slaves(slave_fi_cores,"buffer1","slave")
|
||||||
|
kill_old_slaves(slave_fu_cores,"buffer2","slave")
|
||||||
|
kill_old_slaves(container_fi_cores,"buffer1","container")
|
||||||
|
kill_old_slaves(container_fu_cores,"buffer2","container")
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
327
prototypes/248k_elements.lua
Normal file
|
|
@ -0,0 +1,327 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup[name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/elements/'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_hydrogen',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_hydrogen.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_e',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_oxygen',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_oxygen.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '10kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_e',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_protium',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_protium.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_deuterium',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_deuterium.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_tritium',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_tritium.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_lithium_6',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_lithium_6.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_helium_3',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_helium_3.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_helium_4',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_helium_4.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
--heated plasma
|
||||||
|
{
|
||||||
|
name = 'fu_protium_heated',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_protium_heated.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_iron_heated',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_iron_heated.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_iron',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_iron.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_copper',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_copper.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_copper_heated',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_copper_heated.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_lithium_7',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_lithium_7.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_lithium_7_heated',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_lithium_7_heated.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_sulfur',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_sulfur.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_sulfur_heated',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_sulfur_heated.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_uranium_238',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_uranium_238.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_uranium_238_heated',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_uranium_238_heated.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_uranium_235',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_uranium_235.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_uranium_235_heated',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_uranium_235_heated.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0.290,
|
||||||
|
subgroup = 'fu_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
})
|
||||||
161
prototypes/248k_fluids.lua
Normal file
|
|
@ -0,0 +1,161 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup[name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fluids/'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_pressurized_water',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('el_pressurized_water.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 100,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
flow_color = { r=0.0, g=0.3, b=0.4 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0,
|
||||||
|
subgroup = 'el_item_subgroup_e',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_kerosene',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('el_kerosene.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '10kJ',
|
||||||
|
base_color = { r=0.76, g=0.45, b=0.3 },
|
||||||
|
flow_color = { r=0.76, g=0.45, b=0.3 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0,
|
||||||
|
subgroup = 'el_item_subgroup_e',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_acidic_water',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('el_acidic_water.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.55, g=0.82, b=0.51 },
|
||||||
|
flow_color = { r=0.55, g=0.82, b=0.51 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0,
|
||||||
|
subgroup = 'el_item_subgroup_e',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_desulfurized_kerosene',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('el_desulfurized_kerosene.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '2kJ',
|
||||||
|
base_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
flow_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0,
|
||||||
|
subgroup = 'el_item_subgroup_e',
|
||||||
|
order = 'a-d',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_ki_memory_fluid',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('el_ki_memory_fluid.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
flow_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0,
|
||||||
|
subgroup = 'el_item_subgroup_e',
|
||||||
|
order = 'a-e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_ki_cpu_fluid',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('el_ki_cpu_fluid.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
flow_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0,
|
||||||
|
subgroup = 'el_item_subgroup_e',
|
||||||
|
order = 'a-e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_circuit_fluid',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fi_ki_circuit_fluid.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
flow_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0,
|
||||||
|
subgroup = 'el_item_subgroup_e',
|
||||||
|
order = 'a-e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_circuit_fluid',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_ki_circuit_fluid.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
flow_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0,
|
||||||
|
subgroup = 'el_item_subgroup_e',
|
||||||
|
order = 'a-e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crystal_fluid',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fi_crystal_fluid.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1000,
|
||||||
|
heat_capacity = '1kJ',
|
||||||
|
base_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
flow_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0,
|
||||||
|
subgroup = 'fi_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_lead_fluid',
|
||||||
|
type = 'fluid',
|
||||||
|
icon = sprite('fu_lead_fluid.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
default_temperature = 15,
|
||||||
|
max_temperature = 1500,
|
||||||
|
heat_capacity = '100kJ',
|
||||||
|
base_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
flow_color = { r=0.9, g=0.77, b=0.6 },
|
||||||
|
pressure_to_speed_ratio = 0.400,
|
||||||
|
flow_to_energy_ratio = 0,
|
||||||
|
subgroup = 'fu_item_subgroup_e',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
})
|
||||||
442
prototypes/248k_subgroups.lua
Normal file
|
|
@ -0,0 +1,442 @@
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/groups/'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
data:extend({
|
||||||
|
--============================================================================================================================================================
|
||||||
|
--inventory subgroups
|
||||||
|
{
|
||||||
|
name = 'el_item_group',
|
||||||
|
type = 'item-group',
|
||||||
|
icon = sprite('el_group_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
inventory_order = "f",
|
||||||
|
order = "e",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_item_group',
|
||||||
|
type = 'item-group',
|
||||||
|
icon = sprite('fi_group_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
inventory_order = "g",
|
||||||
|
order = "e",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_item_group',
|
||||||
|
type = 'item-group',
|
||||||
|
icon = sprite('fu_group_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
inventory_order = "h",
|
||||||
|
order = "e",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_group',
|
||||||
|
type = 'item-group',
|
||||||
|
icon = sprite('fu_group_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
inventory_order = "k",
|
||||||
|
order = "e",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_item_group',
|
||||||
|
type = 'item-group',
|
||||||
|
icon = sprite('gr_group_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
inventory_order = "j",
|
||||||
|
order = "e",
|
||||||
|
},
|
||||||
|
--ores+materials
|
||||||
|
{
|
||||||
|
name = 'el_item_subgroup_a',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'el_item_group',
|
||||||
|
order = 'a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_item_subgroup_a',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fi_item_group',
|
||||||
|
order = 'a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_item_subgroup_a-b',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fi_item_group',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_item_subgroup_a-c',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fi_item_group',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_item_subgroup_a',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_item_group',
|
||||||
|
order = 'a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_item_subgroup_a',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'gr_item_group',
|
||||||
|
order = 'a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_item_subgroup_a-b',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_item_group',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
--items
|
||||||
|
{
|
||||||
|
name = 'el_item_subgroup_b',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'el_item_group',
|
||||||
|
order = 'b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_item_subgroup_b',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fi_item_group',
|
||||||
|
order = 'b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_item_subgroup_b',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_item_group',
|
||||||
|
order = 'b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_item_subgroup_b',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'gr_item_group',
|
||||||
|
order = 'b',
|
||||||
|
},
|
||||||
|
--placeable
|
||||||
|
{
|
||||||
|
name = 'el_item_subgroup_c',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'el_item_group',
|
||||||
|
order = 'c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_item_subgroup_c',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fi_item_group',
|
||||||
|
order = 'c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_item_subgroup_c',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_item_group',
|
||||||
|
order = 'c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_item_subgroup_c',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'gr_item_group',
|
||||||
|
order = 'c',
|
||||||
|
},
|
||||||
|
--train and stuff
|
||||||
|
{
|
||||||
|
name = 'el_item_subgroup_d',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'el_item_group',
|
||||||
|
order = 'd',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_item_subgroup_d',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fi_item_group',
|
||||||
|
order = 'd',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_item_subgroup_d',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_item_group',
|
||||||
|
order = 'd-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_item_subgroup_d',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'gr_item_group',
|
||||||
|
order = 'd-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_item_subgroup_d-b',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_item_group',
|
||||||
|
order = 'd-b',
|
||||||
|
},
|
||||||
|
--fluids
|
||||||
|
{
|
||||||
|
name = 'el_item_subgroup_e',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'el_item_group',
|
||||||
|
order = 'e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_item_subgroup_e',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fi_item_group',
|
||||||
|
order = 'e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_item_subgroup_e',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_item_group',
|
||||||
|
order = 'e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_item_subgroup_e',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'gr_item_group',
|
||||||
|
order = 'e',
|
||||||
|
},
|
||||||
|
--ki stuff
|
||||||
|
{
|
||||||
|
name = 'el_item_subgroup_f',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'el_item_group',
|
||||||
|
order = 'f',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_item_subgroup_f',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fi_item_group',
|
||||||
|
order = 'f',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_item_subgroup_f',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_item_group',
|
||||||
|
order = 'f',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_item_subgroup_f',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'gr_item_group',
|
||||||
|
order = 'f',
|
||||||
|
},
|
||||||
|
--j
|
||||||
|
{
|
||||||
|
name = 'fi_item_subgroup_j',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fi_item_group',
|
||||||
|
order = 'j',
|
||||||
|
},
|
||||||
|
--k
|
||||||
|
{
|
||||||
|
name = 'el_item_subgroup_k',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'el_item_group',
|
||||||
|
order = 'k',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_item_subgroup_k',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fi_item_group',
|
||||||
|
order = 'k',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_item_subgroup_k',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_item_group',
|
||||||
|
order = 'k',
|
||||||
|
},
|
||||||
|
--star engine
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_subgroup_a',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_star_engine_group',
|
||||||
|
order = 'a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_subgroup_b',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_star_engine_group',
|
||||||
|
order = 'b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_subgroup_c',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_star_engine_group',
|
||||||
|
order = 'c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_subgroup_d',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_star_engine_group',
|
||||||
|
order = 'd',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_subgroup_e',
|
||||||
|
type = 'item-subgroup',
|
||||||
|
group = 'fu_star_engine_group',
|
||||||
|
order = 'e',
|
||||||
|
},
|
||||||
|
--============================================================================================================================================================
|
||||||
|
|
||||||
|
--ki_crafting
|
||||||
|
{
|
||||||
|
name = 'el_ki_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--el_ki_memory
|
||||||
|
{
|
||||||
|
name = 'el_ki_memory_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--el_ki_cpu
|
||||||
|
{
|
||||||
|
name = 'el_ki_cpu_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--el_ki_core
|
||||||
|
{
|
||||||
|
name = 'el_ki_core_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_core_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_core_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_circuit_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_circuit_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
|
||||||
|
--============================================================================================================================================================
|
||||||
|
--fi_nuclear assembling
|
||||||
|
{
|
||||||
|
name = 'fi_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--fi_crushing
|
||||||
|
{
|
||||||
|
name = 'fi_crushing',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--fi_modules
|
||||||
|
--producticity
|
||||||
|
{
|
||||||
|
name = '248k_productivity_category',
|
||||||
|
type = 'module-category',
|
||||||
|
},
|
||||||
|
|
||||||
|
--============================================================================================================================================================
|
||||||
|
--fu fusor
|
||||||
|
{
|
||||||
|
name = 'fu_fusor_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--fu boiler
|
||||||
|
{
|
||||||
|
name = 'fu_boiler_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--fu_reactors
|
||||||
|
{
|
||||||
|
name = 'fu_stelar_reactor_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_tokamak_reactor_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--fu_exchanger
|
||||||
|
{
|
||||||
|
name = 'fu_exchanger_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--fu_activator
|
||||||
|
{
|
||||||
|
name = 'fu_activator_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--star engine
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_core_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_cooler_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_heater_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_caster_crafting_category',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
--============================================================================================================================================================
|
||||||
|
|
||||||
|
|
||||||
|
--fuel_category
|
||||||
|
{
|
||||||
|
name = 'el_train_fuel',
|
||||||
|
type = 'fuel-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_basic_fuel',
|
||||||
|
type = 'fuel-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_advanced_fuel',
|
||||||
|
type = 'fuel-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_pure_fuel',
|
||||||
|
type = 'fuel-category',
|
||||||
|
},
|
||||||
|
--train_equip
|
||||||
|
{
|
||||||
|
name = 'el_train_equipment',
|
||||||
|
type = 'equipment-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_train_equipment',
|
||||||
|
type = 'equipment-category',
|
||||||
|
},
|
||||||
|
|
||||||
|
--recipe
|
||||||
|
{
|
||||||
|
name = 'el_special_fluid',
|
||||||
|
type = 'recipe-category',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = "gr_cooker_fluid",
|
||||||
|
type = "recipe-category"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = "gr_charger_category",
|
||||||
|
type = "recipe-category"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = "gr_white_hole_category",
|
||||||
|
type = "recipe-category"
|
||||||
|
},
|
||||||
|
|
||||||
|
--grids
|
||||||
|
{
|
||||||
|
name = 'el_train_equipment_grid',
|
||||||
|
type = 'equipment-grid',
|
||||||
|
width = 6,
|
||||||
|
height = 6,
|
||||||
|
equipment_categories = {
|
||||||
|
'el_train_equipment',
|
||||||
|
'fi_train_equipment',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
2798
prototypes/248k_techs.lua
Normal file
888
prototypes/el_recipes.lua
Normal file
|
|
@ -0,0 +1,888 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_solar_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--settings check
|
||||||
|
--if config('recipe_enabled') then
|
||||||
|
--end
|
||||||
|
|
||||||
|
--recipe
|
||||||
|
data:extend({
|
||||||
|
--el_solar
|
||||||
|
{
|
||||||
|
name = 'el_solar_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'el_aluminum_item',30},
|
||||||
|
{'concrete',20},
|
||||||
|
{'electronic-circuit',40},
|
||||||
|
{'copper-plate',20},
|
||||||
|
},
|
||||||
|
result = 'el_solar_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 4,
|
||||||
|
order = 'a-a-2',
|
||||||
|
},
|
||||||
|
--el_aluminum_ore
|
||||||
|
{
|
||||||
|
name = 'el_aluminum_ore_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting-with-fluid',
|
||||||
|
ingredients = {
|
||||||
|
{'stone',2},
|
||||||
|
{type="fluid", name="sulfuric-acid", amount=20},
|
||||||
|
},
|
||||||
|
result = 'el_aluminum_ore_item',
|
||||||
|
result_count = 4,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
--el_aluminum_item
|
||||||
|
{
|
||||||
|
name = 'el_aluminum_item_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'smelting',
|
||||||
|
ingredients = {
|
||||||
|
{'el_aluminum_ore_item',2},
|
||||||
|
},
|
||||||
|
result = 'el_aluminum_item',
|
||||||
|
result_count = 4,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
--el_lithium_ore
|
||||||
|
{
|
||||||
|
name = 'el_lithium_ore_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting-with-fluid',
|
||||||
|
ingredients = {
|
||||||
|
{'stone',2},
|
||||||
|
{type="fluid", name="sulfuric-acid", amount=20},
|
||||||
|
},
|
||||||
|
result = 'el_lithium_ore_item',
|
||||||
|
result_count = 4,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
--el_lithium_item
|
||||||
|
{
|
||||||
|
name = 'el_lithium_item_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'smelting',
|
||||||
|
ingredients = {
|
||||||
|
{'el_lithium_ore_item',2},
|
||||||
|
},
|
||||||
|
result = 'el_lithium_item',
|
||||||
|
result_count = 4,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
order = 'a-d',
|
||||||
|
},
|
||||||
|
--el_lithium_basic_battery
|
||||||
|
{
|
||||||
|
name = 'el_lithium_basic_battery_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
subgroup = 'el_item_subgroup_b',
|
||||||
|
ingredients = {
|
||||||
|
{'el_lithium_item',4},
|
||||||
|
{'iron-plate',4},
|
||||||
|
{'copper-plate',4},
|
||||||
|
},
|
||||||
|
result = 'battery',
|
||||||
|
result_count = 12,
|
||||||
|
energy_required = 20,
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
--el_lithium_battery
|
||||||
|
{
|
||||||
|
name = 'el_lithium_battery_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{'el_lithium_item',4},
|
||||||
|
{'iron-plate',4},
|
||||||
|
{'steel-plate',4},
|
||||||
|
},
|
||||||
|
result = 'el_lithium_battery',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 10,
|
||||||
|
},
|
||||||
|
--el_burner
|
||||||
|
{
|
||||||
|
name = 'el_burner_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{'iron-gear-wheel',40},
|
||||||
|
{'steel-plate',15},
|
||||||
|
{'el_aluminum_item',15},
|
||||||
|
{'electronic-circuit',10}
|
||||||
|
},
|
||||||
|
result = 'el_burner_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_burner_kerosene_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{'el_burner_item',1},
|
||||||
|
{'pipe',20},
|
||||||
|
{'electronic-circuit',20},
|
||||||
|
},
|
||||||
|
result = 'el_burner_kerosene_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
--el_water_generator
|
||||||
|
{
|
||||||
|
name = 'el_water_generator_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{'iron-gear-wheel',60},
|
||||||
|
{'engine-unit',15},
|
||||||
|
{'el_aluminum_item',30},
|
||||||
|
{'electronic-circuit',20},
|
||||||
|
{'pipe',30},
|
||||||
|
{'copper-cable',20},
|
||||||
|
},
|
||||||
|
result = 'el_water_generator_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
--el_pressurizer
|
||||||
|
{
|
||||||
|
name = 'el_pressurizer_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{'iron-gear-wheel',40},
|
||||||
|
{'pipe',40},
|
||||||
|
{'el_aluminum_item',15},
|
||||||
|
{'electronic-circuit',15}
|
||||||
|
},
|
||||||
|
result = 'el_pressurizer_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
--el_water_pressure
|
||||||
|
{
|
||||||
|
name = 'el_water_pressure_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'el_special_fluid',
|
||||||
|
icon = sprite('fluids/el_pressurized_water.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
main_product = 'el_pressurized_water',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="water", amount=480},
|
||||||
|
{type="fluid", name="steam", amount=240, temperature=165},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_pressurized_water", amount=240, temperature = '500'},
|
||||||
|
{type="fluid", name="water", amount=240},
|
||||||
|
},
|
||||||
|
energy_required = 2,
|
||||||
|
},
|
||||||
|
--el_diesel_train
|
||||||
|
{
|
||||||
|
name = 'el_diesel_train_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{'locomotive',1},
|
||||||
|
{'engine-unit',15},
|
||||||
|
{'iron-gear-wheel',40},
|
||||||
|
{'advanced-circuit',25},
|
||||||
|
{'el_aluminum_item',25},
|
||||||
|
},
|
||||||
|
result = 'el_diesel_train_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
--el_kerosene
|
||||||
|
{
|
||||||
|
name = 'el_kerosene_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'oil-processing',
|
||||||
|
main_product = 'el_kerosene',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="crude-oil", amount=160},
|
||||||
|
{type="fluid", name="steam", amount=100},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_kerosene", amount=120},
|
||||||
|
{type="fluid", name="light-oil", amount=90},
|
||||||
|
{type="fluid", name="water", amount=90},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 5,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_tank_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{'pipe',100},
|
||||||
|
{'electronic-circuit',60},
|
||||||
|
{'steel-plate', 200},
|
||||||
|
{'el_aluminum_item',400},
|
||||||
|
},
|
||||||
|
result = 'el_tank_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
--el_desulfurized_kerosene
|
||||||
|
{
|
||||||
|
name = 'el_desulfurized_kerosene_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'chemistry',
|
||||||
|
main_product = 'el_desulfurized_kerosene',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="el_kerosene", amount=200},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_desulfurized_kerosene", amount=80,temperature=40},
|
||||||
|
{type="fluid", name="el_acidic_water", amount=120},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
--el_usage_acidic_water
|
||||||
|
{
|
||||||
|
name = 'el_usage_acidic_water_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'chemistry',
|
||||||
|
subgroup = 'el_item_subgroup_e',
|
||||||
|
main_product = 'sulfuric-acid',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="el_acidic_water", amount=150},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="water", amount=50},
|
||||||
|
{type="fluid", name="sulfuric-acid", amount=100},
|
||||||
|
--{type="item", name="sulfur", amount=6},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
--el_train_fuel_diesel
|
||||||
|
{
|
||||||
|
name = 'el_train_fuel_diesel_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting-with-fluid',
|
||||||
|
subgroup = 'el_item_subgroup_d',
|
||||||
|
main_product = 'el_train_fuel_diesel_item',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="el_desulfurized_kerosene", amount=70},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="el_train_fuel_diesel_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 30,
|
||||||
|
},
|
||||||
|
--el_generator_equip
|
||||||
|
{
|
||||||
|
name = 'el_train_equipment_generator_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
subgroup = 'el_item_subgroup_d',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="el_lithium_battery", amount=10},
|
||||||
|
{type="item", name="engine-unit", amount=15},
|
||||||
|
{type="item", name="el_aluminum_item", amount=15},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="el_train_equipment_generator_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 25,
|
||||||
|
},
|
||||||
|
--el_accelerator_equip
|
||||||
|
{
|
||||||
|
name = 'el_train_equipment_accelerator_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
subgroup = 'el_item_subgroup_d',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="pump", amount=5},
|
||||||
|
{type="item", name="steel-plate", amount=15},
|
||||||
|
{type="item", name="el_aluminum_item", amount=15},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="el_train_equipment_accelerator_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 25,
|
||||||
|
},
|
||||||
|
--el_energy_crystal
|
||||||
|
{
|
||||||
|
name = 'el_energy_crystal_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting-with-fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="stone", amount=10},
|
||||||
|
{type="fluid", name="el_acidic_water", amount=30},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="el_energy_crystal_item", amount=3},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
},
|
||||||
|
--el_energy_crystal_fuel
|
||||||
|
{
|
||||||
|
name = 'el_train_fuel_diesel_energized_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="el_train_fuel_diesel_item", amount=2},
|
||||||
|
{type="item", name="el_energy_crystal_item", amount=2},
|
||||||
|
{type="item", name="el_lithium_item", amount=2},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="el_train_fuel_diesel_energized_item", amount=4},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 30,
|
||||||
|
},
|
||||||
|
--el_ki_beacon
|
||||||
|
{
|
||||||
|
name = 'el_ki_beacon_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="steel-plate", amount=20},
|
||||||
|
{type="item", name="el_aluminum_item", amount=10},
|
||||||
|
{type="item", name="electronic-circuit", amount=20},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="el_ki_beacon_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_beacon_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="steel-plate", amount=20},
|
||||||
|
{type="item", name="low-density-structure", amount=10},
|
||||||
|
{type="item", name="advanced-circuit", amount=20},
|
||||||
|
{type="item", name="el_ki_beacon_item", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="fi_ki_beacon_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_beacon_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="steel-plate", amount=20},
|
||||||
|
{type="item", name="fu_tech_sign_item", amount=100},
|
||||||
|
{type="item", name="processing-unit", amount=20},
|
||||||
|
{type="item", name="fi_ki_beacon_item", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="fu_ki_beacon_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
--el_ki_core
|
||||||
|
{
|
||||||
|
name = 'el_ki_core_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="steel-plate", amount=100},
|
||||||
|
{type="item", name="concrete", amount=500},
|
||||||
|
{type="item", name="electronic-circuit", amount=100},
|
||||||
|
{type="item", name="advanced-circuit", amount=100},
|
||||||
|
{type="item", name="el_aluminum_item", amount=140},
|
||||||
|
{type="item", name="el_energy_crystal_item", amount=40},
|
||||||
|
{type="item", name="el_solar_item", amount=10},
|
||||||
|
{type="item", name="el_lithium_battery", amount=40},
|
||||||
|
{type="item", name="el_water_generator_item", amount=10},
|
||||||
|
{type="item", name="el_burner_item", amount=10},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="el_ki_core_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 60,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_core_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="fi_crafter_item", amount=10},
|
||||||
|
{type="item", name="fi_miner_item", amount=10},
|
||||||
|
{type="item", name="fi_crusher_item", amount=10},
|
||||||
|
{type="item", name="fi_modules_core_item", amount=20},
|
||||||
|
{type="item", name="low-density-structure", amount=100},
|
||||||
|
{type="item", name="concrete", amount=500},
|
||||||
|
{type="item", name="electronic-circuit", amount=100},
|
||||||
|
{type="item", name="advanced-circuit", amount=100},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="fi_ki_core_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 60,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_core_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="steel-plate", amount=100},
|
||||||
|
{type="item", name="concrete", amount=500},
|
||||||
|
{type="item", name="electronic-circuit", amount=100},
|
||||||
|
{type="item", name="advanced-circuit", amount=100},
|
||||||
|
{type="item", name="processing-unit", amount=100},
|
||||||
|
{type="item", name="fu_space_probe_down_matter_item", amount=10},
|
||||||
|
{type="item", name="fu_space_probe_up_matter_item", amount=10},
|
||||||
|
{type="item", name="fu_exchanger_item", amount=10},
|
||||||
|
{type="item", name="fu_tech_sign_item", amount=100},
|
||||||
|
{type="item", name="fu_boiler_item", amount=10},
|
||||||
|
{type="item", name="fu_burner_item", amount=10},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="fu_ki_core_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 60,
|
||||||
|
},
|
||||||
|
--el_ki_memory_entity
|
||||||
|
{
|
||||||
|
name = 'el_ki_memory_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="steel-plate", amount=40},
|
||||||
|
{type="item", name="concrete", amount=60},
|
||||||
|
{type="item", name="advanced-circuit", amount=100},
|
||||||
|
{type="item", name="el_aluminum_item", amount=100},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="el_ki_memory_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 30,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_circuit_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="fi_industrial_steel_item", amount=80},
|
||||||
|
{type="item", name="concrete", amount=120},
|
||||||
|
{type="item", name="advanced-circuit", amount=100},
|
||||||
|
{type="item", name="low-density-structure", amount=100},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="fi_ki_circuit_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 30,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_circuit_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="fi_industrial_steel_item", amount=80},
|
||||||
|
{type="item", name="concrete", amount=120},
|
||||||
|
{type="item", name="advanced-circuit", amount=100},
|
||||||
|
{type="item", name="processing-unit", amount=100},
|
||||||
|
{type="item", name="fu_tech_sign_item", amount=100},
|
||||||
|
{type="item", name="low-density-structure", amount=100},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="fu_ki_circuit_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 30,
|
||||||
|
},
|
||||||
|
--el_ki_memory_fluid
|
||||||
|
{
|
||||||
|
name = 'el_ki_memory_fluid_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'el_ki_memory_category',
|
||||||
|
main_product = 'el_ki_memory_fluid',
|
||||||
|
ingredients = {
|
||||||
|
--{type="fluid", name="water", amount=480},
|
||||||
|
--{type="fluid", name="steam", amount=240, temperature=165},
|
||||||
|
{type="item", name="red-wire", amount=10},
|
||||||
|
{type="item", name="el_energy_crystal_item", amount=2},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_ki_memory_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_ki_memory_fluid_recipe_1',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'el_ki_memory_category',
|
||||||
|
main_product = 'el_ki_memory_fluid',
|
||||||
|
ingredients = {
|
||||||
|
--{type="fluid", name="water", amount=480},
|
||||||
|
--{type="fluid", name="steam", amount=240, temperature=165},
|
||||||
|
{type="item", name="red-wire", amount=8},
|
||||||
|
{type="item", name="el_energy_crystal_item", amount=2},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_ki_memory_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_ki_memory_fluid_recipe_2',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'el_ki_memory_category',
|
||||||
|
main_product = 'el_ki_memory_fluid',
|
||||||
|
ingredients = {
|
||||||
|
--{type="fluid", name="water", amount=480},
|
||||||
|
--{type="fluid", name="steam", amount=240, temperature=165},
|
||||||
|
{type="item", name="red-wire", amount=8},
|
||||||
|
{type="item", name="el_energy_crystal_item", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_ki_memory_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_ki_memory_fluid_recipe_3',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'el_ki_memory_category',
|
||||||
|
main_product = 'el_ki_memory_fluid',
|
||||||
|
ingredients = {
|
||||||
|
--{type="fluid", name="water", amount=480},
|
||||||
|
--{type="fluid", name="steam", amount=240, temperature=165},
|
||||||
|
{type="item", name="red-wire", amount=8},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_ki_memory_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_circuit_fluid_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_ki_circuit_category',
|
||||||
|
main_product = 'fu_ki_circuit_fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="fu_tech_sign_item", amount=20},
|
||||||
|
{type="item", name="advanced-circuit", amount=20},
|
||||||
|
{type="item", name="fu_space_probe_science_item", amount=4},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="fu_ki_circuit_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_circuit_fluid_recipe_1',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_ki_circuit_category',
|
||||||
|
main_product = 'fu_ki_circuit_fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="fu_tech_sign_item", amount=16},
|
||||||
|
{type="item", name="advanced-circuit", amount=16},
|
||||||
|
{type="item", name="fu_space_probe_science_item", amount=2},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="fu_ki_circuit_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_circuit_fluid_recipe_2',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_ki_circuit_category',
|
||||||
|
main_product = 'fu_ki_circuit_fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="fu_tech_sign_item", amount=16},
|
||||||
|
{type="item", name="advanced-circuit", amount=16},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="fu_ki_circuit_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_circuit_fluid_recipe_3',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_ki_circuit_category',
|
||||||
|
main_product = 'fu_ki_circuit_fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="fu_tech_sign_item", amount=12},
|
||||||
|
{type="item", name="advanced-circuit", amount=12},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="fu_ki_circuit_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_circuit_fluid_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_ki_circuit_category',
|
||||||
|
main_product = 'fi_ki_circuit_fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="uranium-238", amount=20},
|
||||||
|
{type="item", name="uranium-235", amount=1},
|
||||||
|
{type="item", name="battery", amount=10},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="fi_ki_circuit_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_circuit_fluid_recipe_1',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_ki_circuit_category',
|
||||||
|
main_product = 'fi_ki_circuit_fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="uranium-238", amount=10},
|
||||||
|
{type="item", name="uranium-235", amount=1},
|
||||||
|
{type="item", name="battery", amount=8},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="fi_ki_circuit_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_circuit_fluid_recipe_2',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_ki_circuit_category',
|
||||||
|
main_product = 'fi_ki_circuit_fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="uranium-238", amount=10},
|
||||||
|
{type="item", name="battery", amount=8},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="fi_ki_circuit_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_circuit_fluid_recipe_3',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_ki_circuit_category',
|
||||||
|
main_product = 'fi_ki_circuit_fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="uranium-ore", amount=10},
|
||||||
|
{type="item", name="battery", amount=4},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="fi_ki_circuit_fluid", amount=200, temperature = '500'},
|
||||||
|
{type="item", name="uranium-235", amount=1},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
--el_ki_cpu_entity
|
||||||
|
{
|
||||||
|
name = 'el_ki_cpu_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="steel-plate", amount=40},
|
||||||
|
{type="item", name="concrete", amount=60},
|
||||||
|
{type="item", name="advanced-circuit", amount=100},
|
||||||
|
{type="item", name="el_aluminum_item", amount=100},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="el_ki_cpu_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 30,
|
||||||
|
},
|
||||||
|
--el_ki_cpu_fluid
|
||||||
|
{
|
||||||
|
name = 'el_ki_cpu_fluid_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'el_ki_cpu_category',
|
||||||
|
main_product = 'el_ki_cpu_fluid',
|
||||||
|
ingredients = {
|
||||||
|
--{type="fluid", name="water", amount=480},
|
||||||
|
--{type="fluid", name="steam", amount=240, temperature=165},
|
||||||
|
{type="item", name="green-wire", amount=10},
|
||||||
|
{type="item", name="el_energy_crystal_item", amount=2},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_ki_cpu_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_ki_cpu_fluid_recipe_1',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'el_ki_cpu_category',
|
||||||
|
main_product = 'el_ki_cpu_fluid',
|
||||||
|
ingredients = {
|
||||||
|
--{type="fluid", name="water", amount=480},
|
||||||
|
--{type="fluid", name="steam", amount=240, temperature=165},
|
||||||
|
{type="item", name="green-wire", amount=8},
|
||||||
|
{type="item", name="el_energy_crystal_item", amount=2},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_ki_cpu_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_ki_cpu_fluid_recipe_2',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'el_ki_cpu_category',
|
||||||
|
main_product = 'el_ki_cpu_fluid',
|
||||||
|
ingredients = {
|
||||||
|
--{type="fluid", name="water", amount=480},
|
||||||
|
--{type="fluid", name="steam", amount=240, temperature=165},
|
||||||
|
{type="item", name="green-wire", amount=8},
|
||||||
|
{type="item", name="el_energy_crystal_item", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_ki_cpu_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_ki_cpu_fluid_recipe_3',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'el_ki_cpu_category',
|
||||||
|
main_product = 'el_ki_cpu_fluid',
|
||||||
|
ingredients = {
|
||||||
|
--{type="fluid", name="water", amount=480},
|
||||||
|
--{type="fluid", name="steam", amount=240, temperature=165},
|
||||||
|
{type="item", name="green-wire", amount=8},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="el_ki_cpu_fluid", amount=200, temperature = '500'},
|
||||||
|
},
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
|
||||||
|
--el_ki_core_cpu_memory
|
||||||
|
{
|
||||||
|
name = 'el_ki_cpu_memory_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'el_ki_core_category',
|
||||||
|
icon = sprite('fluids/el_pressurized_water.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
subgroup = 'el_item_subgroup_f',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="el_ki_cpu_fluid", amount=550},
|
||||||
|
{type="fluid", name="el_ki_memory_fluid", amount=550},
|
||||||
|
},
|
||||||
|
results = {},
|
||||||
|
energy_required = 15,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_cpu_memory_circuit_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_ki_core_category',
|
||||||
|
icon = sprite('fluids/el_pressurized_water.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
subgroup = 'el_item_subgroup_f',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="el_ki_cpu_fluid", amount=550},
|
||||||
|
{type="fluid", name="el_ki_memory_fluid", amount=550},
|
||||||
|
{type="fluid", name="fi_ki_circuit_fluid", amount=550}
|
||||||
|
},
|
||||||
|
results = {},
|
||||||
|
energy_required = 15,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_cpu_memory_circuit_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_ki_core_category',
|
||||||
|
icon = sprite('fluids/el_pressurized_water.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
subgroup = 'el_item_subgroup_f',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="el_ki_cpu_fluid", amount=550},
|
||||||
|
{type="fluid", name="el_ki_memory_fluid", amount=550},
|
||||||
|
{type="fluid", name="fi_ki_circuit_fluid", amount=550},
|
||||||
|
{type="fluid", name="fu_ki_circuit_fluid", amount=550}
|
||||||
|
},
|
||||||
|
results = {},
|
||||||
|
energy_required = 15,
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
34
prototypes/electronic/el_aluminum.lua
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_aluminum_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_aluminum/el_aluminum_'..name
|
||||||
|
end
|
||||||
|
--ore
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_aluminum_ore_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('ore_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'el_item_subgroup_a',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_aluminum_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'el_item_subgroup_a',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
21
prototypes/electronic/el_ammo.lua
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_ammo_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_ammo/el_ammo_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_ammo_item',
|
||||||
|
type = 'ammo',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_b',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
})
|
||||||
180
prototypes/electronic/el_burner.lua
Normal file
|
|
@ -0,0 +1,180 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_burner_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_burner/el_burner_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_burner_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_burner_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_c',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_burner_kerosene_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('kerosene_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_burner_kerosene_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_c',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'el_burner_entity',
|
||||||
|
type = 'burner-generator',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral", "not-rotatable"},
|
||||||
|
--minable
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_burner_item',
|
||||||
|
},
|
||||||
|
max_health = 150,
|
||||||
|
corpse = 'small-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
--energy
|
||||||
|
burner = {
|
||||||
|
type = 'burner',
|
||||||
|
fuel_inventory_size = 3,
|
||||||
|
effectivity = 1.2,
|
||||||
|
emissions_per_minute = 20,
|
||||||
|
smoke = {
|
||||||
|
{
|
||||||
|
name = 'smoke',
|
||||||
|
tape = 'trival-smoke',
|
||||||
|
frequency = 20,
|
||||||
|
position = {-0.6,-1.6},
|
||||||
|
--deviation = {x = -2, y = -2},
|
||||||
|
duration = 1,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-output',
|
||||||
|
input_flow_limit = '0W',
|
||||||
|
output_flow_limit = tostring(config('power_output'))..'W',
|
||||||
|
},
|
||||||
|
max_power_output = tostring(config('power_output'))..'W',
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {386,448},
|
||||||
|
scale = 0.26,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.2}
|
||||||
|
},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
working_sound =
|
||||||
|
{
|
||||||
|
sound = { filename = "__base__/sound/furnace.ogg" },
|
||||||
|
apparent_volume = 1.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--kerosene
|
||||||
|
{
|
||||||
|
name = 'el_burner_kerosene_entity',
|
||||||
|
type = 'generator',
|
||||||
|
icon = sprite('kerosene_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral", "not-rotatable"},
|
||||||
|
--minable
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_burner_kerosene_item',
|
||||||
|
},
|
||||||
|
max_health = 150,
|
||||||
|
corpse = 'small-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
--energy
|
||||||
|
effectivity = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-output',
|
||||||
|
input_flow_limit = '0W',
|
||||||
|
output_flow_limit = tostring(config('kerosene_power_output'))..'W',
|
||||||
|
emissions_per_minute = 20,
|
||||||
|
},
|
||||||
|
max_power_output = tostring(config('kerosene_power_output'))..'W',
|
||||||
|
maximum_temperature = 40,
|
||||||
|
fluid_usage_per_tick = 1,
|
||||||
|
fluid_box = {
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
filter = 'el_desulfurized_kerosene',
|
||||||
|
minimum_temperature = 0,
|
||||||
|
maximum_temperature = 40,
|
||||||
|
production_type = 'input-output',
|
||||||
|
pipe_connections = {
|
||||||
|
{type = "input-output", position = {2, 0}},
|
||||||
|
{type = "input-output", position = {-2, 0}},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
fluid_input = {
|
||||||
|
name = 'el_desulfurized_kerosene',
|
||||||
|
minimum_temperature = 0,
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
vertical_animation = {
|
||||||
|
filename = sprite('kerosene_entity_animation.png'),
|
||||||
|
size = {420,448},
|
||||||
|
--filename = sprite('test.png'),
|
||||||
|
--size = {512,512},
|
||||||
|
scale = 0.25,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.2}
|
||||||
|
},
|
||||||
|
horizontal_animation = {
|
||||||
|
filename = sprite('kerosene_entity_animation.png'),
|
||||||
|
size = {420,448},
|
||||||
|
--filename = sprite('test.png'),
|
||||||
|
--size = {512,512},
|
||||||
|
scale = 0.25,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.2}
|
||||||
|
},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
working_sound =
|
||||||
|
{
|
||||||
|
sound = { filename = "__base__/sound/furnace.ogg" },
|
||||||
|
apparent_volume = 1.5,
|
||||||
|
},
|
||||||
|
smoke = {
|
||||||
|
{
|
||||||
|
name = 'smoke',
|
||||||
|
tape = 'trival-smoke',
|
||||||
|
frequency = 0.5,
|
||||||
|
position = {-0.6,-1.8},
|
||||||
|
--deviation = {x = -2, y = -2},
|
||||||
|
duration = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
185
prototypes/electronic/el_diesel_train.lua
Normal file
|
|
@ -0,0 +1,185 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_diesel_train_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_diesel_train/el_diesel_train_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_diesel_train_item',
|
||||||
|
type = 'item-with-entity-data',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_diesel_train_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_d',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_diesel_train_entity',
|
||||||
|
type = 'locomotive',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","placeable-off-grid"},
|
||||||
|
max_health = 1200,
|
||||||
|
corpse = "medium-remnants",
|
||||||
|
dying_explosion = "medium-explosion",
|
||||||
|
collision_box = {{-0.6, -2.6}, {0.6, 2.6}},
|
||||||
|
selection_box = {{-1, -3}, {1, 3}},
|
||||||
|
drawing_box = {{-1, -4}, {1, 3}},
|
||||||
|
connection_distance = 3,
|
||||||
|
joint_distance = 4,
|
||||||
|
wheels = standard_train_wheels,
|
||||||
|
rail_category = "regular",
|
||||||
|
open_sound = {filename = "__base__/sound/car-door-open.ogg", volume = 0.7},
|
||||||
|
close_sound = {filename = "__base__/sound/car-door-close.ogg", volume = 0.7},
|
||||||
|
sound_minimum_speed = 0.2,
|
||||||
|
allow_manual_color = false,
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_diesel_train_item',
|
||||||
|
},
|
||||||
|
--stats
|
||||||
|
max_speed = 1.20,
|
||||||
|
max_power = '1800kW',
|
||||||
|
braking_force = 40,
|
||||||
|
friction_force = 0.00825,
|
||||||
|
air_resistance = 0.00225,
|
||||||
|
vertical_selection_shift = -0.5,
|
||||||
|
energy_per_hit_point = 8,
|
||||||
|
reversing_power_modifier = 0.5,
|
||||||
|
weight = 3200,
|
||||||
|
--grid
|
||||||
|
equipment_grid = 'el_train_equipment_grid',
|
||||||
|
--burner
|
||||||
|
burner = {
|
||||||
|
fuel_category = 'el_train_fuel',
|
||||||
|
fuel_inventory_size = 3,
|
||||||
|
effectitvity = 1,
|
||||||
|
emissions_per_minute = 40,
|
||||||
|
smoke = {
|
||||||
|
{
|
||||||
|
name = "train-smoke",
|
||||||
|
deviation = {0.3, 0.3},
|
||||||
|
frequency = 300,
|
||||||
|
position = {0, 0},
|
||||||
|
starting_frame = 0,
|
||||||
|
starting_frame_deviation = 60,
|
||||||
|
height = 2,
|
||||||
|
height_deviation = 0.5,
|
||||||
|
starting_vertical_speed = 0.2,
|
||||||
|
starting_vertical_speed_deviation = 0.1,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--light
|
||||||
|
front_light = {
|
||||||
|
{
|
||||||
|
type = "oriented",
|
||||||
|
minimum_darkness = 0.3,
|
||||||
|
picture = {
|
||||||
|
filename = "__core__/graphics/light-cone.png",
|
||||||
|
priority = "medium",
|
||||||
|
scale = 2,
|
||||||
|
width = 200,
|
||||||
|
height = 200,
|
||||||
|
},
|
||||||
|
shift = {-0.3, -10},
|
||||||
|
size = 1,
|
||||||
|
intensity = 1.5,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "oriented",
|
||||||
|
minimum_darkness = 0.3,
|
||||||
|
picture = {
|
||||||
|
filename = "__core__/graphics/light-cone.png",
|
||||||
|
priority = "medium",
|
||||||
|
scale = 2,
|
||||||
|
width = 200,
|
||||||
|
height = 200,
|
||||||
|
},
|
||||||
|
shift = {0.3, -10},
|
||||||
|
size = 1,
|
||||||
|
intensity = 1.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
pictures = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512,
|
||||||
|
height = 512,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('animation_1.png'),sprite('animation_2.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
--minimap
|
||||||
|
minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/diesel-locomotive/diesel-locomotive-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
selected_minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/diesel-locomotive/diesel-locomotive-selected-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
--stop trigger
|
||||||
|
stop_trigger = {
|
||||||
|
-- left side
|
||||||
|
{
|
||||||
|
type = "create-trivial-smoke",
|
||||||
|
repeat_count = 75,
|
||||||
|
smoke_name = "smoke-train-stop",
|
||||||
|
initial_height = 0,
|
||||||
|
-- smoke goes to the left
|
||||||
|
speed = {-0.03, 0},
|
||||||
|
speed_multiplier = 0.75,
|
||||||
|
speed_multiplier_deviation = 1.1,
|
||||||
|
offset_deviation = {{-0.75, -2.7}, {-0.3, 2.7}},
|
||||||
|
},
|
||||||
|
-- right side
|
||||||
|
{
|
||||||
|
type = "create-trivial-smoke",
|
||||||
|
repeat_count = 75,
|
||||||
|
smoke_name = "smoke-train-stop",
|
||||||
|
initial_height = 0,
|
||||||
|
-- smoke goes to the right
|
||||||
|
speed = {0.03, 0},
|
||||||
|
speed_multiplier = 0.75,
|
||||||
|
speed_multiplier_deviation = 1.1,
|
||||||
|
offset_deviation = {{0.3, -2.7}, {0.75, 2.7}},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "play-sound",
|
||||||
|
sound = {
|
||||||
|
{
|
||||||
|
filename = "__base__/sound/train-breaks.ogg",
|
||||||
|
volume = 0.6,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename ='__base__/sound/train-engine.ogg'},
|
||||||
|
apparent_volume = 0.5,
|
||||||
|
},
|
||||||
|
vehicle_impact_sound = {
|
||||||
|
filename = "__base__/sound/car-metal-impact-6.ogg",
|
||||||
|
volume = 0.8
|
||||||
|
},
|
||||||
|
|
||||||
|
},
|
||||||
|
})
|
||||||
27
prototypes/electronic/el_energy_crystal.lua
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_energy_crystal_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_energy_crystal/el_energy_crystal_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_energy_crystal_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 500,
|
||||||
|
subgroup = 'el_item_subgroup_a',
|
||||||
|
order = 'a-c',
|
||||||
|
fuel_glow_color = {r=0.1,g=0.74,b=0.39,a=0.5},
|
||||||
|
fuel_category = 'chemical',
|
||||||
|
fuel_acceleration_multiplier = 1,
|
||||||
|
fuel_emissions_multiplier = 1,
|
||||||
|
fuel_top_speed_multiplier = 1,
|
||||||
|
fuel_value = '35MJ',
|
||||||
|
},
|
||||||
|
})
|
||||||
258
prototypes/electronic/el_ki/el_ki_beacon.lua
Normal file
|
|
@ -0,0 +1,258 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_ki_beacon_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_ki/el_ki_beacon/el_ki_beacon_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
local function config_blueprintable(name,int)
|
||||||
|
if not config('blueprintable') then
|
||||||
|
if int == 1 then
|
||||||
|
return 'no-copy-paste'
|
||||||
|
end
|
||||||
|
if int == 2 then
|
||||||
|
return 'not-blueprintable'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return "player-creation"
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_ki_beacon_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_ki_beacon_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_f',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_beacon_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('fi.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fi_ki_beacon_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_k',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_beacon_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('fu.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_ki_beacon_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_k',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_ki_beacon_entity',
|
||||||
|
type = 'beacon',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","no-automated-item-insertion","no-automated-item-removal","not-upgradable","hide-alt-info",config_blueprintable('el_ki_beacon',1),config_blueprintable('el_ki_beacon',2)},
|
||||||
|
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-0.8, -0.8}, {0.8, 0.8}},
|
||||||
|
selection_box = {{-1, -1}, {1, 1}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_ki_beacon_item',
|
||||||
|
},
|
||||||
|
distribution_effectivity = config('effectivity'),
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '400MW',
|
||||||
|
},
|
||||||
|
energy_usage = '0.4MW',
|
||||||
|
module_specification = {
|
||||||
|
module_slots = 2,
|
||||||
|
module_info_icon_shift = {0, 0.5},
|
||||||
|
module_info_multi_row_initial_height_modifier = -0.3,
|
||||||
|
},
|
||||||
|
supply_area_distance = config('supply_area'),
|
||||||
|
radius_visualisation_picture =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/beacon/beacon-radius-visualization.png",
|
||||||
|
width = 10,
|
||||||
|
height = 10,
|
||||||
|
},
|
||||||
|
animation = {
|
||||||
|
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
width = 480,
|
||||||
|
height = 480,
|
||||||
|
line_length = 4,
|
||||||
|
lines_per_file = 1,
|
||||||
|
animation_speed = 0.1,
|
||||||
|
frame_count = 4,
|
||||||
|
scale = 0.13,
|
||||||
|
shift = { 0, 0},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--slave
|
||||||
|
{
|
||||||
|
name = 'el_ki_beacon_slave_entity',
|
||||||
|
type = 'container',
|
||||||
|
icon = sprite('slave_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
selection_box = {{-0.5, -0.5}, {0.5, 0.5}},
|
||||||
|
selection_priority = 60,
|
||||||
|
picture = {
|
||||||
|
filename = sprite('slave_entity_animation.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64
|
||||||
|
},
|
||||||
|
inventory_size = 1,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'fi_ki_beacon_entity',
|
||||||
|
type = 'beacon',
|
||||||
|
icon = sprite('fi.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","no-automated-item-insertion","no-automated-item-removal","not-upgradable","hide-alt-info",config_blueprintable('el_ki_beacon',1),config_blueprintable('el_ki_beacon',2)},
|
||||||
|
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fi_ki_beacon_item',
|
||||||
|
},
|
||||||
|
distribution_effectivity = config('effectivity_2'),
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '400MW',
|
||||||
|
},
|
||||||
|
energy_usage = '4MW',
|
||||||
|
module_specification = {
|
||||||
|
module_slots = 6,
|
||||||
|
module_info_icon_shift = {0, 0.5},
|
||||||
|
module_info_multi_row_initial_height_modifier = -0.3,
|
||||||
|
},
|
||||||
|
supply_area_distance = config('supply_area_2'),
|
||||||
|
radius_visualisation_picture =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/beacon/beacon-radius-visualization.png",
|
||||||
|
width = 10,
|
||||||
|
height = 10,
|
||||||
|
},
|
||||||
|
animation = {
|
||||||
|
|
||||||
|
filename = sprite('entity_animation_2.png'),
|
||||||
|
width = 480,
|
||||||
|
height = 480,
|
||||||
|
line_length = 4,
|
||||||
|
lines_per_file = 1,
|
||||||
|
animation_speed = 0.1,
|
||||||
|
frame_count = 4,
|
||||||
|
scale = 0.2,
|
||||||
|
shift = { 0, 0},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--slave
|
||||||
|
{
|
||||||
|
name = 'fi_ki_beacon_slave_entity',
|
||||||
|
type = 'container',
|
||||||
|
icon = sprite('slave_entity_icon.png'),
|
||||||
|
flags = {"placeable-off-grid"},
|
||||||
|
icon_size = 64,
|
||||||
|
selection_box = {{-0.5, -0.5}, {0.5, 0.5}},
|
||||||
|
selection_priority = 60,
|
||||||
|
picture = {
|
||||||
|
filename = sprite('slave_entity_animation.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64
|
||||||
|
},
|
||||||
|
inventory_size = 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_beacon_entity',
|
||||||
|
type = 'beacon',
|
||||||
|
icon = sprite('fu.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","no-automated-item-insertion","no-automated-item-removal","not-upgradable","hide-alt-info",config_blueprintable('el_ki_beacon',1),config_blueprintable('el_ki_beacon',2)},
|
||||||
|
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.8,-1.8},{1.8,1.8}},
|
||||||
|
selection_box = {{-2,-2},{2,2}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_ki_beacon_item',
|
||||||
|
},
|
||||||
|
distribution_effectivity = config('effectivity_3'),
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '400MW',
|
||||||
|
},
|
||||||
|
energy_usage = '40MW',
|
||||||
|
module_specification = {
|
||||||
|
module_slots = 20,
|
||||||
|
module_info_icon_shift = {0, 0.5},
|
||||||
|
module_info_multi_row_initial_height_modifier = -0.3,
|
||||||
|
},
|
||||||
|
supply_area_distance = config('supply_area_3'),
|
||||||
|
radius_visualisation_picture =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/beacon/beacon-radius-visualization.png",
|
||||||
|
width = 10,
|
||||||
|
height = 10,
|
||||||
|
},
|
||||||
|
animation = {
|
||||||
|
|
||||||
|
filename = sprite('entity_animation_3.png'),
|
||||||
|
width = 480,
|
||||||
|
height = 480,
|
||||||
|
line_length = 4,
|
||||||
|
lines_per_file = 1,
|
||||||
|
animation_speed = 0.1,
|
||||||
|
frame_count = 4,
|
||||||
|
scale = 0.27,
|
||||||
|
shift = { 0, 0},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--slave
|
||||||
|
{
|
||||||
|
name = 'fu_ki_beacon_slave_entity',
|
||||||
|
type = 'container',
|
||||||
|
icon = sprite('slave_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
selection_box = {{-0.5, -0.5}, {0.5, 0.5}},
|
||||||
|
selection_priority = 60,
|
||||||
|
picture = {
|
||||||
|
filename = sprite('slave_entity_animation.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64
|
||||||
|
},
|
||||||
|
inventory_size = 1,
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
410
prototypes/electronic/el_ki/el_ki_core.lua
Normal file
|
|
@ -0,0 +1,410 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_ki_core_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_ki/el_ki_core/el_ki_core_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
local allowed_modules = {}
|
||||||
|
if config("productivity") then
|
||||||
|
allowed_modules = {"speed", "productivity", "consumption", "pollution"}
|
||||||
|
else
|
||||||
|
allowed_modules = {"speed", "consumption", "pollution"}
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_ki_core_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_ki_core_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_f',
|
||||||
|
order = 'b-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_core_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('fi.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fi_ki_core_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_k',
|
||||||
|
order = 'b-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_core_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('fu.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_ki_core_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_k',
|
||||||
|
order = 'b-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_ki_core_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
crafting_categories = {'el_ki_core_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-2.8, -2.8}, {2.8, 2.8}},
|
||||||
|
selection_box = {{-3.0, -3.0}, {3.0, 3.0}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_ki_core_item',
|
||||||
|
},
|
||||||
|
fixed_recipe = 'el_ki_cpu_memory_recipe',
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-input',
|
||||||
|
input_flow_limit = config('energy_usage_input')..'W',
|
||||||
|
},
|
||||||
|
energy_usage = config('energy_usage')..'W',
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
filter = 'el_ki_cpu_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0.5, -3.2}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'el_ki_memory_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0.5, 3.2}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
animation = {
|
||||||
|
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
width = 960,
|
||||||
|
height = 930,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
frame_count = 9,
|
||||||
|
scale = 0.2,
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename ='__base__/sound/nuclear-reactor-1.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--slave
|
||||||
|
{
|
||||||
|
name = 'el_ki_core_slave_entity',
|
||||||
|
type = 'beacon',
|
||||||
|
icon = sprite('slave_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
selection_box = {{-1, -1}, {1, 1}},
|
||||||
|
selection_priority = 60,
|
||||||
|
base_picture = {
|
||||||
|
filename = sprite('slave_entity_animation.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64
|
||||||
|
},
|
||||||
|
distribution_effectivity = 0,
|
||||||
|
energy_source = {type = "void"},
|
||||||
|
energy_usage = '1W',
|
||||||
|
supply_area_distance = 0,
|
||||||
|
allowed_effects = allowed_modules,
|
||||||
|
module_specification =
|
||||||
|
{
|
||||||
|
module_slots = 2,
|
||||||
|
module_info_icon_shift = {0, 0.5},
|
||||||
|
module_info_multi_row_initial_height_modifier = -0.3
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--slave container
|
||||||
|
{
|
||||||
|
name = 'el_ki_core_slave_container_entity',
|
||||||
|
type = 'container',
|
||||||
|
icon = sprite('slave_container_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
selection_box = {{-1, -1}, {1, 1}},
|
||||||
|
selection_priority = 60,
|
||||||
|
picture = {
|
||||||
|
filename = sprite('slave_container_entity_animation.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64
|
||||||
|
},
|
||||||
|
inventory_size = 20,
|
||||||
|
},
|
||||||
|
--===============================================================
|
||||||
|
{
|
||||||
|
name = 'fi_ki_core_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('fi.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
crafting_categories = {'fi_ki_core_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-2.8, -2.8}, {2.8, 2.8}},
|
||||||
|
selection_box = {{-3.0, -3.0}, {3.0, 3.0}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fi_ki_core_item',
|
||||||
|
},
|
||||||
|
fixed_recipe = 'fi_ki_cpu_memory_circuit_recipe',
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-input',
|
||||||
|
input_flow_limit = config('energy_usage_input_2')..'W',
|
||||||
|
},
|
||||||
|
energy_usage = config('energy_usage_2')..'W',
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
filter = 'el_ki_cpu_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0.5, -3.2}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'el_ki_memory_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0.5, 3.2}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'fi_ki_circuit_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {3.2, 0.5}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
animation = {
|
||||||
|
|
||||||
|
filename = sprite('entity_animation_2.png'),
|
||||||
|
width = 960,
|
||||||
|
height = 930,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
frame_count = 9,
|
||||||
|
scale = 0.2,
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename ='__base__/sound/nuclear-reactor-1.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--slave
|
||||||
|
{
|
||||||
|
name = 'fi_ki_core_slave_entity',
|
||||||
|
type = 'beacon',
|
||||||
|
icon = sprite('slave_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
selection_box = {{-1, -1}, {1, 1}},
|
||||||
|
selection_priority = 60,
|
||||||
|
base_picture = {
|
||||||
|
filename = sprite('slave_entity_animation.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64
|
||||||
|
},
|
||||||
|
distribution_effectivity = 0,
|
||||||
|
energy_source = {type = "void"},
|
||||||
|
energy_usage = '1W',
|
||||||
|
supply_area_distance = 0,
|
||||||
|
allowed_effects = allowed_modules,
|
||||||
|
module_specification =
|
||||||
|
{
|
||||||
|
module_slots = 2,
|
||||||
|
module_info_icon_shift = {0, 0.5},
|
||||||
|
module_info_multi_row_initial_height_modifier = -0.3
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--slave container
|
||||||
|
{
|
||||||
|
name = 'fi_ki_core_slave_container_entity',
|
||||||
|
type = 'container',
|
||||||
|
icon = sprite('slave_container_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
selection_box = {{-1, -1}, {1, 1}},
|
||||||
|
selection_priority = 60,
|
||||||
|
picture = {
|
||||||
|
filename = sprite('slave_container_entity_animation.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64
|
||||||
|
},
|
||||||
|
inventory_size = 1,
|
||||||
|
},
|
||||||
|
--===============================================================
|
||||||
|
{
|
||||||
|
name = 'fu_ki_core_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('fu.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
crafting_categories = {'fu_ki_core_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-2.8, -2.8}, {2.8, 2.8}},
|
||||||
|
selection_box = {{-3.0, -3.0}, {3.0, 3.0}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_ki_core_item',
|
||||||
|
},
|
||||||
|
fixed_recipe = 'fu_ki_cpu_memory_circuit_recipe',
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-input',
|
||||||
|
input_flow_limit = config('energy_usage_input_3')..'W',
|
||||||
|
},
|
||||||
|
energy_usage = config('energy_usage_3')..'W',
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
filter = 'el_ki_cpu_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0.5, -3.2}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'el_ki_memory_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0.5, 3.2}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'fi_ki_circuit_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {3.2, 0.5}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'fu_ki_circuit_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-3.2, 0.5}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
animation = {
|
||||||
|
|
||||||
|
filename = sprite('entity_animation_3.png'),
|
||||||
|
width = 960,
|
||||||
|
height = 930,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
frame_count = 9,
|
||||||
|
scale = 0.2,
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename ='__base__/sound/nuclear-reactor-1.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--slave
|
||||||
|
{
|
||||||
|
name = 'fu_ki_core_slave_entity',
|
||||||
|
type = 'beacon',
|
||||||
|
icon = sprite('slave_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
selection_box = {{-1, -1}, {1, 1}},
|
||||||
|
selection_priority = 60,
|
||||||
|
base_picture = {
|
||||||
|
filename = sprite('slave_entity_animation.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64
|
||||||
|
},
|
||||||
|
distribution_effectivity = 0,
|
||||||
|
energy_source = {type = "void"},
|
||||||
|
energy_usage = '1W',
|
||||||
|
supply_area_distance = 0,
|
||||||
|
allowed_effects = allowed_modules,
|
||||||
|
module_specification =
|
||||||
|
{
|
||||||
|
module_slots = 2,
|
||||||
|
module_info_icon_shift = {0, 0.5},
|
||||||
|
module_info_multi_row_initial_height_modifier = -0.3
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--slave container
|
||||||
|
{
|
||||||
|
name = 'fu_ki_core_slave_container_entity',
|
||||||
|
type = 'container',
|
||||||
|
icon = sprite('slave_container_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
selection_box = {{-1, -1}, {1, 1}},
|
||||||
|
selection_priority = 60,
|
||||||
|
picture = {
|
||||||
|
filename = sprite('slave_container_entity_animation.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64
|
||||||
|
},
|
||||||
|
inventory_size = 1,
|
||||||
|
}
|
||||||
|
})
|
||||||
108
prototypes/electronic/el_ki/el_ki_cpu.lua
Normal file
|
|
@ -0,0 +1,108 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_ki_cpu_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_ki/el_ki_cpu/el_ki_cpu_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_ki_cpu_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_ki_cpu_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'el_ki_cpu_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_ki_cpu_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'el_ki_cpu_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
ingredient_count = 2,
|
||||||
|
--fixed_recipe = 'el_ki_cpu_fluid_recipe',
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '5000kW',
|
||||||
|
},
|
||||||
|
energy_usage = '4000kW',
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
filter = 'el_ki_cpu_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {0, 2}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/accumulator-idle.ogg'},
|
||||||
|
apparent_volume = 1.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
56
prototypes/electronic/el_ki/el_ki_linker.lua
Normal file
|
|
@ -0,0 +1,56 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_ki_linker_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_ki/el_ki_linker/el_ki_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_ki_linker',
|
||||||
|
type = 'item-with-tags',
|
||||||
|
icon = sprite('linker_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'el_item_subgroup_b',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_ki_science',
|
||||||
|
type = 'tool',
|
||||||
|
icon = sprite('science_blue_data.png'),
|
||||||
|
durability = 1,
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'el_item_subgroup_b',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_ki_science',
|
||||||
|
type = 'tool',
|
||||||
|
icon = sprite('science_red_data.png'),
|
||||||
|
durability = 1,
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'el_item_subgroup_b',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = "el_ki_selection_tool",
|
||||||
|
type = "selection-tool",
|
||||||
|
stack_size = 1,
|
||||||
|
icon_size = 64,
|
||||||
|
icon = sprite('selection_tool.png'),
|
||||||
|
flags = {"hidden","mod-openable","only-in-cursor"},
|
||||||
|
selection_color = {r=0.79, g=0.4, b=0, a=0.5 },
|
||||||
|
selection_mode = {"any-entity"},
|
||||||
|
selection_cursor_box_type = "entity",
|
||||||
|
alt_selection_color = {r=1, g=0, b=0, a=0.5 },
|
||||||
|
alt_selection_cursor_box_type = "entity",
|
||||||
|
alt_selection_mode = {"any-entity"},
|
||||||
|
entity_filters = {"el_ki_beacon_entity","fi_ki_beacon_entity","fu_ki_beacon_entity"},
|
||||||
|
alt_entity_filters = {"el_ki_beacon_entity","fi_ki_beacon_entity","fu_ki_beacon_entity"}
|
||||||
|
}
|
||||||
|
})
|
||||||
108
prototypes/electronic/el_ki/el_ki_memory.lua
Normal file
|
|
@ -0,0 +1,108 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_ki_memory_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_ki/el_ki_memory/el_ki_memory_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_ki_memory_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_ki_memory_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_f',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'el_ki_memory_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_ki_memory_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'el_ki_memory_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
ingredient_count = 2,
|
||||||
|
--fixed_recipe = 'el_ki_memory_fluid_recipe',
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '5000kW',
|
||||||
|
},
|
||||||
|
energy_usage = '4000kW',
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
filter = 'el_ki_memory_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {0, 2}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 8,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 8,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 8,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 8,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/accumulator-idle.ogg'},
|
||||||
|
apparent_volume = 1.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
108
prototypes/electronic/el_ki/fi_ki_circuit.lua
Normal file
|
|
@ -0,0 +1,108 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_ki_circuit_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_ki/fi_ki_circuit/fi_ki_circuit_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_ki_circuit_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fi_ki_circuit_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_k',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fi_ki_circuit_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fi_ki_circuit_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fi_ki_circuit_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
ingredient_count = 3,
|
||||||
|
--fixed_recipe = 'fi_ki_circuit_fluid_recipe',
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '50000kW',
|
||||||
|
},
|
||||||
|
energy_usage = '40000kW',
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
filter = 'fi_ki_circuit_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {0, 2}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/accumulator-idle.ogg'},
|
||||||
|
apparent_volume = 1.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
108
prototypes/electronic/el_ki/fu_ki_circuit.lua
Normal file
|
|
@ -0,0 +1,108 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_ki_circuit_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_ki/fu_ki_circuit/fu_ki_circuit_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_ki_circuit_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_ki_circuit_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_k',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_ki_circuit_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_ki_circuit_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_ki_circuit_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
ingredient_count = 3,
|
||||||
|
--fixed_recipe = 'fu_ki_circuit_fluid_recipe',
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '150000kW',
|
||||||
|
},
|
||||||
|
energy_usage = '80000kW',
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
filter = 'fu_ki_circuit_fluid',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {0, 2}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,484},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/accumulator-idle.ogg'},
|
||||||
|
apparent_volume = 1.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
47
prototypes/electronic/el_lithium.lua
Normal file
|
|
@ -0,0 +1,47 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_lithium_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_lithium/el_lithium_'..name
|
||||||
|
end
|
||||||
|
--ore
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_lithium_ore_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('ore_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'el_item_subgroup_a',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_lithium_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'el_item_subgroup_a',
|
||||||
|
order = 'b-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
--battery
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_lithium_battery',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('battery.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'el_item_subgroup_b',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
166
prototypes/electronic/el_pressurizer.lua
Normal file
|
|
@ -0,0 +1,166 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_pressurizer_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_pressurizer/el_pressurizer_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_pressurizer_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_pressurizer_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_c',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'el_pressurizer_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_pressurizer_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'el_special_fluid'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
ingredient_count = 2,
|
||||||
|
--fixed_recipe = 'el_water_pressure_recipe',
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '60kW',
|
||||||
|
},
|
||||||
|
energy_usage = '40kW',
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
filter = 'water',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0, -2}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'steam',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-2, 0}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'el_pressurized_water',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {2, 0}},
|
||||||
|
--{type = "output", position = {2, -2.5}}
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'water',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {0, 2}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound =
|
||||||
|
{
|
||||||
|
sound = {filename = "__base__/sound/chemical-plant-3.ogg" },
|
||||||
|
apparent_volume = 0.3,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
--{
|
||||||
|
-- production_type = "input",
|
||||||
|
--pipe_picture = assembler2pipepictures(),
|
||||||
|
--pipe_covers = pipecoverspictures(),
|
||||||
|
-- base_area = 10,
|
||||||
|
-- base_level = -1,
|
||||||
|
-- pipe_connections = {
|
||||||
|
-- { type="input", position = {-2, -2,5} },
|
||||||
|
-- { type="input", position = {2, -2.5} },
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
-- {
|
||||||
|
-- production_type = "output",
|
||||||
|
--pipe_picture = assembler2pipepictures(),
|
||||||
|
--pipe_covers = pipecoverspictures(),
|
||||||
|
-- base_area = 10,
|
||||||
|
-- base_level = 1,
|
||||||
|
-- pipe_connections = {{ type="output", position = {2, 2.5} }},
|
||||||
|
-- },
|
||||||
|
-- off_when_no_fluid_recipe = true
|
||||||
60
prototypes/electronic/el_solar.lua
Normal file
|
|
@ -0,0 +1,60 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_solar_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_solar/el_solar_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_solar_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_solar_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_c',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'el_solar_entity',
|
||||||
|
type = 'solar-panel',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
--minable
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_solar_item',
|
||||||
|
},
|
||||||
|
max_health = 150,
|
||||||
|
corpse = 'small-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
--energy
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'solar',
|
||||||
|
input_flow_limit = '0W',
|
||||||
|
output_flow_limit = tostring(config('power_output'))..'W',
|
||||||
|
},
|
||||||
|
production = tostring(config('power_output'))..'W',
|
||||||
|
--picture
|
||||||
|
picture = {
|
||||||
|
filename = sprite('entity_picture_1.png'),
|
||||||
|
width = 386,
|
||||||
|
height = 448,
|
||||||
|
scale = 0.25,
|
||||||
|
},
|
||||||
|
map_color = {r=1.7,g=1.7,b=1.7},
|
||||||
|
},
|
||||||
|
})
|
||||||
104
prototypes/electronic/el_tank.lua
Normal file
|
|
@ -0,0 +1,104 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_tank_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_tank/el_tank_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_tank_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_tank_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_c',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'el_tank_entity',
|
||||||
|
type = 'storage-tank',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
--minable
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_tank_item',
|
||||||
|
},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'small-remnants',
|
||||||
|
collision_box = {{-3.2,-3.2},{3.2,3.2}},
|
||||||
|
selection_box = {{-3.5,-3.5},{3.5,3.5}},
|
||||||
|
pictures = {
|
||||||
|
picture = {
|
||||||
|
filename = sprite('entity_picture.png'),
|
||||||
|
width = 512,
|
||||||
|
height = 512,
|
||||||
|
scale = 1.11/2,
|
||||||
|
shift = {0,-0.96},
|
||||||
|
},
|
||||||
|
window_background = {
|
||||||
|
filename = sprite('blank.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64,
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
fluid_background = {
|
||||||
|
filename = sprite('blank.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64,
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
flow_sprite = {
|
||||||
|
filename = sprite('blank.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64,
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
gas_flow = {
|
||||||
|
filename = sprite('blank.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64,
|
||||||
|
scale = 0.5,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 1,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
flow_length_in_ticks = 1,
|
||||||
|
fluid_box = {
|
||||||
|
base_area = 5000,
|
||||||
|
height = 1,
|
||||||
|
base_level = 0,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input-output", position = {-3.8, 1}},
|
||||||
|
{type = "input-output", position = {-3.8, -1}},
|
||||||
|
|
||||||
|
{type = "input-output", position = {3.8, 1}},
|
||||||
|
{type = "input-output", position = {3.8, -1}},
|
||||||
|
|
||||||
|
{type = "input-output", position = {1, 3.8}},
|
||||||
|
{type = "input-output", position = {1, -3.8}},
|
||||||
|
|
||||||
|
{type = "input-output", position = {-1, 3.8}},
|
||||||
|
{type = "input-output", position = {-1, -3.8}}
|
||||||
|
},
|
||||||
|
production_type = "input-output"
|
||||||
|
},
|
||||||
|
window_bounding_box = {{0,0},{1,1}},
|
||||||
|
map_color = {r=1.7,g=1.7,b=1.7},
|
||||||
|
},
|
||||||
|
})
|
||||||
85
prototypes/electronic/el_train_equipment.lua
Normal file
|
|
@ -0,0 +1,85 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_train_equipment_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_train_equipment/el_train_equipment_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_train_equipment_generator_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('generator_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_d',
|
||||||
|
placed_as_equipment_result = 'el_train_equipment_generator_item',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_train_equipment_accelerator_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('accelerator_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_d',
|
||||||
|
placed_as_equipment_result = 'el_train_equipment_accelerator_item',
|
||||||
|
order = 'c-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--equipment
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_train_equipment_generator_item',
|
||||||
|
type = 'generator-equipment',
|
||||||
|
power = '600kW',
|
||||||
|
categories = {'el_train_equipment'},
|
||||||
|
sprite = {
|
||||||
|
filename = sprite('generator_entity.png'),
|
||||||
|
width = 256,
|
||||||
|
height = 256,
|
||||||
|
priority = 'medium',
|
||||||
|
},
|
||||||
|
shape = {
|
||||||
|
width = 3,
|
||||||
|
height = 3,
|
||||||
|
type = "full",
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-output',
|
||||||
|
},
|
||||||
|
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_train_equipment_accelerator_item',
|
||||||
|
type = 'movement-bonus-equipment',
|
||||||
|
categories = {'el_train_equipment'},
|
||||||
|
energy_consumption = "600kW",
|
||||||
|
movement_bonus = 0.35,
|
||||||
|
sprite = {
|
||||||
|
filename = sprite('accelerator_entity.png'),
|
||||||
|
width = 256,
|
||||||
|
height = 256,
|
||||||
|
priority = 'medium',
|
||||||
|
},
|
||||||
|
shape = {
|
||||||
|
width = 3,
|
||||||
|
height = 3,
|
||||||
|
type = "full",
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-input',
|
||||||
|
buffer_capacity = '8MJ',
|
||||||
|
drain = '40kW',
|
||||||
|
},
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
41
prototypes/electronic/el_train_fuel.lua
Normal file
|
|
@ -0,0 +1,41 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_train_fuel_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_train_fuel/el_train_fuel_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_train_fuel_diesel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('diesel_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'el_item_subgroup_d',
|
||||||
|
order = 'b-a',
|
||||||
|
fuel_acceleration_multiplier = 1,
|
||||||
|
fuel_category = 'el_train_fuel',
|
||||||
|
fuel_emissions_multiplier = 1,
|
||||||
|
fuel_top_speed_multiplier = 1,
|
||||||
|
fuel_value = '100MJ',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'el_train_fuel_diesel_energized_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('diesel_energized_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'el_item_subgroup_d',
|
||||||
|
order = 'b-b',
|
||||||
|
fuel_acceleration_multiplier = 0.55,
|
||||||
|
fuel_top_speed_multiplier = 1.3,
|
||||||
|
fuel_category = 'el_train_fuel',
|
||||||
|
fuel_emissions_multiplier = 1,
|
||||||
|
fuel_value = '135MJ',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
95
prototypes/electronic/el_water_generator.lua
Normal file
|
|
@ -0,0 +1,95 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_water_generator_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/electronic/el_water_generator/el_water_generator_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'el_water_generator_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'el_water_generator_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'el_item_subgroup_c',
|
||||||
|
order = 'a-d',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'el_water_generator_entity',
|
||||||
|
type = 'generator',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.3, -3.3}, {1.3, 3.3}},
|
||||||
|
selection_box = {{-1.5, -3.5}, {1.5, 3.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'el_water_generator_item',
|
||||||
|
},
|
||||||
|
--energy
|
||||||
|
maximum_temperature = 500,
|
||||||
|
fluid_usage_per_tick = 1,
|
||||||
|
max_power_output = tostring(config('power_output'))..'W',
|
||||||
|
effectivity = 0.9,
|
||||||
|
fluid_box = {
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
filter = 'el_pressurized_water',
|
||||||
|
minimum_temperature = 0,
|
||||||
|
maximum_temperature = 500,
|
||||||
|
production_type = 'input-output',
|
||||||
|
pipe_connections = {
|
||||||
|
{type = "input-output", position = {2, 0}},
|
||||||
|
{type = "input-output", position = {-2, 0}},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
fluid_input = {
|
||||||
|
name = 'el_pressurized_water',
|
||||||
|
amout = 0.0,
|
||||||
|
minimum_temperature = 0,
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-output',
|
||||||
|
input_flow_limit = '0W',
|
||||||
|
output_flow_limit = tostring(config('power_output'))..'W',
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
vertical_animation = {
|
||||||
|
filename = sprite('entity_animation_vertikal_1.png'),
|
||||||
|
size = {480,896},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
horizontal_animation = {
|
||||||
|
filename = sprite('entity_animation_horizontal_1.png'),
|
||||||
|
size = {896,480},
|
||||||
|
scale = 0.22,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename ='__base__/sound/pipe.ogg'},
|
||||||
|
apparent_volume = 0.7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
640
prototypes/fi_recipes.lua
Normal file
|
|
@ -0,0 +1,640 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_solar_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
data:extend({
|
||||||
|
--crafter
|
||||||
|
{
|
||||||
|
name = 'fi_crafter_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'concrete',30},
|
||||||
|
{'fi_compound_material_item',10},
|
||||||
|
{'iron-gear-wheel',20},
|
||||||
|
{'electronic-circuit',15},
|
||||||
|
{'el_energy_crystal_item',4},
|
||||||
|
},
|
||||||
|
result = 'fi_crafter_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
--crusher
|
||||||
|
{
|
||||||
|
name = 'fi_crusher_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'concrete',60},
|
||||||
|
{'fi_compound_material_item',20},
|
||||||
|
{'iron-gear-wheel',40},
|
||||||
|
{'electric-engine-unit',15},
|
||||||
|
{'el_energy_crystal_item',2},
|
||||||
|
},
|
||||||
|
result = 'fi_crusher_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
--miner
|
||||||
|
{
|
||||||
|
name = 'fi_miner_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'concrete',100},
|
||||||
|
{'fi_compound_material_item',60},
|
||||||
|
{'iron-gear-wheel',40},
|
||||||
|
{'electric-mining-drill',8},
|
||||||
|
{'electric-engine-unit',10},
|
||||||
|
},
|
||||||
|
result = 'fi_miner_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
--fuels
|
||||||
|
{
|
||||||
|
name = 'fi_basic_fuel_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'uranium-235',1},
|
||||||
|
{'uranium-238',19},
|
||||||
|
{'el_aluminum_item',10},
|
||||||
|
},
|
||||||
|
result = 'fi_basic_fuel_item',
|
||||||
|
result_count = 8,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_basic_thorium_fuel_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_thorium232_item',10},
|
||||||
|
{'uranium-238',10},
|
||||||
|
{'el_aluminum_item',10},
|
||||||
|
},
|
||||||
|
result = 'fi_basic_thorium_fuel_item',
|
||||||
|
result_count = 8,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_advanced_fuel_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_plutonium239_item',1},
|
||||||
|
{'uranium-238',19},
|
||||||
|
{'el_aluminum_item',10},
|
||||||
|
},
|
||||||
|
result = 'fi_advanced_fuel_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_advanced_thorium_fuel_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_uranium233_item',4},
|
||||||
|
{'uranium-238',16},
|
||||||
|
{'el_aluminum_item',10},
|
||||||
|
},
|
||||||
|
result = 'fi_advanced_thorium_fuel_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_pure_fuel_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'uranium-235',1},
|
||||||
|
{'fi_plutonium239_item',1},
|
||||||
|
{'el_aluminum_item',10},
|
||||||
|
},
|
||||||
|
result = 'fi_pure_fuel_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
--reactor
|
||||||
|
{
|
||||||
|
name = 'fi_solid_reactor_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'steel-plate',450},
|
||||||
|
{'concrete',800},
|
||||||
|
{'fi_compound_material_item',600},
|
||||||
|
{'copper-plate',200},
|
||||||
|
{'el_energy_crystal_item',40},
|
||||||
|
{'advanced-circuit',700},
|
||||||
|
},
|
||||||
|
result = 'fi_solid_reactor_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
--material
|
||||||
|
{
|
||||||
|
name = 'fi_compound_material_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'el_aluminum_item',15},
|
||||||
|
{'steel-plate',10},
|
||||||
|
{'iron-plate',20},
|
||||||
|
},
|
||||||
|
result = 'fi_compound_material_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_low-density-structure_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_crafting_category',
|
||||||
|
subgroup = 'fi_item_subgroup_b',
|
||||||
|
ingredients = {
|
||||||
|
{'el_aluminum_item',8},
|
||||||
|
{'steel-plate',4},
|
||||||
|
{'copper-plate',30},
|
||||||
|
},
|
||||||
|
result = 'low-density-structure',
|
||||||
|
result_count = 4,
|
||||||
|
energy_required = 20,
|
||||||
|
order = 'b-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
--uran etc
|
||||||
|
{
|
||||||
|
name = 'fi_plutonium239_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'centrifuging',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_used_basic_fuel_item',6},
|
||||||
|
},
|
||||||
|
result = 'fi_plutonium239_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_thorium232_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting-with-fluid',
|
||||||
|
main_product = 'fi_thorium232_item',
|
||||||
|
ingredients = {
|
||||||
|
{'stone',80},
|
||||||
|
{'el_energy_crystal_item',2},
|
||||||
|
{type="fluid", name="sulfuric-acid", amount=140},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{'fi_thorium232_item',2},
|
||||||
|
{'uranium-238',3}
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 40,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_uranium233_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'centrifuging',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_used_basic_thorium_fuel_item',6},
|
||||||
|
},
|
||||||
|
result = 'fi_uranium233_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_atomic_bomb_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'explosive-rocket',10},
|
||||||
|
{'fi_plutonium239_item',10},
|
||||||
|
{'rocket-control-unit',10}
|
||||||
|
},
|
||||||
|
result = 'atomic-bomb',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
--wideraufbereitung
|
||||||
|
{
|
||||||
|
name = 'fi_advanced_fuel_recycle_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'centrifuging',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_used_advanced_fuel_item',4},
|
||||||
|
},
|
||||||
|
result = 'uranium-238',
|
||||||
|
result_count = 3,
|
||||||
|
energy_required = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_a',
|
||||||
|
order = 'a-d',
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_advanced_thorium_fuel_recycle_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'centrifuging',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_used_advanced_thorium_fuel_item',4},
|
||||||
|
},
|
||||||
|
result = 'uranium-238',
|
||||||
|
result_count = 3,
|
||||||
|
energy_required = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_a',
|
||||||
|
order = 'a-e',
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_pure_fuel_recycle_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'centrifuging',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_used_pure_fuel_item',4},
|
||||||
|
},
|
||||||
|
result = 'uranium-238',
|
||||||
|
result_count = 3,
|
||||||
|
energy_required = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_a',
|
||||||
|
order = 'a-f',
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
--equip
|
||||||
|
{
|
||||||
|
name = 'fi_equipment_player_reactor_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_solid_reactor_item',1},
|
||||||
|
{'fi_pure_fuel_item',1},
|
||||||
|
},
|
||||||
|
result = 'fi_equipment_player_reactor_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_equipment_player_shield_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_energy_crystal_item',100},
|
||||||
|
{'low-density-structure',20},
|
||||||
|
{'processing-unit',40},
|
||||||
|
{'energy-shield-mk2-equipment',5}
|
||||||
|
},
|
||||||
|
result = 'fi_equipment_player_shield_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_train_equipment_generator_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_solid_reactor_item',1},
|
||||||
|
{'low-density-structure',20},
|
||||||
|
{'iron-gear-wheel',40},
|
||||||
|
{'fi_pure_fuel_item',1},
|
||||||
|
},
|
||||||
|
result = 'fi_train_equipment_generator_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 20,
|
||||||
|
},
|
||||||
|
--crystals
|
||||||
|
{
|
||||||
|
name = 'fi_energy_crystal_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'smelting',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_base_crystal_item',2},
|
||||||
|
},
|
||||||
|
result = 'fi_energy_crystal_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 4,
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_catalyst_crystal_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'centrifuging',
|
||||||
|
ingredients = {
|
||||||
|
{'el_train_fuel_diesel_energized_item',1},
|
||||||
|
},
|
||||||
|
result = 'fi_catalyst_crystal_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_base_crystal_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'crafting-with-fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="fi_crystal_fluid", amount=100},
|
||||||
|
{type="item", name="fi_catalyst_crystal_item", amount=1},
|
||||||
|
},
|
||||||
|
result = 'fi_base_crystal_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_crystal_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_crushing',
|
||||||
|
ingredients = {
|
||||||
|
{'el_energy_crystal_item',4},
|
||||||
|
},
|
||||||
|
result = 'fi_crushed_crystal_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crystal_fluid_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'chemistry',
|
||||||
|
main_product = 'fi_crystal_fluid',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="fi_crushed_crystal_item", amount=2},
|
||||||
|
{type="item", name="fi_crushed_lithium_item", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="fluid", name="fi_crystal_fluid", amount=100},
|
||||||
|
},
|
||||||
|
energy_required = 4,
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_fuel_train_crystal_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_energy_crystal_item',6},
|
||||||
|
{'el_lithium_item',6},
|
||||||
|
{'el_train_fuel_diesel_item',6},
|
||||||
|
},
|
||||||
|
result = 'fi_fuel_train_crystal_item',
|
||||||
|
result_count = 4,
|
||||||
|
energy_required = 30,
|
||||||
|
},
|
||||||
|
--crushed
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_lithium_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_crushing',
|
||||||
|
ingredients = {
|
||||||
|
{'el_lithium_item',4},
|
||||||
|
},
|
||||||
|
result = 'fi_crushed_lithium_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_iron_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_crushing',
|
||||||
|
ingredients = {
|
||||||
|
{'iron-plate',4},
|
||||||
|
},
|
||||||
|
result = 'fi_crushed_iron_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_copper_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_crushing',
|
||||||
|
ingredients = {
|
||||||
|
{'copper-plate',4},
|
||||||
|
},
|
||||||
|
result = 'fi_crushed_copper_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_aluminum_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_crushing',
|
||||||
|
ingredients = {
|
||||||
|
{'el_aluminum_item',4},
|
||||||
|
},
|
||||||
|
result = 'fi_crushed_aluminum_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_coal_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_crushing',
|
||||||
|
ingredients = {
|
||||||
|
{'coal',4},
|
||||||
|
},
|
||||||
|
result = 'fi_crushed_coal_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
--matierals
|
||||||
|
{
|
||||||
|
name = 'fi_materials_industrial_steel_blend_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_crushed_coal_item',3},
|
||||||
|
{'fi_crushed_iron_item',4},
|
||||||
|
{'fi_crushed_aluminum_item',1},
|
||||||
|
},
|
||||||
|
result = 'fi_industrial_steel_blend_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 4,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_materials_industrial_steel_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'smelting',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_industrial_steel_blend_item',4},
|
||||||
|
},
|
||||||
|
result = 'fi_industrial_steel_item',
|
||||||
|
result_count = 2,
|
||||||
|
energy_required = 2,
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_materials_steel_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'smelting',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_industrial_steel_blend_item',1},
|
||||||
|
},
|
||||||
|
result = 'steel-plate',
|
||||||
|
result_count = 4,
|
||||||
|
energy_required = 6,
|
||||||
|
subgroup = 'fi_item_subgroup_b',
|
||||||
|
order = 'b-a',
|
||||||
|
always_show_made_in = true,
|
||||||
|
},
|
||||||
|
--robo
|
||||||
|
{
|
||||||
|
name = 'fi_robo_port_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_robo_charger_item',1},
|
||||||
|
{'fi_industrial_steel_item',80},
|
||||||
|
{'fi_energy_crystal_item',25},
|
||||||
|
{'fi_compound_material_item',80},
|
||||||
|
},
|
||||||
|
result = 'fi_robo_port_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_robo_charger_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'roboport',1},
|
||||||
|
{'fi_industrial_steel_item',60},
|
||||||
|
{'fi_energy_crystal_item',25},
|
||||||
|
{'el_energy_crystal_item',25},
|
||||||
|
},
|
||||||
|
result = 'fi_robo_charger_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
--modules
|
||||||
|
{
|
||||||
|
name = 'fi_modules_base_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'low-density-structure',2},
|
||||||
|
{'advanced-circuit',6},
|
||||||
|
},
|
||||||
|
result = 'fi_modules_base_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_core_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_modules_base_item',1},
|
||||||
|
{'fi_base_crystal_item',2},
|
||||||
|
},
|
||||||
|
result = 'fi_modules_core_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_1_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_modules_core_item',1},
|
||||||
|
{'productivity-module',2},
|
||||||
|
{'advanced-circuit',6},
|
||||||
|
},
|
||||||
|
result = 'fi_modules_productivity_1_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_2_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_modules_productivity_1_item',4},
|
||||||
|
{'fi_modules_core_item',1},
|
||||||
|
{'productivity-module-2',2},
|
||||||
|
{'processing-unit',6},
|
||||||
|
},
|
||||||
|
result = 'fi_modules_productivity_2_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_3_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_modules_productivity_2_item',4},
|
||||||
|
{'fi_modules_core_item',1},
|
||||||
|
{'productivity-module-3',2},
|
||||||
|
{'fu_tech_sign_item',40},
|
||||||
|
},
|
||||||
|
result = 'fi_modules_productivity_3_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_4_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_modules_productivity_3_item',6},
|
||||||
|
{'fi_modules_core_item',1},
|
||||||
|
{'gr_materials_stack_up_item',4},
|
||||||
|
},
|
||||||
|
result = 'fi_modules_productivity_4_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_5_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_modules_productivity_4_item',6},
|
||||||
|
{'fi_modules_core_item',1},
|
||||||
|
{'gr_materials_stack_down_item',4},
|
||||||
|
},
|
||||||
|
result = 'fi_modules_productivity_5_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_6_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_modules_productivity_5_item',6},
|
||||||
|
{'fi_modules_core_item',1},
|
||||||
|
{'gr_materials_fusion_cell_item',4},
|
||||||
|
},
|
||||||
|
result = 'fi_modules_productivity_6_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
})
|
||||||
22
prototypes/fission/fi_compound_material.lua
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_compound_material_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_compound_material/fi_compound_material_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_compound_material_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_b',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
108
prototypes/fission/fi_crafter.lua
Normal file
|
|
@ -0,0 +1,108 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_crafter_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_crafter/fi_crafter_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_crafter_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fi_crafter_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_c',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fi_crafter_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fi_crafter_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'advanced-crafting','crafting','smelting','fi_crafting_category'},
|
||||||
|
crafting_speed = 3.5,
|
||||||
|
energy_source = {
|
||||||
|
type = 'burner',
|
||||||
|
fuel_inventory_size = 3,
|
||||||
|
burnt_inventory_size = 3,
|
||||||
|
effectivity = 0.35,
|
||||||
|
emissions_per_minute = 20,
|
||||||
|
fuel_category = 'fi_basic_fuel'
|
||||||
|
},
|
||||||
|
energy_usage = '200kW',
|
||||||
|
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
|
||||||
|
module_specification = {
|
||||||
|
module_info_icon_shift = {
|
||||||
|
0,
|
||||||
|
0.8
|
||||||
|
},
|
||||||
|
module_slots = 2
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
|
||||||
|
idle_sound = { filename = "__base__/sound/idle1.ogg", volume = 0.6 },
|
||||||
|
apparent_volume = 0.7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
57
prototypes/fission/fi_crushed.lua
Normal file
|
|
@ -0,0 +1,57 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_crushed_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_crushed/fi_crushed_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_lithium_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('lithium_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_a-b',
|
||||||
|
order = 'a-d',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_iron_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('iron_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_a-b',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_copper_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('copper_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_a-b',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_aluminum_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('aluminum_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_a-b',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_coal_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('coal_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_a-b',
|
||||||
|
order = 'a-f',
|
||||||
|
},
|
||||||
|
})
|
||||||
103
prototypes/fission/fi_crusher.lua
Normal file
|
|
@ -0,0 +1,103 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_crusher_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_crusher/fi_crusher_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_crusher_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fi_crusher_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_c',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fi_crusher_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fi_crusher_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fi_crushing'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
--input_flow_limit = '4MW',
|
||||||
|
},
|
||||||
|
energy_usage = '1MW',
|
||||||
|
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
|
||||||
|
module_specification = {
|
||||||
|
module_info_icon_shift = {
|
||||||
|
0,
|
||||||
|
0.8
|
||||||
|
},
|
||||||
|
module_slots = 2
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename ='__base__/sound/electric-mining-drill.ogg'},
|
||||||
|
apparent_volume = 2.7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
54
prototypes/fission/fi_energy_crystal.lua
Normal file
|
|
@ -0,0 +1,54 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_energy_crystal_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_energy_crystal/fi_energy_crystal_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_energy_crystal_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 500,
|
||||||
|
subgroup = 'fi_item_subgroup_b',
|
||||||
|
order = 'a-c',
|
||||||
|
fuel_glow_color = {r=0.1,g=0.74,b=0.39,a=0.5},
|
||||||
|
fuel_category = 'chemical',
|
||||||
|
fuel_acceleration_multiplier = 1,
|
||||||
|
fuel_emissions_multiplier = 1,
|
||||||
|
fuel_top_speed_multiplier = 1,
|
||||||
|
fuel_value = '300MJ',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_crushed_crystal_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('crushed_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_a-b',
|
||||||
|
order = 'a-e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_catalyst_crystal_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('catalyst_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_f',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_base_crystal_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('base_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_f',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
})
|
||||||
117
prototypes/fission/fi_equipment.lua
Normal file
|
|
@ -0,0 +1,117 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_equipment_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_equipment/fi_equipment_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_train_equipment_generator_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('generator_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_e',
|
||||||
|
placed_as_equipment_result = 'fi_train_equipment_generator_item',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_equipment_player_reactor_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('player_reactor_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_e',
|
||||||
|
placed_as_equipment_result = 'fi_equipment_player_reactor_item',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_equipment_player_shield_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('player_shield_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_e',
|
||||||
|
placed_as_equipment_result = 'fi_equipment_player_shield_item',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--equipment
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_train_equipment_generator_item',
|
||||||
|
type = 'generator-equipment',
|
||||||
|
power = '2400kW',
|
||||||
|
categories = {'fi_train_equipment'},
|
||||||
|
sprite = {
|
||||||
|
filename = sprite('generator_entity.png'),
|
||||||
|
width = 256,
|
||||||
|
height = 256,
|
||||||
|
priority = 'medium',
|
||||||
|
},
|
||||||
|
shape = {
|
||||||
|
width = 3,
|
||||||
|
height = 3,
|
||||||
|
type = "full",
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-output',
|
||||||
|
},
|
||||||
|
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_equipment_player_reactor_item',
|
||||||
|
type = 'generator-equipment',
|
||||||
|
power = '600kW',
|
||||||
|
categories = {'armor'},
|
||||||
|
sprite = {
|
||||||
|
filename = sprite('player_reactor_entity.png'),
|
||||||
|
width = 256,
|
||||||
|
height = 256,
|
||||||
|
priority = 'medium',
|
||||||
|
},
|
||||||
|
shape = {
|
||||||
|
width = 3,
|
||||||
|
height = 3,
|
||||||
|
type = "full",
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-output',
|
||||||
|
},
|
||||||
|
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_equipment_player_shield_item',
|
||||||
|
type = 'energy-shield-equipment',
|
||||||
|
energy_per_shield = '20kJ',
|
||||||
|
max_shield_value = 400,
|
||||||
|
categories = {'armor'},
|
||||||
|
sprite = {
|
||||||
|
filename = sprite('player_shield_entity.png'),
|
||||||
|
width = 256,
|
||||||
|
height = 256,
|
||||||
|
priority = 'medium',
|
||||||
|
},
|
||||||
|
shape = {
|
||||||
|
width = 3,
|
||||||
|
height = 3,
|
||||||
|
type = "full",
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-input',
|
||||||
|
input_flow_limit = "600kW",
|
||||||
|
buffer_capacity = "300kJ",
|
||||||
|
},
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
180
prototypes/fission/fi_fuel.lua
Normal file
|
|
@ -0,0 +1,180 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_fuel_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_fuel/fi_fuel_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
--u 235 + u 238
|
||||||
|
name = 'fi_basic_fuel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('basic_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
fuel_category = 'fi_basic_fuel',
|
||||||
|
fuel_value = '10GJ',
|
||||||
|
fuel_glow_color = {r=0.1,g=0.74,b=0.39,a=0.5},
|
||||||
|
order = 'a-a',
|
||||||
|
burnt_result = 'fi_used_basic_fuel_item',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--u 238 + th 232
|
||||||
|
name = 'fi_basic_thorium_fuel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('basic_thorium_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
fuel_category = 'fi_basic_fuel',
|
||||||
|
fuel_value = '6GJ',
|
||||||
|
fuel_glow_color = {r=0.1,g=0.74,b=0.39,a=0.5},
|
||||||
|
order = 'a-b',
|
||||||
|
burnt_result = 'fi_used_basic_thorium_fuel_item',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--u 238 + pu 239
|
||||||
|
name = 'fi_advanced_fuel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('advanced_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
fuel_category = 'fi_advanced_fuel',
|
||||||
|
fuel_value = '14GJ',
|
||||||
|
fuel_glow_color = {r=0.1,g=0.74,b=0.39,a=0.5},
|
||||||
|
order = 'b-a',
|
||||||
|
burnt_result = 'fi_used_advanced_fuel_item',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--u 233 + u 238
|
||||||
|
name = 'fi_advanced_thorium_fuel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('advanced_thorium_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
fuel_category = 'fi_advanced_fuel',
|
||||||
|
fuel_value = '10GJ',
|
||||||
|
fuel_glow_color = {r=0.1,g=0.74,b=0.39,a=0.5},
|
||||||
|
order = 'b-b',
|
||||||
|
burnt_result = 'fi_used_advanced_thorium_fuel_item',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--u 235 + pu 239
|
||||||
|
name = 'fi_pure_fuel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('pure_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
fuel_category = 'fi_pure_fuel',
|
||||||
|
fuel_value = '28GJ',
|
||||||
|
fuel_glow_color = {r=0.1,g=0.74,b=0.39,a=0.5},
|
||||||
|
order = 'c-a',
|
||||||
|
burnt_result = 'fi_used_pure_fuel_item',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--used_basic
|
||||||
|
name = 'fi_used_basic_fuel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('used_basic_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--used_basic_thorium
|
||||||
|
name = 'fi_used_basic_thorium_fuel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('used_basic_thorium_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--used_advanced
|
||||||
|
name = 'fi_used_advanced_fuel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('used_advanced_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--used_advanced_thorium
|
||||||
|
name = 'fi_used_advanced_thorium_fuel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('used_advanced_thorium_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--used_pure
|
||||||
|
name = 'fi_used_pure_fuel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('used_pure_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--u33
|
||||||
|
name = 'fi_uranium233_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('uranium233_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_a',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--pu239
|
||||||
|
name = 'fi_plutonium239_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('plutonium239_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_a',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
--th232
|
||||||
|
name = 'fi_thorium232_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('thorium232_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_a',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
--train crystal fuel
|
||||||
|
{
|
||||||
|
name = 'fi_fuel_train_crystal_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('train_crystal_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_d',
|
||||||
|
order = 'd-a',
|
||||||
|
fuel_acceleration_multiplier = 0.6,
|
||||||
|
fuel_top_speed_multiplier = 1.55,
|
||||||
|
fuel_category = 'el_train_fuel',
|
||||||
|
fuel_emissions_multiplier = 3.5,
|
||||||
|
fuel_value = '350MJ',
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
32
prototypes/fission/fi_materials.lua
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_materials_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_materials/fi_materials_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_industrial_steel_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('industrial_steel_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_b',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_industrial_steel_blend_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('industrial_steel_blend_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_a-c',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
114
prototypes/fission/fi_miner.lua
Normal file
|
|
@ -0,0 +1,114 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_miner_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_miner/fi_miner_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_miner_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fi_miner_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_c',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fi_miner_entity',
|
||||||
|
type = 'mining-drill',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-2.7,-1.3},{2.7,1.3}},
|
||||||
|
selection_box = {{-3,-1.5},{3,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fi_miner_item',
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'burner',
|
||||||
|
fuel_inventory_size = 3,
|
||||||
|
burnt_inventory_size = 3,
|
||||||
|
effectivity = 0.35,
|
||||||
|
emissions_per_minute = 75,
|
||||||
|
fuel_category = 'fi_basic_fuel'
|
||||||
|
},
|
||||||
|
energy_usage = '4MW',
|
||||||
|
mining_speed = 4.5,
|
||||||
|
resource_categories = {'basic-solid'},
|
||||||
|
resource_searching_radius = 6,
|
||||||
|
vector_to_place_result = {3.25,0},
|
||||||
|
radius_visualisation_picture =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/beacon/beacon-radius-visualization.png",
|
||||||
|
width = 10,
|
||||||
|
height = 10,
|
||||||
|
},
|
||||||
|
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
|
||||||
|
module_specification = {
|
||||||
|
module_info_icon_shift = {
|
||||||
|
0,
|
||||||
|
0.8
|
||||||
|
},
|
||||||
|
module_slots = 2
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animations = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation_vertikal.png'),
|
||||||
|
size = {448*2,550},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.3},
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation_horizontal.png'),
|
||||||
|
size = {480,448*2},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 10,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation_vertikal.png'),
|
||||||
|
size = {448*2,550},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.3},
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation_horizontal.png'),
|
||||||
|
size = {480,448*2},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 10,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename ='__base__/sound/electric-mining-drill.ogg'},
|
||||||
|
apparent_volume = 3.2,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
155
prototypes/fission/fi_modules.lua
Normal file
|
|
@ -0,0 +1,155 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_modules_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_modules/fi_modules_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
local limitation_list = {
|
||||||
|
'el_aluminum_ore_recipe',
|
||||||
|
'el_aluminum_item_recipe',
|
||||||
|
'el_lithium_ore_recipe',
|
||||||
|
'el_lithium_item_recipe',
|
||||||
|
'el_train_fuel_diesel_recipe',
|
||||||
|
'el_energy_crystal_recipe',
|
||||||
|
'fi_compound_material_recipe',
|
||||||
|
'fi_materials_industrial_steel_recipe',
|
||||||
|
'fu_lead_ore_recipe',
|
||||||
|
'fi_base_crystal_recipe',
|
||||||
|
'fi_catalyst_crystal_recipe',
|
||||||
|
'fi_energy_crystal_recipe'
|
||||||
|
}
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_1_item',
|
||||||
|
type = 'module',
|
||||||
|
icon = sprite('productivity_1.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_j',
|
||||||
|
category = '248k_productivity_category',
|
||||||
|
tier = 1,
|
||||||
|
order = 'a-a',
|
||||||
|
effect = {
|
||||||
|
consumption = {bonus = 0.9},
|
||||||
|
speed = {bonus = -0.2},
|
||||||
|
productivity = {bonus = 0.08},
|
||||||
|
pollution = {bonus = 0.3}
|
||||||
|
},
|
||||||
|
limitation = limitation_list,
|
||||||
|
limitation_message_key = 'limitation_message',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_2_item',
|
||||||
|
type = 'module',
|
||||||
|
icon = sprite('productivity_2.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_j',
|
||||||
|
category = '248k_productivity_category',
|
||||||
|
tier = 2,
|
||||||
|
order = 'a-a',
|
||||||
|
effect = {
|
||||||
|
consumption = {bonus = 1.4},
|
||||||
|
speed = {bonus = -0.35},
|
||||||
|
productivity = {bonus = 0.12},
|
||||||
|
pollution = {bonus = 0.6}
|
||||||
|
},
|
||||||
|
limitation = limitation_list,
|
||||||
|
limitation_message_key = 'limitation_message',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_3_item',
|
||||||
|
type = 'module',
|
||||||
|
icon = sprite('productivity_3.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_j',
|
||||||
|
category = '248k_productivity_category',
|
||||||
|
tier = 3,
|
||||||
|
order = 'a-a',
|
||||||
|
effect = {
|
||||||
|
consumption = {bonus = 2.6},
|
||||||
|
speed = {bonus = -0.6},
|
||||||
|
productivity = {bonus = 0.20},
|
||||||
|
pollution = {bonus = 0.9}
|
||||||
|
},
|
||||||
|
limitation = limitation_list,
|
||||||
|
limitation_message_key = 'limitation_message',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_4_item',
|
||||||
|
type = 'module',
|
||||||
|
icon = sprite('productivity_4.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'gr_item_subgroup_d',
|
||||||
|
category = '248k_productivity_category',
|
||||||
|
tier = 4,
|
||||||
|
order = 'a-a',
|
||||||
|
effect = {
|
||||||
|
consumption = {bonus = 2},
|
||||||
|
speed = {bonus = -0.5},
|
||||||
|
productivity = {bonus = 0.05},
|
||||||
|
pollution = {bonus = 1}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_5_item',
|
||||||
|
type = 'module',
|
||||||
|
icon = sprite('productivity_5.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'gr_item_subgroup_d',
|
||||||
|
category = '248k_productivity_category',
|
||||||
|
tier = 5,
|
||||||
|
order = 'a-b',
|
||||||
|
effect = {
|
||||||
|
consumption = {bonus = 3},
|
||||||
|
speed = {bonus = -0.7},
|
||||||
|
productivity = {bonus = 0.1},
|
||||||
|
pollution = {bonus = 1}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_productivity_6_item',
|
||||||
|
type = 'module',
|
||||||
|
icon = sprite('productivity_6.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'gr_item_subgroup_d',
|
||||||
|
category = '248k_productivity_category',
|
||||||
|
tier = 6,
|
||||||
|
order = 'a-c',
|
||||||
|
effect = {
|
||||||
|
consumption = {bonus = 6},
|
||||||
|
speed = {bonus = -0.9},
|
||||||
|
productivity = {bonus = 0.25},
|
||||||
|
pollution = {bonus = 1}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_base_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('base.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_e',
|
||||||
|
order = 'b-k',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_modules_core_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('core.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fi_item_subgroup_e',
|
||||||
|
order = 'b-x',
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
219
prototypes/fission/fi_robo.lua
Normal file
|
|
@ -0,0 +1,219 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_robo_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_robo/fi_robo_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_robo_port_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('port_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fi_robo_port_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_c',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fi_robo_charger_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('charger_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fi_robo_charger_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_c',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype port
|
||||||
|
{
|
||||||
|
name = 'fi_robo_port_entity',
|
||||||
|
type = 'roboport',
|
||||||
|
icon = sprite('port_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fi_robo_port_item',
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
buffer_capacity = '400MJ',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '160MW',
|
||||||
|
},
|
||||||
|
energy_usage = '4MW',
|
||||||
|
charge_approach_distance = 2,
|
||||||
|
charging_energy = '2MW',
|
||||||
|
recharge_minimum = '1MW',
|
||||||
|
charging_station_count = 4,
|
||||||
|
construction_radius = 70,
|
||||||
|
logistics_radius = 70,
|
||||||
|
material_slots_count = 10,
|
||||||
|
robot_slots_count = 10,
|
||||||
|
request_to_open_door_timeout = 15,
|
||||||
|
spawn_and_station_height = 1.2,
|
||||||
|
robots_shrink_when_entering_and_exiting = true,
|
||||||
|
|
||||||
|
base = {
|
||||||
|
filename = sprite('port_base.png'),
|
||||||
|
width = 600,
|
||||||
|
height = 600,
|
||||||
|
scale = 0.2,
|
||||||
|
shift = {0,-0.3},
|
||||||
|
},
|
||||||
|
base_patch = {
|
||||||
|
filename = sprite('port_base.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64,
|
||||||
|
},
|
||||||
|
base_animation = {
|
||||||
|
filename = sprite('port_base.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 1,
|
||||||
|
line_length = 1,
|
||||||
|
--lines_per_file = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
frame_count = 6,
|
||||||
|
scale = 1,
|
||||||
|
},
|
||||||
|
door_animation_up = {
|
||||||
|
filename = sprite('port_door_animation.png'),
|
||||||
|
width = 600,
|
||||||
|
height = 600,
|
||||||
|
scale = 0.2,
|
||||||
|
shift = {0,-0.3},
|
||||||
|
line_length = 4,
|
||||||
|
--lines_per_file = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
frame_count = 4,
|
||||||
|
},
|
||||||
|
door_animation_down = {
|
||||||
|
filename = sprite('port_door_animation.png'),
|
||||||
|
width = 600,
|
||||||
|
height = 600,
|
||||||
|
scale = 0.2,
|
||||||
|
shift = {0,-0.3},
|
||||||
|
line_length = 4,
|
||||||
|
--lines_per_file = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
frame_count = 4,
|
||||||
|
},
|
||||||
|
recharging_animation = {
|
||||||
|
filename = "__base__/graphics/entity/roboport/roboport-recharging.png",
|
||||||
|
priority = "high",
|
||||||
|
width = 37,
|
||||||
|
height = 35,
|
||||||
|
frame_count = 16,
|
||||||
|
scale = 1.5,
|
||||||
|
animation_speed = 0.5
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
},
|
||||||
|
--charger
|
||||||
|
{
|
||||||
|
name = 'fi_robo_charger_entity',
|
||||||
|
type = 'roboport',
|
||||||
|
icon = sprite('charger_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fi_robo_charger_item',
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
buffer_capacity = '400MJ',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '40MW',
|
||||||
|
},
|
||||||
|
energy_usage = '4MW',
|
||||||
|
charge_approach_distance = 2,
|
||||||
|
charging_energy = '6MW',
|
||||||
|
recharge_minimum = '1MW',
|
||||||
|
charging_station_count = 6,
|
||||||
|
construction_radius = 1,
|
||||||
|
logistics_radius = 1,
|
||||||
|
material_slots_count = 0,
|
||||||
|
robot_slots_count = 0,
|
||||||
|
request_to_open_door_timeout = 4,
|
||||||
|
spawn_and_station_height = 2,
|
||||||
|
|
||||||
|
base = {
|
||||||
|
filename = sprite('charger_base_2.png'),
|
||||||
|
width = 600,
|
||||||
|
height = 600,
|
||||||
|
scale = 0.2,
|
||||||
|
shift = {0,-0.3},
|
||||||
|
},
|
||||||
|
base_patch = {
|
||||||
|
filename = sprite('charger_base.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 64,
|
||||||
|
},
|
||||||
|
base_animation = {
|
||||||
|
filename = sprite('charger_animation_2.png'),
|
||||||
|
width = 600,
|
||||||
|
height = 600,
|
||||||
|
line_length = 5,
|
||||||
|
lines_per_file = 1,
|
||||||
|
scale = 0.2,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
frame_count = 5,
|
||||||
|
shift = {0,-0.3},
|
||||||
|
},
|
||||||
|
door_animation_up = {
|
||||||
|
filename = sprite('charger_base.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 1,
|
||||||
|
line_length = 1,
|
||||||
|
--lines_per_file = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
frame_count = 6,
|
||||||
|
scale = 1,
|
||||||
|
},
|
||||||
|
door_animation_down = {
|
||||||
|
filename = sprite('charger_base.png'),
|
||||||
|
width = 64,
|
||||||
|
height = 1,
|
||||||
|
line_length = 1,
|
||||||
|
--lines_per_file = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
frame_count = 6,
|
||||||
|
scale = 1,
|
||||||
|
},
|
||||||
|
recharging_animation = {
|
||||||
|
filename = "__base__/graphics/entity/roboport/roboport-recharging.png",
|
||||||
|
priority = "high",
|
||||||
|
width = 37,
|
||||||
|
height = 35,
|
||||||
|
frame_count = 16,
|
||||||
|
scale = 1.5,
|
||||||
|
animation_speed = 0.5
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
},
|
||||||
|
})
|
||||||
99
prototypes/fission/fi_solid_reactor.lua
Normal file
|
|
@ -0,0 +1,99 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fi_solid_reactor_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fission/fi_solid_reactor/fi_solid_reactor_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fi_solid_reactor_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fi_solid_reactor_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fi_item_subgroup_c',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fi_solid_reactor_entity',
|
||||||
|
type = 'reactor',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-2.7,-2.7},{2.7,2.7}},
|
||||||
|
selection_box = {{-3.0,-3.0},{3.0,3.0}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fi_solid_reactor_item',
|
||||||
|
},
|
||||||
|
consumption = '60MW',
|
||||||
|
neighbour_bonus = 2,
|
||||||
|
energy_source = {
|
||||||
|
type = 'burner',
|
||||||
|
fuel_inventory_size = 3,
|
||||||
|
burnt_inventory_size = 3,
|
||||||
|
effectivity = 0.9,
|
||||||
|
fuel_categories = {
|
||||||
|
'fi_basic_fuel',
|
||||||
|
'fi_advanced_fuel',
|
||||||
|
'fi_pure_fuel'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
heat_buffer = {
|
||||||
|
max_temperature = 1000,
|
||||||
|
specific_heat = '10MJ',
|
||||||
|
max_transfer = '10GW',
|
||||||
|
connections = {
|
||||||
|
{position = {0.5,-3}, direction = defines.direction.north},
|
||||||
|
{position = {-0.5,-3}, direction = defines.direction.north},
|
||||||
|
|
||||||
|
{position = {2.9,0.5}, direction = defines.direction.east},
|
||||||
|
{position = {2.9,-0.5}, direction = defines.direction.east},
|
||||||
|
|
||||||
|
{position = {-3,0.5}, direction = defines.direction.west},
|
||||||
|
{position = {-3,-0.5}, direction = defines.direction.west},
|
||||||
|
|
||||||
|
{position = {0.5,2.9}, direction = defines.direction.south},
|
||||||
|
{position = {-0.5,2.9}, direction = defines.direction.south}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
picture = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
width = 960,
|
||||||
|
height = 960,
|
||||||
|
shift = {0, 0},
|
||||||
|
scale = 0.2,
|
||||||
|
},
|
||||||
|
working_light_picture ={
|
||||||
|
filename = sprite('working_light.png'),
|
||||||
|
width = 960,
|
||||||
|
height = 960,
|
||||||
|
shift = {0, 0},
|
||||||
|
scale = 0.2,
|
||||||
|
},
|
||||||
|
light = {
|
||||||
|
type = 'basic',
|
||||||
|
intensity = 0.4,
|
||||||
|
size = 14,
|
||||||
|
color = {r=0.1,g=0.5,b=0.75}
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename ='__base__/sound/nuclear-reactor-1.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
1088
prototypes/fu_recipes.lua
Normal file
143
prototypes/fusion/fu_activator.lua
Normal file
|
|
@ -0,0 +1,143 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_activator_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_activator/fu_activator_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_activator_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_activator_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_c',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_activator_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_activator_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_activator_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'burner',
|
||||||
|
fuel_inventory_size = 3,
|
||||||
|
burnt_inventory_size = 3,
|
||||||
|
effectivity = 1,
|
||||||
|
emissions_per_minute = 40,
|
||||||
|
fuel_categories = {'fi_basic_fuel','fi_advanced_fuel'}
|
||||||
|
},
|
||||||
|
energy_usage = '50MW',
|
||||||
|
allowed_effects = {"speed", "consumption", "pollution"},
|
||||||
|
module_specification = {
|
||||||
|
module_info_icon_shift = {
|
||||||
|
0,
|
||||||
|
0.8
|
||||||
|
},
|
||||||
|
module_slots = 2
|
||||||
|
},
|
||||||
|
--fluids
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-2, 0}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {2, 0}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {0, -2}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {420,448},
|
||||||
|
scale = 0.26,
|
||||||
|
line_length = 2,
|
||||||
|
frame_count = 2,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.2}
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {420,448},
|
||||||
|
scale = 0.26,
|
||||||
|
line_length = 2,
|
||||||
|
frame_count = 2,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.2}
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {420,448},
|
||||||
|
scale = 0.26,
|
||||||
|
line_length = 2,
|
||||||
|
frame_count = 2,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.2}
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {420,448},
|
||||||
|
scale = 0.26,
|
||||||
|
line_length = 2,
|
||||||
|
frame_count = 2,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.2},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
144
prototypes/fusion/fu_boiler.lua
Normal file
|
|
@ -0,0 +1,144 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_boiler_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_boiler/fu_boiler_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_boiler_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_boiler_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_c',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_boiler_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.8,-1.8},{1.8,1.8}},
|
||||||
|
selection_box = {{-2,-2},{2,2}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_boiler_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_boiler_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'heat',
|
||||||
|
max_temperature = 1000,
|
||||||
|
specific_heat = '100MJ',
|
||||||
|
max_transfer = '10GW',
|
||||||
|
connections = {
|
||||||
|
{position = {0.5,-1.8}, direction = defines.direction.north},
|
||||||
|
{position = {-0.5,-1.8}, direction = defines.direction.north},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
energy_usage = '150MW',
|
||||||
|
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
|
||||||
|
module_specification = {
|
||||||
|
module_info_icon_shift = {
|
||||||
|
0,
|
||||||
|
0.8
|
||||||
|
},
|
||||||
|
module_slots = 2
|
||||||
|
},
|
||||||
|
--fluids
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
filter = 'water',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-2.5, -0.5}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'fu_hydrogen',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {2.5, -0.5}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filter = 'fu_oxygen',
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {0.5, 2.5}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512,512},
|
||||||
|
scale = 0.255,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512,512},
|
||||||
|
scale = 0.255,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512,512},
|
||||||
|
scale = 0.255,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512,512},
|
||||||
|
scale = 0.255,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
105
prototypes/fusion/fu_burner.lua
Normal file
|
|
@ -0,0 +1,105 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_burner_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_burner/fu_burner_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_burner_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_burner_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_c',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_burner_entity',
|
||||||
|
type = 'generator',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral", "not-rotatable"},
|
||||||
|
--minable
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_burner_item',
|
||||||
|
},
|
||||||
|
max_health = 150,
|
||||||
|
corpse = 'small-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
--energy
|
||||||
|
effectivity = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-output',
|
||||||
|
input_flow_limit = '0W',
|
||||||
|
output_flow_limit = tostring(config('power_output'))..'W',
|
||||||
|
},
|
||||||
|
max_power_output = tostring(config('power_output'))..'W',
|
||||||
|
maximum_temperature = 40,
|
||||||
|
fluid_usage_per_tick = 1,
|
||||||
|
fluid_box = {
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
filter = 'fu_oxygen',
|
||||||
|
minimum_temperature = 0,
|
||||||
|
maximum_temperature = 40,
|
||||||
|
production_type = 'input-output',
|
||||||
|
pipe_connections = {
|
||||||
|
{type = "input-output", position = {2, 0}},
|
||||||
|
{type = "input-output", position = {-2, 0}},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
fluid_input = {
|
||||||
|
name = 'fu_oxygen',
|
||||||
|
minimum_temperature = 0,
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
vertical_animation = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {420,448},
|
||||||
|
scale = 0.26,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.2}
|
||||||
|
},
|
||||||
|
horizontal_animation = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {420,448},
|
||||||
|
scale = 0.26,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-0.2}
|
||||||
|
},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
working_sound =
|
||||||
|
{
|
||||||
|
sound = { filename = "__base__/sound/furnace.ogg" },
|
||||||
|
apparent_volume = 1.5,
|
||||||
|
},
|
||||||
|
smoke = {
|
||||||
|
{
|
||||||
|
name = 'smoke',
|
||||||
|
tape = 'trival-smoke',
|
||||||
|
frequency = 0.5,
|
||||||
|
position = {-0.6,-1.8},
|
||||||
|
--deviation = {x = -2, y = -2},
|
||||||
|
duration = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
145
prototypes/fusion/fu_exchanger.lua
Normal file
|
|
@ -0,0 +1,145 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_exchanger_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_exchanger/fu_exchanger_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_exchanger_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_exchanger_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_c',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_exchanger_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.8,-1.8},{1.8,1.8}},
|
||||||
|
selection_box = {{-2,-2},{2,2}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_exchanger_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_exchanger_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'void',
|
||||||
|
},
|
||||||
|
energy_usage = '20MW',
|
||||||
|
allowed_effects = {"speed", "consumption", "pollution"},
|
||||||
|
module_specification = {
|
||||||
|
module_info_icon_shift = {
|
||||||
|
0,
|
||||||
|
0.8
|
||||||
|
},
|
||||||
|
module_slots = 2
|
||||||
|
},
|
||||||
|
--fluids
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-2.5, -0.5}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-2.5, 1.5}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {2.5, -0.5}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {2.5, 1.5}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
139
prototypes/fusion/fu_fusor.lua
Normal file
|
|
@ -0,0 +1,139 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_fusor_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_fusor/fu_fusor_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_fusor_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_fusor_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_d',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_tech_sign_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('tech_sign_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'fu_item_subgroup_b',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_fusor_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","not-rotatable"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-2.8,-2.3},{2.8,2.3}},
|
||||||
|
selection_box = {{-3,-2.5},{3,2.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_fusor_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_fusor_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
buffer_capacity = '400MJ',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '600MW',
|
||||||
|
},
|
||||||
|
energy_usage = '400MW',
|
||||||
|
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
|
||||||
|
module_specification = {
|
||||||
|
module_info_icon_shift = {
|
||||||
|
0,
|
||||||
|
0.8
|
||||||
|
},
|
||||||
|
module_slots = 2
|
||||||
|
},
|
||||||
|
--fluid
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-1.5, -3}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {1.5, -3}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512*2,512*2},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-1},
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512*2,512*2},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-1},
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512*2,512*2},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-1},
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512*2,512*2},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,-1},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
43
prototypes/fusion/fu_lead.lua
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['el_lead_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_lead/fu_lead_'..name
|
||||||
|
end
|
||||||
|
--ore
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_lead_ore_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('ore_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fu_item_subgroup_a',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_lead_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fu_item_subgroup_a',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_crushed_lead_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('crushed_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fu_item_subgroup_a-b',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
277
prototypes/fusion/fu_reactor.lua
Normal file
|
|
@ -0,0 +1,277 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_stelar_reactor_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_reactor/fu_reactor_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_stelar_reactor_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('stelar_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_stelar_reactor_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_d',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_tokamak_reactor_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('tokamak_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_tokamak_reactor_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_d',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_stelar_reactor_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('stelar_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","not-rotatable"},
|
||||||
|
max_health = 1500,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-5.8,-3.8},{5.8,5.8}},
|
||||||
|
selection_box = {{-6,-4},{6,6}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_stelar_reactor_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_stelar_reactor_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
buffer_capacity = '400MJ',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '600MW',
|
||||||
|
},
|
||||||
|
energy_usage = '400MW',
|
||||||
|
--fluid
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-1.5, -4.5}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {1.5, -4.5}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0.5, -4.5}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {-0.5, -4.5}}
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('stelar_entity_animation.png'),
|
||||||
|
size = {512*2,512*2},
|
||||||
|
scale = 0.4,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,0.4},
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('stelar_entity_animation.png'),
|
||||||
|
size = {512*2,512*2},
|
||||||
|
scale = 0.4,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,0.4},
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('stelar_entity_animation.png'),
|
||||||
|
size = {512*2,512*2},
|
||||||
|
scale = 0.4,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,0.4},
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('stelar_entity_animation.png'),
|
||||||
|
size = {512*2,512*2},
|
||||||
|
scale = 0.4,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {0,0.4},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_tokamak_reactor_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('tokamak_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","not-rotatable"},
|
||||||
|
max_health = 1500,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-5.8,-3.8},{5.8,5.8}},
|
||||||
|
selection_box = {{-6,-4},{6,6}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_tokamak_reactor_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_tokamak_reactor_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
buffer_capacity = '400MJ',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '600MW',
|
||||||
|
},
|
||||||
|
energy_usage = '400MW',
|
||||||
|
--fluid
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-1.5, -4.5}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {1.5, -4.5}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0.5, -4.5}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {-0.5, -4.5}}
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('tokamak_entity_animation_vertikal.png'),
|
||||||
|
size = {512*3,512*2},
|
||||||
|
scale = 0.37,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {2.34,0.3},
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('tokamak_entity_animation_horizontal.png'),
|
||||||
|
size = {512*3,512*2},
|
||||||
|
scale = 0.37,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {2.34,0.3},
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('tokamak_entity_animation_vertikal.png'),
|
||||||
|
size = {512*3,512*2},
|
||||||
|
scale = 0.37,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {2.34,0.3},
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('tokamak_entity_animation_horizontal.png'),
|
||||||
|
size = {512*3,512*2},
|
||||||
|
scale = 0.37,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
shift = {2.34,0.3},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
259
prototypes/fusion/fu_robo.lua
Normal file
|
|
@ -0,0 +1,259 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_robo_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_robo/fu_robo_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_robo_logistic_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('logistic_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_robo_logistic_entity',
|
||||||
|
stack_size = 50,
|
||||||
|
subgroup = 'fu_item_subgroup_d',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_robo_construction_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('construction_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_robo_construction_entity',
|
||||||
|
stack_size = 50,
|
||||||
|
subgroup = 'fu_item_subgroup_d',
|
||||||
|
order = 'b-b',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_robo_logistic_entity',
|
||||||
|
type = 'logistic-robot',
|
||||||
|
icon = sprite('logistic_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"placeable-player", "player-creation", "placeable-off-grid", "not-on-map"},
|
||||||
|
max_health = 800,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{0, 0}, {0, 0}},
|
||||||
|
selection_box = {{-0.5, -1.5}, {0.5, -0.5}},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_robo_logistic_item',
|
||||||
|
},
|
||||||
|
max_payload_size = 5,
|
||||||
|
speed = 0.24,
|
||||||
|
transfer_distance = 0.5,
|
||||||
|
max_energy = "20MJ",
|
||||||
|
energy_per_tick = "0.14kJ",
|
||||||
|
speed_multiplier_when_out_of_energy = 0.2,
|
||||||
|
energy_per_move = "10kJ",
|
||||||
|
min_to_charge = 0.2,
|
||||||
|
max_to_charge = 0.9,
|
||||||
|
cargo_centered = {0.0, 0.2},
|
||||||
|
idle =
|
||||||
|
{
|
||||||
|
filename = sprite('logistic_entity_animation.png'),
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 128,
|
||||||
|
height = 128,
|
||||||
|
scale = 0.5,
|
||||||
|
frame_count = 1,
|
||||||
|
shift = {0,0},
|
||||||
|
direction_count = 16,
|
||||||
|
},
|
||||||
|
idle_with_cargo =
|
||||||
|
{
|
||||||
|
filename = sprite('logistic_entity_animation.png'),
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 128,
|
||||||
|
height = 128,
|
||||||
|
scale = 0.5,
|
||||||
|
frame_count = 1,
|
||||||
|
shift = {0,0},
|
||||||
|
direction_count = 16,
|
||||||
|
},
|
||||||
|
in_motion =
|
||||||
|
{
|
||||||
|
filename = sprite('logistic_entity_animation.png'),
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 128,
|
||||||
|
height = 128,
|
||||||
|
scale = 0.5,
|
||||||
|
frame_count = 1,
|
||||||
|
shift = {0,0},
|
||||||
|
direction_count = 16,
|
||||||
|
},
|
||||||
|
in_motion_with_cargo =
|
||||||
|
{
|
||||||
|
filename = sprite('logistic_entity_animation.png'),
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 128,
|
||||||
|
height = 128,
|
||||||
|
scale = 0.5,
|
||||||
|
frame_count = 1,
|
||||||
|
shift = {0,0},
|
||||||
|
direction_count = 16,
|
||||||
|
},
|
||||||
|
shadow_idle =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 58,
|
||||||
|
height = 29,
|
||||||
|
frame_count = 1,
|
||||||
|
direction_count = 16,
|
||||||
|
y = 29,
|
||||||
|
draw_as_shadow = true,
|
||||||
|
},
|
||||||
|
shadow_in_motion =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 58,
|
||||||
|
height = 29,
|
||||||
|
frame_count = 1,
|
||||||
|
direction_count = 16,
|
||||||
|
draw_as_shadow = true,
|
||||||
|
},
|
||||||
|
shadow_idle_with_cargo =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 58,
|
||||||
|
height = 29,
|
||||||
|
frame_count = 1,
|
||||||
|
direction_count = 16,
|
||||||
|
draw_as_shadow = true,
|
||||||
|
},
|
||||||
|
shadow_in_motion_with_cargo =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 58,
|
||||||
|
height = 29,
|
||||||
|
frame_count = 1,
|
||||||
|
direction_count = 16,
|
||||||
|
draw_as_shadow = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_robo_construction_entity',
|
||||||
|
type = 'construction-robot',
|
||||||
|
icon = sprite('construction_entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"placeable-player", "player-creation", "placeable-off-grid", "not-on-map"},
|
||||||
|
max_health = 800,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{0, 0}, {0, 0}},
|
||||||
|
selection_box = {{-0.5, -1.5}, {0.5, -0.5}},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_robo_construction_item',
|
||||||
|
},
|
||||||
|
working_light = {intensity = 0.8, size = 3},
|
||||||
|
max_payload_size = 5,
|
||||||
|
speed = 0.24,
|
||||||
|
transfer_distance = 0.5,
|
||||||
|
max_energy = "20MJ",
|
||||||
|
energy_per_tick = "0.14kJ",
|
||||||
|
speed_multiplier_when_out_of_energy = 0.2,
|
||||||
|
energy_per_move = "10kJ",
|
||||||
|
min_to_charge = 0.2,
|
||||||
|
max_to_charge = 0.9,
|
||||||
|
cargo_centered = {0.0, 0.2},
|
||||||
|
construction_vector = {0.30, 0.22},
|
||||||
|
idle =
|
||||||
|
{
|
||||||
|
filename = sprite('construction_entity_animation.png'),
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 128,
|
||||||
|
height = 128,
|
||||||
|
scale = 0.5,
|
||||||
|
frame_count = 1,
|
||||||
|
shift = {0,0},
|
||||||
|
direction_count = 16,
|
||||||
|
},
|
||||||
|
in_motion =
|
||||||
|
{
|
||||||
|
filename = sprite('construction_entity_animation.png'),
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 128,
|
||||||
|
height = 128,
|
||||||
|
scale = 0.5,
|
||||||
|
frame_count = 1,
|
||||||
|
shift = {0,0},
|
||||||
|
direction_count = 16,
|
||||||
|
},
|
||||||
|
shadow_idle =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 58,
|
||||||
|
height = 29,
|
||||||
|
frame_count = 1,
|
||||||
|
direction_count = 16,
|
||||||
|
y = 29,
|
||||||
|
draw_as_shadow = true,
|
||||||
|
},
|
||||||
|
shadow_in_motion =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 58,
|
||||||
|
height = 29,
|
||||||
|
frame_count = 1,
|
||||||
|
direction_count = 16,
|
||||||
|
draw_as_shadow = true,
|
||||||
|
},
|
||||||
|
working =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 58,
|
||||||
|
height = 29,
|
||||||
|
frame_count = 1,
|
||||||
|
direction_count = 16,
|
||||||
|
draw_as_shadow = true,
|
||||||
|
},
|
||||||
|
shadow_working =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
|
||||||
|
priority = "high",
|
||||||
|
line_length = 16,
|
||||||
|
width = 58,
|
||||||
|
height = 29,
|
||||||
|
frame_count = 1,
|
||||||
|
direction_count = 16,
|
||||||
|
draw_as_shadow = true,
|
||||||
|
},
|
||||||
|
smoke =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/entity/smoke-construction/smoke-01.png",
|
||||||
|
width = 39,
|
||||||
|
height = 32,
|
||||||
|
frame_count = 19,
|
||||||
|
line_length = 19,
|
||||||
|
shift = {0.078125, -0.15625},
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
122
prototypes/fusion/fu_space_probe.lua
Normal file
|
|
@ -0,0 +1,122 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_space_probe_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_space_probe/fu_space_probe_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
--space probes
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_sputnik_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('sputnik_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'fu_item_subgroup_d',
|
||||||
|
rocket_launch_product = {'fu_space_probe_data_card_1_item',10},
|
||||||
|
order = 'd-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_probe_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('probe_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'fu_item_subgroup_d',
|
||||||
|
rocket_launch_product = {'fu_space_probe_data_card_3_item',10},
|
||||||
|
order = 'd-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_deep_probe_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('deep_probe_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'fu_item_subgroup_d',
|
||||||
|
rocket_launch_product = {'fu_space_probe_ore_item',100},
|
||||||
|
order = 'd-c',
|
||||||
|
},
|
||||||
|
--data cards
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_data_card_1_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('data_card_1_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fu_item_subgroup_a',
|
||||||
|
order = 'd-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_data_card_2_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('data_card_2_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fu_item_subgroup_a',
|
||||||
|
order = 'd-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_data_card_3_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('data_card_3_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fu_item_subgroup_a',
|
||||||
|
order = 'd-c',
|
||||||
|
},
|
||||||
|
-- matter
|
||||||
|
--ore
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_ore_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('ore_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fu_item_subgroup_d',
|
||||||
|
order = 'd-d',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_down_matter_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('down_matter_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fu_item_subgroup_a',
|
||||||
|
order = 'd-d',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_up_matter_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('up_matter_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'fu_item_subgroup_a',
|
||||||
|
order = 'd-e',
|
||||||
|
},
|
||||||
|
--science
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_science_item',
|
||||||
|
type = 'tool',
|
||||||
|
icon = sprite('science_item.png'),
|
||||||
|
durability = 1,
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'fu_item_subgroup_b',
|
||||||
|
order = 'd-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'fu_space_probe_science_item_1',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('science_item_1.png'),
|
||||||
|
durability = 1,
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'fu_item_subgroup_b',
|
||||||
|
order = 'd-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
145
prototypes/fusion/fu_star_engine/fu_star_engine_caster.lua
Normal file
|
|
@ -0,0 +1,145 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_star_engine_caster_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_caster/fu_star_engine_caster_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_caster_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_star_engine_caster_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'fu_item_subgroup_d-b',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_caster_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","not-rotatable"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.8,-1.8},{1.8,1.8}},
|
||||||
|
selection_box = {{-2,-2},{2,2}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_star_engine_caster_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_star_engine_caster_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'void',
|
||||||
|
},
|
||||||
|
energy_usage = '20MW',
|
||||||
|
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
|
||||||
|
module_specification = {
|
||||||
|
module_info_icon_shift = {
|
||||||
|
0,
|
||||||
|
0.8
|
||||||
|
},
|
||||||
|
module_slots = 2
|
||||||
|
},
|
||||||
|
--fluids
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-2.5, -0.5}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-2.5, 1.5}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {2.5, -0.5}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {2.5, 1.5}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
174
prototypes/fusion/fu_star_engine/fu_star_engine_cooler.lua
Normal file
|
|
@ -0,0 +1,174 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_star_engine_cooler_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_cooler/fu_star_engine_cooler_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_cooler_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_star_engine_cooler_entity',
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'fu_item_subgroup_d-b',
|
||||||
|
order = 'b-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_cooler_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","not-rotatable"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-6.5,-10.5},{6.5,10.5}},
|
||||||
|
selection_box = {{-6.5,-10.5},{6.5,10.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_star_engine_cooler_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_star_engine_cooler_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '4GW',
|
||||||
|
},
|
||||||
|
energy_usage = '0.5GW',
|
||||||
|
--fluids
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-4, -11}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {4, -11}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {0, 11}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {-2, 11}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {2, 11}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {-4, 11}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {4, 11}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation_1.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.8,
|
||||||
|
shift = {5.5,0.5},
|
||||||
|
line_length = 1,
|
||||||
|
lines_per_file = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
176
prototypes/fusion/fu_star_engine/fu_star_engine_cooler_up.lua
Normal file
|
|
@ -0,0 +1,176 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_star_engine_cooler_up_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_cooler_up/fu_star_engine_cooler_up_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_cooler_up_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_star_engine_cooler_up_entity',
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'fu_item_subgroup_d-b',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_cooler_up_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","not-rotatable"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-6.5,-10.5},{6.5,10.5}},
|
||||||
|
selection_box = {{-6.5,-10.5},{6.5,10.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_star_engine_cooler_up_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_star_engine_cooler_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '4GW',
|
||||||
|
},
|
||||||
|
energy_usage = '0.5GW',
|
||||||
|
--fluids
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-4, 11}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {4, 11}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {0, -11}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {-2, -11}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {2, -11}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {-4, -11}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {4, -11}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
--{-4, -11}{4, -11}
|
||||||
|
--{-2, 11}{2, 11}{0, 11}{-4, 11}{4, 11}
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation_1.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.8,
|
||||||
|
shift = {5.5,-0.5},
|
||||||
|
line_length = 1,
|
||||||
|
lines_per_file = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,500},
|
||||||
|
scale = 0.27,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
186
prototypes/fusion/fu_star_engine/fu_star_engine_core.lua
Normal file
|
|
@ -0,0 +1,186 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_star_engine_core_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_core/fu_star_engine_core_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_core_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_star_engine_core_entity',
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'fu_item_subgroup_d-b',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_core_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","not-rotatable"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-8.5,-4.5},{8.5,8.5}},
|
||||||
|
selection_box = {{-8.5,-4.5},{8.5,8.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_star_engine_core_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_star_engine_core_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '4GW',
|
||||||
|
},
|
||||||
|
energy_usage = '1GW',
|
||||||
|
--fluids
|
||||||
|
fluid_boxes = {
|
||||||
|
--in
|
||||||
|
--right
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-9, -1}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-9, 4}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
--left
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {9, -1}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {9, 4}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
--out
|
||||||
|
--up
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {-4, -5}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {4, -5}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
--down
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {-4, 9}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {4, 9}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.6,
|
||||||
|
shift = {2,0},
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.5,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.5,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.5,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
157
prototypes/fusion/fu_star_engine/fu_star_engine_heater.lua
Normal file
|
|
@ -0,0 +1,157 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_star_engine_heater_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_heater/fu_star_engine_heater_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_heater_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_star_engine_heater_entity',
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'fu_item_subgroup_d-b',
|
||||||
|
order = 'c-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_heater_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","not-rotatable"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-15,-6.5},{11,6.5}},
|
||||||
|
selection_box = {{-15,-6.5},{11,6.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_star_engine_heater_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_star_engine_heater_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '4GW',
|
||||||
|
},
|
||||||
|
energy_usage = '0.7GW',
|
||||||
|
--fluids
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {11.5, 0}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {11.5, 3}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {11.5, -3}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {-15.5, -2}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {-15.5, 3}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
--{-15, -3.5}}{-15, 3.5}}
|
||||||
|
--{11, 0}},{11, 3.5}},{11, -3.5}},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.8,
|
||||||
|
shift = {0.3,-0.2},
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.1,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.1,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.1,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
157
prototypes/fusion/fu_star_engine/fu_star_engine_heater_left.lua
Normal file
|
|
@ -0,0 +1,157 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['fu_star_engine_heater_left_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_heater_left/fu_star_engine_heater_left_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_heater_left_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'fu_star_engine_heater_left_entity',
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'fu_item_subgroup_d-b',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'fu_star_engine_heater_left_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","not-rotatable"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-15,-6.5},{11,6.5}},
|
||||||
|
selection_box = {{-15,-6.5},{11,6.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'fu_star_engine_heater_left_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'fu_star_engine_heater_crafting_category'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '4GW',
|
||||||
|
},
|
||||||
|
energy_usage = '0.7GW',
|
||||||
|
--fluids
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-15.5, 0}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-15.5, 3}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-15.5, -3}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {11.5, -2}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = 1,
|
||||||
|
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "output", position = {11.5, 3}},
|
||||||
|
},
|
||||||
|
production_type = "output"
|
||||||
|
},
|
||||||
|
--{-15, -3.5}}{-15, 3.5}}
|
||||||
|
--{11, 0}},{11, 3.5}},{11, -3.5}},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.8,
|
||||||
|
shift = {0.3-5+0.1,-0.2},
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.1,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.1,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {600*2,512*2},
|
||||||
|
scale = 0.1,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 9,
|
||||||
|
animation_speed = 0.3,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
|
||||||
|
apparent_volume = 2.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
752
prototypes/gr_recipes.lua
Normal file
|
|
@ -0,0 +1,752 @@
|
||||||
|
data:extend({
|
||||||
|
--crafter
|
||||||
|
{
|
||||||
|
name = 'gr_crafter_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_crafter_item',2},
|
||||||
|
{'fi_industrial_steel_item',100},
|
||||||
|
{'fi_compound_material_item',100},
|
||||||
|
{'gr_materials_fusion_cell_item',1},
|
||||||
|
{'processing-unit',50}
|
||||||
|
},
|
||||||
|
result = 'gr_crafter_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_fusion_cell_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'fu_space_probe_up_matter_item',1},
|
||||||
|
{'fu_tech_sign_item',40},
|
||||||
|
{'fusion-reactor-equipment',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_fusion_cell_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 35,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_stack_down_item_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fu_space_probe_down_matter_item',3},
|
||||||
|
{'low-density-structure',10},
|
||||||
|
{'fu_space_probe_data_card_3_item',2},
|
||||||
|
},
|
||||||
|
result = 'gr_materials_stack_down_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_stack_up_item_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fu_space_probe_up_matter_item',3},
|
||||||
|
{'low-density-structure',10},
|
||||||
|
{'fu_space_probe_data_card_3_item',2},
|
||||||
|
},
|
||||||
|
result = 'gr_materials_stack_up_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_wheel_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
category = 'crafting-with-fluid',
|
||||||
|
enabled = 'false',
|
||||||
|
subgroup = 'fu_star_engine_subgroup_e',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="fu_iron", amount=500},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="iron-gear-wheel", amount=500},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_steel_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
category = 'crafting-with-fluid',
|
||||||
|
enabled = 'false',
|
||||||
|
subgroup = 'fu_star_engine_subgroup_e',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="fu_iron", amount=500},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="steel-plate", amount=500},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
--train
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_train_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="gr_materials_fusion_cell_item", amount=4},
|
||||||
|
{type="item", name="low-density-structure", amount=100},
|
||||||
|
{type="item", name="gr_materials_stack_up_item", amount=4},
|
||||||
|
{type="item", name="copper-cable", amount=1000},
|
||||||
|
{type="item", name="gr_magnet_train_pre_item", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_magnet_train_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_wagon_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="gr_materials_fusion_cell_item", amount=2},
|
||||||
|
{type="item", name="low-density-structure", amount=100},
|
||||||
|
{type="item", name="gr_materials_stack_down_item", amount=2},
|
||||||
|
{type="item", name="copper-cable", amount=1000},
|
||||||
|
{type="item", name="gr_magnet_wagon_pre_item", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_magnet_wagon_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_tanker_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="gr_materials_fusion_cell_item", amount=2},
|
||||||
|
{type="item", name="low-density-structure", amount=100},
|
||||||
|
{type="item", name="gr_materials_stack_down_item", amount=2},
|
||||||
|
{type="item", name="copper-cable", amount=1000},
|
||||||
|
{type="item", name="gr_magnet_tanker_pre_item", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_magnet_tanker_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_train_pre_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="gr_materials_fusion_cell_item", amount=4},
|
||||||
|
{type="item", name="low-density-structure", amount=100},
|
||||||
|
{type="item", name="iron-plate", amount=100},
|
||||||
|
{type="item", name="copper-cable", amount=1000},
|
||||||
|
{type="item", name="el_diesel_train_item", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_magnet_train_pre_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_wagon_pre_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="gr_materials_fusion_cell_item", amount=2},
|
||||||
|
{type="item", name="low-density-structure", amount=100},
|
||||||
|
{type="item", name="iron-plate", amount=100},
|
||||||
|
{type="item", name="copper-cable", amount=1000},
|
||||||
|
{type="item", name="cargo-wagon", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_magnet_wagon_pre_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_tanker_pre_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="gr_materials_fusion_cell_item", amount=2},
|
||||||
|
{type="item", name="low-density-structure", amount=100},
|
||||||
|
{type="item", name="iron-plate", amount=100},
|
||||||
|
{type="item", name="copper-cable", amount=1000},
|
||||||
|
{type="item", name="fluid-wagon", amount=1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_magnet_tanker_pre_item", amount=1},
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 6,
|
||||||
|
},
|
||||||
|
--kovarex for matter
|
||||||
|
{
|
||||||
|
name = 'gr_kovarex_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
category = 'centrifuging',
|
||||||
|
enabled = 'false',
|
||||||
|
main_product = 'fu_space_probe_up_matter_item',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="fu_space_probe_down_matter_item", amount=10}
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="fu_space_probe_down_matter_item", amount=9},
|
||||||
|
{type="item", name="fu_space_probe_up_matter_item", amount=1}
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 100,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
--cooker
|
||||||
|
{
|
||||||
|
name = 'gr_cooker_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
main_product = 'gr_cooker_item',
|
||||||
|
ingredients = {
|
||||||
|
{'fi_industrial_steel_item',200},
|
||||||
|
{'fi_compound_material_item',200},
|
||||||
|
{'processing-unit',100},
|
||||||
|
{'pipe',60}
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_cooker_item", amount=1}
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_cooker_fluid_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
category = 'gr_cooker_fluid',
|
||||||
|
enabled = 'false',
|
||||||
|
main_product = 'gr_materials_cooked_crystal_item',
|
||||||
|
ingredients = {
|
||||||
|
{type="fluid", name="water", amount=1000},
|
||||||
|
{type="item", name="fi_crushed_crystal_item", amount=1}
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_materials_cooked_crystal_item", amount=1}
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 60,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_cooked_crystal_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
category = 'chemistry',
|
||||||
|
enabled = 'false',
|
||||||
|
main_product = 'gr_materials_refined_crystal_item',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="gr_materials_cooked_crystal_item", amount=1},
|
||||||
|
{type="fluid", name="petroleum-gas", amount=100}
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_materials_refined_crystal_item", amount=1}
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 30,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_refined_crystal_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
category = 'centrifuging',
|
||||||
|
enabled = 'false',
|
||||||
|
main_product = 'fi_energy_crystal_item',
|
||||||
|
subgroup = 'gr_item_subgroup_a',
|
||||||
|
ingredients = {
|
||||||
|
{type="item", name="gr_materials_refined_crystal_item", amount=1}
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="fi_energy_crystal_item", amount=1},
|
||||||
|
{type="item", name="el_energy_crystal_item", amount=4}
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
--charger
|
||||||
|
{
|
||||||
|
name = 'gr_charger_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
main_product = 'gr_charger_item',
|
||||||
|
ingredients = {
|
||||||
|
{'low-density-structure',100},
|
||||||
|
{'fi_industrial_steel_item',400},
|
||||||
|
{'fi_compound_material_item',400},
|
||||||
|
{'fu_tech_sign_item',1000},
|
||||||
|
{'concrete',500},
|
||||||
|
{'lab',10},
|
||||||
|
{'processing-unit',500}
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_charger_item", amount=1}
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_stabilizer_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
category = 'gr_charger_category',
|
||||||
|
enabled = 'false',
|
||||||
|
main_product = 'gr_materials_stabilizer_item',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_crushed_exotic_item',1},
|
||||||
|
{'fi_energy_crystal_item',20},
|
||||||
|
{'fu_tech_sign_item',100},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{type="item", name="gr_materials_stabilizer_item", amount=2}
|
||||||
|
},
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_crushed_exotic_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fi_crushing',
|
||||||
|
ingredients = {
|
||||||
|
{'fu_space_probe_ore_item',1},
|
||||||
|
},
|
||||||
|
result = 'gr_materials_crushed_exotic_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 20,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_black_hole_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fu_star_engine_core_item',1},
|
||||||
|
{'fu_star_engine_heater_left_item',1},
|
||||||
|
{'fu_star_engine_heater_item',1},
|
||||||
|
{'fu_star_engine_cooler_up_item',1},
|
||||||
|
{'fu_star_engine_cooler_item',1},
|
||||||
|
{'gr_materials_stack_up_item',40},
|
||||||
|
{'gr_materials_stack_down_item',40},
|
||||||
|
},
|
||||||
|
result = 'gr_black_hole_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 200,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_white_hole_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fu_star_engine_core_item',1},
|
||||||
|
{'fu_star_engine_heater_left_item',1},
|
||||||
|
{'fu_star_engine_heater_item',1},
|
||||||
|
{'fu_star_engine_cooler_up_item',1},
|
||||||
|
{'fu_star_engine_cooler_item',1},
|
||||||
|
{'gr_materials_stack_up_item',40},
|
||||||
|
{'gr_materials_stack_down_item',40},
|
||||||
|
},
|
||||||
|
result = 'gr_white_hole_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 200,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_lab_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_stack_up_item',10},
|
||||||
|
{'gr_materials_stack_down_item',10},
|
||||||
|
{'lab',40},
|
||||||
|
{'fi_industrial_steel_item',100},
|
||||||
|
{'fi_compound_material_item',100},
|
||||||
|
},
|
||||||
|
result = 'gr_lab_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 200,
|
||||||
|
},
|
||||||
|
--endgame
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_red_data_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'automation-science-pack',100},
|
||||||
|
{'gr_materials_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_red_data_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_red_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_red_data_item',36},
|
||||||
|
},
|
||||||
|
result = 'gr_materials_red_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 100,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_green_data_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'logistic-science-pack',100},
|
||||||
|
{'gr_materials_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_green_data_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_green_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_green_data_item',72},
|
||||||
|
{'gr_materials_red_item',2}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_green_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 100,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_blue_data_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'chemical-science-pack',100},
|
||||||
|
{'gr_materials_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_blue_data_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_blue_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_blue_data_item',155},
|
||||||
|
{'gr_materials_green_item',2}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_blue_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 100,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_purple_data_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'production-science-pack',100},
|
||||||
|
{'gr_materials_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_purple_data_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_purple_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_purple_data_item',310},
|
||||||
|
{'gr_materials_blue_item',2}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_purple_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 100,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_yellow_data_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'utility-science-pack',100},
|
||||||
|
{'gr_materials_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_yellow_data_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_yellow_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_yellow_data_item',620},
|
||||||
|
{'gr_materials_purple_item',2}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_yellow_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 100,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_grey_data_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'space-science-pack',100},
|
||||||
|
{'gr_materials_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_grey_data_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_grey_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_grey_data_item',1240},
|
||||||
|
{'gr_materials_yellow_item',2}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_grey_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 100,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_white_data_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'fu_space_probe_science_item',100},
|
||||||
|
{'gr_materials_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_white_data_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_white_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_white_data_item',2480},
|
||||||
|
{'gr_materials_grey_item',2}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_white_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 100,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_data_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_crushed_exotic_item',1},
|
||||||
|
{'gr_materials_stabilizer_item',1},
|
||||||
|
{'processing-unit',100},
|
||||||
|
{'fi_modules_base_item',10}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_data_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_stacked_data_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'fu_fusor_crafting_category',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_data_item',3},
|
||||||
|
{'gr_materials_stack_up_item',1},
|
||||||
|
{'gr_materials_stack_down_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_stacked_data_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_red_pack_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'gr_charger_category',
|
||||||
|
ingredients = {
|
||||||
|
{'automation-science-pack',100},
|
||||||
|
{'gr_materials_stacked_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_red_pack_item',
|
||||||
|
result_count = 100,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_green_pack_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'gr_charger_category',
|
||||||
|
ingredients = {
|
||||||
|
{'logistic-science-pack',100},
|
||||||
|
{'gr_materials_stacked_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_green_pack_item',
|
||||||
|
result_count = 100,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_blue_pack_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'gr_charger_category',
|
||||||
|
ingredients = {
|
||||||
|
{'chemical-science-pack',100},
|
||||||
|
{'gr_materials_stacked_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_blue_pack_item',
|
||||||
|
result_count = 100,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_purple_pack_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'gr_charger_category',
|
||||||
|
ingredients = {
|
||||||
|
{'production-science-pack',100},
|
||||||
|
{'gr_materials_stacked_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_purple_pack_item',
|
||||||
|
result_count = 100,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_yellow_pack_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'gr_charger_category',
|
||||||
|
ingredients = {
|
||||||
|
{'utility-science-pack',100},
|
||||||
|
{'gr_materials_stacked_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_yellow_pack_item',
|
||||||
|
result_count = 100,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_grey_pack_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'gr_charger_category',
|
||||||
|
ingredients = {
|
||||||
|
{'space-science-pack',100},
|
||||||
|
{'gr_materials_stacked_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_grey_pack_item',
|
||||||
|
result_count = 100,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_white_pack_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
category = 'gr_charger_category',
|
||||||
|
ingredients = {
|
||||||
|
{'fu_space_probe_science_item',100},
|
||||||
|
{'gr_materials_stacked_data_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_white_pack_item',
|
||||||
|
result_count = 100,
|
||||||
|
energy_required = 10,
|
||||||
|
always_show_made_in = true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_charge_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'fu_space_probe_science_item',100},
|
||||||
|
{'low-density-structure',40},
|
||||||
|
{'gr_materials_fusion_cell_item',10},
|
||||||
|
{'discharge-defense-equipment',10}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_charge_item',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_charge_remote_recipe',
|
||||||
|
type = 'recipe',
|
||||||
|
enabled = 'false',
|
||||||
|
ingredients = {
|
||||||
|
{'gr_materials_fusion_cell_item',1}
|
||||||
|
},
|
||||||
|
result = 'gr_materials_charge_remote',
|
||||||
|
result_count = 1,
|
||||||
|
energy_required = 10,
|
||||||
|
},
|
||||||
|
})
|
||||||
77
prototypes/gravitation/gr_black_hole.lua
Normal file
|
|
@ -0,0 +1,77 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['gr_black_hole_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/gravitation/gr_black_hole/gr_black_hole_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'gr_black_hole_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_black_hole_base_entity',
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'gr_item_subgroup_c',
|
||||||
|
order = 'e-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_black_hole_base_entity',
|
||||||
|
type = 'container',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
collision_box = {{-5.8,-3.8},{5.8,5.8}},
|
||||||
|
selection_box = {{-6,-4},{6,6}},
|
||||||
|
selection_priority = 60,
|
||||||
|
picture = {
|
||||||
|
filename = sprite('base_animation.png'),
|
||||||
|
width = 512*2,
|
||||||
|
height = 512*2,
|
||||||
|
scale = 0.4,
|
||||||
|
},
|
||||||
|
inventory_size = 80,
|
||||||
|
flags = {"player-creation","placeable-neutral","not-rotatable"},
|
||||||
|
max_health = 1500,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
map_color = {r=1, g=0, b=0, a=0.5},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_black_hole_item',
|
||||||
|
},
|
||||||
|
integration_patch_render_layer = "higher-object-under"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = "gr_black_hole_energy_entity",
|
||||||
|
type = "electric-energy-interface",
|
||||||
|
energy_source = {
|
||||||
|
type = "electric",
|
||||||
|
render_no_power_icon = false,
|
||||||
|
buffer_capacity = "10YJ",
|
||||||
|
usage_priority = "primary-output",
|
||||||
|
max_input_flow = "0W",
|
||||||
|
--drain = "1GW"
|
||||||
|
},
|
||||||
|
light = {
|
||||||
|
type = 'basic',
|
||||||
|
intensity = 10,
|
||||||
|
size = 20,
|
||||||
|
color = {r=0,g=0,b=0.75}
|
||||||
|
},
|
||||||
|
render_layer = "higher-object-above",
|
||||||
|
animation = {
|
||||||
|
filename = sprite('working_animation.png'),
|
||||||
|
size = {512*2,512*2},
|
||||||
|
scale = 0.4,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5
|
||||||
|
},
|
||||||
|
continuous_animation = true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
99
prototypes/gravitation/gr_charger.lua
Normal file
|
|
@ -0,0 +1,99 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['gr_charger_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/gravitation/gr_charger/gr_charger_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'gr_charger_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_charger_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_c',
|
||||||
|
order = 'a-a',
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'gr_charger_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_charger_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {"gr_charger_category"},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = 'heat',
|
||||||
|
max_temperature = 1000,
|
||||||
|
specific_heat = '100MJ',
|
||||||
|
max_transfer = '10GW',
|
||||||
|
connections = {
|
||||||
|
{position = {0,-1.5}, direction = defines.direction.north},
|
||||||
|
{position = {0,1.4}, direction = defines.direction.south},
|
||||||
|
{position = {1.4,0}, direction = defines.direction.east},
|
||||||
|
{position = {-1.5,0}, direction = defines.direction.west}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
energy_usage = '150MW',
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/assembling-machine-t3-1.ogg'},
|
||||||
|
idle_sound = { filename = "__base__/sound/idle1.ogg", volume = 0.6 },
|
||||||
|
apparent_volume = 0.7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
145
prototypes/gravitation/gr_cooker.lua
Normal file
|
|
@ -0,0 +1,145 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['gr_cooker_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/gravitation/gr_cooker/gr_cooker_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'gr_cooker_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_cooker_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_c',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'gr_cooker_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-2.4,-2.4},{2.4,2.4}},
|
||||||
|
selection_box = {{-2.5,-2.5},{2.5,2.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_cooker_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'gr_cooker_fluid'},
|
||||||
|
crafting_speed = 1,
|
||||||
|
ingredient_count = 2,
|
||||||
|
--fixed_recipe = 'el_water_pressure_recipe',
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'secondary-input',
|
||||||
|
input_flow_limit = '400MW',
|
||||||
|
},
|
||||||
|
energy_usage = '4MW',
|
||||||
|
fluid_boxes = {
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0, -3}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {-3, 0}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {3, 0}},
|
||||||
|
--{type = "output", position = {2, -2.5}}
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
base_area = 1,
|
||||||
|
height = 2,
|
||||||
|
base_level = -1,
|
||||||
|
pipe_covers = pipecoverspictures(),
|
||||||
|
pipe_connections =
|
||||||
|
{
|
||||||
|
{type = "input", position = {0, 3}},
|
||||||
|
},
|
||||||
|
production_type = "input"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512,512},
|
||||||
|
scale = 0.32,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.2,
|
||||||
|
shift = {0, -0.2}
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512,512},
|
||||||
|
scale = 0.32,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.2,
|
||||||
|
shift = {0, -0.2}
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512,512},
|
||||||
|
scale = 0.32,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.2,
|
||||||
|
shift = {0, -0.2}
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {512,512},
|
||||||
|
scale = 0.32,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.2,
|
||||||
|
shift = {0, -0.2}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound =
|
||||||
|
{
|
||||||
|
sound = {filename = "__base__/sound/chemical-plant-3.ogg" },
|
||||||
|
apparent_volume = 0.3,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
103
prototypes/gravitation/gr_crafter.lua
Normal file
|
|
@ -0,0 +1,103 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['gr_crafter_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/gravitation/gr_crafter/gr_crafter_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'gr_crafter_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_crafter_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_c',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'gr_crafter_entity',
|
||||||
|
type = 'assembling-machine',
|
||||||
|
icon = sprite('entity_icon.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-1.4,-1.4},{1.4,1.4}},
|
||||||
|
selection_box = {{-1.5,-1.5},{1.5,1.5}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_crafter_item',
|
||||||
|
},
|
||||||
|
crafting_categories = {'advanced-crafting','crafting','smelting','fi_crafting_category'},
|
||||||
|
crafting_speed = 10,
|
||||||
|
energy_source = {
|
||||||
|
type = 'void',
|
||||||
|
},
|
||||||
|
energy_usage = '1W',
|
||||||
|
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
|
||||||
|
module_specification = {
|
||||||
|
module_info_icon_shift = {
|
||||||
|
0,
|
||||||
|
0.8
|
||||||
|
},
|
||||||
|
module_slots = 4
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
animation = {
|
||||||
|
north = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
east = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
south = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
west = {
|
||||||
|
filename = sprite('entity_animation.png'),
|
||||||
|
size = {480,448},
|
||||||
|
scale = 0.2,
|
||||||
|
line_length = 3,
|
||||||
|
lines_per_file = 3,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/assembling-machine-t3-1.ogg'},
|
||||||
|
idle_sound = { filename = "__base__/sound/idle1.ogg", volume = 0.6 },
|
||||||
|
apparent_volume = 0.7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
84
prototypes/gravitation/gr_lab.lua
Normal file
|
|
@ -0,0 +1,84 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['gr_lab_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/gravitation/gr_lab/gr_lab_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'gr_lab_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_lab_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_c',
|
||||||
|
order = 'a-a',
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
--prototype
|
||||||
|
{
|
||||||
|
name = 'gr_lab_entity',
|
||||||
|
type = 'lab',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral"},
|
||||||
|
max_health = 300,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
collision_box = {{-4,-4},{4,4}},
|
||||||
|
selection_box = {{-4,-4},{4,4}},
|
||||||
|
map_color = {r=0, g=0, b=1, a=1},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_lab_item',
|
||||||
|
},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = "electric",
|
||||||
|
usage_priority = "secondary-input",
|
||||||
|
drain = "20MW"
|
||||||
|
},
|
||||||
|
energy_usage = "500MW",
|
||||||
|
--animation
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
"gr_materials_red_pack_item",
|
||||||
|
"gr_materials_green_pack_item",
|
||||||
|
"gr_materials_blue_pack_item",
|
||||||
|
"gr_materials_purple_pack_item",
|
||||||
|
"gr_materials_yellow_pack_item",
|
||||||
|
"gr_materials_grey_pack_item",
|
||||||
|
"gr_materials_white_pack_item"
|
||||||
|
},
|
||||||
|
|
||||||
|
off_animation = {
|
||||||
|
filename = sprite('off_animation.png'),
|
||||||
|
size = {512,512},
|
||||||
|
scale = 0.6,
|
||||||
|
line_length = 1,
|
||||||
|
frame_count = 1,
|
||||||
|
animation_speed = 0.1
|
||||||
|
},
|
||||||
|
on_animation = {
|
||||||
|
filename = sprite('animation.png'),
|
||||||
|
size = {512,512},
|
||||||
|
scale = 0.6,
|
||||||
|
line_length = 5,
|
||||||
|
frame_count = 5,
|
||||||
|
animation_speed = 0.1
|
||||||
|
},
|
||||||
|
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename = '__base__/sound/assembling-machine-t3-1.ogg'},
|
||||||
|
idle_sound = { filename = "__base__/sound/idle1.ogg", volume = 0.6 },
|
||||||
|
apparent_volume = 0.7,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
406
prototypes/gravitation/gr_materials.lua
Normal file
|
|
@ -0,0 +1,406 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['gr_materials_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/gravitation/gr_materials/gr_materials_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'gr_materials_fusion_cell_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('fusion_cell_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10,
|
||||||
|
subgroup = 'gr_item_subgroup_a',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_stack_down_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('stack_down_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'gr_item_subgroup_a',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_stack_up_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('stack_up_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'gr_item_subgroup_a',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_cooked_crystal_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('cooked_crystal_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10,
|
||||||
|
subgroup = 'gr_item_subgroup_a',
|
||||||
|
order = 'a-d',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_refined_crystal_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('refined_crystal_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10,
|
||||||
|
subgroup = 'gr_item_subgroup_a',
|
||||||
|
order = 'a-e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_crushed_exotic_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('crushed_exotic_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_a',
|
||||||
|
order = 'a-f',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_stabilizer_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('stabilizer_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'gr_item_subgroup_a',
|
||||||
|
order = 'a-g',
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_materials_red_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('red_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 2,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_red_data_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('red_data_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_green_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('green_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 2,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'c-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_green_data_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('green_data_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'b-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_blue_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('blue_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 2,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'c-c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_blue_data_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('blue_data_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'b-c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_purple_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('purple_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 2,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'c-d',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_purple_data_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('purple_data_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'b-d',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_yellow_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('yellow_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 2,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'c-e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_yellow_data_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('yellow_data_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'b-e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_grey_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('grey_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 2,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'c-f',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_grey_data_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('grey_data_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'b-f',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_white_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('white_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'c-g',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_white_data_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('white_data_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'b-g',
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_materials_data_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('data_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 500,
|
||||||
|
subgroup = 'gr_item_subgroup_a',
|
||||||
|
order = 'f-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_stacked_data_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('data_stacked_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 100,
|
||||||
|
subgroup = 'gr_item_subgroup_a',
|
||||||
|
order = 'f-b',
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_materials_red_pack_item',
|
||||||
|
type = 'tool',
|
||||||
|
durability = 1,
|
||||||
|
icon = sprite('red_pack_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'a-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_green_pack_item',
|
||||||
|
type = 'tool',
|
||||||
|
durability = 1,
|
||||||
|
icon = sprite('green_pack_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'a-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_blue_pack_item',
|
||||||
|
type = 'tool',
|
||||||
|
durability = 1,
|
||||||
|
icon = sprite('blue_pack_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'a-c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_purple_pack_item',
|
||||||
|
type = 'tool',
|
||||||
|
durability = 1,
|
||||||
|
icon = sprite('purple_pack_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'a-d',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_yellow_pack_item',
|
||||||
|
type = 'tool',
|
||||||
|
durability = 1,
|
||||||
|
icon = sprite('yellow_pack_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'a-e',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_grey_pack_item',
|
||||||
|
type = 'tool',
|
||||||
|
durability = 1,
|
||||||
|
icon = sprite('grey_pack_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'a-f',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_white_pack_item',
|
||||||
|
type = 'tool',
|
||||||
|
durability = 1,
|
||||||
|
icon = sprite('white_pack_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 10000,
|
||||||
|
subgroup = 'gr_item_subgroup_f',
|
||||||
|
order = 'a-g',
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name = 'gr_materials_charge_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('charge_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_b',
|
||||||
|
placed_as_equipment_result = 'gr_materials_charge_item',
|
||||||
|
order = 'c-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_materials_charge_item',
|
||||||
|
type = 'active-defense-equipment',
|
||||||
|
attack_parameters =
|
||||||
|
{
|
||||||
|
type = "projectile",
|
||||||
|
ammo_category = "electric",
|
||||||
|
damage_modifier = 100,
|
||||||
|
cooldown = 100,
|
||||||
|
projectile_center = {0, 0},
|
||||||
|
projectile_creation_distance = 0.6,
|
||||||
|
range = 500,
|
||||||
|
sound =
|
||||||
|
{
|
||||||
|
filename = "__base__/sound/fight/pulse.ogg",
|
||||||
|
volume = 0.7
|
||||||
|
},
|
||||||
|
ammo_type =
|
||||||
|
{
|
||||||
|
type = "projectile",
|
||||||
|
category = "electric",
|
||||||
|
energy_consumption = "20MJ",
|
||||||
|
action =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
type = "area",
|
||||||
|
radius = 250,
|
||||||
|
force = "enemy",
|
||||||
|
action_delivery =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
type = "instant",
|
||||||
|
target_effects =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
type = "create-sticker",
|
||||||
|
sticker = "stun-sticker"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "push-back",
|
||||||
|
distance = 4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "beam",
|
||||||
|
beam = "electric-beam-no-sound",
|
||||||
|
max_length = 500,
|
||||||
|
duration = 60,
|
||||||
|
source_offset = {0, -0.5},
|
||||||
|
add_to_shooter = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
automatic = false,
|
||||||
|
ability_icon =
|
||||||
|
{
|
||||||
|
filename = "__base__/graphics/icons/discharge-defense-equipment-controller.png",
|
||||||
|
flags = { "icon" },
|
||||||
|
mipmap_count = 4,
|
||||||
|
size = 64,
|
||||||
|
priority = "extra-high-no-scale"
|
||||||
|
},
|
||||||
|
categories = {'armor'},
|
||||||
|
sprite = {
|
||||||
|
filename = sprite('charge_entity.png'),
|
||||||
|
width = 256,
|
||||||
|
height = 256,
|
||||||
|
priority = 'medium',
|
||||||
|
},
|
||||||
|
shape = {
|
||||||
|
width = 3,
|
||||||
|
height = 3,
|
||||||
|
type = "full",
|
||||||
|
},
|
||||||
|
energy_source = {
|
||||||
|
type = 'electric',
|
||||||
|
usage_priority = 'primary-input',
|
||||||
|
buffer_capacity = "40MJ"
|
||||||
|
},
|
||||||
|
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "capsule",
|
||||||
|
name = "gr_materials_charge_remote",
|
||||||
|
icon = "__base__/graphics/icons/discharge-defense-equipment-controller.png",
|
||||||
|
icon_size = 64, icon_mipmaps = 4,
|
||||||
|
capsule_action =
|
||||||
|
{
|
||||||
|
type = "equipment-remote",
|
||||||
|
equipment = "gr_materials_charge_item"
|
||||||
|
},
|
||||||
|
subgroup = 'gr_item_subgroup_b',
|
||||||
|
order = "c-b",
|
||||||
|
stack_size = 1
|
||||||
|
},
|
||||||
|
|
||||||
|
})
|
||||||
675
prototypes/gravitation/gr_train.lua
Normal file
|
|
@ -0,0 +1,675 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['gr_magnet_train_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/gravitation/gr_magnet_train/gr_magnet_train_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_train_item',
|
||||||
|
type = 'item-with-entity-data',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_magnet_train_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_b',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_wagon_item',
|
||||||
|
type = 'item-with-entity-data',
|
||||||
|
icon = sprite('wagon_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_magnet_wagon_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_b',
|
||||||
|
order = 'b-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_tanker_item',
|
||||||
|
type = 'item-with-entity-data',
|
||||||
|
icon = sprite('wagon_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_magnet_tanker_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_b',
|
||||||
|
order = 'b-c',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
--entity
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_train_entity',
|
||||||
|
type = 'locomotive',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","placeable-off-grid"},
|
||||||
|
max_health = 1200,
|
||||||
|
corpse = "medium-remnants",
|
||||||
|
dying_explosion = "medium-explosion",
|
||||||
|
collision_box = {{-0.6, -2.6}, {0.6, 2.6}},
|
||||||
|
selection_box = {{-1, -3}, {1, 3}},
|
||||||
|
drawing_box = {{-1, -4}, {1, 3}},
|
||||||
|
connection_distance = 3,
|
||||||
|
joint_distance = 4,
|
||||||
|
wheels = standard_train_wheels,
|
||||||
|
rail_category = "regular",
|
||||||
|
open_sound = {filename = "__base__/sound/car-door-open.ogg", volume = 0.7},
|
||||||
|
close_sound = {filename = "__base__/sound/car-door-close.ogg", volume = 0.7},
|
||||||
|
sound_minimum_speed = 0.2,
|
||||||
|
allow_manual_color = false,
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_magnet_train_item',
|
||||||
|
},
|
||||||
|
--stats
|
||||||
|
max_speed = 4.0,
|
||||||
|
max_power = '40kW',
|
||||||
|
braking_force = 1,
|
||||||
|
friction_force = 0.00025,
|
||||||
|
air_resistance = 0.0001,
|
||||||
|
vertical_selection_shift = -0.5,
|
||||||
|
energy_per_hit_point = 8,
|
||||||
|
reversing_power_modifier = 0.5,
|
||||||
|
weight = 10,
|
||||||
|
--burner
|
||||||
|
energy_source = {type = "void"},
|
||||||
|
--light
|
||||||
|
front_light = {
|
||||||
|
{
|
||||||
|
type = "oriented",
|
||||||
|
minimum_darkness = 0.3,
|
||||||
|
picture = {
|
||||||
|
filename = "__core__/graphics/light-cone.png",
|
||||||
|
priority = "medium",
|
||||||
|
scale = 2,
|
||||||
|
width = 200,
|
||||||
|
height = 200,
|
||||||
|
},
|
||||||
|
shift = {-0.3, -10},
|
||||||
|
size = 1,
|
||||||
|
intensity = 1.5,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "oriented",
|
||||||
|
minimum_darkness = 0.3,
|
||||||
|
picture = {
|
||||||
|
filename = "__core__/graphics/light-cone.png",
|
||||||
|
priority = "medium",
|
||||||
|
scale = 2,
|
||||||
|
width = 200,
|
||||||
|
height = 200,
|
||||||
|
},
|
||||||
|
shift = {0.3, -10},
|
||||||
|
size = 1,
|
||||||
|
intensity = 1.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
pictures = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512,
|
||||||
|
height = 512,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('animation_1.png'),sprite('animation_2.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
wheels = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512/2,
|
||||||
|
height = 512/2,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('wheels_animation.png'),sprite('wheels_animation.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
--minimap
|
||||||
|
minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/diesel-locomotive/diesel-locomotive-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
selected_minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/diesel-locomotive/diesel-locomotive-selected-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
--stop trigger
|
||||||
|
stop_trigger = {
|
||||||
|
-- left side
|
||||||
|
{
|
||||||
|
type = "create-trivial-smoke",
|
||||||
|
repeat_count = 75,
|
||||||
|
smoke_name = "smoke-train-stop",
|
||||||
|
initial_height = 0,
|
||||||
|
-- smoke goes to the left
|
||||||
|
speed = {-0.03, 0},
|
||||||
|
speed_multiplier = 0.75,
|
||||||
|
speed_multiplier_deviation = 1.1,
|
||||||
|
offset_deviation = {{-0.75, -2.7}, {-0.3, 2.7}},
|
||||||
|
},
|
||||||
|
-- right side
|
||||||
|
{
|
||||||
|
type = "create-trivial-smoke",
|
||||||
|
repeat_count = 75,
|
||||||
|
smoke_name = "smoke-train-stop",
|
||||||
|
initial_height = 0,
|
||||||
|
-- smoke goes to the right
|
||||||
|
speed = {0.03, 0},
|
||||||
|
speed_multiplier = 0.75,
|
||||||
|
speed_multiplier_deviation = 1.1,
|
||||||
|
offset_deviation = {{0.3, -2.7}, {0.75, 2.7}},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "play-sound",
|
||||||
|
sound = {
|
||||||
|
{
|
||||||
|
filename = "__base__/sound/train-breaks.ogg",
|
||||||
|
volume = 0.6,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename ='__base__/sound/train-engine.ogg'},
|
||||||
|
apparent_volume = 0.5,
|
||||||
|
},
|
||||||
|
vehicle_impact_sound = {
|
||||||
|
filename = "__base__/sound/car-metal-impact-6.ogg",
|
||||||
|
volume = 0.8
|
||||||
|
},
|
||||||
|
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_wagon_entity',
|
||||||
|
type = 'cargo-wagon',
|
||||||
|
icon = sprite('wagon_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","placeable-off-grid"},
|
||||||
|
max_health = 1200,
|
||||||
|
corpse = "medium-remnants",
|
||||||
|
dying_explosion = "medium-explosion",
|
||||||
|
collision_box = {{-0.6, -2.6}, {0.6, 2.6}},
|
||||||
|
selection_box = {{-1, -3}, {1, 3}},
|
||||||
|
drawing_box = {{-1, -4}, {1, 3}},
|
||||||
|
connection_distance = 3,
|
||||||
|
joint_distance = 4,
|
||||||
|
wheels = standard_train_wheels,
|
||||||
|
rail_category = "regular",
|
||||||
|
open_sound = {filename = "__base__/sound/car-door-open.ogg", volume = 0.7},
|
||||||
|
close_sound = {filename = "__base__/sound/car-door-close.ogg", volume = 0.7},
|
||||||
|
sound_minimum_speed = 0.2,
|
||||||
|
allow_manual_color = false,
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_magnet_wagon_item',
|
||||||
|
},
|
||||||
|
--stats
|
||||||
|
max_speed = 4.0,
|
||||||
|
friction_force = 0.00125,
|
||||||
|
air_resistance = 0.00125,
|
||||||
|
braking_force = 1,
|
||||||
|
vertical_selection_shift = -0.5,
|
||||||
|
energy_per_hit_point = 8,
|
||||||
|
weight = 10,
|
||||||
|
inventory_size = 80,
|
||||||
|
--animation
|
||||||
|
pictures = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512,
|
||||||
|
height = 512,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('wagon_animation.png'),sprite('wagon_animation.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
wheels = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512/2,
|
||||||
|
height = 512/2,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('wheels_animation.png'),sprite('wheels_animation.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
--minimap
|
||||||
|
minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/cargo-wagon/cargo-wagon-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
selected_minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/cargo-wagon/cargo-wagon-selected-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
vehicle_impact_sound = {
|
||||||
|
filename = "__base__/sound/car-metal-impact-6.ogg",
|
||||||
|
volume = 0.8
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_tanker_entity',
|
||||||
|
type = 'fluid-wagon',
|
||||||
|
icon = sprite('wagon_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","placeable-off-grid"},
|
||||||
|
max_health = 1200,
|
||||||
|
corpse = "medium-remnants",
|
||||||
|
dying_explosion = "medium-explosion",
|
||||||
|
collision_box = {{-0.6, -2.6}, {0.6, 2.6}},
|
||||||
|
selection_box = {{-1, -3}, {1, 3}},
|
||||||
|
drawing_box = {{-1, -4}, {1, 3}},
|
||||||
|
connection_distance = 3,
|
||||||
|
joint_distance = 4,
|
||||||
|
wheels = standard_train_wheels,
|
||||||
|
rail_category = "regular",
|
||||||
|
open_sound = {filename = "__base__/sound/car-door-open.ogg", volume = 0.7},
|
||||||
|
close_sound = {filename = "__base__/sound/car-door-close.ogg", volume = 0.7},
|
||||||
|
sound_minimum_speed = 0.2,
|
||||||
|
allow_manual_color = false,
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_magnet_tanker_item',
|
||||||
|
},
|
||||||
|
--stats
|
||||||
|
max_speed = 4.0,
|
||||||
|
friction_force = 0.00125,
|
||||||
|
air_resistance = 0.00125,
|
||||||
|
braking_force = 1,
|
||||||
|
vertical_selection_shift = -0.5,
|
||||||
|
energy_per_hit_point = 8,
|
||||||
|
weight = 10,
|
||||||
|
capacity = 200000,
|
||||||
|
tank_count = 3,
|
||||||
|
--animation
|
||||||
|
pictures = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512,
|
||||||
|
height = 512,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('wagon_animation.png'),sprite('wagon_animation.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
wheels = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512/2,
|
||||||
|
height = 512/2,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('wheels_animation.png'),sprite('wheels_animation.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
--minimap
|
||||||
|
minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/cargo-wagon/cargo-wagon-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
selected_minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/cargo-wagon/cargo-wagon-selected-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
vehicle_impact_sound = {
|
||||||
|
filename = "__base__/sound/car-metal-impact-6.ogg",
|
||||||
|
volume = 0.8
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--===================================================
|
||||||
|
--pre
|
||||||
|
--===================================================
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_train_pre_item',
|
||||||
|
type = 'item-with-entity-data',
|
||||||
|
icon = sprite('pre_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_magnet_train_pre_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_b',
|
||||||
|
order = 'b-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_wagon_pre_item',
|
||||||
|
type = 'item-with-entity-data',
|
||||||
|
icon = sprite('wagon_pre_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_magnet_wagon_pre_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_b',
|
||||||
|
order = 'b-b',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_tanker_pre_item',
|
||||||
|
type = 'item-with-entity-data',
|
||||||
|
icon = sprite('wagon_pre_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_magnet_tanker_pre_entity',
|
||||||
|
stack_size = 20,
|
||||||
|
subgroup = 'gr_item_subgroup_b',
|
||||||
|
order = 'b-c',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_train_pre_entity',
|
||||||
|
type = 'locomotive',
|
||||||
|
icon = sprite('pre_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","placeable-off-grid"},
|
||||||
|
max_health = 1200,
|
||||||
|
corpse = "medium-remnants",
|
||||||
|
dying_explosion = "medium-explosion",
|
||||||
|
collision_box = {{-0.6, -2.6}, {0.6, 2.6}},
|
||||||
|
selection_box = {{-1, -3}, {1, 3}},
|
||||||
|
drawing_box = {{-1, -4}, {1, 3}},
|
||||||
|
connection_distance = 3,
|
||||||
|
joint_distance = 4,
|
||||||
|
wheels = standard_train_wheels,
|
||||||
|
rail_category = "regular",
|
||||||
|
open_sound = {filename = "__base__/sound/car-door-open.ogg", volume = 0.7},
|
||||||
|
close_sound = {filename = "__base__/sound/car-door-close.ogg", volume = 0.7},
|
||||||
|
sound_minimum_speed = 0.2,
|
||||||
|
allow_manual_color = false,
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_magnet_train_pre_item',
|
||||||
|
},
|
||||||
|
--stats
|
||||||
|
max_speed = 2,
|
||||||
|
max_power = '40kW',
|
||||||
|
braking_force = 1,
|
||||||
|
friction_force = 0.00025,
|
||||||
|
air_resistance = 0.0001,
|
||||||
|
vertical_selection_shift = -0.5,
|
||||||
|
energy_per_hit_point = 8,
|
||||||
|
reversing_power_modifier = 0.5,
|
||||||
|
weight = 10,
|
||||||
|
--burner
|
||||||
|
energy_source = {type = "void"},
|
||||||
|
--light
|
||||||
|
front_light = {
|
||||||
|
{
|
||||||
|
type = "oriented",
|
||||||
|
minimum_darkness = 0.3,
|
||||||
|
picture = {
|
||||||
|
filename = "__core__/graphics/light-cone.png",
|
||||||
|
priority = "medium",
|
||||||
|
scale = 2,
|
||||||
|
width = 200,
|
||||||
|
height = 200,
|
||||||
|
},
|
||||||
|
shift = {-0.3, -10},
|
||||||
|
size = 1,
|
||||||
|
intensity = 1.5,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "oriented",
|
||||||
|
minimum_darkness = 0.3,
|
||||||
|
picture = {
|
||||||
|
filename = "__core__/graphics/light-cone.png",
|
||||||
|
priority = "medium",
|
||||||
|
scale = 2,
|
||||||
|
width = 200,
|
||||||
|
height = 200,
|
||||||
|
},
|
||||||
|
shift = {0.3, -10},
|
||||||
|
size = 1,
|
||||||
|
intensity = 1.5,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
--animation
|
||||||
|
pictures = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512,
|
||||||
|
height = 512,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('pre_animation_1.png'),sprite('pre_animation_2.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
wheels = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512/2,
|
||||||
|
height = 512/2,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('wheels_animation.png'),sprite('wheels_animation.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
--minimap
|
||||||
|
minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/diesel-locomotive/diesel-locomotive-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
selected_minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/diesel-locomotive/diesel-locomotive-selected-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
--stop trigger
|
||||||
|
stop_trigger = {
|
||||||
|
-- left side
|
||||||
|
{
|
||||||
|
type = "create-trivial-smoke",
|
||||||
|
repeat_count = 75,
|
||||||
|
smoke_name = "smoke-train-stop",
|
||||||
|
initial_height = 0,
|
||||||
|
-- smoke goes to the left
|
||||||
|
speed = {-0.03, 0},
|
||||||
|
speed_multiplier = 0.75,
|
||||||
|
speed_multiplier_deviation = 1.1,
|
||||||
|
offset_deviation = {{-0.75, -2.7}, {-0.3, 2.7}},
|
||||||
|
},
|
||||||
|
-- right side
|
||||||
|
{
|
||||||
|
type = "create-trivial-smoke",
|
||||||
|
repeat_count = 75,
|
||||||
|
smoke_name = "smoke-train-stop",
|
||||||
|
initial_height = 0,
|
||||||
|
-- smoke goes to the right
|
||||||
|
speed = {0.03, 0},
|
||||||
|
speed_multiplier = 0.75,
|
||||||
|
speed_multiplier_deviation = 1.1,
|
||||||
|
offset_deviation = {{0.3, -2.7}, {0.75, 2.7}},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "play-sound",
|
||||||
|
sound = {
|
||||||
|
{
|
||||||
|
filename = "__base__/sound/train-breaks.ogg",
|
||||||
|
volume = 0.6,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
working_sound = {
|
||||||
|
sound = { filename ='__base__/sound/train-engine.ogg'},
|
||||||
|
apparent_volume = 0.5,
|
||||||
|
},
|
||||||
|
vehicle_impact_sound = {
|
||||||
|
filename = "__base__/sound/car-metal-impact-6.ogg",
|
||||||
|
volume = 0.8
|
||||||
|
},
|
||||||
|
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_wagon_pre_entity',
|
||||||
|
type = 'cargo-wagon',
|
||||||
|
icon = sprite('wagon_pre_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","placeable-off-grid"},
|
||||||
|
max_health = 1200,
|
||||||
|
corpse = "medium-remnants",
|
||||||
|
dying_explosion = "medium-explosion",
|
||||||
|
collision_box = {{-0.6, -2.6}, {0.6, 2.6}},
|
||||||
|
selection_box = {{-1, -3}, {1, 3}},
|
||||||
|
drawing_box = {{-1, -4}, {1, 3}},
|
||||||
|
connection_distance = 3,
|
||||||
|
joint_distance = 4,
|
||||||
|
wheels = standard_train_wheels,
|
||||||
|
rail_category = "regular",
|
||||||
|
open_sound = {filename = "__base__/sound/car-door-open.ogg", volume = 0.7},
|
||||||
|
close_sound = {filename = "__base__/sound/car-door-close.ogg", volume = 0.7},
|
||||||
|
sound_minimum_speed = 0.2,
|
||||||
|
allow_manual_color = false,
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_magnet_wagon_pre_item',
|
||||||
|
},
|
||||||
|
--stats
|
||||||
|
max_speed = 1.5,
|
||||||
|
friction_force = 0.00125,
|
||||||
|
air_resistance = 0.00125,
|
||||||
|
braking_force = 1,
|
||||||
|
vertical_selection_shift = -0.5,
|
||||||
|
energy_per_hit_point = 8,
|
||||||
|
weight = 10,
|
||||||
|
inventory_size = 40,
|
||||||
|
--animation
|
||||||
|
pictures = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512,
|
||||||
|
height = 512,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('wagon_pre_animation.png'),sprite('wagon_pre_animation.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
wheels = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512/2,
|
||||||
|
height = 512/2,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('wheels_animation.png'),sprite('wheels_animation.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
--minimap
|
||||||
|
minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/cargo-wagon/cargo-wagon-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
selected_minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/cargo-wagon/cargo-wagon-selected-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
vehicle_impact_sound = {
|
||||||
|
filename = "__base__/sound/car-metal-impact-6.ogg",
|
||||||
|
volume = 0.8
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = 'gr_magnet_tanker_pre_entity',
|
||||||
|
type = 'fluid-wagon',
|
||||||
|
icon = sprite('wagon_pre_item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
flags = {"player-creation","placeable-neutral","placeable-off-grid"},
|
||||||
|
max_health = 1200,
|
||||||
|
corpse = "medium-remnants",
|
||||||
|
dying_explosion = "medium-explosion",
|
||||||
|
collision_box = {{-0.6, -2.6}, {0.6, 2.6}},
|
||||||
|
selection_box = {{-1, -3}, {1, 3}},
|
||||||
|
drawing_box = {{-1, -4}, {1, 3}},
|
||||||
|
connection_distance = 3,
|
||||||
|
joint_distance = 4,
|
||||||
|
wheels = standard_train_wheels,
|
||||||
|
rail_category = "regular",
|
||||||
|
open_sound = {filename = "__base__/sound/car-door-open.ogg", volume = 0.7},
|
||||||
|
close_sound = {filename = "__base__/sound/car-door-close.ogg", volume = 0.7},
|
||||||
|
sound_minimum_speed = 0.2,
|
||||||
|
allow_manual_color = false,
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_magnet_tanker_pre_item',
|
||||||
|
},
|
||||||
|
--stats
|
||||||
|
max_speed = 1.5,
|
||||||
|
friction_force = 0.00125,
|
||||||
|
air_resistance = 0.00125,
|
||||||
|
braking_force = 1,
|
||||||
|
vertical_selection_shift = -0.5,
|
||||||
|
energy_per_hit_point = 8,
|
||||||
|
weight = 10,
|
||||||
|
capacity = 100000,
|
||||||
|
tank_count = 3,
|
||||||
|
--animation
|
||||||
|
pictures = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512,
|
||||||
|
height = 512,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('wagon_pre_animation.png'),sprite('wagon_pre_animation.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
wheels = {
|
||||||
|
priority = "low",
|
||||||
|
width = 512/2,
|
||||||
|
height = 512/2,
|
||||||
|
direction_count = 128,
|
||||||
|
filenames = {sprite('wheels_animation.png'),sprite('wheels_animation.png')},
|
||||||
|
line_length = 8,
|
||||||
|
lines_per_file = 8,
|
||||||
|
shift = {0.2, -0.6},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
--minimap
|
||||||
|
minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/cargo-wagon/cargo-wagon-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
selected_minimap_representation = {
|
||||||
|
filename = "__base__/graphics/entity/cargo-wagon/cargo-wagon-selected-minimap-representation.png",
|
||||||
|
flags = {"icon"},
|
||||||
|
size = {20, 40},
|
||||||
|
scale = 0.5,
|
||||||
|
},
|
||||||
|
vehicle_impact_sound = {
|
||||||
|
filename = "__base__/sound/car-metal-impact-6.ogg",
|
||||||
|
volume = 0.8
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
57
prototypes/gravitation/gr_white_hole.lua
Normal file
|
|
@ -0,0 +1,57 @@
|
||||||
|
--local functions
|
||||||
|
local function config(name)
|
||||||
|
return settings.startup['gr_white_hole_'..name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
local function sprite(name)
|
||||||
|
return '__248k__/ressources/gravitation/gr_white_hole/gr_white_hole_'..name
|
||||||
|
end
|
||||||
|
|
||||||
|
--item
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
name = 'gr_white_hole_item',
|
||||||
|
type = 'item',
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
place_result = 'gr_white_hole_entity',
|
||||||
|
stack_size = 1,
|
||||||
|
subgroup = 'gr_item_subgroup_c',
|
||||||
|
order = 'e-a',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name = "gr_white_hole_entity",
|
||||||
|
type = "furnace",
|
||||||
|
icon = sprite('item.png'),
|
||||||
|
icon_size = 64,
|
||||||
|
collision_box = {{-5.8,-5.8},{5.8,5.8}},
|
||||||
|
selection_box = {{-6,-6},{6,6}},
|
||||||
|
max_health = 1500,
|
||||||
|
corpse = 'big-remnants',
|
||||||
|
map_color = {r=1, g=0, b=0, a=0.5},
|
||||||
|
minable = {
|
||||||
|
mining_time = 1,
|
||||||
|
result = 'gr_white_hole_item',
|
||||||
|
},
|
||||||
|
result_inventory_size = 1,
|
||||||
|
source_inventory_size = 1,
|
||||||
|
crafting_categories = {"gr_white_hole_category"},
|
||||||
|
crafting_speed = 1,
|
||||||
|
energy_source = {
|
||||||
|
type = "electric",
|
||||||
|
usage_priority = "secondary-input",
|
||||||
|
drain = "1TW"
|
||||||
|
},
|
||||||
|
energy_usage = "1TW",
|
||||||
|
animation = {
|
||||||
|
filename = sprite('animation.png'),
|
||||||
|
size = {512*2,512*2},
|
||||||
|
scale = 0.4,
|
||||||
|
line_length = 4,
|
||||||
|
frame_count = 4,
|
||||||
|
animation_speed = 0.1
|
||||||
|
},
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
BIN
ressources/booktorio/Thumbs.db
Normal file
BIN
ressources/booktorio/bk_sprite_1.png
Normal file
|
After Width: | Height: | Size: 1 MiB |
BIN
ressources/booktorio/bk_sprite_10.PNG
Normal file
|
After Width: | Height: | Size: 603 KiB |
BIN
ressources/booktorio/bk_sprite_2.png
Normal file
|
After Width: | Height: | Size: 586 KiB |
BIN
ressources/booktorio/bk_sprite_3.png
Normal file
|
After Width: | Height: | Size: 782 KiB |
BIN
ressources/booktorio/bk_sprite_6.png
Normal file
|
After Width: | Height: | Size: 1 MiB |
BIN
ressources/booktorio/bk_sprite_7.png
Normal file
|
After Width: | Height: | Size: 548 KiB |
BIN
ressources/booktorio/bk_sprite_8.PNG
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
ressources/booktorio/bk_sprite_9.PNG
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
ressources/electronic/el_aluminum/Thumbs.db
Normal file
BIN
ressources/electronic/el_aluminum/el_aluminum_item.png
Normal file
|
After Width: | Height: | Size: 4.8 KiB |
BIN
ressources/electronic/el_aluminum/el_aluminum_ore_item.png
Normal file
|
After Width: | Height: | Size: 8.3 KiB |
BIN
ressources/electronic/el_burner/Thumbs.db
Normal file
BIN
ressources/electronic/el_burner/el_burner_entity_animation.png
Normal file
|
After Width: | Height: | Size: 418 KiB |
BIN
ressources/electronic/el_burner/el_burner_entity_icon.png
Normal file
|
After Width: | Height: | Size: 7.9 KiB |
BIN
ressources/electronic/el_burner/el_burner_item.png
Normal file
|
After Width: | Height: | Size: 7.9 KiB |
|
After Width: | Height: | Size: 247 KiB |