Skip to content

Commit

Permalink
Revert back to selection tool
Browse files Browse the repository at this point in the history
It's just too much of a fucking mess to use `se--targeter` since remote view is so locked down
  • Loading branch information
Quezler committed Dec 6, 2023
1 parent 4e7cbb8 commit 107bff4
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 18 deletions.
21 changes: 12 additions & 9 deletions mods/se-space-capsule-fast-travel/control.lua
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
local price = "se-space-capsule"

script.on_event("se--targeter", function(event)
local player = game.get_player(event.player_index)
local hand_stack = player.cursor_stack or player.cursor_ghost
script.on_event(defines.events.on_player_selected_area, function(event)
if event.item ~= "se-space-capsule-fast-travel-targeter" then return end

if not (hand_stack and hand_stack.valid_for_read) then return end
if hand_stack.name ~= "se-space-capsule-fast-travel-targeter" then return end
local player = game.get_player(event.player_index)

-- local inventory = player.get_main_inventory()
local inventory = remote.call("space-exploration", "get_player_character", {player = player}).get_main_inventory()
Expand All @@ -16,17 +14,22 @@ script.on_event("se--targeter", function(event)
inventory.remove({name = price, count = 1})
local left = inventory.get_item_count(price)

local container = player.surface.create_entity({
local center = {
x = (event.area.left_top.x + event.area.right_bottom.x) / 2,
y = (event.area.left_top.y + event.area.right_bottom.y) / 2,
}

local container = event.surface.create_entity({
name = "se-space-capsule-scorched",
position = event.cursor_position,
position = center,
force = player.force,
raise_built = true, -- uncomment to create a vehicle too (uncommented for the shadow, did it have any side-effects?)
})

remote.call("space-exploration", "remote_view_stop", {player = player})
remote.call("jetpack", "stop_jetpack_immediate", {character = player.character})
player.driving = false
player.teleport({event.cursor_position.x - 2, event.cursor_position.y}, player.surface)
player.teleport({center.x - 2, center.y}, event.surface)
-- player.driving = true -- having to exit the vehicle is not fast enough
-- player.character.direction = defines.direction.south -- look down away from the capsule ladder

Expand All @@ -38,6 +41,6 @@ script.on_event("se--targeter", function(event)

player.create_local_flying_text({
text = string.format("%d [item=%s]'s left", left, price),
position = event.cursor_position,
create_at_cursor = true,
})
end)
25 changes: 17 additions & 8 deletions mods/se-space-capsule-fast-travel/data.lua
Original file line number Diff line number Diff line change
@@ -1,11 +1,21 @@

local targeter = table.deepcopy(data.raw["item"]["se-space-capsule-targeter"])
targeter.name = "se-space-capsule-fast-travel-targeter"
targeter.icon = data.raw["item"]["se-space-capsule"].icon
table.insert(targeter.flags, "spawnable")
table.insert(targeter.flags, "not-stackable")

data:extend({
{
type = "selection-tool",
name = "se-space-capsule-fast-travel-targeter",
icon = data.raw["item"]["se-space-capsule"].icon,
icon_mipmaps = 4,
icon_size = 64,
subgroup = "tool",
stack_size = 1,
selection_color = {r = 0, g = 0, b = 0},
alt_selection_color = {r = 0, g = 0, b = 0},
selection_mode = {"nothing"},
alt_selection_mode = {"nothing"},
selection_cursor_box_type = "entity",
alt_selection_cursor_box_type = "entity",
hidden = true,
flags = {"hidden", "only-in-cursor", "spawnable", "not-stackable"}
},
{
type = "shortcut",
name = "se-space-capsule-fast-travel",
Expand All @@ -16,5 +26,4 @@ data:extend({
style = "default",
icon = {filename = data.raw["item"]["se-space-capsule"].icon, size = 64, mipmap_count = 4},
},
targeter
})
2 changes: 1 addition & 1 deletion mods/se-space-capsule-fast-travel/info.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "se-space-capsule-fast-travel",
"title": "Space Exploration - space capsule fast travel",
"description": "Allows you to emergency burn anywhere using the shortcut, pretty much a teleport that damages your capsule.",
"version": "1.0.6",
"version": "1.0.7",
"author": "Quezler",
"factorio_version": "1.1",
"dependencies": [
Expand Down

0 comments on commit 107bff4

Please sign in to comment.