Commit graph

205 commits

Author SHA1 Message Date
Chris
f99b7ec359
Allow time parser to take spaces
So you can pass in `10h 5m 2s` instead of `10h+5m+2s`.
Works for things like `10h +5m -2s` as well
2018-05-22 10:10:22 +09:30
Lucas Nicodemus
569b350cea Update to Pryaxis, 2018 part 2
If there's one thing I learned in this exercise, it's that letting
people add random python scripts to the repo like gpltext.py that
promise to be easier than find and replace is a bad idea.
2018-01-01 02:20:56 -07:00
Lucas Nicodemus
8d934ef08f Update to 2018 2018-01-01 02:17:21 -07:00
Lucas Nicodemus
df4da817b6 Rename Utils.ActivePlayers to something better.
Issues related to ICollections being null led to reverting migrating
this to TSPlayer until a better solution is uncovered.
2017-12-31 01:30:13 -07:00
Lucas Nicodemus
a5cad284a8 Revert "Remove Utils.ActivePlayers"
This reverts commit b613fdcda6.
2017-12-31 01:28:21 -07:00
Lucas Nicodemus
43ddb73112 Revert "Migrate calls from Players.Length to ActivePlayers"
This reverts commit 521283c36b.
2017-12-31 01:24:54 -07:00
Lucas Nicodemus
521283c36b Migrate calls from Players.Length to ActivePlayers
As pointed out by @QuiCM, TShock.Players is actually an array and not a
smarter collection, so length will return the total collection size and
not the active players. An earlier commit was added that gives TSPlayer
an ICollection<TSPlayer> that contains only active players. This is now
the basis of determining the number of active players on the server.
2017-12-31 01:13:33 -07:00
Lucas Nicodemus
4eebaf6c44 Rename methods that were ambiguous in meaning.
This renames some methods in the Utils class to better reflect what they
do or what they provide back. It should be clearer what these methods
are for now than before.
2017-12-29 08:50:48 -07:00
Lucas Nicodemus
332e6b2518 Remove Utils.GetGroup().
This method duplicates Groups.GetGroupByName().
2017-12-29 08:45:29 -07:00
Lucas Nicodemus
3ac52091ea Move SendFileToUser to TSP.SendFileTextAsMessage.
This is not a great method, but it's actually the only method in TShock
that interpolates the %map% and %players% variables and it used in at
least three places in the codebase. Since it's already so specialized,
it's not worth changing it to take an actual File object, in my humble
opinion.

This also clarifies what the method does and what makes it special, as
opposed to being fairly generic.
2017-12-29 08:40:44 -07:00
Lucas Nicodemus
17d151b8f8 Move HasBanExpired to Bans.RemoveBanIfExpired().
The ban system needs a full rewrite anyway, but this move removes
something from Utils, puts it closer to its operating point, simplifies
the method, and clarifies what it actually does.
2017-12-29 08:32:45 -07:00
Lucas Nicodemus
f06d1fd238 Remove Utils.GetPlayers().
This is a public method that only has two uses in TShock and both of
them are listing players to a player. A foreach isn't rocket science and
this method was originally created just because there was no good object
to iterate on (e.g., a TSPlayer array).
2017-12-29 08:26:51 -07:00
Lucas Nicodemus
48393d60c7 Move SendMultipleMatchError to TSPlayer.
This is a great method for a player to have and not for the Utils class
to have.
2017-12-29 08:15:04 -07:00
Lucas Nicodemus
afdedee1c4 Change Utils.Reload to not take a player.
There are two occasions in the codebase when Utils.Reload is called and
we're competent enough that we can just call the event when the reload
happens. Unrelated note, but shouldn't this event be called prior to
reloading? I've kept it the same to preserve existing behavior, but I
think it should probably happen before the reload event takes place.

