Merge branch 'general-devel' into player-data

This commit is contained in:
Lucas Nicodemus 2018-10-02 20:37:56 -07:00 committed by GitHub
commit 2a5e19da39
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 3 deletions

View file

@ -7,6 +7,7 @@ This is the rolling changelog for TShock for Terraria. Use past tense when addin
* API: Added hooks for item, projectile and tile bans (@deadsurgeon42) * API: Added hooks for item, projectile and tile bans (@deadsurgeon42)
* API: Changed `PlayerHooks` permission hook mechanisms to allow negation from hooks (@deadsurgeon42) * API: Changed `PlayerHooks` permission hook mechanisms to allow negation from hooks (@deadsurgeon42)
* API: New WorldGrassSpread hook which shold allow corruption/crimson/hallow creep config options to work (@DeathCradle) * API: New WorldGrassSpread hook which shold allow corruption/crimson/hallow creep config options to work (@DeathCradle)
* Fixed a missing case in UserManager exception handling, which caused a rather cryptic console error instead of the intended error message (@deadsurgeon42)
* Fixed saving when one player is one the server and another one joins (@MarioE) * Fixed saving when one player is one the server and another one joins (@MarioE)
* Fixed /spawnmob not spawning negative IDs (@MarioE) * Fixed /spawnmob not spawning negative IDs (@MarioE)
* Validated tile placement on PlaceObject; clients can no longer place frames, paintings etc with dirt blocks (@bartico6, @ProfessorXZ) * Validated tile placement on PlaceObject; clients can no longer place frames, paintings etc with dirt blocks (@bartico6, @ProfessorXZ)

View file

@ -7,7 +7,8 @@ TShock is a toolbox for Terraria servers and communities. That toolbox is jam pa
* Download: [Stable](https://github.com/TShock/TShock/releases) or [Experimental](https://travis.tshock.co/). * Download: [Stable](https://github.com/TShock/TShock/releases) or [Experimental](https://travis.tshock.co/).
* Read [the documentation](https://tshock.readme.io/) to quickly get up to speed. * Read [the documentation](https://tshock.readme.io/) to quickly get up to speed.
* Join [Discord](https://discord.gg/XUJdH58) to get help, chat, and enjoy some swell Australian company. * Join [Discord](https://discord.gg/Cav9nYX) for quick questions and answers
* Join [Telegram](https://t.me/pryaxis) for in-depth support, conversation, and some swell Australian company.
* Download [other plugins](https://tshock.co/xf/index.php?resources/) to supercharge your server. * Download [other plugins](https://tshock.co/xf/index.php?resources/) to supercharge your server.
---- ----
@ -214,7 +215,7 @@ You might find yourself wondering where these fields are. Pryaxis provides the d
Finally, you may be interested in developing other Terraria Server API plugins. The [TShockResources](https://github.com/TShockResources) organization has several plugins you can look at and build on. TShock is itself a plugin, and most plugins are open source. This gives you ample room to figure out where to go next. Finally, you may be interested in developing other Terraria Server API plugins. The [TShockResources](https://github.com/TShockResources) organization has several plugins you can look at and build on. TShock is itself a plugin, and most plugins are open source. This gives you ample room to figure out where to go next.
Need help? Join us on [#tshock-programming in Discord](https://discord.gg/ABtrBaY). Need help? Join us on [Telegram](https://t.me/pryaxis) or [Discord](https://discord.gg/Cav9nYX).
## Code of Conduct ## Code of Conduct

View file

@ -76,7 +76,7 @@ namespace TShockAPI.DB
catch (Exception ex) catch (Exception ex)
{ {
// Detect duplicate user using a regexp as Sqlite doesn't have well structured exceptions // Detect duplicate user using a regexp as Sqlite doesn't have well structured exceptions
if (Regex.IsMatch(ex.Message, "Username.*not unique")) if (Regex.IsMatch(ex.Message, "Username.*not unique|UNIQUE constraint failed: Users\\.Username"))
throw new UserAccountExistsException(account.Name); throw new UserAccountExistsException(account.Name);
throw new UserAccountManagerException("AddUser SQL returned an error (" + ex.Message + ")", ex); throw new UserAccountManagerException("AddUser SQL returned an error (" + ex.Message + ")", ex);
} }