You've already forked ComfyFactorio
mirror of
https://github.com/ComfyFactory/ComfyFactorio.git
synced 2025-11-06 08:56:27 +02:00
fixes
This commit is contained in:
@@ -14,7 +14,7 @@ local Event = require 'utils.event'
|
|||||||
local market_items = require "maps.cave_miner_market_items"
|
local market_items = require "maps.cave_miner_market_items"
|
||||||
local math_random = math.random
|
local math_random = math.random
|
||||||
|
|
||||||
local spawn_dome_size = 7500
|
local spawn_dome_size = 7000
|
||||||
|
|
||||||
local darkness_messages = {
|
local darkness_messages = {
|
||||||
"Something is lurking in the dark...",
|
"Something is lurking in the dark...",
|
||||||
@@ -885,11 +885,13 @@ local function biter_attack_event()
|
|||||||
local surface = game.surfaces[1]
|
local surface = game.surfaces[1]
|
||||||
local valid_positions = {}
|
local valid_positions = {}
|
||||||
for _, player in pairs(game.connected_players) do
|
for _, player in pairs(game.connected_players) do
|
||||||
if player.character.driving == false then
|
if player.character then
|
||||||
local position = {x = player.position.x, y = player.position.y}
|
if player.character.driving == false then
|
||||||
local p = find_first_entity_spiral_scan(position, {"rock-huge", "rock-big", "sand-rock-big"}, 32)
|
local position = {x = player.position.x, y = player.position.y}
|
||||||
if p then
|
local p = find_first_entity_spiral_scan(position, {"rock-huge", "rock-big", "sand-rock-big"}, 32)
|
||||||
if p.x^2 + p.y^2 > spawn_dome_size then table.insert(valid_positions, p) end
|
if p then
|
||||||
|
if p.x^2 + p.y^2 > spawn_dome_size then table.insert(valid_positions, p) end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -1084,10 +1086,10 @@ local function pre_player_mined_item(event)
|
|||||||
if tile_distance_to_center > 1450 then tile_distance_to_center = 1450 end
|
if tile_distance_to_center > 1450 then tile_distance_to_center = 1450 end
|
||||||
if math_random(1,3) == 1 then hunger_update(player, -1) end
|
if math_random(1,3) == 1 then hunger_update(player, -1) end
|
||||||
|
|
||||||
surface.spill_item_stack(player.position,{name = "raw-fish", count = math_random(2,4)},true)
|
surface.spill_item_stack(player.position,{name = "raw-fish", count = math_random(1,3)},true)
|
||||||
local bonus_amount = math.floor((tile_distance_to_center - math.sqrt(spawn_dome_size)) * 0.115) + 1
|
local bonus_amount = math.floor((tile_distance_to_center - math.sqrt(spawn_dome_size)) * 0.115) + 1
|
||||||
if bonus_amount < 0 then bonus_amount = 0 end
|
if bonus_amount < 0 then bonus_amount = 0 end
|
||||||
local amount = math_random(25,35) + bonus_amount
|
local amount = math_random(25,45) + bonus_amount
|
||||||
if amount > 500 then amount = 500 end
|
if amount > 500 then amount = 500 end
|
||||||
amount = amount * (1+game.forces.player.mining_drill_productivity_bonus)
|
amount = amount * (1+game.forces.player.mining_drill_productivity_bonus)
|
||||||
|
|
||||||
|
|||||||
@@ -10,8 +10,8 @@ require "modules.rocks_yield_ore"
|
|||||||
require "modules.satellite_score"
|
require "modules.satellite_score"
|
||||||
require "modules.spawners_contain_biters"
|
require "modules.spawners_contain_biters"
|
||||||
--require "modules.splice_double"
|
--require "modules.splice_double"
|
||||||
require "modules.more_attacks"
|
--require "modules.more_attacks"
|
||||||
require "modules.evolution_extended"
|
--require "modules.evolution_extended"
|
||||||
|
|
||||||
local event = require 'utils.event'
|
local event = require 'utils.event'
|
||||||
local math_random = math.random
|
local math_random = math.random
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ local function update_player_stats(player)
|
|||||||
global.player_modifiers[player.index].character_mining_speed_modifier["rpg"] = strength * 0.003
|
global.player_modifiers[player.index].character_mining_speed_modifier["rpg"] = strength * 0.003
|
||||||
|
|
||||||
local magic = global.rpg[player.index].magic - 10
|
local magic = global.rpg[player.index].magic - 10
|
||||||
local v = magic * 0.2
|
local v = magic * 0.1
|
||||||
global.player_modifiers[player.index].character_build_distance_bonus["rpg"] = v
|
global.player_modifiers[player.index].character_build_distance_bonus["rpg"] = v
|
||||||
global.player_modifiers[player.index].character_item_drop_distance_bonus["rpg"] = v
|
global.player_modifiers[player.index].character_item_drop_distance_bonus["rpg"] = v
|
||||||
global.player_modifiers[player.index].character_reach_distance_bonus["rpg"] = v
|
global.player_modifiers[player.index].character_reach_distance_bonus["rpg"] = v
|
||||||
@@ -138,7 +138,8 @@ end
|
|||||||
|
|
||||||
local function draw_gui(player)
|
local function draw_gui(player)
|
||||||
if player.gui.left.rpg then player.gui.left.rpg.destroy() end
|
if player.gui.left.rpg then player.gui.left.rpg.destroy() end
|
||||||
|
if not player.character then return end
|
||||||
|
|
||||||
local frame = player.gui.left.add({type = "frame", name = "rpg", direction = "vertical"})
|
local frame = player.gui.left.add({type = "frame", name = "rpg", direction = "vertical"})
|
||||||
frame.style.maximal_width = 425
|
frame.style.maximal_width = 425
|
||||||
frame.style.minimal_width = 425
|
frame.style.minimal_width = 425
|
||||||
@@ -326,7 +327,7 @@ local function draw_level_text(player)
|
|||||||
text = "lvl " .. global.rpg[player.index].level,
|
text = "lvl " .. global.rpg[player.index].level,
|
||||||
surface = player.surface,
|
surface = player.surface,
|
||||||
target = player.character,
|
target = player.character,
|
||||||
target_offset = {-0.05, -3.5},
|
target_offset = {-0.05, -3.15},
|
||||||
color = {
|
color = {
|
||||||
r = player.color.r * 0.6 + 0.25,
|
r = player.color.r * 0.6 + 0.25,
|
||||||
g = player.color.g * 0.6 + 0.25,
|
g = player.color.g * 0.6 + 0.25,
|
||||||
@@ -334,7 +335,7 @@ local function draw_level_text(player)
|
|||||||
a = 1
|
a = 1
|
||||||
},
|
},
|
||||||
players = players,
|
players = players,
|
||||||
scale = 1.0,
|
scale = 1.10,
|
||||||
font = "scenario-message-dialog",
|
font = "scenario-message-dialog",
|
||||||
alignment = "center",
|
alignment = "center",
|
||||||
scale_with_zoom = false
|
scale_with_zoom = false
|
||||||
@@ -439,7 +440,9 @@ local function on_entity_damaged(event)
|
|||||||
if event.final_damage_amount == 0 then return end
|
if event.final_damage_amount == 0 then return end
|
||||||
if event.entity.name ~= "character" then return end
|
if event.entity.name ~= "character" then return end
|
||||||
if not event.entity.player then return end
|
if not event.entity.player then return end
|
||||||
gain_xp(event.entity.player, event.final_damage_amount * 0.05)
|
local damage_taken = event.final_damage_amount
|
||||||
|
if damage_taken > 500 then damage_taken = 500 end
|
||||||
|
gain_xp(event.entity.player, damage_taken * 0.055)
|
||||||
end
|
end
|
||||||
|
|
||||||
local function on_player_changed_position(event)
|
local function on_player_changed_position(event)
|
||||||
@@ -470,6 +473,10 @@ local function on_player_crafted_item(event)
|
|||||||
gain_xp(player, event.recipe.energy * 0.2)
|
gain_xp(player, event.recipe.energy * 0.2)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local function on_player_respawned(event)
|
||||||
|
draw_level_text(game.players[event.player_index])
|
||||||
|
end
|
||||||
|
|
||||||
local function on_player_joined_game(event)
|
local function on_player_joined_game(event)
|
||||||
local player = game.players[event.player_index]
|
local player = game.players[event.player_index]
|
||||||
if not global.rpg[player.index] then
|
if not global.rpg[player.index] then
|
||||||
@@ -499,4 +506,5 @@ event.add(defines.events.on_gui_click, on_gui_click)
|
|||||||
event.add(defines.events.on_player_changed_position, on_player_changed_position)
|
event.add(defines.events.on_player_changed_position, on_player_changed_position)
|
||||||
event.add(defines.events.on_player_crafted_item, on_player_crafted_item)
|
event.add(defines.events.on_player_crafted_item, on_player_crafted_item)
|
||||||
event.add(defines.events.on_player_joined_game, on_player_joined_game)
|
event.add(defines.events.on_player_joined_game, on_player_joined_game)
|
||||||
|
event.add(defines.events.on_player_respawned, on_player_respawned)
|
||||||
event.add(defines.events.on_pre_player_mined_item, on_pre_player_mined_item)
|
event.add(defines.events.on_pre_player_mined_item, on_pre_player_mined_item)
|
||||||
Reference in New Issue
Block a user