Lukas Pioch
528db6eea7
Added null check for position ( #4366 )
2019-08-11 00:32:22 +02:00
Mattes D
26d0605121
Improved CMake generator ( #4365 )
2019-08-10 13:15:51 +02:00
Mattes D
d0b095ad51
Added more clamping operations to cCuboid.
2019-08-10 12:25:06 +02:00
Mattes D
e7016b1525
Removed coord-based API from cCuboid. ( #4362 )
2019-08-09 03:13:15 +02:00
peterbell10
a2547bf1fe
cBoundingBox: Fix tolua warning ( #4361 )
...
tolua was warning about no support for `operator =`.
Ref: #4360
2019-08-08 19:49:00 +01:00
Aplaus228
466d986e5e
Change TakeDamageInfo::FinalDamage from int to float ( #4359 )
...
Closes #4357
2019-08-08 11:51:38 +01:00
Mattes D
f0cd34357e
Fixed compilation on VS2019
2019-08-06 10:13:18 +02:00
Mattes D
8212f163b5
Register vanilla blocks in BlockTypeRegistry.
2019-08-05 21:42:54 +02:00
Mattes D
f48ac9f0c3
BlockTypeRegistry: Added hint manipulation
2019-08-05 21:42:54 +02:00
Mattes D
3722a239bf
BlockTypeRegistry: Initial skeleton
2019-08-05 21:42:54 +02:00
Mark Asp
c00b365617
Check for nil in cWorld:SpawnSplitExperienceOrbs binding ( #4354 )
...
Adds explicit nil check for 'position' parameter to prevent crashes if invalid.
Fixes #4352
2019-07-28 14:09:51 +01:00
peterbell10
9dc1343bda
Ignore whitespace only lines in brewing and furnace recipes ( #4332 )
2019-06-11 13:39:44 +01:00
DaPorkchop_
52e6543ba5
Respect return value of cLuaWindow's OnClicked handler ( #4322 )
2019-06-11 12:07:35 +02:00
Wilhem Barbier
85006d10f5
Fix directory traversal bug ( #4341 )
...
Refuse to serve an URL containing `../`.
2019-06-11 10:33:56 +02:00
Zach DeCook
31a8d017d9
* Sponge: Add water absorbtion ( #4333 )
...
Closes #1411
2019-06-11 00:28:02 +01:00
Zach DeCook
24a8456f79
Create Ender Portal with Eyes of Ender ( #4126 )
...
The algorithm was designed so All portals must be facing the center, no matter which block had the eye inserted in last.
Note: Still need to create a block entity so that portals don't become invisible when you relog.
Addresses part of #3445
Fixes #3695
2019-05-11 20:43:26 +01:00
Zach DeCook
b9e7505d7f
Buckets: Be able to place fluids through other fluids. ( #4331 )
2019-05-07 20:15:58 +01:00
DaPorkchop_
8b4d37771f
Fix player skin sending through BungeeCord ( #4328 )
...
This fixes sending of player skins through BungeeCord by actually parsing the JSON instead of setting the player properties as a string.
2019-04-22 18:54:22 +01:00
DaPorkchop_
10b60971f5
Make Nether portals spawn the player inside of them ( #4325 )
...
Currently the player is spawned immediately in front of them.
Simply changing `cNetherPortalScanner::OutOffset` to 0.5 wasn't enough, as the player would always be spawned on top of the portal, however checking for non-solid blocks instead of air fixes this.
2019-04-18 14:54:55 +01:00
peterbell10
7d512f2191
Limit the size of cListAllocationPool's free list
2019-02-20 09:07:44 +00:00
Bond-009
2010a2b700
Add colors to console for macOS ( #4303 )
2018-10-15 17:03:08 +01:00
peterbell10
4727ed2084
Add a formatting function for Vector3 ( #4282 )
...
* Vector3: Add custom fmt compatible formatter.
* cLuaState: Add fmt version of ApiParamError
* Use vector formatting in manual bindings
* Always log vectors with FLOG
2018-09-24 21:33:39 +01:00
Muhammad Kaisar Arkhan
73689024f0
Add BurnsInDaylight to Lua API and Monsters.ini ( #4295 )
...
* Monster.h: Export SetBurnsInDaylight
This commit also adds BurnsInDaylight to check if the Monster burns in daylight
or not.
Closes https://github.com/cuberite/cuberite/issues/4294
* MonsterConfig.cpp: Add BurnsInDaylight
Closes https://github.com/cuberite/cuberite/issues/4294
2018-09-24 21:32:47 +01:00
peterbell10
ee84197014
Force all headers other than "Globals.h" to be included with relative paths ( #4269 )
...
Closes #4236
CMake now creates a header file in the build directory under the path "include/Globals.h" which just includes "src/Globals.h" with an absolute path. Then instead of adding "src/" to the include directories, it adds "include/".
#include "Globals.h" still works by including the build generated file and any other src-relative path will not work.
2018-08-29 01:51:25 +01:00
Alexander Harkness
c4f43cd8ec
Store and pass entity effect duration as an int not a short. ( #4293 )
...
Fixes #4292 .
2018-08-26 15:52:39 +01:00
Rick van Schijndel
a1e52cb6d6
Fixes bed item 26 and 355 being spawned, only 355 spawns now ( #4290 )
2018-08-23 16:28:41 +01:00
changyong guo
89017dfbbc
solve new player login crash issue ( #4285 )
...
currently if new player login, server will crash during send player ability to client.
this pull request solve this issue.
2018-08-17 16:46:06 +01:00
Nate
e7b552603f
Handle the lapis slot separately ( #4286 )
...
This is my attempt to fix #4112 . The root cause of the issue was that the lapis slot was treated exactly the same as the enchanting slot, so it on the server side it would only ever slot one item.
My fix is to check if its the second slot in the window, then check if it's lapis (it would slot whatever). If it is lapis I call the base click handler.
2018-08-17 09:08:06 +01:00
Nate
801d5d7170
Fix: Create players folder recursively ( #4283 )
...
Problem: On a new server the players folder was not created on windows.
Root Cause:
`GetUUIDFolderName` was returning a folder structure for players with `/` while CreateFolderRecursively was checking for `\\` for win32.
The fix is to recognise both forward and backward slashes as file separators on windows.
Fixes #4284
2018-08-12 23:47:38 +01:00
changyong guo
57690b81a2
Experience orb ( #4259 )
...
* Replace cWorld::FindClosesPlayer with cWorld::DoWithClosestPlayer
* Implement experience reward splitting into the orb sizes used in vanilla
* Modified speed calculation in cExpOrb::Tick to make the orbs fly towards the player
Fixes #4216
2018-08-02 15:59:10 +01:00
peterbell10
1e014a54dc
Ocelots no longer multiply exponentially ( #4272 )
...
Along with a call to `destroyentities`, this fixes #4271
I'm guessing the intention of this code was to modify the normal spawning of ocelots. However, `cEntity::SpawnOn` is actually called to send the entity to an individual client. That means this code was run for every single player, every time they were sent a chunk with ocelots in it. Thus, the ocelots population would grow exponentially as players log in and move around.
2018-07-30 12:49:46 +01:00
bionext03
90d552a702
Add new flow direction calculating algorithm ( #4160 )
2018-07-27 10:01:53 +01:00
peterbell10
cdd8e42587
cWorld: Manually bind deprecated broadcast functions ( #4265 )
...
Ref: https://github.com/cuberite/cuberite/pull/4264#discussion_r204769193
2018-07-27 00:12:41 +01:00
peterbell10
950aeffff8
CheckBasicStyle: Check number of empty lines between functions ( #4267 )
...
Add check for number of empty lines between functions and fix the corresponding failures
2018-07-26 22:24:36 +01:00
Tiger Wang
b8ab03bc6b
At long last... Piston animations!
...
* Fixes #3198
* Fixes #57 (again lol)
2018-07-25 15:29:53 +01:00
Tiger Wang
74f5160332
Reimplemented fall particles
...
Regression when 1.9.x support introduced in #3135 , originally implemented in #461 .
2018-07-25 15:29:26 +01:00
peterbell10
c94d7184eb
Broadcast refactor ( #4264 )
...
* Move Broadcast functions from cChunkMap to cBroadcaster
- Remove cBroadcastInterface in favour of cBroadcaster.
- cChunk: Remove broadcast functions.
* resurect broadcast interface
* Absorb cBroadcaster into cWorld.
Removes the need for forwarding the function calls.
* Improve const-correctness
* Use Int8 instead of char
+ Comment `ForClients` functions
* Improve comments
* Broadcaster: Rename ForClients functions
2018-07-24 22:30:49 +01:00
peterbell10
b5f29d5d2c
Stop cFunctionRef constructor from disabling default copy constructor. ( #4173 )
...
* Stop cFunctionRef constructor from disabling default copy constructor.
+ cFunctionRef: Improve documentation
2018-07-24 22:30:05 +01:00
peterbell10
31a11a6df4
Optimise chunk set ( #4260 )
...
Closes #1244
Initially I was just going to add the cChunkData to cSetChunkData but profiling revealed
that the copying wasn't even the biggest slowdown. Much more time was being spent in
cChunk::CreateBlockEntities and cChunk::WakeUpSimulators than was in memcpy so I've made
those significantly faster as well.
Optimisations performed:
* cSetChunkData now stores blocks in a cChunkData object
* cChunkData objects can now perform moves even if they are using different pools
* cChunk::CreateBlockEntities now iterates in the correct order and only over present chunk sections
* Similarly for cChunk::WakeUpSimulators
* cSetChunkData::CalculateHeightMap now shortcuts to the highest present chunk section before checking blocks directly
2018-07-23 19:12:51 +01:00
peterbell10
e27290f7d2
cPawn: Reset last ground height in ResetPosition ( #4261 )
...
Prevents fall damage after teleporting/portaling to a lower height.
Fixes #3457
2018-07-23 17:26:48 +01:00
changyong guo
01e72ddb65
Rewrite explosion knock back ( #4251 )
...
1. Base knockback on an entity's bounding box intersection with the explosion
2. Armor blast protection reduces knockback
3. Don't apply knockback to players flying in creative mode
Fixes #4139
2018-07-23 10:24:00 +01:00
changyong guo
7b0db672d1
Keep players in gmNotSet ( #4248 )
...
This allows players game mode to update to the default after portal to another world.
Fixes #4207
2018-07-23 00:35:32 +01:00
changyong guo
3e802932a6
recover hotbar selected slot after reconnect ( #4249 )
...
1. implement protocol message SendHeldItemChange
2. add save / load inventory equipped item slot in JSON
3. send held item slot message after player connect to server
Fixes #4189
2018-07-22 23:23:33 +01:00
peterbell10
7b431bed51
cIsThread: Reset m_ShouldTerminate after the thread has stopped ( #4258 )
...
This allows threads to be restarted after stopping.
Fixes #4257
2018-07-22 22:35:58 +01:00
peterbell10
4fbf04413d
Make offline UUIDs consistent with vanilla. ( #4178 )
...
Fixes #4177
This is a breaking change to existing Cuberite permissions settings.
2018-07-20 00:30:09 +01:00
peterbell10
211cec621e
cBlockArea: Write all present data types by default ( #4252 )
...
cBlockArea::Write now defaults to use GetDataTypes() instead of assuming all data types are present.
Fixes cuberite/WorldEdit#130
2018-07-19 22:36:46 +01:00
Bond-009
2431b077cd
Add unbreaking for armor ( #4220 )
...
Ref: minecraft.gamepedia.com/Enchanting#Unbreaking
#915
2018-07-12 23:10:15 +01:00
changyong guo
06eb5cc70d
fix dispenser pickup display bug ( #4247 )
...
fix dispenser pickup bug by ignore meta data during pickup creation
2018-06-30 22:37:10 +01:00
changyong guo
be1f06520c
fix block area rotation bug ( #4243 )
...
fix mirror method bug in class cBlockArea.
2018-06-25 18:31:05 +02:00
Alexander Harkness
03c977a200
Update m_IsSolid assignments in BlockInfo ( #4167 )
...
Fixes #4166
2018-06-24 11:32:17 +01:00
changyong guo
2d3013d1d3
Support swap item between main hand and offhand by press key "F" ( #4241 )
...
Hi,
I found cuberite don't support to press key "F" to swap items on main hand and offhand, so I implemented this feature.
Best regards
Changyong
2018-06-24 10:24:10 +01:00
peterbell10
24603a7640
Flush stdout after resetting console colour. ( #4240 )
2018-06-20 09:15:57 +02:00
Bond-009
b9fdaf8a94
Use clang-tidy to check more code conventions ( #4214 )
...
* Create clang-tidy.sh
* Add clang-tidy to circle.yml
* Fixed some naming violations
Fixes #4164
2018-05-06 18:07:34 +01:00
Cocosushi6
fbf5cf7aa6
Generate cacti and sugarcane with different heights ( #4137 )
...
When generating foliage, create cacti with height in the interval [1; MaxCactusHeight] and sugarcane with height in [1; MaxSugarcaneHeight] (with MaxCactusHeight and MaxSugarcaneHeight declared in world.ini)
Fixes #4135
2018-05-03 19:25:08 +01:00
peterbell10
a4dbb5c582
Prefer static_cast to reinterpret_cast ( #4223 )
...
* Change reinterpret_cast -> static_cast wherever possible
* Remove more unnecessary `const_cast`s.
reinterpret_casts should be avoided for the same reason as c-style casts - they don't do any type-checking. reinterpret_cast was mainly being used for down-casting in inheritance hierarchies but static_cast works just as well while also making sure that there is actually an inheritance relationship there.
2018-05-02 08:50:36 +01:00
peterbell10
86a8fdf3fe
tolua++ bindings use nullptr. ( #4219 )
...
Fixes compilation with -Wzero-as-null-pointer-constant.
2018-04-27 23:22:41 +02:00
peterbell10
319b30eec6
Fix fishing timer ( #4217 )
...
Fixes ["Fishing Speed Too Slow"](https://forum.cuberite.org/thread-3175-post-29000.html#pid29000 ).
Interestingly, the constants @NiLSPACE points out are actually correct:
```cpp
(Random.RandInt(100, 900) - static_cast<int>(a_Player->GetEquippedItem().m_Enchantments.GetLevel(cEnchantments::enchLure) * 100))
```
100 to 900 ticks is the correct timing of 5-45 seconds. However, the timer is only updated when the floater is in the water and the server side position was actually bobbing in and out of the water. This meant the timer took ~2-3x longer than it should.
With this change the floater position is always in the water and so the timer works as expected.
2018-04-27 16:33:45 +01:00
mathiascode
02d75c5336
Removed unnecessary disconnect ( #4200 )
2018-04-27 08:59:03 +02:00
Bond-009
98d807187b
Removed duplicate code ( #4198 )
...
Should also fix dogs not despawning
2018-04-11 12:17:30 +01:00
peterbell10
4bf160d596
Update m_LastSentPosition in TeleportToCoords and DoMoveToWorld. ( #4211 )
2018-04-11 08:39:24 +01:00
Alex Sweet
a0896c63d7
Smelting Gives Experience ( #4094 )
...
* Smelting Exp
Smelting now gives experience
* Furnace.txt update
Exp rewards are entered in furnace.txt, Reward calculation is now done
is the furnaceentity class
* furnace.txt update
Changed alignment tabs to spaces
Included documentation of exp in recipe
* Updated StringToFloat
changed strtod to strtof
* Explicit Float to Int
* Reworked Smelting Rewards
* No C casts
-Adds new function to the api
-Sets reward counter to 0 in furnace constructor
* Style and exp lock removed
-Fixed style mistakes accoring to PR notes
-XP isn't locked to a single player anymore
* No Smelter API
-Removed SetLastSmelter and GetLastSmelter
-Fixed comments
-Fixed log reward amounts
2018-04-11 07:46:11 +01:00
peterbell10
1e312296cc
Fix cUUID::Variant ( #4213 )
2018-04-08 00:20:53 +02:00
mathiascode
f4a1ebd880
Properly destroy player ( #4199 )
2018-04-03 14:39:39 +01:00
Zach DeCook
7833e8112f
* Block Info: glazed terracotta and concrete hardness/solid voxel status ( #4205 )
2018-04-02 18:45:01 +01:00
mathiascode
a879778968
Broadcast playerlist removal in every world ( #4201 )
2018-04-02 18:39:54 +01:00
Bond-009
1991a5b0e6
Wolves only spawn in taiga biomes ( #4197 )
...
Ref: https://minecraft.gamepedia.com/Wolf#Spawning
2018-03-20 10:44:30 +01:00
peterbell10
4f26f653e1
Add cPluginManager::GenericCallHook ( #4027 )
...
Replace repetitive CallHook functions with a generic implementation.
Also converts some loops to range-based for.
Related to #1134
2018-03-02 10:40:48 +00:00
peterbell10
999faa9d90
cLightingThread: Faster chunk reading ( #4185 )
...
Profiled at a 10x speedup for cLightingThread::ReadChunks.
2018-02-21 10:30:48 +00:00
peterbell10
1ea36298d2
Fix cUrlClient leak ( #4125 )
...
Fixes #4040
* The TCP connection is now shutdown after OnBodyFinished
* Any open connections are closed when cNetworkSingleton::Terminate() is called.
* Removed ownership cycles in cUrlClientRequest
* Added a check to the test to ensure there are no leaks.
2018-02-20 17:08:46 +00:00
peterbell10
cf75d7b2c5
cBlockInfo: Deprecate direct access to variables. ( #4184 )
2018-02-20 10:43:28 +00:00
Bond-009
7e9695ecb0
Damage fishing rod when catching the hook on a block, then reeling it in ( #4151 )
...
Fixes #4132
2018-02-11 12:40:16 +00:00
peterbell10
d3c1c626f5
Deal with covered switches consistently ( #4161 )
...
* Fixes a number of "<function>: not all control paths return a value" warnings on MSVC.
* Introduces the UNREACHABLE global macro and uses it instead of conditionally compiled switch defaults.
* Move cNBTParseErrorCategory from FastNBT.h into FastNBT.cpp to prevent bad calls to message()
2018-02-04 23:07:12 +00:00
peterbell10
2df14a0496
cChunk and cChunkData: Use vectors for block get and set functions ( #4172 )
...
* cChunkData: Change interface to use Vector3i
* cChunk: Add Vector3i overloads for bounded block get and set functions.
2018-02-04 22:15:31 +00:00
Bond-009
d12804d4c0
Ocelots don't take fall damage ( #4171 )
2018-02-04 20:53:35 +00:00
peterbell10
f0c735e846
A player's inventory is always opened by its owner. ( #4176 )
...
Fixes #4093
Window updates are only broadcast to players in the m_OpenedBy list. Normally players are added after sending a window open packet but no packet is sent for a player's inventory. This meant broadcasts were never sent for the inventory window.
2018-01-28 17:24:59 +00:00
peterbell10
95108c134d
cClientHandle: Always call HOOK_PLAYER_RIGHT_CLICK ( #4149 )
...
Reverts the reduction in cases where the hook was called, a change which broke plugins.
2018-01-25 08:10:16 +00:00
Bond-009
d3a3c6ad2c
Removed cBlockInfo.m_IsSnowable ( #4105 )
...
* Removed cBlockInfo.m_IsSnowable
* Return IsSnowable from deprecated variable binding m_IsSnowable.
2018-01-23 21:07:06 +00:00
peterbell10
ab350d1e43
cItemGrid: Allocate storage lazily ( #4083 )
...
* cItemGrid: Allocate storage lazily
* cItemGrid: Fix spelling, Prioritary -> Priority
2018-01-21 18:45:13 +00:00
peterbell10
e88b3fa2fe
New movement system for leashed entities ( #4147 )
...
* New movement system for leashed entities
Entities are accelerated towards the leashed to entity as if by a spring.
* Mobs now pathfind close to but not directly to the leashing entity.
* Also minor comment changes
2018-01-17 21:40:58 +00:00
Bond-009
ec9e0eecf6
Calculate crit damage properly ( #4154 )
2018-01-17 21:12:24 +00:00
Bond-009
701fee334c
Prioritize hinge on the left side ( #4153 )
2018-01-17 19:15:42 +00:00
Bond-009
d11335e4f6
Add world name in logs from cWorld ( #4148 )
2018-01-16 22:04:39 +00:00
Alexander Harkness
07619d932d
Exp Orbs and Pickups are destroyed instantly by cacti. ( #4136 )
...
* Cactus detection code follows pattern set in #3996
* Pickups are now destroyed on cactus contact
* Add cactus detection and destruction to Exp Orbs
Remove checks for IsExpOrb() in cEntity::Tick()
Exp Orbs do not call super::Tick() and so this condition was
pointless.
2018-01-16 19:13:17 +00:00
Bond-009
3065a101a5
Don't burn mobs in daylight when swimming ( #4145 )
2018-01-15 22:44:48 +00:00
peterbell10
a72891fbb0
cWindow: Fix slot area priority when double click stacking. ( #4086 )
...
Fixes #4084
2018-01-15 11:35:27 +00:00
Alexander Harkness
ad22922393
Rename cEntity swim states ( #3996 )
...
* Replace cEntity:m_IsSubmerged with m_IsHeadInWater
* Replace cEntity:m_IsSwimming with m_IsInWater
* Add API documentation for new symbols
* Apply SetSwimState to all entities, not just mobs and players
* Pickups now use IsOnFire to check if they are on fire before destruction
Fixes #3987
2018-01-14 18:44:45 +00:00
9caihezi
4242431407
Rewrite cClientHandle::HandleRightClick ( #4089 )
...
* Add hand parameter to distinguish main hand/off hand.
* Add a new function cClientHandle::HandleUseItem to separate the functionality of using an item without a target block. This matches the protocol with client version >= 1.9
* Always actively update the status of a block if the placement fails (by out of reach or rejected by plugin).
* Do not call plugin callback CallHookPlayerRightClick(-1, 255, -1, -1, 0, 0, 0) when using item.
The CallHookPlayerUsingItem will still be called.
Now at most one of CallHookPlayerRightClick, CallHookPlayerUsingBlock,
CallHookPlayerUsingItem and CallHookPlayerEating will be called based on
the type of action (not including the used version of callbacks).
* Do not count using item as BlockInteractionsRate check (Using item takes time).
* Now we can open chests(etc.) when sneaking as long as the player's hand is empty.
This is what vanilla server does.
2018-01-08 13:37:10 +00:00
Alexander Harkness
2529a89835
Golden Apple Fixes ( #4130 )
...
* Do not remove food item until player has been fed
* Golden apples now ignore hunger when eating
* Removed EnchantedGoldenApple recipe, as it was removed in 1.9
Reference: https://minecraft.gamepedia.com/1.9#Items_2
* Adjust golden apple effects, as they were changed in 1.9
Reference: https://minecraft.gamepedia.com/1.9#Items_2
2018-01-06 00:39:23 +00:00
Bond-009
d7de2dccf0
Improved fishing rewards ( #4120 )
...
* Damage fishing rod after use
* Give xp to the player for catching something
* Fixed junk drops
* Implement Luck of the Sea
2018-01-05 14:32:30 +00:00
Bond-009
a2de7c2bb1
Sugar cane can be near frosted ice ( #4133 )
2018-01-05 12:49:08 +00:00
Alexander Harkness
b4aa19f329
Item durability loss now depends on the item used. ( #4123 )
...
Armour durability also no longer changes when it
is used to break blocks or attack mobs.
Fixes #4119
2018-01-05 11:28:06 +00:00
peterbell10
757231cc6e
Add the fmt library ( #4065 )
...
* Replaces AppendVPrintf with fmt::sprintf
* fmt::ArgList now used as a type safe alternative to varargs.
* Removed SIZE_T_FMT compatibility macros. fmt::sprintf is fully portable and supports %zu.
* Adds FLOG functions to log with fmt's native formatting style.
2018-01-03 17:41:16 +00:00
Zach DeCook
68fc28857f
Concrete mixing ( #4096 )
...
Adds a block handler for concrete powder and implements hardening to concrete.
Concrete powder turns into concrete when:
* It is next to water when it receives a block update
* It falls onto a water block (even with Physics SandInstantFall=1)
2018-01-03 16:33:31 +00:00
peterbell10
177273006e
cLuaState: Update Push
for entities. ( #4128 )
...
Fixes #4127
Some classes were exported but were only pushed as a cEntity
meaning exported functions were inaccessible.
This brings cLuaState::Push(cEntity *) up to date with all exported entities.
2018-01-03 11:38:00 +00:00
Bond-009
00da9006b7
Lilypads can be on top of (frosted) ice ( #4122 )
...
Fixes #4117
2017-12-27 18:47:28 +00:00
Alexander Harkness
6309c6a97f
improve rain simulation ( #4017 )
...
* Uses vanilla logic to decide which blocks rain falls through.
* Rain falls infinitely above the world, and stops at y=0.
* Entities will now be extinguished if they are under rain-blocking
blocks, and fire will now be extinguished by rain similarly.
* Create IsWeatherWetAtXYZ to identify wetness at a particular location.
* Use new code for enderman rain detection.
* Fixes issue #916
* Disable warnings for global constructors in the fire simulator.
2017-12-26 21:25:57 +00:00
Alexander Harkness
705deea205
Water bottles are drinkable potions ( #4114 )
...
Water bottles are now drinkable potions
Fixes #4111
Also update outdated mcwiki references
2017-12-26 20:27:24 +00:00
peterbell10
533c95d9e2
Protocol: Fix potion metadata parsing ( #4116 )
2017-12-26 18:51:38 +00:00
peterbell10
832b394715
Fix Travis build ( #4101 )
...
Stop using gdb on osx - was breaking the build
Add clang 3.5 build as travis now defaults to 5.0
Fix unknown-warning-option errors on AppleClang
ProtoProxy: Use nullptr
UrlClientTest: add override to callback destructor
Update jsoncpp to use nullptr
2017-12-22 18:25:46 +00:00
Alexander Lyons Harkness
a9c8ad9ce2
Fix typo in #4095 .
...
The build was being broken.
2017-12-21 16:01:24 +00:00
Mattes D
01322cb1b0
NetworkLookup: Added "virtual" keyword to overridden dtor. ( #4100 )
2017-12-21 13:31:20 +00:00
peterbell10
e0ff5f5639
cInventory: Add listener to shield slot. ( #4095 )
2017-12-21 11:55:23 +00:00
bibo38
532731e6f4
Fixed Clang 5.0 compile errors ( #4085 )
...
* Fixed Clang 5.0 compile errors
* Fixed wrong comment
* Only disable warnings in Clang 5 or higher
* Added a CMake condition for the Clang 5 no-zero-as-null-pointer-constant warning
* Now using the use_nullptr branch of the Cuberite specific SQLiteCpp fork
2017-12-21 11:36:58 +00:00
Fabian
0dd172b80f
Store Health as a float ( #4073 )
...
* Fix #4024
* Fix clang error
* Add comment
* Fix behaviour
* Save Health as float
* Changed m_Health to float
* Remove redundant static_cast
* Fix casts
2017-11-22 13:47:52 +00:00
peterbell10
ef091fe24b
cBlockRail: Fix assertion failure ( #4075 )
2017-11-21 21:54:21 +00:00
Bond-009
5badb9bcca
cChunkInterface GetBlock, GetBlockMeta, GetBlockTypeMeta use vectors ( #4050 )
2017-11-20 11:13:11 +00:00
peterbell10
bf5e6874fe
cItemHandler: Update max stack size of old doors. ( #4072 )
2017-11-20 11:04:17 +00:00
peterbell10
c54bf40ef9
cWorld Threads: Seperate initialization and thread start.
...
Prevents nullptr dereferences before Start has been called.
2017-10-21 19:33:22 +02:00
peterbell10
1537ebed6f
cWorld: Move Initialization from Start to the constructor.
...
Start now does nothing more than launch the world's threads.
2017-10-21 19:33:22 +02:00
peterbell10
0bacda3269
Implement horse inventory ( #4053 )
...
* Implement horse inventory
* Fix sign conversions
* Add API doc for ItemCategory::IsHorseArmor
* Improve HandleOpenHorseInventory comment and style fixes.
2017-10-21 17:56:09 +01:00
Bond-009
e585595ae6
Fixed some small passive mob issues ( #4057 )
...
* Chickens can be bred with seeds, beetroot seeds, melon seeds, or pumpkin seeds Ref: https://minecraft.gamepedia.com/Chicken#Baby_chicken
* Baby passive mobs don't drop items
* Fixed the size of some mobs
2017-10-21 17:55:46 +01:00
peterbell10
744cdb726d
Fix minecart deceleration ( #4059 )
2017-10-21 17:53:24 +01:00
Bond-009
05e7be7f73
Fixed FreeBSD build ( #4061 )
2017-10-16 18:39:53 +01:00
Bond-009
76a0971279
Fixed 2 small warnings ( #4055 )
2017-10-02 20:59:25 +01:00
peterbell10
8866a28cf8
Fix explosion interaction with block entities. ( #4052 )
...
* WriteBlockArea: Fix erasing of block entities.
* cChunkMap::DoExplosionAt destroys block entities
2017-09-27 22:22:15 +01:00
peterbell10
4b14a5b4c1
cPressurePlateHandler: Fix uninitialised variables. ( #4047 )
2017-09-25 21:41:11 +01:00
Bond-009
10c5c1227e
BroadcastBlockBreakAnimation and BroadcastBlockEntity use vectors ( #4038 )
2017-09-25 18:17:45 +02:00
peterbell10
463fa48aec
cBlockArea: Fix performance regression ( #4045 )
2017-09-23 17:47:46 +01:00
peterbell10
e883aa828c
Add support for release 1.12.2 ( #4041 )
2017-09-21 14:12:43 +01:00
peterbell10
15fd4ef829
Only allow snow to be placed where valid. Fixes #2920 .
2017-09-21 13:01:00 +01:00
peterbell10
ab4f0df5b9
Only allow rails to be placed where valid.
...
Fixes #3507 .
2017-09-21 13:01:00 +01:00
Lukas Pioch
da11d94933
Added working directory for x64 builds ( #4037 )
2017-09-20 19:01:46 +01:00
Mattes D
e0d1f791a3
Fixed webadmin certificate reading.
2017-09-19 19:44:30 +02:00
Lane Kolbly
30c8470a52
Changed BroadcastSoundEffect, SendSoundEffect, and CastThunderbolt parameters to vectors ( #3959 )
...
* Made BroadcastSoundEffect take vector parameters.
* Added docs for new vectored methods
* Removed old code
* Fixed lua warnings
* Made old BroadcastSoundEffect not an override.
* m_Block to m_BlockPos, used Vector3d constructor where prettier.
* a_Block to a_BlockPos
* Changed thunderbolt a_Block to a_BlockPos
2017-09-19 15:12:54 +01:00
peterbell10
8835bf344d
cRoot: Make PollPeriod representation 32 bit ( #4030 )
2017-09-19 14:14:44 +01:00
Bond-009
491e91dc88
Leaves now drop with the correct meta when broken by a pickaxe with silk touch ( #4034 )
2017-09-19 09:44:21 +01:00
Lukas Pioch
c5f590d460
Removed UTF-8 BOM ( #4033 )
2017-09-19 10:34:08 +02:00
peterbell10
b5fa96f4f8
cFinishGenPreSimulator: Preserve sand meta ( #4025 )
...
Fixes #1516 .
2017-09-18 08:45:32 +01:00
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
Bond-009
ad3192d696
Award player an achievement when creating a beacon ( #3930 )
2017-08-21 15:00:49 +01:00
Bond-009
d510c977f6
Snow only generates on blocks with a block light level of 10 or less ( #3931 )
2017-08-21 15:13:18 +02:00
Bond-009
ce87b73127
Fixed build for older clang versions ( #3935 )
2017-08-21 10:40:05 +01:00
Bond-009
a262bacc9d
Give arthropods slowness IV when hit with bane of arthropods ( #3932 )
2017-08-21 10:51:26 +02:00
Pablo Beltrán
b18f6637b6
Fully implemented leashes ( #3798 )
2017-08-21 10:46:41 +02:00
Lane Kolbly
f81e6f6b6d
Changed MoveToWorld to ScheduleMoveToWorld in cPlayer::Respawn ( #3922 )
...
* Changed MoveToWorld to ScheduleMoveToWorld
- Removed empty line
2017-08-18 11:40:35 +01:00
Tiger Wang
0e10464ac5
Merge pull request #3921 from lkolbly/removeAssert
...
- Removed incorrect assert in SendRespawn
2017-08-18 11:36:01 +01:00
Tiger Wang
e7a5e29522
Merge pull request #3918 from peterbell10/GetBlockEntity
...
cChunk: Don't assume GetBlockEntity coords are valid
2017-08-18 11:33:46 +01:00
peterbell10
b8dda388e0
Represent cItem::m_Lore as an AStringVector ( #3882 )
...
* Replace cItem::m_Lore with AStringVector
* Reword deprecation warning
* Fix lua bindings
2017-08-18 11:29:54 +01:00
Lane Kolbly
8f1ddfa6c3
Changed type of FastRandom in monster drop calculation. ( #3920 )
...
* Fixed type of FastRandom in monster drop calculation.
* Distribute dropped items into stacks.
* Moved while loop outside if statement.
2017-08-18 11:23:08 +01:00
peterbell10
5e81024f89
cBeaconEntity fix no world crash
2017-08-18 11:22:22 +01:00
Tiger Wang
72d7027861
Merge pull request #3489 from cuberite/EntityOwnership
...
* Changed entity ownership model to use smart pointers
2017-08-18 11:17:56 +01:00
Bond-009
05045860c2
Sitting cats block enderchests from opening ( #3906 )
2017-08-17 16:29:43 +02:00
Lane Kolbly
1ec85a2b2c
Add cLuaWindow OnClicked Callback ( #3901 )
2017-08-17 16:27:43 +02:00
Bond-009
238f5bb338
Add support for 1.12.1 ( #3908 )
2017-08-17 16:25:53 +02:00
Lane Kolbly
7bdbfad1bb
Changed int parameters to vector parameters in cCuboid and simulators ( #3874 )
2017-08-17 15:48:38 +02:00
Lane Kolbly
4dd2af27e0
Added knockback to arrows, fixed knockback enchantment handling ( #3900 )
...
* Added knockback for arrows, fixed knockback enchantment handling.
2017-08-13 12:40:23 +01:00
Tiger Wang
fdd4b6e7c4
Merge pull request #3897 from peterbell10/PlaceSound
...
cBlockInfo: Remove/deprecate place sound
2017-08-13 12:37:37 +01:00
Lane Kolbly
62bc951474
Shortened DoIntervalsIntersect to two comparisons, made inline. ( #3883 )
...
* Shortened DoIntervalsIntersect to two comparisons, made inline.
* Applied DeMorgan's
* a_Max1 => a_Max2
* Moved DoIntervalsIntersect definition into header file.
* Moved DoesIntersect into header.
* Unindented line
2017-08-13 12:36:22 +01:00
Lukas Pioch
743a50014a
Replaced includes with forward declarations
2017-08-13 12:31:10 +01:00
Lane Kolbly
9cc48ac2a3
Removed incorrect assert in cClientHandle::SendRespawn.
2017-08-11 11:00:21 -05:00
peterbell10
0979cd8f17
cChunk: Don't assume GetBlockEntity coords are valid
2017-08-10 19:06:37 +01:00
Tiger Wang
4ef47aed62
Changed entity ownership model to use smart pointers
2017-08-07 19:24:16 +01:00
peterbell10
9472380494
cBlockInfo: Deprecate place sound
2017-08-07 09:31:36 +01:00
Lukas Pioch
07f25253a2
Removed unneeded includes ( #3902 )
2017-08-06 20:57:44 +01:00
Dan Čermák
028ed77ca9
Fixed compilation for clang 4.0 & gcc 7.1
2017-08-04 11:17:39 +02:00
peterbell10
79eb4c3aed
Implement invisibility effect
2017-08-03 15:34:38 +02:00
peterbell10
759618b035
Remove double includes part 2 ( #3890 )
2017-08-03 15:34:19 +02:00
Lukas Pioch
0397535fa7
Removed unused forward declarations ( #3888 )
2017-08-03 15:10:29 +02:00
peterbell10
2ef8a62339
Fix BSD build
2017-08-02 22:51:16 +02:00
Lukas Pioch
4691bc5a29
Removed double includes ( #3885 )
2017-08-02 19:57:20 +01:00
Lane Kolbly
dc49092ae5
Handle Teleport Confirmation Packet ( #3884 )
...
+ Added code to drop incoming client position packets until the most recent teleport was confirmed.
2017-08-02 15:46:29 +01:00
peterbell10
0d0323608d
cBlockHandler: take player by ref
2017-08-01 08:21:20 +02:00
peterbell10
8eb5672920
cWorld::SendBlockTo take player by ref
2017-08-01 08:21:20 +02:00
Lane Kolbly
10d42a2452
Consolidated food effects into EatItem, added all fish type FoodInfos. ( #3875 )
...
* Consolidated food effects into EatItem, added all fish types.
* Changed type of NumFishInfos to satisfy clang.
* Removed unused call for a_Item in EatItem
2017-07-30 18:53:21 +01:00
peterbell10
8fbb9dbf53
cParsedNBT: Improved error reporting ( #3876 )
...
* cParsedNBT: Improved error reporting
* Fix typos
2017-07-30 17:55:19 +01:00
Lane Kolbly
790e15f2e6
Added anvil enchantment handling. ( #3857 )
...
+ Added anvil enchantment handling.
2017-07-28 18:00:20 +01:00
Lane Kolbly
5402b214b3
Check for intersection between placed blocks and entities. ( #3850 )
...
* Check for intersection between placed blocks and entities.
+ Implemented GetPlacementCollisionBox, to permit custom placement collision boxes for blocks.
* Factored block-entity placement checking into another function in cPlayer.
- Removed vector min/max functions
* Use GetWorld to get the world in DoesPlacingBlocksIntersectEntity.
+ Added block height checks, allow different cEntity subclasses to decide whether they will prevent block placement.
2017-07-28 17:59:21 +01:00
Tiger Wang
eb4432bb62
Tentative fix for player-limit race condition ( #3862 )
...
* Attempts to fix #2257
Derived from d233e9843148313c71fbaba96ccff660e47b07b1
* Changed player count type to int
* Clarified certain actions
2017-07-28 17:54:40 +01:00
peterbell10
e0a44fb3bc
Handle incomplete packets in cProtocolRecognizer
2017-07-26 11:04:08 +01:00
Lane Kolbly
87af95b67c
Updated armor cover calculation. ( #3858 )
...
* Updated armor damage calculation.
+ Added lua docs, added casts from float to int.
* Changed verbage in docstring and comment.
2017-07-23 10:46:38 +01:00
Bond-009
6e8ec2fe34
Creepers explode when burned by flint and steel ( #3865 )
...
Fixed an issue where creepers didn't explode when they were burned with flint and steel
2017-07-22 22:05:09 +01:00
Mattes D
64561175ab
BlockArea: Added the GetBounds function.
2017-07-22 19:57:25 +02:00
Lane Kolbly
6a261e451d
Fixed check to see if block entity is in merge source.
2017-07-21 21:10:39 -05:00
Tiger Wang
6e749dacd3
Increment fire block iterator
...
* Resolves potential deadlock
2017-07-21 14:42:38 +01:00
peterbell10
7c687b77ee
Remove comment
2017-07-21 14:41:51 +01:00
peterbell10
502b726a7b
Simplify SizeCheck
2017-07-21 14:41:51 +01:00
peterbell10
55a5ffdf5c
Remove stricmp macro in favour of NoCaseCompare
2017-07-21 14:41:51 +01:00
peterbell10
5a5297974b
Remove alignment macros
2017-07-21 14:41:51 +01:00
peterbell10
a56cfd1f42
Remove smart pointer macros
2017-07-21 14:41:51 +01:00
Mattes D
895987a111
FastRandom: Remove discrepancy between arg and return value type. ( #3846 )
2017-07-21 12:06:21 +02:00
Bond-009
f9b56dd859
Break the cactus block when it grows next to a block. ( #3851 )
2017-07-18 15:14:52 +02:00
Lane Kolbly
93e1690253
Made cBlockHandler OnPlacedByPlayer call OnPlaced, made BlockRailHandler use NeighborChanged instead of OnNeighborChanged.
2017-07-18 15:12:55 +02:00
peterbell10
60dfaa0967
Allocate redstone component handlers upfront
2017-07-17 21:40:43 +02:00
Mattes D
167c4bf2e6
Simulators: Added area-based wakeup.
2017-07-16 10:01:19 +02:00
peterbell10
41d016cf5b
Handle middle mouse drag ( #3847 )
2017-07-13 15:43:48 +02:00
Bond-009
6a19841121
Added basic ocelot behavior ( #3829 )
2017-07-12 12:42:02 +02:00
Lane Kolbly
b61898c30c
Lua plugin cColor ( #3833 )
2017-07-12 12:30:43 +02:00
Lane Kolbly
793acd267f
Changing pickup lifetime and combining semantics, making these adjustable in the lua api. ( #3843 )
2017-07-12 12:13:27 +02:00
Lane Kolbly
647d9082b8
If entity is a player, send relmove packets.
2017-07-12 12:12:56 +02:00
peterbell10
d6ee1caf4c
Remove double delete of PrepareChunk lua callback ( #3844 )
2017-07-12 11:56:01 +02:00
Lukas Pioch
e38a2a1e8c
Send player message when clicking on advancements or green book. ( #3845 )
2017-07-12 10:11:29 +02:00
Lane Kolbly
67e4bbde0c
Made cBlockArea:cChunkReader AreaBounds inclusive on both sides. ( #3842 )
2017-07-10 11:10:06 +02:00
Pablo Beltrán
7adec790e6
Sound effect horse rejects player when taming
2017-07-10 05:47:04 +02:00
Lane Kolbly
a561886bf3
Implemented draggingitem API.
2017-07-10 05:46:04 +02:00
peterbell10
b2634bade0
cItemGrid bounds check ( #3837 )
2017-07-09 22:54:56 +02:00
peterbell10
bbf5bec817
BigFlower fixes ( #3826 )
...
* BigFlowers fixes
* Correct upper part meta
* Documented parameters to DoesIgnoreBuildCollision
2017-07-07 16:37:53 +02:00
Lukas Pioch
885d828712
Added bed entity ( #3823 )
...
* Added bed entity
* Export cBedEntity to lua
* Set color of bed through item damage value
* Added bed entity to APIDoc
* NBT: Added loading and saving
* Crafting recipes for the colored beds
2017-07-07 09:31:45 +02:00
Lane Kolbly
10a3bd9d12
Changed Lua plugins to only execute files ending in .lua ( #3831 )
2017-07-07 08:42:35 +02:00
peterbell10
d838ef7ba4
cBlockInfo static initialisation ( #3832 )
2017-07-03 18:34:27 +02:00
Pablo Beltrán
7606448b05
Fixes double right click on entities till off-hand actions gets implemented ( #3821 )
2017-07-03 09:37:38 +02:00
Bond_009
070cb0d21f
You can't use beds when there are hostile mobs nearby
2017-07-02 17:10:57 +02:00
Lane Kolbly
7c7f85117b
Added armor durability reduction when player is attacked.
2017-07-02 07:45:49 +02:00
Bond-009
b1628846d9
Fix horse taming ( #3820 )
...
* Horses rear when untamed and right-clicked with an item
2017-07-02 07:40:59 +02:00
Bond-009
cf22bc4e60
Players in creative and spectator aren't affected by cacti ( #3824 )
2017-07-02 07:39:19 +02:00
Bond_009
445abe001a
When right-clicking on a passive mob with 'his' spawn egg spawn a baby
2017-07-02 07:38:41 +02:00
Bond-009
a944ac3b06
Endermen take damage from rain
2017-06-30 23:53:23 +02:00
Bond-009
0c0bfe54bb
Spider should attack only when the light level is lower than 11 ( #3815 )
2017-06-30 10:48:06 +02:00
Bond-009
7fd3899796
Added 1.12 blocks ( #3760 )
2017-06-30 10:46:58 +02:00
peterbell10
33527067ed
Update tolua and export EffectID
2017-06-29 18:58:48 +02:00
Mattes D
399ea0bf1d
cNetwork bindings: Use ApiParamError and CheckParam(Static)Self.
2017-06-26 10:52:59 +02:00
Mattes D
e05ca49459
Moved ApiParamError into cLuaState.
2017-06-26 10:52:59 +02:00
Mattes D
f6bab71d05
Fixed memory leak in cClientHandle. ( #3794 )
2017-06-26 09:11:30 +02:00
Lukas Pioch
9c25520b69
Corrected APIDoc for cBlockArea and exported missing functions ( #3808 )
2017-06-26 09:02:06 +02:00
Lukas Pioch
beda050341
Added check if datatype is present in block area ( #3811 )
2017-06-26 08:49:52 +02:00
peterbell10
bd025e2bdb
Fix cBlockArea assertion and mis-indexing ( #3810 )
2017-06-25 11:07:16 +02:00
peterbell10
f0f001c10d
Fix cBlockArea null deref
2017-06-24 23:27:26 +02:00
Mattes D
fe42538349
cBlockArea supports block entities. ( #3795 )
2017-06-24 11:58:06 +02:00
Lukas Pioch
cc3a67b9df
Load entities from old and new names
2017-06-23 18:32:51 +02:00
Bond-009
8484d05d65
Pressure plates can be placed on fences and hoppers ( #3796 )
2017-06-22 21:11:46 +02:00
Mattes D
ea6660721b
NetworkSingleton: Fixed a throw warning in VS2017. ( #3792 )
...
Also fixed the misleading name.
2017-06-22 21:10:41 +02:00
Bond-009
0e1649a0f1
Fix shears (and vines)
...
* Shears now lose durability when breaking any block
* Leaves don't drop 2 leaves anymore when broken by shears
* Removed the chance to drop saplings or apples when leaves are broken by shears
* Vines can't be attached to ender chests, pistons and redstone repeaters
2017-06-21 08:09:03 +02:00
Mattes D
99b4c2bd09
Anvil storage: load block entities from both old and new name-styles. ( #3784 )
...
* WSSAnvil: Load the sign text from JSON, too.
2017-06-21 07:47:26 +02:00
peterbell10
fbe17a4e8a
Lighting Optimisations ( #3785 )
2017-06-20 09:28:33 +02:00
Bond-009
3d56ad01aa
Let water vaporise in the Nether by default
2017-06-20 09:28:00 +02:00
peterbell10
9201c7be7a
Generated tall flowers have flower type meta in both blocks
2017-06-19 20:18:44 +02:00
Mattes D
b0f3336533
MSVC Debug builds: Added operator new redirection to provide more info. ( #3781 )
2017-06-19 11:09:16 +02:00
Mattes D
801084c38c
LuaState: Fixed VS2017's throw warnings for destructors. ( #3779 )
2017-06-19 11:08:08 +02:00
Mattes D
7ac3b0fa0b
Removed the LeakFinder for Windows. ( #3777 )
2017-06-19 11:05:19 +02:00
Mattes D
bb020bbe78
NetworkSingleton: Fixed an object leak upon termination.
2017-06-17 07:14:20 +02:00
Mattes D
0f21bda12c
Fixed missing "override"
2017-06-16 16:20:33 +02:00
Mattes D
0dd1cd750b
BlockEntities: Support cloning self.
2017-06-16 14:11:28 +02:00
peterbell10
705132011a
Change error no data to no name
2017-06-16 14:06:27 +02:00
Mattes D
e4b60b6a26
Protocol: Do not assume anything about unknown packets. ( #3647 )
2017-06-16 14:03:13 +02:00
peterbell10
f4de38af80
Remove sign conversion
2017-06-16 07:07:02 +02:00
Mattes D
885d80ccdb
Entity: Replaced a mutexed counter with a std::atomic. ( #3773 )
2017-06-15 16:06:50 +01:00
peterbell10
035ecdc9e2
Replace evdns with getaddrinfo and getnameinfo ( #3766 )
2017-06-15 11:03:49 +02:00
mathiascode
7fa5725f3b
Added missing 1.12 packet changes
2017-06-14 21:57:59 +02:00
Mattes D
d61d6b5b96
Protocol 1.12: Fixed missing override specifier
2017-06-14 15:27:05 +02:00
dbhicks
8d5f01530d
Double tall grass drops seeds when broken by water ( #3763 )
2017-06-14 14:23:33 +02:00
Lukas Pioch
5a228fbc16
Added support for protocol 1.12 ( #3757 )
2017-06-14 11:22:51 +02:00
peterbell10
4dc72fe00b
Remove redundant heighmap code
2017-06-14 11:15:44 +02:00
peterbell10
360d8eade0
FastRandom rewrite ( #3754 )
2017-06-13 21:35:30 +02:00
Mattes D
9c08b4524c
Fix assert when clicking blocks at the top of the world.
2017-06-09 13:44:06 +02:00
Mattes D
c82facab1b
Fixed skylight going down through transparent blocks.
2017-06-09 12:17:27 +02:00
Lukas Pioch
4e0ae63ec2
Added WriteBlockEntity to 1.10 and 1.11 and fixed mob spawner
2017-06-09 12:16:44 +02:00
Mattes D
3c4e443ddc
Fixed handling Lua errors in nested callbacks ( #3755 )
2017-06-09 12:16:31 +02:00
Lukas Pioch
7922e6addb
Fixes problems with windows:
...
- Changed cPlayer:OpenWindow to accept a ref, tolua adds a nil check
- Close open lua window in destructor, to avoid dangling pointers
2017-06-05 15:14:23 +02:00
Pablo Beltrán
2b699dc749
Avoid pickups to sink into blocks and disappear ( #3739 )
...
* Avoid pickups to sink into blocks and disappear
2017-06-04 06:35:02 +02:00
worktycho
832298e7aa
Add command line argument for disabling the logfile
2017-06-03 21:40:35 +02:00
peterbell10
36be4a89f8
Fixed double chests ( #3741 )
...
Normal and trapped chests next to each other don't open a double chest window.
Slot changes in the secondary chest are broadcast.
Placing a chest in +x of another updates the original chest's metadata.
2017-06-03 21:17:53 +02:00
Pablo Beltrán
8f1e55611e
Fixed exp orb ( #3744 )
...
Fixes #3740
Fixes #2667
2017-06-03 21:10:48 +02:00
mathiascode
5f0d2b902e
New icon colors ( #3675 )
...
* New icon colors
* New Webadmin favicon
2017-06-03 18:49:02 +02:00
Mattes D
bc6e2100c1
LineBlockTracer: Fixed a math rounding error failure.
2017-05-28 20:59:37 +02:00
Mattes D
0551d78dff
Fixed tracer usage in Entity physics handling. ( #3720 )
2017-05-28 20:56:17 +02:00
peterbell10
ad4172d21c
Minor cBrewingRecipes cleanup ( #3731 )
2017-05-28 20:08:23 +02:00
peterbell10
f261a03c14
Double chest window fix ( #3735 )
2017-05-28 20:07:38 +02:00
mathiascode
de0c86a690
Broadcast mob head changes
2017-05-28 19:37:47 +02:00
Heiko Hund
a0341d561a
Add rank prefix and suffix to player name in chat ( #3730 )
...
Fixes issue #1721
2017-05-27 02:15:56 +01:00
Lukas Pioch
73a3c4e3be
Exported boat
...
- NBT: Added saving / loading of material
- Added the material in the item handler of the boat
- Drop the correct boat if destroyed
- APIDoc: Added desc and functions
2017-05-24 19:02:18 +02:00
Pablo Beltrán
84bdba345d
Off-hand/shield slot functional, save and load slot, bow + arrow functional ( #3725 )
...
Fixes #3714 .
2017-05-24 08:09:58 +02:00
peterbell10
8a890cf945
Store cChunk::m_BlockEntities in a map ( #3717 )
...
* Store block entities in a map from block index
* Cleanup ForEachBlockEntity
* Cleanup DoWithBlockEntityAt
2017-05-22 22:27:55 +02:00
Lukas Pioch
fc49ace897
Spawn eggs works again
2017-05-22 18:10:12 +02:00
Lukas Pioch
e35ac1bfb9
Clang 5.0 fixes
...
- Added override keyword
- Removed inherited member variables
2017-05-21 12:19:06 +02:00
Pablo Beltrán
758622336e
Fixed invisible chests ( #3722 )
...
Fixes #3479 , #3403 , #3696
2017-05-21 11:48:33 +02:00
Pablo Beltrán
2359611c57
Don't destroy monster when last target type is a player ( #3721 )
...
In current Cuberite version if you are pursued by monsters you just have to disconnect and connect again to get rid of them. If no other player is in your chunk monsters will get destroyed.
2017-05-21 10:29:06 +02:00
mathiascode
8cf48f7682
Allow enabling/disabling of block change limit
2017-05-19 19:51:03 +02:00
mathiascode
b02886a901
Use FastWriter instead of StyledWriter
2017-05-16 21:17:33 +02:00
peterbell10
f0a16e6d28
VarInt metadata written correctly for boats ( #3709 )
...
* Varint metadata written correctly for boats
2017-05-15 18:04:53 +02:00
Mattes D
2c3c1f1527
Tracer replacement ( #3704 )
...
* Replaced cTracer usage with cLineBlockTracer.
* Exported new cLineBlockTracer utility functions to Lua API.
2017-05-11 13:34:36 +01:00
Lukas Pioch
7c4576a025
Exported cFallingBlock and cExpOrb ( #3700 )
2017-05-09 14:24:41 +02:00
Mattes D
3d5ee3e5c7
Fixed Lua bindings for const objects.
2017-05-09 14:10:53 +02:00
Mattes D
ed1b78bcb6
BlockHandlers: vertical alignment.
2017-05-09 11:13:44 +02:00
Mattes D
473a4ae226
BlockCrops: Fixed RipeMeta off-by-one error properly.
...
Ref.: #3691
2017-05-09 11:11:06 +02:00
Lukas Pioch
5580d558a5
Added missing checks for Initialize function and updated APIDoc
2017-05-08 06:31:45 +02:00
Lukas Pioch
41bfb22834
Corrected brewingstand and added support for fuel
2017-05-08 06:30:54 +02:00
dbhicks
dffbf0b510
Adjusted RipeMeta for off by one error ( #3691 )
2017-05-06 02:41:01 +01:00
josh-parris
05c3e8bed8
Prevent infinite loop when logging fails ( #3693 )
...
Prevent infinite loop when logging fails
2017-05-05 13:02:54 +01:00
Mattes D
0de705eb99
Removed binary ToLua++ from build.
...
A local Lua executable is used instead.
2017-05-04 17:38:05 +02:00
Mattes D
187abe3f5e
Gen: Moved PiecePool into a separate file.
...
Also rewritten the PieceGenerator to use std::unique_ptr.
2017-05-04 09:49:30 +02:00
Lukas Pioch
74e6f41958
Don't return const ref params and removed functions from
...
ManualBindings.cpp
2017-05-01 11:10:21 +02:00
Bond-009
2a129b01aa
Fix fence gates ( #3683 )
...
This commit fixes an issue where a pressureplate would only open oak fence gates
2017-04-29 00:15:47 +01:00
Lukas Pioch
36dea62662
Replace double grass and large fern with placed block
2017-04-06 11:14:27 +02:00
Lukas Pioch
6c420ce557
API: Removed function GetChar ( #3664 )
2017-04-05 22:31:42 +01:00
Lukas Pioch
fb20517435
APIDoc: Documented missing functions and variables. ( #3634 )
2017-04-04 07:53:14 +02:00
Marvin Kopf
dbdcb85346
Added a nullptr check to cEntity::IsA ( #3659 )
...
Fixes #3603
2017-04-01 23:15:08 +02:00
Marvin Kopf
974c054bc9
fix endless loop in StringReplace ( #3658 )
...
* Fixed a recursive loop where the replacement would again be searched for the needle.
* Skip if the needle is empty. Find(needle) always matches if needle is empty.
2017-04-01 12:57:51 +01:00
Lukas Pioch
fd6faedd55
NBT: Corrected firework loading
2017-03-22 14:21:48 +01:00
Bond-009
9c9734282d
Fireworks can be fired from a dispenser
2017-03-22 11:35:14 +01:00
Bond-009
76c39dad0f
Added blocks that can be washed away by water ( #3637 )
2017-03-21 09:47:03 +01:00
Bond-009
e8de42fcbb
Return bowl when eating beetroot soup
2017-03-20 21:21:02 +01:00
Bond-009
ef85c2e686
Deadbushes drop sticks
2017-03-19 21:57:41 +01:00
mathiascode
4656be19b7
Removed development plugins from settings file
2017-03-19 21:54:01 +01:00
Lukas Pioch
74ee255cae
Detach player from entity / object if he is dead
2017-03-19 09:48:15 +01:00
Lukas Pioch
043a82344f
Boat spawned, remove it from player's hand
2017-03-17 19:33:18 +01:00
johnsoch
f269565e73
Fixed looping when unable to bind port ( #3621 )
...
Fixes #3593
2017-03-17 13:44:28 +01:00
Lukas Pioch
4b1bc1cc5c
Removed unnecessary check for lower and upper folder
2017-03-16 17:50:19 +01:00
willi123yao
eb7d684aad
Allow mobs to walk through dead_bush ( #3623 )
...
Fixes #3618 .
2017-03-16 08:54:14 +01:00
Pokechu22
19094e7aa6
Add 1.11 entity metadata ( #3601 )
2017-03-03 10:59:17 +01:00
Bond-009
2a630e8421
Fixed which blocks can be harvested with what type of pickaxe ( #3586 )
2017-02-26 12:13:53 +01:00
mathiascode
65ee749013
Corrected particles ( #3577 )
...
Fixes wrong IDs causing particles to become unknown to the server.
2017-02-26 01:31:08 +01:00
Bond-009
6fe863c2ad
Fixed cactus detection and zombie pigman sword ( #3584 )
...
Fixes for issues #902 and #2917
2017-02-25 19:14:08 +01:00
Mattes D
7c17f77c84
BlockCrops: Fixed comments and reformatted control flow. ( #3576 )
2017-02-25 10:54:44 +01:00
mathiascode
330d66097f
Removed a few default plugins ( #3580 )
2017-02-24 10:11:38 +01:00
Bond-009
ca3aa4ca06
Changed world_end to world_the_end #3531 ( #3538 )
2017-02-24 10:02:16 +01:00
Jacob
f59bd02e0d
Finishers now update the heightmap for tall flowers. ( #3545 )
2017-02-24 09:55:25 +01:00
Gareth Nelson
1c31cb7eec
Add support for alternate config file locations ( #3578 )
2017-02-22 14:10:32 +01:00
mathiascode
c89b20695d
Add 1.11.1/1.11.2 protocol ( #3575 )
2017-02-21 16:11:28 +01:00
Alex
9cb1ad546f
Changed fish launching mechanism ( #3520 )
...
Fish and other fishing loot now correctly fly towards played when reeled in.
2017-02-20 10:03:19 +01:00
Bond-009
750e2c1944
Dead bushes will generate in mega mega taigas ( #3571 )
2017-02-15 20:55:32 +01:00
mathiascode
dae2adde65
Updated sounds and effect IDs ( #3422 )
2017-02-15 06:05:24 +01:00
mathiascode
4311f4a658
Added some blocks and items ( #3503 )
2017-02-14 11:13:55 +01:00
Mattes D
72e401313b
StringUtils: Dropped an unneeded copy in lower-/upper-casing. ( #3512 )
2017-02-13 19:56:34 +01:00
Mattes D
585571d78c
PieceGenerator: Added rotation-aware vertical connectors.
2017-02-13 16:50:35 +01:00
Lawton Mizell
043aa4e574
Made survival the default gamemode ( #3563 )
2017-02-07 16:00:30 +01:00
Mattes D
cbff1378fd
Fixed bindings for cBlockArea:Read and Write. ( #3568 )
...
The original bindings accepted nil as the World param, causing a crash.
2017-02-05 16:00:38 +01:00
Altenius
0896b3b079
Changed big flowers so they don't need air above them.
2017-01-28 13:55:38 +01:00
Altenius
2d376304c2
Changed big flowers so they can only be placed on dirt
2017-01-28 13:55:38 +01:00
Mattes D
6b0c795655
Fixed ClientHandle:GetProtocolVersion returning wrong number.
2017-01-28 10:31:04 +01:00
Mattes D
97980d1103
World: Remember the age persistently. ( #3556 )
2017-01-19 22:45:23 +01:00
Mattes D
dfa8f278ea
World: Removed LineBlockTracer test code. ( #3555 )
...
The test for LineBlockTracer is already in the Debuggers plugin (/spidey and testtracer commands).
2017-01-19 21:06:42 +01:00
Jacob
0f687c7182
Fixed placing of double tall flowers and an inconsistency with vanilla ( #3541 )
2017-01-19 17:21:05 +01:00
Mattes D
a4955dfda3
Removed asserts about chunk queued.
...
The assumption is not needed and was invalid under a stress-test.
2017-01-19 16:25:07 +01:00
Mattes D
dfb5722fb1
WebAdmin: Renamed two neighboring locks for better clarity / style.
2017-01-18 22:44:44 +01:00
Mattes D
20205d33ba
Webadmin: Added a missing CS lock.
...
This fixes an assert when accessing the login-page and the plugin-failure pages in the webadmin.
2017-01-18 16:30:28 +01:00
Mattes D
7cc3fb098d
DeadlockDetect now lists some tracked CS's stats.
2017-01-18 09:03:05 +01:00
Mattes D
a52de8e8cd
DeadlockDetect: Provide more information for debugging.
2017-01-17 18:35:12 +01:00
Mattes D
e9547101b1
LuaState: Fixed untracking references.
...
One thread may untrack a ref while another thread was closing the LuaState, which had emptied the tracked refs.
2017-01-15 12:54:58 +01:00
Mattes D
e28cecb3d1
Moved cPrefab parser self-check to the LoadablePieces test. ( #3536 )
2017-01-15 11:40:10 +01:00
Mattes D
fb0fc07579
Fixed race conditions and forgotten clear in Lua ref tracking. ( #3530 )
...
This fixes occasional crashes on plugin reload.
2017-01-13 10:31:05 +01:00
Mattes D
f62711f97c
LuaState: Fixed race condition in ref tracking. ( #3529 )
2017-01-09 15:56:16 +01:00
sweetgiorni
6522385897
Disconnect sent flag added
...
Truthiness no longer assumed
2017-01-03 13:14:28 -08:00
Mattes D
ff1c0605db
TCPLink: call networking callbacks with LibEvent unlocked. ( #3515 )
2017-01-03 13:11:27 -08:00
Pokechu22
28cc26c54c
Track skin part and main hand preferences ( #3498 )
2017-01-03 13:11:26 -08:00
sweetgiorni
0718d82e1a
Player check
...
Checks if there are any players connected to the server before running
PlayerCallback and waiting 1 second.
2017-01-03 12:31:07 -08:00
sweetgiorni
78b6d54bf8
Api Documentation
...
Added API documentation for GetShutdownMessage.
Style fix in Root.cpp
2017-01-03 12:18:53 -08:00
sweetgiorni
25e4f15488
Custom Disconnect Message
...
Adds a m_ShutdownMessage option to the settings. When the stop command
is issued, players are kicked with said message before the server shuts
down.
2017-01-03 11:15:34 -08:00
Fabian Stein
ad476e1cf9
Fix crash after attempting to kill a non-running thread ( #3504 )
...
Fixes #3221
2017-01-01 22:43:24 +01:00
LogicParrot
d4353f8084
Disabled anticheat ( #3511 )
2017-01-01 15:47:17 +02:00
Fabian Stein
c8b1d8a37d
Fix crash after calling OnTick on removed effect ( #3501 )
2016-12-30 00:06:30 +01:00
Fabian Stein
4170ab62c0
Fixed entity effect ticking ( #3497 )
...
Fixes #3386
2016-12-29 15:21:41 +01:00
Fabian Stein
90fcf9814f
World: Add check for unknown RedstoneSimulator ( #3496 )
2016-12-29 00:41:20 +01:00
Mattes D
b3b723b453
Refactored to put URL Encoding / Decoding in a single place. ( #3491 )
2016-12-25 18:29:21 +01:00
mathiascode
efc7fed05b
Updated links and docs ( #3488 )
2016-12-19 17:08:19 +01:00
Mattes D
1a81eb0f07
CMake: Output the binary to Server folder in all configurations. ( #3486 )
2016-12-18 14:40:27 +01:00
Mattes D
c7ce9909c8
CompositeChat: Use shorter JSON format.
2016-12-16 00:07:23 +01:00
Mattes D
0e3b3be766
Initial support for the 1.11 protocol.
2016-12-16 00:07:22 +01:00
Mattes D
caa05e7935
Fixed minecart destruction using deallocated memory.
2016-12-15 14:57:48 +01:00
Tiger Wang
8c6d0b51c7
Use CMake's Android generators to crosscompile
2016-12-12 14:32:32 +00:00
Lukas Pioch
0c10704d1f
Export GetPosition and GetSpeed from cEntity as a copy instead of a pointer to lua.
2016-12-10 13:32:11 +01:00
Marvin Kopf
ff4be64edc
Powered rails can kick-start minecarts ( #3472 )
2016-12-10 09:53:35 +01:00
Mattes D
e8fb85be88
Fix meta mirror ( #3470 )
2016-12-09 12:29:04 +01:00
Marvin Kopf
d394042694
Fix comparator segfaults
...
The handler would get called for any BlockEntity, but not every BlockEntity is a BlockEntityWithItems. Downcasting with static_cast is UB on fail.
2016-12-06 19:40:00 +01:00
James Balajan
df5be57c1e
Fix floating large trees ( #3460 )
2016-12-02 10:52:29 +01:00
Mattes D
bb78bd88b5
Fixed villages generating under-water.
...
The CompoGenBiomal didn't update the heightmap properly.
2016-12-01 17:45:31 +01:00
QuImUfu
fb2eaaa847
Added code to handle signs replacing blocks
2016-12-01 15:20:03 +01:00
Mattes D
6b70574da9
Prefabs: Implemented support for ExpandFloorStrategy.
2016-11-24 15:51:53 +01:00
Mattes D
d17b21da55
cWolf: Fixed targetting a nullptr.
2016-11-22 17:51:53 +01:00
Mattes D
2aecc7d701
Fixed race conditions in cClientHandle's State.
2016-11-19 23:24:01 +01:00
Mattes D
0bffa29358
Removed ClientHandle.h dependencies from common headers.
2016-11-18 20:00:04 +01:00
Mattes D
eedc1174a5
Added NoiseSpeedTest project.
2016-11-15 07:38:00 +01:00
Mattes D
da2ea3c2ff
Added missing "override" specifier.
2016-11-13 16:22:03 +01:00
mohe2015
a990a6d133
Add Lua API export for titles. ( #3408 )
2016-11-13 16:04:18 +01:00
Mattes D
9af17f7c39
LuaState: Fixed stack balance when calling functions ( #3428 )
2016-11-10 16:46:31 +01:00
Mattes D
0870649994
Fixed TrappedChest saving. ( #3423 )
...
Vanilla uses "Chest" in NBT for trapped chests.
2016-11-07 21:16:55 +01:00
mohe2015
32b38fb264
Anticheat fastbreak ( #3411 )
...
Added block hardness checks when breaking blocks.
2016-11-06 19:30:19 +01:00
Mattes D
9eff6f390d
LuaJson: Report serialization errors instead of crashing.
2016-10-27 23:47:36 +02:00
Lukas Pioch
b088123d18
Added SendMessageRaw for sending json string.
2016-10-21 11:17:39 +02:00
mohe2015
502b5ec732
StyleCheck: Add "else has to be on a separate line" ( #3412 )
2016-10-20 19:09:18 +02:00
bibo38
cb640ffea4
Spectators added ( #2852 )
2016-10-12 14:38:45 +02:00
LogicParrot
4e33569110
Fixed cProjectileEntity double destroy bug ( #3397 )
2016-10-09 17:22:34 +02:00
LogicParrot
1e8cae6415
cChunk::SetAlwaysTicked implies cChunk::stay ( #3361 )
2016-10-09 15:46:09 +03:00
sgtbigman
7bcc3535fd
Initialize m_bIsInBed in cPlayer constructor.
...
This fixes an issue where the return value from the IsInBed method of
the cPlayer class in the lua API would not return a boolean value.
2016-10-08 00:58:43 -04:00
Mattes D
e0f158bba9
Fixed cRankManager API docs.
2016-10-06 21:24:31 +02:00
Moritz Borcherding
b268db4caa
Use cChunkDef::Height for Y coord comparison where applicable.
2016-09-27 14:32:20 +02:00
Mattes D
b1530bb28e
LuaAPI: Fixed possible crashes in HTTPRequest bindings.
2016-09-26 12:47:40 +02:00
Mattes D
e169043a84
Fixed cCompositeChat's constructor LuaAPI bindings.
...
The tolua-generated constructor would return an extra string value.
2016-09-25 12:42:05 +02:00
Mattes D
2622a8622a
APIDump: Reformatted the docs to include type information.
...
Also fixed a bit of documentation in the CPP source.
2016-09-12 23:21:15 +02:00
Mattes D
c83b051c1a
Bindings: Fixed some function signatures comments.
2016-09-08 23:06:38 +02:00
Mattes D
d3cf47cc5d
APIDump: Removed trailing whitespace.
2016-09-08 23:05:52 +02:00
bibo38
015ab00e12
Enclosed Clang pragmas with ifdef's ( #3373 )
...
Fixes a warning in MSVC
2016-09-06 23:00:28 +02:00
Mattes D
f7029eddd4
Merge branch 'master' of https://github.com/cuberite/cuberite
2016-09-05 15:05:54 +02:00
Mattes D
08110ae91b
PluginLua: Removed unneeded assignment.
...
Duplicated in SetLoadError().
2016-09-05 15:05:25 +02:00
LogicParrot
7e9e7f7911
Configurable dirty unused chunk cap to avoid RAM overuse ( #3359 )
...
Configurable dirty unused chunk cap to avoid RAM overuse
2016-09-03 18:38:29 +03:00
LogicParrot
90be4e7efd
Entities now bail out of ticks if destroyed ( #3363 )
2016-09-03 14:31:27 +03:00
LogicParrot
5625598afa
Improve cPlayer::DoMoveToWorld ( #3113 )
2016-09-03 10:39:52 +03:00
bibo38
61078e8402
Added support for the Minecraft 1.10 protocol( #210 ) ( #3348 )
...
* Added support for the Minecraft 1.10 protocol(#210 )
* Fixed the Clang compilation errors
* Fixed wrong sound pitch value and fixed SendPlayerSpawn Metadata value.
* Prefixed each enum item with the appropriate class name.
2016-09-02 20:22:06 +03:00
LogicParrot
dd8daaf63e
Remove settings.ini world migration code ( #3360 )
2016-08-29 17:27:38 +03:00
LogicParrot
c088f7ff0a
Proper respawn packets on dimension travel
2016-08-29 11:16:06 +03:00
LogicParrot
d5b3fbcadb
Fixed SendUnloadChunk bug ( #3353 )
2016-08-28 12:42:34 +03:00
ElNounch
40b929c02e
Fix breaking ice in survival not giving a water's source ( #3356 )
...
Fix #3355
2016-08-28 08:18:32 +03:00
Mattes D
d2e8643607
Fixed type-casting-related warnings.
2016-08-24 22:26:53 +02:00
Mattes D
c45bd4b968
HTTP: Fixed empty headers parsing.
2016-08-24 08:28:44 +02:00
Mattes D
5ca371bb9a
cUrlClient: Exported to Lua API.
2016-08-23 13:20:43 +02:00
Mattes D
74918ce805
cUrlClient: Refactored callbacks to use UniquePtr.
2016-08-22 23:44:37 +02:00
Mattes D
641cb063bc
cTCPLink supports TLS out of the box.
2016-08-22 23:44:36 +02:00
Mattes D
6c760ee348
UrlClient: Basic HTTP implementation.
2016-08-22 22:16:42 +02:00
Mattes D
11682d1386
cLuaState: Moved function param counting to PushCallPop() template.
...
The Push() functions can be used not only for function params, but also returns or temporaries, so it doesn't make sense to count the params there.
2016-08-22 20:10:48 +02:00
Mattes D
9493488e48
cLuaState: Added direct support for pushing a nil constant.
2016-08-22 20:09:56 +02:00
Mattes D
89c9c6fe46
cLuaState: Added support for optional params and AStringMap values.
2016-08-22 20:01:23 +02:00
ElNounch
e9d1a942d1
Delay EntityChangedWorld players' callback until Entity fully linked to world ( #3330 )
...
Otherwise, some API calls just don't seem to happen
.gitignore tweak for test executables
2016-08-22 19:43:43 +02:00
Mattes D
07c5f09ecf
WebAdmin: Report opened ports. ( #3333 )
2016-08-21 11:03:26 +02:00
Mattes D
d4aff474c2
cLuaState: Added template to push multiple values in a single call. ( #3331 )
2016-08-21 11:03:10 +02:00
LogicParrot
2f11655f00
Fix minecart destruction crash ( #3336 )
2016-08-20 23:12:48 +03:00
LogicParrot
7b3a8a535a
Fixed minecraft with chest destruction crash ( #3335 )
2016-08-20 18:19:54 +03:00
Mattes D
7549f468b3
Fixed implicit rounding warnings.
2016-08-19 14:09:10 +02:00
Mattes D
c66bd7e206
Pull the cSettingsRepositoryInterface::noID constant into cIniFile Lua API.
...
This re-adds the cIniFile.noID constant into the Lua API
2016-08-18 12:12:31 +02:00
ElNounch
787173351d
Fix cWorld:QueueTask() Lua's binding
...
Manual binding expect three parameters : self, a number, a function
And then read self and a function...
Removing the extra check for the broken second argument
2016-08-17 23:27:26 +00:00
ElNounch
d75bbdd03d
Fixing string literal catching word letter as hexa-digit
...
Was sending "\x08C""uberite" as plugin identifier, aka a String of lenght (Varint 0x8c 0x75 ->) 14988 characters but only 7 provided
Now sending "\x08""Cuberite" as plugin identifier, aka a String of lenght (Varint 0x08 ->) 8 characters, with 8 provided
Fix BungeeCord compatibility
2016-08-17 07:37:48 +00:00
ElNounch
343531bafa
Added cWorld:SetSpawn() API and Lua binding ( #3316 )
2016-08-15 10:41:32 +02:00
Mattes D
0f51f7e358
Fixed cWorld:ChunkStay bindings. ( #3319 )
...
Introduced new cLuaState::cOptionalCallback for representing optional callbacks (nil from Lua side).
Introduced new cLuaState::cStackTable class for easy access to Lua table's elements.
Fixes #3305 .
2016-08-14 16:26:31 +02:00
NiLSPACE
ab6e8b790c
Implemented OverworldClumpFlowers
2016-08-14 13:32:39 +02:00
Mattes D
dd5567a90c
IPLookup: Fixed a soft memory leak when looking up invalid IPs.
2016-08-13 21:16:21 +02:00
Mattes D
2d58789d66
Converted cLuaState::cTableRef to use cTrackedRef.
...
This makes the table-based callbacks resistent to LuaState unloads and safer to use.
2016-08-13 21:16:21 +02:00
Mattes D
6a6f0fb9e4
Revert "Added a BasicStyleCheck for virtual functions without override keyword."
...
This reverts commit a800b5bd9f
.
2016-08-13 10:22:41 +02:00
Mattes D
a800b5bd9f
Added a BasicStyleCheck for virtual functions without override keyword.
2016-08-13 10:19:55 +02:00
Alexander Harkness
baefed8061
Fix issue #3312
...
Nether brick fences now drop their item.
2016-08-12 13:55:41 +01:00
Mattes D
ec235e7120
Removed debug log message.
...
Ref.: #3308
2016-08-11 21:15:54 +02:00
Mattes D
c4578db4df
Fixed LuaAPI library registrations. ( #3308 )
...
lsqlite3 didn't clean up the stack properly.
lxp didn't register itself properly.
2016-08-11 21:04:29 +02:00
Mattes D
876496c953
Removed "." and ".." from cFile:GetFolderContents(). ( #3301 )
2016-08-07 12:50:19 +02:00
Mattes D
778b29b6f4
Fixed cFile API bindings.
2016-08-06 22:08:18 +02:00
Mattes D
f07dc71648
Commented out code_out.cpp generating.
...
Fixes #3296 .
2016-08-06 18:28:57 +02:00
Mattes D
d1dee3c909
Fixed RasPi builds of unit tests.
...
On RasPi with gcc 4.8.2, the asserts wouldn't compile when tests were enabled.
Enforced the assumption that ASSERT code is generated only in Debug builds.
2016-08-04 20:47:53 +02:00
LogicParrot
70e4214a2a
Added compile.sh folder check warnings
2016-08-04 18:51:12 +03:00
Alexander Harkness
58b29adc88
Fixed cFastRandom Test. ( #3291 )
...
This resolves #3290
2016-08-03 09:35:42 +02:00
Tiger Wang
38368f361d
Simplified cChunkMap chunk storage ( #2565 )
2016-08-03 00:56:53 +02:00
Tiger Wang
d46f7ce2c8
Redstone fixes ( #3285 )
...
* Comparators and pistons no longer update instantly
* Fixes #3168 .
* Consolidated comparator code
* As a result, fixed an issue where GetPowerLevel didn't consider block
entities behind it (only GetFrontPowerLevel did)
2016-07-31 21:54:35 +01:00
Alexander Harkness
320d1c6151
Fix tab list sometimes not updating after a player leaves. ( #3280 )
...
When a player leaves the game, their client handle has its state
changed to csDestroyed.
This should fix issue #3138
2016-07-31 12:02:21 +01:00
Alexander Harkness
62702cab48
Fixed port command line argument. ( #3287 )
2016-07-30 12:21:11 +01:00
Alexander Harkness
fb2e231f5e
Fix the error in #3270 .
2016-07-29 19:51:33 +01:00
Mattes D
a3112cdc45
Revert "Redstone fixes"
2016-07-29 07:56:50 +02:00
Tiger Wang
62090e7bed
Consolidated comparator code
...
* As a result, fixed an issue where GetPowerLevel didn't consider block
entities behind it (only GetFrontPowerLevel did)
2016-07-28 23:20:53 +01:00
Tiger Wang
04cc8aa0f5
Comparators and pistons no longer update instantly
...
* Fixes #3168 .
2016-07-28 23:20:52 +01:00
Alexander Harkness
a2a9341c24
Tab completion across worlds ( #3270 )
...
Fixes #2563 .
2016-07-21 13:00:30 +02:00
Mattes D
fc5fb03fec
CMake: Fix system Lua usage for non-5.1 versions. ( #3271 )
2016-07-21 10:46:31 +01:00
Mathias
e7b4d7a776
Dropped 1.7 support ( #3253 )
2016-07-21 09:47:42 +02:00
Alexander Harkness
36da108e5d
Fix endianness issue with ODROID-C2 Boards ( #3268 )
2016-07-20 16:34:22 +01:00
Mattes D
8eaa8613da
CMake: Remove needless minimum version specifications.
2016-07-18 22:11:42 +02:00
Mattes D
430b623223
Use system Lua, if available, to generate bindings.
...
Closes #1031 .
2016-07-18 22:11:41 +02:00
Mattes D
f8e1df2476
Updated API documentation.
2016-07-18 22:11:40 +02:00
Mattes D
28732bc339
Vector3: Removed useless NormalizeCopy overload from LuaAPI.
2016-07-18 22:11:39 +02:00
Mattes D
abf35f3976
DiffAPIDesc: Support optional params in desc.
2016-07-18 22:11:39 +02:00
Mattes D
f0c53dbad4
LuaAPI: Fixed bindings for cChunkDesc:GetBlockTypeMeta
2016-07-18 22:11:38 +02:00
Mattes D
b11605e951
Bindings: Added a script to generate a diff between APIDesc and ToLua.
...
This allows a simple copy operation from the DoxyComments into APIDesc.
2016-07-18 22:11:38 +02:00
Mattes D
984c0a2cef
Bindings: Don't generate docs for private symbols, mark static symbols.
2016-07-18 22:11:38 +02:00
Mattes D
61f76dd7a5
Bindings: Output description is valid Lua file.
2016-07-18 22:11:37 +02:00
Mattes D
751d0d0736
Bindings: Extract unexported DoxyComments.
2016-07-18 22:11:36 +02:00
Mattes D
c5714f6e4b
Bindings: Extract DoxyComments
2016-07-18 22:11:36 +02:00
Mattes D
1a30c2262b
Added a Pure-Lua implementation for bindings generation.
...
The BindingsProcessor.lua script can be opened in ZeroBraneStudio and debugged from there, it invokes the entire ToLua++ processing.
Also added docs-generation to the ToLua++ processor.
2016-07-18 22:11:35 +02:00
beeduck
db65e11d57
Fixes for boat entities ( #3265 )
...
protocol for vehicles now properly handled, protocol for boat paddles now properly handled, boats can no longer spawn underwater, boats now properly float, boat metadata now properly broadcasted.
2016-07-18 22:10:00 +02:00
Mattes D
5095a9f48b
Fixed Lua Json serializing a bool.
...
Fixes #3257 .
2016-07-10 08:16:44 +02:00
gaurav sehgal
97b9422a3e
removed cast from BlockTrapdoor.h ( #3256 )
2016-07-07 09:55:07 +02:00
Altenius
c54f9cede2
Fixed piston destroying other pistons
...
Fixes #3251
2016-07-06 08:04:58 -04:00
Altenius
510614e8ef
Fixed falling block spawning
...
Fixes #3222
2016-07-05 17:10:58 -04:00
Mattes D
a184f57eb3
Bindings: Added missing dependencies.
...
Fixes #3245
2016-07-02 00:30:22 +02:00
Mattes D
0eea5c9fc5
CircleCI: Check for missing Bindings dependencies
...
This commit fails the CircleCI tests on purpose, so that we know that the check works.
2016-07-02 00:30:22 +02:00
Lukas Pioch
2b78fd6227
Revert "Made redstone handlers static"
2016-07-01 23:23:22 +02:00
Lukas Pioch
9b96c0d18d
Close chest window if minecart is destroyed
2016-06-30 11:08:09 +02:00
Mattes D
bf88312a16
Converted cLuaState::cCallbackPtr into a UniquePtr.
2016-06-27 20:51:53 +02:00
Mattes D
7a6670d1d1
Removed dead code related to callbacks.
2016-06-27 20:51:52 +02:00
Mattes D
257c5a1a54
cPluginManager: Use a callback for command handler registration.
2016-06-27 20:51:52 +02:00
Mattes D
24853397ef
LuaState: Implemented proper locking for cCallback.
2016-06-27 20:51:51 +02:00
Mattes D
fb4c3fc4d9
Changed cLuaWindow callbacks to use cLuaState::cCallback.
2016-06-27 20:51:50 +02:00
Mattes D
a473725121
Removed the cPluginLua::cResettable class.
...
The functionality provided by that class has been superseded by cLuaState::cCallback, with better multithreading support.
2016-06-27 20:51:50 +02:00
Mattes D
b7e1a66815
Changed world tasks to use cLuaState::cCallback.
2016-06-27 20:51:49 +02:00
Mattes D
4489a89fde
Changed plugin hook registrations to use cLuaState::cCallback.
2016-06-27 20:51:49 +02:00
Mattes D
af8c96026d
Removed cWebPlugin, WebAdmin uses cLuaState::cCallback.
2016-06-27 20:51:48 +02:00
Mattes D
1f75d45222
Added cLuaState::cCallback for representing (resettable) Lua callbacks.
2016-06-27 20:51:48 +02:00
Mattes D
1462e4f70e
Self tests ( #3242 )
...
* SelfTests: Added a cEvent stress-test.
* cNetwork: Fixed startup event hang.
The original code used to hang with a ~ 1:50000 chance, because on Linux the cEvent was destroyed before its "Set()" returned.
2016-06-26 14:51:12 +01:00
Mattes D
8610083a8e
cNetwork: Fixed possible hang when terminating immediately after init.
2016-06-18 13:12:12 +02:00
Mattes D
96034810df
Flush immediately after each line when running tests.
2016-06-18 13:12:11 +02:00
Mattes D
36eefbf0f2
SelfTests: Removed the unneeded cSelfTests class.
2016-06-18 13:12:10 +02:00
Mattes D
75a81cf753
SelfTests: Moved BoundingBox test to a separate project.
2016-06-18 13:12:09 +02:00
Mattes D
a781be5456
SelfTests: Moved SchematicFileSerializer test into a separate project.
2016-06-18 13:12:08 +02:00
Mattes D
db17f585af
SelfTests: Moved cCompositeChat test to a separate project.
2016-06-18 13:12:08 +02:00
Mattes D
ab6f68b42c
SelfTests: Moved ByteBuffer test to a separate project.
2016-06-18 13:12:07 +02:00
Mattes D
3184433756
Moved NetworkInterfaceEnum test to a separate test project.
2016-06-18 13:12:06 +02:00
QUSpilPrgm
33cd7f4e75
- Add a activation flag to droppers and dispensers. Previously droppers and dispensers shot items with every block update.
...
- Fixes a range check inside cIncrementalRedstoneSimulator::Simulate
2016-06-15 10:33:49 +02:00
Mattes D
ce30e3f666
Normalized Vector3 API to use the same capitalization as all else.
2016-06-10 17:59:33 +02:00
Mattes D
c2759186c0
Bindings: Fixed cBoundingBox API.
2016-06-05 18:23:16 +02:00
Mattes D
fbe9866524
Bindings: Add a const-ptr variant to all stack getter functions
2016-06-05 17:20:50 +02:00
QUSpilPrgm
f1192c6860
Makes tall grass and large flowers bonemealable
...
Adds the bonemeal particle effect to some more places
2016-06-03 15:45:49 +02:00
QUSpilPrgm
706257f8fb
Update Dispensers and let them act more like in Vanilla
...
- Added code to make bonemeal, potions, minecarts, XP bottles and boats work inside dispensers
- Dispensers are now able to place TNT if the block is transparent but not air
- Added return value that indicates the success of pumpkin, melon, sugarcane and cactus growing functions
- Changed return value of "GrowRipePlant" so that it actually indicates if the block was able to grow
- Fixed "GrowSugarcane" and "GrowCactus" in "GrowRipePlant" so that it only grows them a single block
2016-06-03 15:45:49 +02:00
Tiger Wang
a5ec2d8ca2
Fixed fall damage
...
* Fixes #3216
2016-06-01 23:46:24 +01:00
Mattes D
5618e453e6
LuaState: Inter-plugin calls now support simple tables. ( #3220 )
2016-05-31 00:01:55 +01:00
PlasmaPower
b4d9732fe9
Added GetTeamNames to cScoreboard ( #3217 )
...
Resolves #3210
2016-05-29 19:12:18 +02:00
QUSpilPrgm
a567b36a8a
Don't let redstone blocks power adjacent blocks. ( #3214 )
...
* Don't let redstone blocks power adjacent blocks.
This fixes issue #2966
2016-05-28 21:48:36 +01:00
Tiger Wang
98cc2a9987
Made redstone handlers static
...
* Improvements to performance? Maybe. Can't hurt (he says).
2016-05-28 15:06:57 +01:00
Pokechu22
a4f327118b
1.9 / 1.9.2 / 1.9.3 / 1.9.4 protocol support ( #3135 )
...
* Semistable update to 15w31a
I'm going through snapshots in a sequential order since it should make things easier, and since protocol version history is written.
* Update to 15w34b protocol
Also, fix an issue with the Entity Equipment packet from the past version. Clients are able to connect and do stuff!
* Partially update to 15w35e
Chunk data doesn't work, but the client joins. I'm waiting to do chunk data because chunk data has an incomplete format until 15w36d.
* Add '/blk' debug command
This command lets one see what block they are looking at, and makes figuring out what's supposed to be where in a highly broken chunk possible.
* Fix CRLF normalization in CheckBasicStyle.lua
Normally, this doesn't cause an issue, but when running from cygwin, it detects the CR as whitespace and creates thousands of violations for every single line. Lua, when run on windows, will normalize automatically, but when run via cygwin, it won't.
The bug was simply that gsub was returning a replaced version, but not changing the parameter, so the replaced version was ignored.
* Update to 15w40b
This includes chunk serialization. Fully functional chunk serialization for 1.9.
I'm not completely happy with the chunk serialization as-is (correct use of palettes would be great), but cuberite also doesn't skip sending empty chunks so this performance optimization should probably come later. The creation of a full buffer is suboptimal, but it's the easiest way to implement this code.
* Write long-by-long rather than creating a buffer
This is a bit faster and should be equivalent. However, the code still doesn't look too good.
* Update to 15w41a protocol
This includes the new set passengers packet, which works off of the ridden entity, not the rider. That means, among other things, that information about the previously ridden vehicle is needed when detaching. So a new method with that info was added.
* Update to 15w45a
* 15w51b protocol
* Update to 1.9.0 protocol
Closes #3067 . There are still a few things that need to be worked out (picking up items, effects, particles, and most importantly inventory), but in general this should work. I'll make a few more changes tomorrow to get the rest of the protocol set up, along with 1.9.1/1.9.2 (which did make a few changes). Chunks, however, _are_ working, along with most other parts of the game (placing/breaking blocks).
* Fix item pickup packet not working
That was a silly mistake, but at least it was an easy one.
* 1.9.2 protocol support
* Fix version info found in server list ping
Thus, the client reports that it can connect rather than saying that the server is out of date. This required creating separate classes for 1.9.1 and 1.9.2, unfortunately.
* Fix build errors generated by clang
These didn't happen in MSVC.
* Add protocol19x.cpp and protocol19x.h to CMakeLists
* Ignore warnings in protocol19x that are ignored in protocol18x
* Document BLOCK_FACE and DIG_STATUS constants
* Fix BLOCK_FACE links and add separate section for DIG_STATUS
* Fix bat animation and object spawning
The causes of both of these are explained in #3135 , but the gist is that both were typos.
* Implement Use Item packet
This means that buckets, bows, fishing rods, and several other similar items now work when not looking at a block.
* Handle DIG_STATUS_SWAP_ITEM_IN_HAND
* Add support for spawn eggs and potions
The items are transformed from the 1.9 version to the 1.8 version when reading and transformed back when sending.
* Remove spammy potion debug logging
* Fix wolf collar color metadata
The wrong type was being used, causing several clientside issues (including the screen going black).
* Fix 1.9 chunk sending in the nether
The nether and the end don't send skylight.
* Fix clang build errors
* Fix water bottles becoming mundane potions
This happened because the can become splash potion bit got set incorrectly. Water bottles and mundane potions are only differentiated by the fact that water bottles have a metadata of 0, so setting that bit made it a mundane potion.
Also add missing break statements to the read item NBT switch, which would otherwise break items with custom names and also cause incorrect "Unimplemented NBT data when parsing!" logging.
* Copy Protocol18x as Protocol19x
Aditionally, method and class names have been swapped to clean up other diffs. This commit is only added to make the following diffs more readable; it doesn't make any other changes (beyond class names).
* Make thrown potions use the correct appearence
This was caused by potions now using metadata.
* Add missing api doc for cSplashPotionEntity::GetItem
* Fix compile error in SplashPotionEntity.cpp
* Fix fix of cSplashPotionEntity API doc
* Temporarilly disable fall damage particles
These were causing issues in 1.9 due to the changed effect ID.
* Properly send a kick packet when connecting with an invalid version
This means that the client no longer waits on the server screen with no indication whatsoever. However, right now the server list ping isn't implemented for unknown versions, so it'll only load "Old" on the ping.
I also added a GetVarIntSize method to cByteBuffer. This helps clean up part of the code here (and I think it could clean up other parts), but it may make sense for it to be moved elsewhere (or declared in a different way).
* Handle server list pings from unrecognized versions
This isn't the cleanest way of writing it (it feels odd to use ProtocolRecognizer to send packets, and the addition of m_InPingForUnrecognizedVersion feels like the wrong technique), but it works and I can't think of a better way (apart from creating a full separate protocol class to handle only the ping... which would be worse).
* Use cPacketizer for the disconnect packet
This also should fix clang build errors.
* Add 1.9.3 / 1.9.4 support
* Fix incorrect indentation in APIDesc
2016-05-14 20:12:42 +01:00
LogicParrot
b3d4e0fca6
Fixed death on teleportation or leaving Minecart ( #3181 )
2016-05-03 10:48:39 +03:00
LogicParrot
adac9cb68e
Fix crash on world travel ( #3180 )
2016-05-03 10:05:48 +03:00
LogicParrot
36754f20f8
Fix Crash on stopping the server ( #3176 )
2016-05-02 00:18:21 +03:00
LogicParrot
5265c6aaf6
Proper minecart DoSetSpeed Override ( #3174 )
...
Closes #3173 , Introduced in #3037 .
2016-04-30 13:07:35 +03:00
benf516
3b64719f55
Disable Enderman Spawn (Issue #3108 ) ( #3170 )
...
Temporarily disabled enderman spawning until the glitches can be fixed
2016-04-30 07:57:10 +03:00
LogicParrot
7c7a0a0085
ChunkLayers now stored in std::map
2016-04-24 20:02:24 +03:00
LogicParrot
00e7b65d87
Fixed some logout crashes
2016-04-24 19:09:44 +03:00
LogicParrot
b48b61eca4
Revert "ChunkLayers now stored in std::map"
2016-04-24 17:40:37 +03:00
LogicParrot
51a7465ae1
ChunkLayers now stored in std::map
2016-04-23 11:48:16 +03:00
LogicParrot
3283a9613c
ClientHandle destruction thread safety
2016-04-23 10:22:48 +03:00
LogicParrot
77bf00a599
Out of world blocks are now always considered air blocks
2016-04-23 09:54:34 +03:00
LogicParrot
7f5757eccf
Reduced unnecessary block updates
2016-04-23 00:30:00 +03:00
Woazboat
0d5a219eff
Fix minecart block collision on curved rails
2016-04-22 22:56:40 +02:00
LogicParrot
109a07fd95
Updated vector hashing bit operations
2016-04-22 17:45:45 +03:00
LogicParrot
9b60ee6e43
Auto clean bad world linkages
2016-04-19 12:06:52 +03:00
Alexander Harkness
e0e3f396f2
Proper fix for #3136 ( #3143 )
2016-04-18 23:04:13 +01:00
LogicParrot
250e50c01e
Fix issues below y = 0
2016-04-18 21:58:57 +03:00
LogicParrot
c921f47d85
Prevented snow from killing grass
2016-04-16 21:54:35 +03:00
LogicParrot
373d9f92a4
Updated cChunk::SetMeta, fixed grass growth, reduced markDirty/setMeta usage
2016-04-16 19:04:45 +03:00
Marvin Kopf
01a100dc97
Add speed limit enforcement for minecarts
2016-04-15 01:59:18 +02:00
LogicParrot
df145ca0f3
Revert "Issue3136"
2016-04-14 12:40:46 +03:00
LogicParrot
9bec04ab1e
Fix occasional freeze bug
2016-04-13 15:44:08 +03:00
Alexander Harkness
8658d4ddd6
Fixed port override code.
2016-04-12 21:40:09 +01:00
LogicParrot
c9e80cdeae
Revert "Move mob tick code to cChunk"
2016-04-06 12:16:14 +03:00
LogicParrot
5bbf033a65
Move mob tick code to cChunk
2016-04-06 09:33:43 +03:00
LogicParrot
56a855d599
Manual mob burn code
2016-04-06 09:18:33 +03:00
LogicParrot
bb0e885589
Minor improvements to player freeze
2016-04-05 21:47:49 +03:00
LogicParrot
a431b45641
Improved player freeze code
2016-04-05 14:20:50 +03:00
LogicParrot
4678dbbba3
Prevent Nether teleportation loops
2016-04-04 17:53:08 +03:00
LogicParrot
dd0ce3287f
Players never fall through unloaded chunks or end up inside solids on teleport
2016-03-31 21:35:43 +03:00
LogicParrot
13195cd207
Fix adding players to world
2016-03-31 20:40:58 +03:00
LogicParrot
e223eec1c0
Player death crashfix
2016-03-31 19:55:59 +03:00
LogicParrot
630ceed2c0
Entities are never lost
2016-03-30 14:56:47 +03:00
LogicParrot
9e796f4e62
MoveToWorld defaults to spawnpoint
2016-03-30 11:42:06 +03:00
LogicParrot
8b184e8083
Bed's world is now saved
2016-03-29 15:50:29 +03:00
Mathias
83c4cba1fd
Updated icons and logo
2016-03-28 19:42:14 +03:00
LogicParrot
a3d9bd8ba0
Fix passive mob destruction crashes
2016-03-28 18:37:43 +03:00
LogicParrot
ebd80805ca
Rewrite mob tick code
2016-03-23 10:32:09 +02:00
Mattes D
e3d34d9917
Revert "Lua callback"
2016-03-21 09:58:15 +01:00
Lukas Pioch
5fa9c47f77
Fixed misuse of comma.
2016-03-18 20:20:30 +01:00
Blitz Rakete
4e0f829729
Fixed leaping potion not giving jump boost
2016-03-18 11:54:28 +01:00
Mattes D
af200dfaae
Changed cLuaWindow callbacks to use cLuaState::cCallback.
2016-03-17 19:29:03 +01:00
Mattes D
5dfcc15d1f
Removed the cPluginLua::cResettable class.
...
The functionality provided by that class has been superseded by cLuaState::cCallback, with better multithreading support.
2016-03-17 19:29:02 +01:00
Mattes D
d0a04a7a82
Changed world tasks to use cLuaState::cCallback.
2016-03-17 19:29:02 +01:00
Mattes D
eb044e140e
Changed plugin hook registrations to use cLuaState::cCallback.
2016-03-17 19:29:01 +01:00
Mattes D
62d81eb763
Removed cWebPlugin, WebAdmin uses cLuaState::cCallback.
2016-03-17 19:29:01 +01:00
Mattes D
3aa7656823
Added cLuaState::cCallback for representing (resettable) Lua callbacks.
2016-03-17 19:29:00 +01:00
Mattes D
72467fe0d4
HTTP: Added missing HasAuth flag initialization.
2016-03-11 10:44:35 +01:00
Mattes D
6f174b99bf
HTTP: Fixed header parsing.
2016-03-03 16:20:11 +01:00
Mattes D
4bf2dd2d2b
WebAdmin: Finish HTTP responses.
2016-03-03 13:46:45 +01:00
tonibm19
27968aa958
fixed horse bug
...
horse could be "controlled" without a saddle or being tamed
2016-03-01 19:52:21 +01:00
Mattes D
6ff389f6d4
HTTP: Fixed typos and bad leftovers.
2016-03-01 16:20:00 +01:00
Mattes D
71a1fa81f0
Renamed HTTPResponse to HTTPOutgoingResponse.
2016-03-01 16:19:59 +01:00
Mattes D
52d18b4559
WebAdmin uses the new HTTP parser framework.
2016-03-01 16:19:58 +01:00
Mattes D
12d95ab047
HTTP: Fixed response parser, unified API.
2016-03-01 16:19:58 +01:00
Mattes D
52c5ce6598
Fixed HTTP parsing when in insecure mode.
...
Parsing would ignore the size of data already buffered, resulting in bad_alloc exception.
Fixes #2898 .
2016-03-01 16:19:57 +01:00
Mattes D
fea556ca1b
Renamed HTTPServer folder to HTTP.
...
It contains client code as well.
2016-03-01 16:19:56 +01:00
Mattes D
fce68dc8f3
Added HTTPResponseParser.
2016-03-01 16:19:56 +01:00
Mattes D
b92346e3cc
Moved cHTTPRequest to a separate file, renamed to cHTTPRequestParser.
2016-03-01 16:19:55 +01:00
Mattes D
2dbc54a148
Renamed the HTTP classes to indicate they're for server.
2016-03-01 16:19:55 +01:00
tonibm19
91072e1d62
Mobs no longer spawn at the top of the nether.
...
I don't really know if this is the right place for the check, but it
works.
Add bedrock check
fix typo
Using code provided by NiLSpace and fixed a horse's bug
-Horses can no longer be "controlled" if they're not tamed and saddled
removed unrelated horse code
Fixed mobs spawning above bedrock
2016-03-01 12:07:46 +01:00
Mattes D
be9f24d942
Fixed LinearUpscale's bounds checking.
2016-02-24 14:57:36 +01:00
Mattes D
4457110579
Made ProtIntGen's max size compile-time-configurable.
2016-02-24 14:57:35 +01:00
Mattes D
191140dd5e
Removed old and wrong code from Globals.h.
2016-02-24 14:57:34 +01:00
Mattes D
1540f8fb5e
Fixed includes in IntGen.
2016-02-24 14:57:33 +01:00
LogicParrot
8077c49593
Fixed removing entities from parent chunks
2016-02-22 10:30:24 +02:00
Mattes D
98d3bdebb4
LuaTCPLink: Report data received via SSL just before connection closed.
2016-02-21 10:44:34 +01:00
Marvin Kopf
f9506f6405
Add check if entity is in chunk before changing tick status
2016-02-21 00:07:58 +01:00
Alexander Harkness
e628908a7d
Fix #3030
...
Logicparrot's instructions
2016-02-20 18:42:43 +00:00
worktycho
4495dd62b9
Merge pull request #3026 from iam10K/master
...
Stop Tamed Wolf from following player when he is flying
2016-02-19 22:08:41 +00:00
Tyler Encke
f29908ce77
Stop Wolf from following player when he is flying
...
Check to make sure player is not flying before allowing wolf to move to player.
Fixed isFlying to IsFlying
2016-02-19 13:07:07 -05:00
LogicParrot
83459d0d89
Proper entity destruction in non-ticking chunks
2016-02-19 07:05:22 +02:00
Lukas Pioch
dc4ea39755
Don't remove water after ice block has been destroyed
2016-02-18 08:16:34 +01:00
Marvin Kopf
f96903c661
Fix minecart entity collision
...
* Minecarts no longer handle a collision if the entity is behind them.
* Minecarts will leave the pushing after a collision on a straight rail to the entity.
2016-02-16 17:02:05 +01:00
LogicParrot
f405c8820e
Fix unicode handling in StringUtils::TrimString
2016-02-16 16:58:27 +02:00
Tiger Wang
3c272b55ea
Merge pull request #2985 from marvinkopf/poweredrail
...
Update RedstoneSimulator to delete unused cached PowerData
2016-02-09 22:02:50 +00:00
Marvin Kopf
af514acd8c
Update RedstoneSimulator to delete unused cached PowerData
...
When a new block was placed that has a corresponding RedstoneHandler the PowerData for the position was cached, but never deleted and remained unchanged when the block got destroyed. The RedstoneSimulator now erases all cached PowerData for positions where the block doesn't have a RedstoneHandler (i.e. Air).
2016-02-09 22:19:29 +01:00
LogicParrot
3fb32a5535
Write to console when autofixing linkages
2016-02-09 10:02:36 +02:00
LogicParrot
f3e0a5f656
Add forum link to linkage error message
2016-02-09 09:30:22 +02:00
LogicParrot
91fd275c0b
Improve world linkage error message
2016-02-09 00:40:26 +02:00
LogicParrot
6e269de274
Prevent player from falling when block breaking is denied
2016-02-08 14:10:51 +02:00
LogicParrot
bcbfd3348d
Merge pull request #2990 from LogicParrot/defaultWorld
...
Add DefaultWorld to newly generated INI
2016-02-08 12:49:20 +02:00
LogicParrot
dd34243521
Add DefaultWorld to newly generated INI
2016-02-08 12:26:21 +02:00
LogicParrot
3efdfca61d
remove cWorld::createAndInitializeWorld
2016-02-08 12:17:10 +02:00
LogicParrot
ed97946bb9
Merge pull request #2961 from LogicParrot/enforce
...
[PhantomWorlds - 4] Prevent server from starting if there's bad world linkage
2016-02-08 11:57:57 +02:00
LogicParrot
8fd2cb5db2
Merge pull request #2953 from LogicParrot/worldRebuild
...
[PhantomWorlds - 3] Regenerate worlds with proper dimension types and linkages
2016-02-08 11:57:42 +02:00
LogicParrot
aefacbd3cd
Merge pull request #2969 from LogicParrot/ini
...
Ignore trailing and leading spaces in INI values
2016-02-08 00:33:16 +02:00
Tiger Wang
f76a964f65
Merge pull request #2981 from Drahoslav7/master
...
Fix Pickups of BlockFlower
2016-02-07 14:27:34 +00:00
Drahoslav Bednář
d85c3590fc
Fix Pickups of BlockFlower
...
BlockMeta is handled correctly, when converting to pickups, so flowers
now drops right flower type.
2016-02-06 22:04:00 +01:00
LogicParrot
0709f76478
Style checker - Prevent whitespace-only lines
2016-02-06 19:07:03 +02:00
Julian Laubstein
6fdd7194c8
Merge pull request #2974 from LogicParrot/perl
...
Bulk clearing of whitespace
2016-02-06 11:37:34 +01:00
LogicParrot
2b81759bdc
Merge pull request #2958 from LogicParrot/fence
...
Pathfinder now properly treats nonsolids above fence
2016-02-06 10:25:06 +02:00
LogicParrot
96f9afa278
Proper world linkages and dimension types for newly created world.ini's
2016-02-06 10:18:13 +02:00
LogicParrot
ca6ef58b1e
Bulk clearing of whitespace
2016-02-05 23:50:18 +02:00
LogicParrot
87a31e3a2d
Merge pull request #2972 from marvinkopf/PlayerAutoComplete
...
Tab completion for player names now case insensitive.
2016-02-05 22:42:20 +02:00
LogicParrot
e3fe15ca59
Merge pull request #2954 from kevinr/implement-acacia-block-height
...
Implement acacia block height
2016-02-05 22:32:44 +02:00
Marvin Kopf
0b826b0e52
Tab completion for player names now case insensitive.
2016-02-05 21:27:31 +01:00
LogicParrot
e51a139035
Ignore trailing and leading spaces in INI values# Please enter the commit message for your changes. Lines starting
2016-02-05 21:59:46 +02:00
Alexander Harkness
ac5170c7c4
Correct typo in documentation.
2016-02-05 16:45:55 +00:00
LogicParrot
d8861da599
Prevent server from starting if there's bad world linkage
2016-02-05 15:34:16 +02:00
Julian Laubstein
cb28aaface
Merge pull request #2960 from LogicParrot/interspecies
...
Prevent interspecies breeding
2016-02-04 20:51:44 +01:00
LogicParrot
6661e5d27f
Prevent interspecies breeding
2016-02-04 20:44:55 +02:00
LogicParrot
1376743e47
Pathfinder now properly treats nonsolids above fence
2016-02-04 13:53:59 +02:00
LogicParrot
8f7d929140
Fix unexpected world creation introduced by #2821
2016-02-04 10:06:07 +02:00
Kevin Riggle
e4a8c681b0
implement height logic for Acacia blocks
2016-02-04 01:20:31 -05:00
LogicParrot
4aade202e0
cMonster::m_Target safety across worlds
2016-02-03 22:50:17 +02:00
LogicParrot
a5403c8976
Merge pull request #2941 from LogicParrot/chunkBug2
...
[Attempt 2] Fixed cChunk::m_Entities corruption upon world travel
2016-02-03 20:19:11 +02:00
LogicParrot
fd91932a8b
Merge pull request #2903 from marvinkopf/FixTabAutoComplete
...
Fix TabAutoComplete
2016-02-02 22:14:22 +02:00
Marvin Kopf
9840cc8218
Fix TabAutoComplete
...
For tab on '/command s' the server now returns 'subcommand' instead of '/command subcommand'.
2016-02-02 18:59:50 +01:00
LogicParrot
07b7fd4ad3
Fixed cChunk::m_Entities corruption upon world travel
2016-02-02 17:55:00 +02:00
Marvin Kopf
a1c48f4853
Fix cPawn pushing
...
cPawn instances can no longer push an entity they are attached to. cEntity now has a IsAttachedTo method.
2016-02-02 14:57:20 +01:00
Mathias
89f3dec7ac
Updated old forum links
2016-01-31 02:25:03 +02:00
Mathias
752d99c8b8
MCServer to Cuberite
2016-01-29 21:47:00 +02:00