Commit graph

330 commits

Author SHA1 Message Date
Lucas Nicodemus
6d7c8aa019 TileKill -> PlaceChest (hook changed, so did packet); +Bouncer 2017-12-14 20:13:25 -07:00
Lucas Nicodemus
5cd5bdaaa0 Move OnLiquidSet to Bouncer 2017-12-14 07:46:29 -07:00
Lucas Nicodemus
98aa01c620 Add note about crash check & change reaosn on OnKillMe 2017-12-11 19:07:53 -07:00
Lucas Nicodemus
5c9d2ed870 Simpler check (thanks @bartico6) on OPK's nullcheck. 2017-12-11 08:23:36 -07:00
Lucas Nicodemus
6ed110f862 Change a bounds check to handle a packet instead of letting it go.
This change reverts mod to line 1525 of GetDataHandlers.cs in
672d360e9d by Deathamx.

We couldn't think of a reason why a bounds check would ever return
false, thus not handling the packet and letting the server accept
it. Therefore, it's now true.

In the future, we need to document handling better.
2017-12-11 00:28:08 -07:00
Lucas Nicodemus
ba851d3570 Remove TShock.CheckProjectilePermission
Add TSPlayer.HasProjectilePermission() and its inverse:
	TSPlayer.LacksProjectilePermission()
2017-12-10 23:38:03 -07:00
Lucas Nicodemus
c5f9a51802 Move most of HandleProjectileKill to Bouncer
Added GetDataHandlers.ProjectileKill hook and related arguments.
Fired when a projectile kill packet is accepted by the server.
2017-12-10 23:07:17 -07:00
Lucas Nicodemus
d3c566db83 Move a large majority of OnPlayerUpdate to Bouncer
I really really don't understand why we're doing Terraria's data
sync for them (see HandlePlayerUpdate). Someone know why?
2017-12-10 10:04:27 -07:00
Lucas Nicodemus
949d0e0ffa More remove notes 2017-12-10 08:56:17 -07:00
Lucas Nicodemus
79802cd9e0 Comment more things in Bouncer 2017-12-10 08:54:32 -07:00
Lucas Nicodemus
dd7ffe2d3a Move PlayerKillMeV2 anti-crash to Bouncer
Removed PacketTypes.PlayerKillMe since it's out of the protocol.
Removed handler method for PlayerKillMe since it's out of the
	protocol.
Updated changelog to reflect new hook changes.
2017-12-09 13:50:18 -07:00
Lucas Nicodemus
436e91c1f1 Change STS to 1 tile for @bartico6's quality of life changes
Since these reverts are on a per-tile basis, we only need to revert
the first block not surrounding ones.

Note: May cause problems with dropped sand because of gravity.
2017-12-09 10:30:20 -07:00
Lucas Nicodemus
a5cbeb166b Fix some SendTileSquare calls with proper args 2017-12-09 02:15:31 -07:00
Lucas Nicodemus
760f5518da More patching to fix potential desync (thanks @bartico6)! 2017-12-09 01:50:58 -07:00
Lucas Nicodemus
aa527496dc Replace a coule TileID magic numbers with direc Tcalls.
Thanks @mistzzt & @QuiCM!
2017-12-09 01:48:43 -07:00
Lucas Nicodemus
ce822caf2a Implement re-transmit of data if event handled in OnTilEdit
Thanks to the suggestion of @bartico6, we now re-transmit packets
of world data to prevent desync issues with respect to stopping a
server action but not fixing the client's view of the world.
2017-12-09 01:39:54 -07:00
Lucas Nicodemus
cdfb056903 Include feedback from @bartico6 on a magic number 2017-12-09 01:31:40 -07:00
Lucas Nicodemus
c891a81f67 Move NewProjectile into Bouncer 2017-12-09 01:19:05 -07:00
Lucas Nicodemus
914782ab9e Create hook PlaceObject; move anti-hack to Bouncer 2017-12-07 21:43:33 -07:00
Lucas Nicodemus
6630b70ae1 Un-botch tab/spacing in this file. Thanks VS Code!
Now I know that if I merely open and save a file using Visual Studi
o code, it will automatically munge my tab/spaces on two lines just
for kicks. Thanks Microsoft! You're great at this!
2017-12-06 23:42:14 -07:00
Lucas Nicodemus
c46dae328d Optimize imports
I now have VSCode installed for one reason: to optimize imports.

This required:

1. Installing VSCode.
2. Installing OmniSharp in VSCode.
3. Installing .NET Core so that OmniSharp could start in VSCode.

VSCode is a Microsoft product. It doesn't ship .NET Core. Or Omni
Sharp. Instead, you have to do all of this yourself.

It's not batteries included or anything.

It's actually harder to use OmniSharp in VSCode than it is to use
it in Sublime Text. Except Sublime Text's OmniSharp maintainer
went off and abandoned the project without telling anyone at OmniS
harp. Which gave me the idea that OmniSharp still was maintained
on Sublime Text.

And I just upgraded my Sublime Text license today.

Thanks OmniSharp developer.
2017-12-06 23:37:09 -07:00
Lucas Nicodemus
a4d9f0295a Move OnTileEdit stuff to Bouncer
There are probably a few components in here that don't make sense
for bouncer (looking at you, regions code). However, it's on my todo
list rather than being an imminent thing.
2017-12-06 22:16:19 -07:00
Lucas Nicodemus
5abf0f9d8e Comment magic number 5 2017-12-06 17:07:05 -07:00
Lucas Nicodemus
1d5a013adb Seal the Bouncer inside his house 2017-12-06 17:05:29 -07:00
Lucas Nicodemus
9ba0907dc0 Fix most of the stupid comments in Bouncer 2017-12-06 17:02:23 -07:00
Lucas Nicodemus
f065e99a0e Add HealOtherPlayer hook; integrate with Bouncer 2017-12-05 11:59:27 -07:00
Lucas Nicodemus
0d2d50b3de Don't leave comments in code 2017-12-05 02:35:30 -07:00
Lucas Nicodemus
db7ae627ae Move orientable tiles into Bouncer 2017-12-05 02:35:04 -07:00
Lucas Nicodemus
758e403b66 Mark Bouncer's OnSendTileSquare as internal 2017-12-05 02:34:08 -07:00
Lucas Nicodemus
e782a07564 Move SendTileSquare handling for Bouncer into Bouncer 2017-12-05 02:32:33 -07:00