Minor improvements

This commit is contained in:
David Leal 2020-09-22 13:18:43 -05:00
parent 2fe2febab6
commit a15fcb822c
No known key found for this signature in database
GPG Key ID: 3C482B03FD220E68
2 changed files with 44 additions and 23 deletions

@ -1,5 +1,5 @@
on: [push, pull_request] on: [push, pull_request]
name: Check & Release name: build
jobs: jobs:
lint: lint:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -8,4 +8,4 @@ jobs:
- name: lint - name: lint
uses: Roang-zero1/factorio-mod-luacheck@master uses: Roang-zero1/factorio-mod-luacheck@master
with: with:
luacheckrc_url: https://raw.githubusercontent.com/ChaosWormz/teleport-request/master/.luacheckrc luacheckrc_url: ""

@ -1,36 +1,42 @@
# Teleport Request # Teleport Request
[![](https://github.com/ChaosWormz/teleport-request/workflows/Check%20&%20Release/badge.svg)](https://github.com/ChaosWormz/teleport-request/actions) [![Build status](https://github.com/ChaosWormz/teleport-request/workflows/build/badge.svg)](https://github.com/ChaosWormz/teleport-request/actions)
[![License](https://img.shields.io/badge/license-LGPLv2.1%2B-blue.svg)](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html) [![License](https://img.shields.io/badge/license-LGPLv2.1%2B-blue.svg)](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html)
Allows players to request from another player to be teleported to them. Allows players to request from another player to be teleported to them.
## Privileges ## Privileges
Each command needs a privilege. These are the following privileges: Each command needs a privilege. These are the following privileges:
- `tp` is required in order to use all commands. - `tp` is required in order to use all commands.
- `tp_tpc` is required in order to use `/tpc`. - `tp_tpc` is required in order to use `/tpc`.
- `tp_tpc` is required in order to use `/tpe`. - `tp_tpc` is required in order to use `/tpe`.
- `tp_tpc` is required in order to use `/tpj`. - `tp_tpc` is required in order to use `/tpj`.
- `interact` is required to use all commands. - `interact` is required to use all commands.
- `tp_admin` gives more control to admins: - `tp_admin` gives more control to admins:
- Admins can teleport to players even when they haven't decided to accept, or not.
- Admins can teleport players to him/her, if the `enable_immediate_teleport` setting is enabled. - Admins can teleport to players even when they haven't decided to accept, or not.
- Admins can teleport to protected coordinates. - Admins can teleport players to him/her, if the `enable_immediate_teleport` setting is enabled.
- Admins can teleport to protected coordinates.
Players can also teleport to coordinates, however, if the area is protected, the teleport will be denied. Players can also teleport to coordinates, however, if the area is protected, the teleport will be denied.
## How to use ## How to use
Each command does a function. "**Example usage**" is an example of how to use the command.
Each command does a function. "**Example usage**" is an example of how to use the command.\
Note there must be 2 players in order to make the commands to work: a player must send a request to another player. Note there must be 2 players in order to make the commands to work: a player must send a request to another player.
There are two ways of sending a request: There are two ways of sending a request:
1. A request which teleports you to the specified player (command `/tpr <player>`).
2. A request which teleports the specified player to you (command `/tphr <player>`).
To accept a request some sent you, you must use `/tpy`. 1. A request which teleports you to the specified player (command `/tpr <player>`).\
2. A request which teleports the specified player to you (command `/tphr <player>`).
To accept a request some sent you, you must use `/tpy`.\
These are the following commands available in-game: These are the following commands available in-game:
``` /tpr [playername] ``` ``` /tpr [playername] ```
- **Name:** Teleport Request - **Name:** Teleport Request
- **Description:** Requests permission to teleport to another player, where [playername] is their exact name. - **Description:** Requests permission to teleport to another player, where [playername] is their exact name.
- **Required privileges:** `interact, tp` - **Required privileges:** `interact, tp`
@ -38,6 +44,7 @@ These are the following commands available in-game:
- **Notes:** Usernames are case-sensitive. If you have the `tp_admin` privilege, you will immediately teleport to the specificed player (does not apply if `enable_immediate_teleport` setting is disabled, enabled by default). - **Notes:** Usernames are case-sensitive. If you have the `tp_admin` privilege, you will immediately teleport to the specificed player (does not apply if `enable_immediate_teleport` setting is disabled, enabled by default).
``` /tphr [playername] ``` ``` /tphr [playername] ```
- **Name:** Teleport Here Request - **Name:** Teleport Here Request
- **Description:** Request permission to teleport another player to you. - **Description:** Request permission to teleport another player to you.
- **Required privileges:** `interact, tp` - **Required privileges:** `interact, tp`
@ -45,12 +52,14 @@ These are the following commands available in-game:
- **Notes:** Usernames are case-sensitive. If you have the `tp_admin` privilege, RobbieF will teleport to you immediately (does not apply if `enable_immediate_teleport` setting is disabled, enabled by default). - **Notes:** Usernames are case-sensitive. If you have the `tp_admin` privilege, RobbieF will teleport to you immediately (does not apply if `enable_immediate_teleport` setting is disabled, enabled by default).
``` /tpc [x,y,z] ``` ``` /tpc [x,y,z] ```
- **Name:** Teleport to Coordinates - **Name:** Teleport to Coordinates
- **Description:** Teleport to coordinates. - **Description:** Teleport to coordinates.
- **Required privileges:** `interact, tp_tpc, tp` - **Required privileges:** `interact, tp_tpc, tp`
- **Notes:** Honors area protection. If the area is protected, it must be owned by you in order to teleport to it, or you must have the `areas` privilege in order to teleport to those coordinates. - **Notes:** Honors area protection. If the area is protected, it must be owned by you in order to teleport to it, or you must have the `areas` privilege in order to teleport to those coordinates.
``` /tpj [axis] [distance] ``` ``` /tpj [axis] [distance] ```
- **Name:** Teleport Jump - **Name:** Teleport Jump
- **Description:** Teleport a specified distance along a single specified axis. - **Description:** Teleport a specified distance along a single specified axis.
- **Required privilege:** `interact", tp, tp_tpc` - **Required privilege:** `interact", tp, tp_tpc`
@ -58,41 +67,48 @@ These are the following commands available in-game:
- **Example usage:** `/tpj y 10` teleport 10 nodes into the air. - **Example usage:** `/tpj y 10` teleport 10 nodes into the air.
``` /tpe ``` ``` /tpe ```
- **Name:** Teleport Evade - **Name:** Teleport Evade
- **Description:** In a sticky situation? Evade your enemy by teleporting to several nearby coordinates in random pattern. There's no knowing where you'll end up. - **Description:** In a sticky situation? Evade your enemy by teleporting to several nearby coordinates in random pattern. There's no knowing where you'll end up.
- **Required privileges:** `interact, tp_tpc, tp` - **Required privileges:** `interact, tp_tpc, tp`
- **Example usage:** `/tpe` teleports you to a random number of random coordinates in an evasive pattern. - **Example usage:** `/tpe` teleports you to a random number of random coordinates in an evasive pattern.
``` /tpy ``` ``` /tpy ```
- **Description:** Accept a user's request to teleport to you or teleport you to them. - **Description:** Accept a user's request to teleport to you or teleport you to them.
- **Required privileges:** `interact, tp` - **Required privileges:** `interact, tp`
``` /tpn ``` ``` /tpn ```
- **Description:** Deny a user's request to teleport to you or teleport you to them. - **Description:** Deny a user's request to teleport to you or teleport you to them.
- **Required privileges:** `interact, tp` - **Required privileges:** `interact, tp`
## Optional dependencies ## Optional dependencies
- [areas](https://github.com/minetest-mods/areas) - [areas](https://github.com/minetest-mods/areas)
- [intllib](https://github.com/minetest-mods/intllib)
- [beerchat](https://github.com/minetest-beerchat/beerchat) - [beerchat](https://github.com/minetest-beerchat/beerchat)
- [chat2](https://github.com/minetest-mods/chat2) - [chat2](https://github.com/minetest-mods/chat2)
- [gamehub](https://github.com/shivajiva101/minetest-gamehub) - [gamehub](https://github.com/shivajiva101/minetest-gamehub)
## Requirements ## Requirements
This mod requires MT 5.0.0+ to run.
This mod requires MT 5.0.0+ to run.\
Older versions not supported. Older versions not supported.
## Issues, suggestions, features & bugfixes ## Issues, suggestions, features & bugfixes
Report bugs or suggest ideas by [creating an issue](https://github.com/ChaosWormz/teleport-request/issues/new).
Report bugs or suggest ideas by [creating an issue](https://github.com/ChaosWormz/teleport-request/issues/new).\
If you know how to fix an issue, or want something to be added, consider opening a [pull request](https://github.com/ChaosWormz/teleport-request/compare). If you know how to fix an issue, or want something to be added, consider opening a [pull request](https://github.com/ChaosWormz/teleport-request/compare).
## License ## License
Copyright (C) 2014-2020 ChaosWormz and contributors. Copyright (C) 2014-2020 ChaosWormz and contributors.
Teleport Request code is licensed under LGPLv2.1+, see [`LICENSE.md`](LICENSE.md). Teleport Request code is licensed under LGPLv2.1+, see [`LICENSE.md`](LICENSE.md).\
[`tpr_warp.ogg`](sounds/tpr_warp.ogg) is licensed under [CC BY-SA 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). [`tpr_warp.ogg`](sounds/tpr_warp.ogg) is licensed under [CC BY-SA 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/).
## Contributors ## Contributors
List of contributors (in no particular order): List of contributors (in no particular order):
- [RobbieF](https://minetest.tv) | [GitHub](https://github.com/Cat5TV) - [RobbieF](https://minetest.tv) | [GitHub](https://github.com/Cat5TV)
@ -107,20 +123,24 @@ List of contributors (in no particular order):
- Traxie21, the original creator of this mod (however, he/she does not have a GitHub account anymore). - Traxie21, the original creator of this mod (however, he/she does not have a GitHub account anymore).
## Configuring the mod ## Configuring the mod
Open your `minetest.conf` located in your Minetest directory.
Open your `minetest.conf` located in your Minetest directory.\
Set the values of the settings you'd like to. Set the values of the settings you'd like to.
Available options are: Available options are:
```
```conf
tp.timeout_delay = 60 tp.timeout_delay = 60
tp.enable_immediate_teleport = true tp.enable_immediate_teleport = true
tp_enable_tpp_command = false tp_enable_tpp_command = false
``` ```
Those values are the default values of the mod.
You can also go to your Minetest, Settings tab, All settings, Mods, and you'll find `tpr` there. Those values are the default values of the mod.\
You can also go to your Minetest, Settings tab, All settings, Mods, and you'll find `tpr` there.\
Or another way to do it, is changing the values in `settingtypes.txt`. Or another way to do it, is changing the values in `settingtypes.txt`.
## Installation ## Installation
- Unzip the archive, rename the folder to `tpr` and - Unzip the archive, rename the folder to `tpr` and
place it in .. minetest/mods/ place it in .. minetest/mods/
@ -130,13 +150,14 @@ place it in .. minetest/mods/
- If you only want this to be used in a single world, place - If you only want this to be used in a single world, place
the folder in .. worldmods/ in your world directory. the folder in .. worldmods/ in your world directory.
For further information or help, see: For further information or help, see:\
https://wiki.minetest.net/Installing_Mods <https://wiki.minetest.net/Installing_Mods>
## TODO ## TODO
- Add limitations to /tpc which only allow a user to teleport X number of blocks. Prevents users from teleporting to the edge of the world. - Add limitations to /tpc which only allow a user to teleport X number of blocks. Prevents users from teleporting to the edge of the world.
- Assess value in changing all tpr-based chat commands to one global command such as /tp to reduce the chance of confusion between tps_admin and the original mod (and also make it so people don't have to remember so many commands). - Assess value in changing all tpr-based chat commands to one global command such as /tp to reduce the chance of confusion between tps_admin and the original mod (and also make it so people don't have to remember so many commands).
- Rewrite to place all chat commands into one single command much like how /teleport works. - Rewrite to place all chat commands into one single command much like how /teleport works.
- Make evade respect land: no teleporting inside land, but instead make sure player is standing on surface or in water. - Make evade respect land: no teleporting inside land, but instead make sure player is standing on surface or in water.
If you think something else should be added to this list, [submit an issue](https://github.com/ChaosWormz/teleport-request/issues/new). If you think something else should be added to this list, [submit an issue](https://github.com/ChaosWormz/teleport-request/issues/new).