Either way, I think this is fine.
2017-12-29 08:04:20 -07:00
Lucas Nicodemus
152c67f27c Move Utils.Ban -> TSPlayer.Ban.
Arguably, this is one of the more controversial methods that's being
kept. Because it kicks and bans a target player, it's more useful than
removing it and requiring people to interface with the TShock Ban
Manager directly (not a good move for the future). Whether or not this
method sucks is up for debate, but right now I think it's totally fine
to keep it around in a different location.
2017-12-29 08:00:30 -07:00
Lucas Nicodemus
a5a3aae599 Remove Utils.GetPlayerIP() 2017-12-27 19:29:45 -07:00
Lucas Nicodemus
f74a0f6a70 Merge remote-tracking branch 'origin/general-devel' into oop 2017-12-27 19:03:03 -07:00
Lucas Nicodemus
70f22c1e70 Fix Travis 2017-12-27 18:23:11 -07:00
Lucas Nicodemus
8301d6a6f3 Remove Utils.ForceKickAll; add TSPlayer.KickAll. 2017-12-27 18:07:28 -07:00
Lucas Nicodemus
1ea04ffd4f Remove Utils.ForceKick; use TSPlayer.Kick.
Some anti-cheat calls were changed to "You have been Bounced." I don't
think we need to tell clients why they were disconnected so they can
tune their hacks better.
2017-12-27 18:01:53 -07:00
Lucas Nicodemus
f79c6a2962 Move Utils.Kick to TSPlayer.Kick 2017-12-27 13:00:13 -07:00
Lucas Nicodemus
e705e398e8 Return real nulls as opposed to string nulls 2017-12-27 11:30:39 -07:00
Lucas Nicodemus
b613fdcda6 Remove Utils.ActivePlayers
Duplicated what an array already stored and told us, but added code and
was obscure. It predated TSPlayers existing.
2017-12-26 21:14:16 -07:00
Lucas Nicodemus
9648e9ac0c Remove excess space 2017-12-26 20:55:33 -07:00
Lucas Nicodemus
11920cde48 Move Utils.FindPlayer -> TSPlayer.FindByNameOrID.
This makes TShock more OOP like (get the matching players from the
player as opposed to getting the players from a random class that
shouldn't exist).
2017-12-26 20:53:00 -07:00
Lucas Nicodemus
cb47240c7e Fix indentation on one line in utils 2017-12-26 20:17:11 -07:00
Lucas Nicodemus
846386f98a Merge remote-tracking branch 'origin/general-devel' into old-code 2017-12-26 20:07:34 -07:00
Lucas Nicodemus
903bd5bb75 Migrate AddBan2 calls to AddBan
No more deprecation warnings on this release #yolo
2017-12-26 20:05:52 -07:00
Lucas Nicodemus
0b98ac5fc1 Remove deprecated motd, color code support 2017-12-26 19:54:21 -07:00
Lucas Nicodemus
f942a6c98a Revert "Change Utils.SearchProjectile to return -1 in error"
This reverts commit e19fd22fe0.
2017-12-24 20:09:12 -07:00
Lucas Nicodemus
64241a44c7 Move TShock.CheckSpawn to Utils.IsInSpawn
Continuing in the quest to clean things out of the TShock main class,
this moves CheckSpawn out and renames it for clarity.
2017-12-21 19:54:14 -07:00
Lucas Nicodemus
5f647f087c (Probably) fix invasions started by TShock being weird
TShock used to call the StartInvasion method in Main with a type
and a size, but then in some update it stopped taking a size. So
you have to change a field to change the size, but the problem is
that the field is reset when StartInavsion is called. This means
that any effort to manually change the size would have failed due
to the fact that the field is reset at the end. The order has been
changed to account for this.

In addition, the start size is now set, so the game can report
progress correctly on the current invasion.
2017-12-14 08:08:57 -07:00
Lucas Nicodemus
3f22c52698 Move StartInvasion() out of the TShock main class 2017-12-14 07:56:41 -07:00
Lucas Nicodemus
b808ad8e4c Merge remote-tracking branch 'origin/general-devel' into fragments 2017-12-11 16:28:20 -07:00
Lucas Nicodemus
3bed40ec65 Remove Utils.RestartServer (thanks @QuiCM!) 2017-12-11 16:01:09 -07:00
Lucas Nicodemus
e19fd22fe0 Change Utils.SearchProjectile to return -1 in error
Thanks for checking this out, @bartico6. Fixes #1549.

Note: this method only returns 1 because the game won't allocate
more identity/index combo. Apparently, according to RL.
2017-12-11 08:18:23 -07:00
Lucas Nicodemus
3e5c1bf0c5 Merge remote-tracking branch 'origin/general-devel' into fragments 2017-12-09 21:06:47 -07:00
Lucas Nicodemus
434e817b68
Merge branch 'general-devel' into fix-permdump 2017-12-09 19:29:34 -07:00
Zaicon Kiroshu
4638b85adc Fixed IndexOutOfRange exception 2017-12-09 18:48:40 -06:00
Lucas Nicodemus
14c071350c Mark Utils.DumpPemrissionMatrix as internal 2017-12-09 17:15:21 -07:00
Lucas Nicodemus
985dcebda9 Comment what DumpPermissionMatrix does 2017-12-09 17:14:59 -07:00
Lucas Nicodemus
63179deaa5 Adds /dumpdata which dumps the permission table & ref data. 2017-12-09 15:54:51 -07:00
Lucas Nicodemus
031398591a Merge remote-tracking branch 'origin/general-devel' into fragments 2017-12-09 08:44:49 -07:00
Edgar Luque
6589531868 Renamed TShockAPI.DB 'User' to 'UserAccount' 2017-12-08 01:38:15 +01:00
Lucas Nicodemus
4e3cd00848 Merge branch 'general-devel' into fragments 2017-12-06 21:14:45 -07:00
Lucas Nicodemus
349770e6ed Remove more silly comment style problems 2017-12-06 17:10:05 -07:00
Lucas Nicodemus
215fc4a9b1
Merge branch 'general-devel' into rps 2017-12-06 13:00:36 -07:00
Lucas Nicodemus
fc233bd3f1 Move ComputeMaxStyles to Utils 2017-12-04 21:57:59 -07:00
Lucas Nicodemus
e85d79e23d Move Distance to Utils.Distance 2017-12-04 21:53:46 -07:00
Lucas Nicodemus
17982bd766 Move SetConsoleTitle to utils 2017-12-04 21:49:56 -07:00