1
0
Commit Graph

5322 Commits

Author SHA1 Message Date
Alexander Harkness
0968a4d360 Fix error with implicit cast from long long to long (#4026) 2017-09-14 13:11:22 +02:00
peterbell10
307e7aaff5 Fix switch warnings (#4013)
* Fix switch warnings
  * Fix a variety of -Wswitch and -Wswitch-enum warnings
  * Remove unneeded -Wno-error flags

* Reorganise some eMonsterType switches
  * Alpha sort eMonsterType cases in WriteMobMetadata
    and in cNBTChunkSerializer::AddMonsterEntity
  * List all mob types in protocol 1.12 and NBTChunkSerializer

* cStructGenTrees::GetNumTrees: remove switch default

* cWSSAnvil::LoadOldMinecartFromNBT: Log unhandled minecart type
2017-09-14 09:48:57 +01:00
Alexander Harkness
a4c07d2f98 Adjust lava damage values (#4020)
Fixes isue #2925
2017-09-12 09:02:17 +01:00
peterbell10
3ec9e6ec87 Limit how long cRoot::InputThread may block (#4019)
Limit how long cRoot::InputThread may block
Only calls `std::getline` when there is input available
which removes the need to "notify" the input thread.
Fixes #2494 and fixes #3177
2017-09-12 07:41:39 +01:00
peterbell10
e225b7f826 Replace ItemCallbacks with lambdas (#3993) 2017-09-11 23:20:49 +02:00
peterbell10
115bc5609a cBlockArea: change MakeIndex to return size_t 2017-09-11 23:20:12 +02:00
peterbell10
4a0355f065 cBlockArea: use unique_ptr 2017-09-11 23:20:12 +02:00
Alexander Harkness
4e7325c9e2 Fix crash for players out of the world. Fixes #4006 (#4007) 2017-09-10 17:45:18 +01:00
Alexander Harkness
c334824199 Shutdown connection when disconnect packet sent (#3999) 2017-09-08 09:36:23 +02:00
Lane Kolbly
b12f4ef7d5 Made world data paths adjustable, and added API to temporarily disable saving chunks to disk. (#3912) 2017-09-07 13:41:16 +01:00
Alexander Harkness
b5a23e5cd9 Lighting now generally consistent with vanilla (#3988)
* Lighting now generally consistent with vanilla

Skylight is now dispersed by some blocks, instead of passing
through unimpeded.

Some blocks which were not marked as transparent are now marked as
such.

Water and other such blocks now attenuate light with the correct
intensity.

Generally changes were based on documentation in the Minecraft
Wiki: https://minecraft.gamepedia.com/Opacity#On_block_light ,
however during play-testing on vanilla lava was found not to
attenuate sky or block-light so the attenuation was removed.

This fixes #3849

* Add API documentation for IsSkylightDispersant

* Rename m_SkylightDispersant to m_IsSkylightDispersant

* Update comment for m_Transparent property of Blocks
2017-09-07 11:56:17 +01:00
Lane Kolbly
dc294cdc51 Switched player statistic store to save with UUID filenames. (#4002) 2017-09-07 11:57:12 +02:00
Alexander Harkness
e33eb529ad Fire effect now shown for creative and spectator mode players (#3998)
* Fire effect now shown for creative and spectator mode players

Fixes #3989

* Add documentation for IsFireproof
2017-09-07 09:59:08 +01:00
Lukas Pioch
ed7adef1ca Updated APIDoc (#3985) 2017-09-07 10:33:46 +02:00
Bond-009
104f9e127b Changed some int parameters to vector parameters (#3937) 2017-09-07 10:25:34 +02:00
peterbell10
ef1f371dab Add cWorld::RemoveEntity and use in cEntity (#4003)
* Add cWorld::RemoveEntity and use in cEntity

* cEntity: Remove uneeded asserts from Destroy and DoMoveToWorld
2017-09-05 15:11:35 +01:00
Lane Kolbly
028a35ef0d Added assert to cProtocolRecognizer::GetPacketId. (#4001) 2017-09-04 16:58:38 +01:00
Lane Kolbly
aebfbfb8c8 GetPacketID for protocol packet IDs (#3977)
* Added GetPacketId method to protocol, implemented for all protocols.

* Moved GetPacketID methods into a single file, alpha-sorted.

* Fixed 1.12.1 HandlePacket switch statement.

* Added SendLogin to the GetPacketId framework.

* Added SpawnObject to GetPacketId framework.

* Added missing sendEntityEquipment packet ID update for 1.12.1

* Added LeashEntity packet ID change to 1.12.1

* Alphabetized packet enum, added SpawnGlobalEntity to GetPacketId framework

* Fixed clang errors

* Indented cases, expanded comment for GetPacketId

* Changed dyslexic comment.
2017-09-02 17:46:57 +01:00
LogicParrot
49c443896d Revert "Replace ItemCallbacks with lambdas (#3948)"
This reverts commit 496c337cdf.
2017-09-02 08:50:23 +01:00
Alexander Harkness
700bbdabf5 SetSwimState now takes into account head height
This affects m_IsSubmerged and IsSubmerged() for entities of all
types.

Also prevent squids from suffocating in water.
2017-09-01 14:50:02 +01:00
Alexander Harkness
765db880f9 Remove double-checking below world for burning 2017-09-01 14:50:02 +01:00
Alexander Harkness
7f2c0ef0d6 OnLogin now kicks players properly (#3980) 2017-09-01 15:49:35 +02:00
peterbell10
496c337cdf Replace ItemCallbacks with lambdas (#3948) 2017-09-01 13:04:50 +02:00
Bond-009
00d077de1b Drop enderchest when broken by a silk touck pick (#3986) 2017-08-31 17:50:07 +02:00
Tiger Wang
da0778dfaa Merge pull request #3969 from peterbell10/cuboid
cCuboid: restore default copy construct and assign
2017-08-30 15:04:09 +01:00
Lane Kolbly
5d64451f74 Protocol Spawn Position Should Use LastSentPosition (#3929)
+ Added GetLastSentPos

* Fixed spawn position bug in 1.8.
2017-08-30 15:01:33 +01:00
peterbell10
84941bcc9f Update mbedtls to 2.5.1 (#3964)
* Renaming changes:
  * macro prefix "POLARSSL" -> "MBEDTLS"
  * functions now prefixed with "mbedtls_"
  * rename PolarSSL++ -> mbedTLS++
  * rename polarssl submodule

* Use mbedtls' AES-CFB8 implementation.

* Add cSslConfig to wrap mbedtls_ssl_config

* Update cTCPLink and cBlockingSslClientSocket to use cSslConfig

* Use cSslConfig in cHTTPServer

* Use cSslConfig for cMojangAPI::SecureRequest

* CI Fixes

* Set -fomit-frame-pointer on the right target
2017-08-30 15:00:06 +01:00
Lane Kolbly
1f9788a801 Added ShouldSendRespawn parameter to ScheduleMoveToWorld (#3979) 2017-08-30 02:35:53 +03:00
peterbell10
fa5bf7d5cd cUUID: Fix FromHexDigit for digits >= 'a' 2017-08-29 16:09:39 +02:00
peterbell10
1779db1201 cWorld: Add entities without holding of m_CSEntitiesToAdd
* Fixes deadlock when cWorld::AddEntity is called while holding chunk map CS.
2017-08-29 15:46:36 +02:00
peterbell10
96ce841417 Add TOLUA_EXPOSITION for readability 2017-08-28 14:36:23 +01:00
peterbell10
f89becc761 cCuboid: restore default copy construct and assign. 2017-08-28 13:48:10 +01:00
peterbell10
3687ef397c Cleanup Vector3 constructors and Abs 2017-08-28 13:48:07 +01:00
Bastien ADAM
a5869b3c09 Repair the removed constructor of cCuboid cCuboid(otherCuboid) (#3966)
* Repair the removed constructor of cCuboid `cCuboid(const cCuboid & a_Cuboid) : p1(a_Cuboid.p1), p2(a_Cuboid.p2) {}`

* Update Cuboid.cpp

* Update Cuboid.h
2017-08-28 10:01:12 +01:00
satoshinm
6bc5031517 Implement Forge protocol handshake support (#3869) 2017-08-27 23:10:20 +02:00
peterbell10
447d929da1 Implement anvil chunk sparsing 2017-08-26 20:56:44 +02:00
mathiascode
3ebcf0fd5c Leashes work in 1.12.1 2017-08-26 20:56:10 +02:00
Alexander Harkness
0140923c35 Fix mobs not burning in daylight when on snow (#3961)
* Fix mobs not burning in daylight when on snow

or other non-transparent partial blocks.

Fixes #3945

* Change from floor to ceil
2017-08-25 16:26:45 +01:00
Bond-009
3c8712d871 Gives all entities the default airlevel on creation (#3942)
* Guardians don't take damage on land
* Squids suffocate on land
2017-08-25 14:44:36 +01:00
mathiascode
4b84288801 Don't assert when placing beds in older versions (#3916) 2017-08-25 14:52:32 +02:00
peterbell10
f4f2fc7c3d Add cUUID class (#3871) 2017-08-25 13:43:18 +01:00
Lane Kolbly
87c89a1727 Bed piston fix (#3956)
* Threaded world interface into ConvertBlockToPickups

* Changed how cBlockPiston::PushBlocks sets the old block to air, so that the block exists for the DropBlock call.

* Removed unused a_Digger argument.

* Removed incorrect comment

* This time actually removed a_Digger references.
2017-08-25 10:56:01 +01:00
Lukas Pioch
b55e5f5ad1 Use ref instead of pointer 2017-08-24 14:36:29 +02:00
mathiascode
02775e52c4 Minor changes (#3909) 2017-08-24 11:19:40 +02:00
Lane Kolbly
92ac45d27e Added check to deactivate existing entity effects when new entity effects are added. 2017-08-24 11:19:01 +02:00
peterbell10
0854ed01a4 Fix use after move in cItemBowHandler::OnItemShoot 2017-08-24 11:17:51 +02:00
Safwat Halaby
c1b1cb87a1 Removed outdated pathfinder comment (#3955) 2017-08-23 22:05:33 +03:00
Lane Kolbly
af6963f40f Added check in cEntity::TickBurning for whether the entity is planning to change worlds. (#3943) 2017-08-22 15:05:13 +01:00
peterbell10
cc2d719c59 Potential spawn prepare fix (#3924) 2017-08-22 14:34:43 +02:00
peterbell10
096cdac80d Implement protocol level chunk sparsing (#3864) 2017-08-21 17:56:53 +01:00