Commit Graph

83 Commits

Author SHA1 Message Date
485ca284b0 Extracts portal saving and loading to the PortalFileHelper class 2021-10-22 16:18:35 +02:00
d2e8c81a5a Splits the portal class into Portal, PortalActivator, PortalOpener and PortalStructure
PortalStructure now contains information about the gate's physical structure, such as the location of border blocks, the location of entrances, the gate type and the button location.
PortalActivator is responsible for activating/de-activating portals, destination toggling and getting information about available destinations.
PortalOpener is responsible for opening/closing a portal. It's also the place to go for checking if the portal is open for a given player.
Comments of the Portal class have been improved, but the comments of the three new classes need fixing.
2021-10-20 16:09:35 +02:00
635d08b1b3 Makes the SignHelper helper class into the proper PortalSignDrawer which each Portal now has one instance of 2021-10-20 01:33:36 +02:00
1d4b988ca4 Moves the rest of the sign drawing code from Portal to SignHelper 2021-10-18 19:12:30 +02:00
82ed28bba0 Removes the DirectionHelper's getBlockAt method as it only increased complexity 2021-10-18 18:52:24 +02:00
0506cf1b61 Splits the PortalTeleporter into a PlayerTeleporter and a VehicleTeleporter for better structuring
Moves player-related teleportation code to PlayerTeleporter, moves vehicle-related teleportation code to VehicleTeleporter and makes them both extend the Teleporter which now contains all common teleportation code.
2021-10-18 18:38:36 +02:00
982d8abf65 Extracts teleportation code into the PortalTeleporter class to improve readability 2021-10-18 03:41:16 +02:00
f96e8ed2da Adds a method for checking if a player can afford a given fee 2021-10-18 03:36:56 +02:00
fabe0dda80 Fixes inconsistencies in coloring of the portal name when drawing signs. The - is now white. 2021-10-17 22:47:27 +02:00
59069d1423 Improves comments in the GateHandler class and extracts some code into GateReader
Moves code for reading .gate files into the GateReader helper class
Improves all comments in GateHandler where possible
Adds more helper comments
2021-10-15 22:16:02 +02:00
e2c91c1feb Changes EconomyHandler method names to be more consistent 2021-10-15 19:25:31 +02:00
e14007380f Adds proper checking and odd case catching before teleporting players through artificial end portals
Adds a proper permission check to make sure players are allowed to teleport through the artificial portal
Adds a teleportation back to the entrance as the teleportation event cannot be properly cancelled
Adds a proper class for storing info about the teleportation
2021-10-12 02:47:09 +02:00
69a62c921c Fixes the color inconsistency for the portal selection "arrows" for gates with colored names 2021-10-10 17:21:19 +02:00
fff4d8d78b Gets rid of the rest of the modX and modY usages, and removes some unused code 2021-10-08 18:23:42 +02:00
6d5c4802bc Creates some new methods to get a location from a relative location which I can actually understand 2021-10-08 15:28:12 +02:00
e7fc1daafe Moves functionality to the PortalOptions and PortalLocation classes 2021-10-08 01:26:12 +02:00
650a26402a Moves all config migration mappings to its own file 2021-09-23 17:50:43 +02:00
b7c7252fad Improves the differentiation between portals (stargates) and gates 2021-09-21 18:28:18 +02:00
1e29db58b9 Improves some variable names and adds some comments 2021-09-20 18:22:20 +02:00
f681db629f Refactors a lot of code, and extracts permission-related functions to the PermissionHelper class 2021-09-20 13:56:30 +02:00
d5e6f1145c Removes unused getBalance method 2021-09-19 15:06:41 +02:00
8835e69e3c Moves some code from Stargate to EconomyHandler 2021-09-19 15:05:19 +02:00
b191ac1de5 Moves some classes to the new container package, and improves some code 2021-09-18 21:51:29 +02:00
87735e4935 Adds some helper functions to make getting direction-related values easier
Adds a function for getting the yaw given two locations
Adds a function for getting a block face given a yaw
2021-09-11 15:04:55 +02:00
da32cf11d1 Fixes some things regarding vehicle teleportation
Adds extra space between the portal and the vehicle if the destination portal is always on
Fixes a bug causing vehicles not being detected soon enough
Fixes boats facing into the portal rather than out from the portal
Fixes boats spawning inside water rather than on top of it if water is in front of a portal
2021-02-27 22:34:10 +01:00
79703e49af Adds a class which helps with modZ and modX calculations 2021-02-27 21:15:39 +01:00
496b5d9779 Moves sign drawing to a helper class to reduce the complexity of the portal class 2021-02-24 18:12:26 +01:00
4acea17ba3 Fixes boats sometimes not detecting the portal before the player detects the portal 2021-02-23 19:43:49 +01:00
e5fef0b16a Moves the EconomyHandler to utility and adds some encapsulation for three of its variables 2021-02-22 20:26:10 +01:00
fb70b8bc75 Splits Gate into Gate, GateLayout and GateHandler, and creates a new portal package with portal related classes 2021-02-22 17:01:47 +01:00
1721750aa1 Adds comments and simplifies some of the code
Adds a PortalOption enum to simplify portal options
Adds a BungeeHelper class to collect the bungee-related code
2021-02-20 13:57:04 +01:00
42fa6ed8d7 Huge refactoring
Splits Portal into Portal and PortalHandler
Adds EconomyHelper to make messaging of economy string easier
Adds a lot of missing comments
Adds vehicle teleportation again, but it needs a lot of changes to work properly
2021-02-12 00:26:47 +01:00
1719e92494 Moves a bunch of inner classes to their own files 2021-02-11 15:53:54 +01:00