mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2025-12-27 19:45:22 +09:00
Added ExpGamingCommands.home
This commit is contained in:
35
modules/ExpGamingCommands/home/control.lua
Normal file
35
modules/ExpGamingCommands/home/control.lua
Normal file
@@ -0,0 +1,35 @@
|
||||
--- A full ranking system for factorio.
|
||||
-- @module ExpGamingCommands.kill
|
||||
-- @author Cooldude2606
|
||||
-- @license https://github.com/explosivegaming/scenario/blob/master/LICENSE
|
||||
|
||||
local Game = require('FactorioStdLib.Game')
|
||||
local global = global{}
|
||||
|
||||
--- Sets the home for a player
|
||||
-- @command set-home
|
||||
commands.add_command('set-home', 'Set your home position', {}, function(event,args)
|
||||
local player = Game.get_player(event)
|
||||
if not global[player.index] then global[player.index] = {player.force.get_spawn_position(player.surface),player.force.get_spawn_position(player.surface)} end
|
||||
global[player.index][1] = {math.floor(player.position.x),math.floor(player.position.y)}
|
||||
player_return('Home set at: ('..math.floor(player.position.x)..','..math.floor(player.position.y)..')')
|
||||
end)
|
||||
|
||||
--- Teleports a player back to their home
|
||||
-- @command home
|
||||
commands.add_command('home', 'Go to you home position', {}, function(event,args)
|
||||
local player = Game.get_player(event)
|
||||
if not global[player.index] then global[player.index] = {player.force.get_spawn_position(player.surface),player.force.get_spawn_position(player.surface)} end
|
||||
global[player.index][2] = {math.floor(player.position.x),math.floor(player.position.y)}
|
||||
player.teleport(player.surface.find_non_colliding_position('player',global[player.index][1],32,1),player.surface)
|
||||
end)
|
||||
|
||||
--- Returns a player back to the place before using /home
|
||||
-- @command return
|
||||
commands.add_command('return', 'Return to your previous position after using /home', {}, function(event,args)
|
||||
local player = Game.get_player(event)
|
||||
if not global[player.index] then global[player.index] = {player.force.get_spawn_position(player.surface),player.force.get_spawn_position(player.surface)} end
|
||||
local _temp = {math.floor(player.position.x),math.floor(player.position.y)}
|
||||
player.teleport(player.surface.find_non_colliding_position('player',global[player.index][2],32,1),player.surface)
|
||||
global[player.index][2] = _temp
|
||||
end)
|
||||
22
modules/ExpGamingCommands/home/softmod.json
Normal file
22
modules/ExpGamingCommands/home/softmod.json
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "home",
|
||||
"version": "4.0.0",
|
||||
"type": "Module",
|
||||
"description": "Allows players to set homes and then return to them later.",
|
||||
"location": "<blank>",
|
||||
"keywords": [
|
||||
"Teleport",
|
||||
"ExpGaming",
|
||||
"Home",
|
||||
"Return",
|
||||
"Set Home",
|
||||
"Commands"
|
||||
],
|
||||
"author": "<blank>",
|
||||
"contact": "<blank>",
|
||||
"license": "<blank>",
|
||||
"dependencies": {
|
||||
"FactorioStdLib.Game": "^0.8.0",
|
||||
"ExpGamingCore.Commands": "^4.0.0"
|
||||
}
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
--[[
|
||||
Explosive Gaming
|
||||
|
||||
This file can be used with permission but this and the credit below must remain in the file.
|
||||
Contact a member of management on our discord to seek permission to use our code.
|
||||
Any changes that you may make to the code are yours but that does not make the script yours.
|
||||
Discord: https://discord.gg/r6dC2uK
|
||||
]]
|
||||
--Please Only Edit Below This Line-----------------------------------------------------------
|
||||
|
||||
local function _homes(reset)
|
||||
global.addons = not reset and global.addons or {}
|
||||
global.addons.homes = not reset and global.addons.homes or {}
|
||||
return global.addons.homes
|
||||
end
|
||||
|
||||
commands.add_command('set-home', 'Set your home position', {}, function(event,args)
|
||||
local player = Game.get_player(event)
|
||||
if not _homes()[player.index] then _homes()[player.index] = {player.force.get_spawn_position(player.surface),player.force.get_spawn_position(player.surface)} end
|
||||
_homes()[player.index][1] = {math.floor(player.position.x),math.floor(player.position.y)}
|
||||
player_return('Home set at: ('..math.floor(player.position.x)..','..math.floor(player.position.y)..')')
|
||||
end)
|
||||
|
||||
commands.add_command('home', 'Go to you home position', {}, function(event,args)
|
||||
local player = Game.get_player(event)
|
||||
if not _homes()[player.index] then _homes()[player.index] = {player.force.get_spawn_position(player.surface),player.force.get_spawn_position(player.surface)} end
|
||||
_homes()[player.index][2] = {math.floor(player.position.x),math.floor(player.position.y)}
|
||||
player.teleport(player.surface.find_non_colliding_position('player',_homes()[player.index][1],32,1),player.surface)
|
||||
end)
|
||||
|
||||
commands.add_command('return', 'Return to your previous position after using /home', {}, function(event,args)
|
||||
local player = Game.get_player(event)
|
||||
if not _homes()[player.index] then _homes()[player.index] = {player.force.get_spawn_position(player.surface),player.force.get_spawn_position(player.surface)} end
|
||||
local _temp = {math.floor(player.position.x),math.floor(player.position.y)}
|
||||
player.teleport(player.surface.find_non_colliding_position('player',_homes()[player.index][2],32,1),player.surface)
|
||||
_homes()[player.index][2] = _temp
|
||||
end)
|
||||
Reference in New Issue
Block a user