Fix crash when opening the editor
This commit is contained in:
parent
02a5609c22
commit
d128ab8f6e
1 changed files with 24 additions and 21 deletions
|
@ -41,41 +41,44 @@ script.on_init(function()
|
|||
end)
|
||||
|
||||
script.on_event(e.on_player_created, function(event)
|
||||
local player = game.get_player(event.player_index) --[[@as LuaPlayer]]
|
||||
|
||||
local surface = storage.surface
|
||||
player.teleport(surface.find_non_colliding_position("character", { 0, 0 }, 0, 1) --[[@as MapPosition]], "lignumis")
|
||||
|
||||
if not storage.nauvis_visited then
|
||||
local nauvis = game.get_surface("nauvis") --[[@as LuaSurface]]
|
||||
nauvis.clear()
|
||||
end
|
||||
|
||||
local player = game.get_player(event.player_index) --[[@as LuaPlayer]]
|
||||
local surface = storage.surface
|
||||
|
||||
if not storage.init then
|
||||
storage.init = true
|
||||
|
||||
surface.daytime = 0.7
|
||||
if player.character then
|
||||
player.character.destructible = false
|
||||
end
|
||||
|
||||
if remote.interfaces.freeplay then
|
||||
storage.crashed_ship_items = remote.call("freeplay", "get_ship_items")
|
||||
storage.crashed_debris_items = remote.call("freeplay", "get_debris_items")
|
||||
storage.crashed_ship_parts = remote.call("freeplay", "get_ship_parts")
|
||||
storage.starting_message = remote.call("freeplay", "get_custom_intro_message")
|
||||
if player then
|
||||
player.teleport(surface.find_non_colliding_position("character", { 0, 0 }, 0, 1) --[[@as MapPosition]], "lignumis")
|
||||
|
||||
local ship_items = { ["wood-darts-magazine"] = 8 }
|
||||
local debris_items = { ["lumber"] = 8 }
|
||||
if player.character then
|
||||
player.character.destructible = false
|
||||
end
|
||||
|
||||
crash_site.create_crash_site(surface, { -5, -6 }, ship_items, debris_items, table.deepcopy(storage.crashed_ship_parts))
|
||||
util.remove_safe(player, storage.crashed_ship_items)
|
||||
util.remove_safe(player, storage.crashed_debris_items)
|
||||
if remote.interfaces.freeplay then
|
||||
storage.crashed_ship_items = remote.call("freeplay", "get_ship_items")
|
||||
storage.crashed_debris_items = remote.call("freeplay", "get_debris_items")
|
||||
storage.crashed_ship_parts = remote.call("freeplay", "get_ship_parts")
|
||||
storage.starting_message = remote.call("freeplay", "get_custom_intro_message")
|
||||
|
||||
player.get_main_inventory().sort_and_merge()
|
||||
local ship_items = { ["wood-darts-magazine"] = 8 }
|
||||
local debris_items = { ["lumber"] = 8 }
|
||||
|
||||
storage.crash_site_cutscene_active = true
|
||||
crash_site.create_cutscene(player, { -5, -4 })
|
||||
crash_site.create_crash_site(surface, { -5, -6 }, ship_items, debris_items, table.deepcopy(storage.crashed_ship_parts))
|
||||
util.remove_safe(player, storage.crashed_ship_items)
|
||||
util.remove_safe(player, storage.crashed_debris_items)
|
||||
|
||||
player.get_main_inventory().sort_and_merge()
|
||||
|
||||
storage.crash_site_cutscene_active = true
|
||||
crash_site.create_cutscene(player, { -5, -4 })
|
||||
end
|
||||
end
|
||||
|
||||
chart_starting_area()
|
||||
|
|
Loading…
Add table
Reference in a new issue