b90d7d1839
Merge branch 'release/3.0' into release/3.1
2018-07-05 17:43:11 +01:00
5dbb0d177e
Fixed double chest inventory desync issues, closes #2261 ( #2279 )
...
chest pairing really needs rewriting... this code really sucks
2018-07-05 17:42:30 +01:00
670b940837
PocketMine.php: clean up on platform dependency checks
2018-07-05 17:32:13 +01:00
6cad7be3ef
Merge branch 'release/3.0' into release/3.1
2018-07-05 12:11:12 +01:00
28a72a93b4
Chunk: Use an SplFixedArray for heightmap
...
this goes on 3.1 because it changes the behaviour of chunk cloning, which might possibly break some plugins, and this isn't a bug fix.
This should see no change in behaviour other than a minor performance improvement and slight reduction in memory usage.
2018-07-05 11:58:20 +01:00
58f0ad3e3e
Command: remove unnecessary getPermission() calls
2018-07-05 10:38:31 +01:00
0df3585c81
TellCommand: remove useless strtolower() and temp variable
2018-07-05 09:12:21 +01:00
697723b551
DoubleChestInventory: remove redundant clear() override
...
this calls setItem() which deals with the necessary logic anyway.
2018-07-04 20:06:42 +01:00
5926d80525
DoubleChestInventory: fixed wrong logic for setting items into the right-hand side
2018-07-04 20:04:40 +01:00
0f0d12bebc
Merge branch 'release/3.0' into release/3.1
2018-07-02 16:58:15 +01:00
dfc11abf2d
Level: fixed sendBlocks() documentation
2018-07-02 16:53:48 +01:00
17eef9f902
Level: stricten type checks on sendBlocks()
...
because people are morons
2018-07-02 16:53:00 +01:00
a57ec1b1ba
Living: fixed death animation not being played when kill() is used
...
this fixes players having a random delayed despawn when using /kill on themselves
2018-06-29 16:49:40 +01:00
905259a4e1
Fixed not being able to place blocks inside dead players
...
closes #2265
2018-06-29 16:38:35 +01:00
b04319a4ab
Merge branch 'release/3.0' into release/3.1
2018-06-29 12:30:52 +01:00
ca6930006c
back to dev
2018-06-29 12:30:08 +01:00
33eeeb856e
disable dev flag
3.0.4
2018-06-29 12:21:56 +01:00
0afbf6c547
Merge branch 'release/3.0' into release/3.1
2018-06-29 12:19:25 +01:00
c43ce5c8fa
RCONInstance: apply stfu operator
2018-06-29 12:16:17 +01:00
57cfe9fd43
Level: fixed logic for sending changed blocks to players
...
If there is an empty list of blocks in the changedBlocks array for a chunk, that means that blocks changed the normal way and then were later set the direct way in the same tick. This means that no action needs to be taken on these chunks.
2018-06-29 11:10:31 +01:00
d8824e7ee1
Level: discard changed blocks on chunk replace
...
this could cause issues when plugins replace chunks when blocks in the chunk have been changed on the same tick.
2018-06-29 11:06:33 +01:00
3455d0f3b9
Level: cleaned up some nonsensical code in setChunk()
2018-06-29 10:58:31 +01:00
ec2cca04a7
Merge branch 'release/3.0' into release/3.1
2018-06-24 17:34:37 +01:00
6b2250cbce
RCONInstance: terminate session on ECONNRESET errors
2018-06-24 17:32:51 +01:00
8dae497610
back to dev
2018-06-24 17:32:51 +01:00
cade15e2dd
disable dev flag for release
3.0.3
2018-06-24 16:34:19 +01:00
272b76d24c
fix Punch mess
2018-06-24 13:43:52 +01:00
8c672cb7c8
Implemented Sharpness, Fire Aspect and Knockback enchantments
2018-06-24 12:13:54 +01:00
4d9368f205
Merge branch 'release/3.0' into release/3.1
2018-06-24 12:07:45 +01:00
97c267c70c
Implemented Punch enchantment
2018-06-23 17:40:01 +01:00
85a3c0e7dc
Implemented Flame enchantment
2018-06-23 17:11:20 +01:00
d3e54db146
ExperienceOrb: stop tracking targets if they die while being tracked
2018-06-23 16:41:21 +01:00
0081e30a89
Living: fix knockback condition, take 2
...
onGround doesn't necessarily reflect 0 motion, because something else could change the motion prior to the onGround flag getting updated - for example 2 knockbacks in a row.
2018-06-23 14:30:26 +01:00
2f70a1eefb
Implemented Thorns enchantment ( #2258 )
...
This implementation is rough and can probably be improved to make it extendable, but this works for now and can be improved later.
2018-06-23 13:36:58 +01:00
7ba6e92b6c
Merge branch 'release/3.0' into release/3.1
2018-06-23 13:04:05 +01:00
76174f1920
Explosion: avoid leaving arrows stuck in nonexistent blocks
2018-06-23 13:03:46 +01:00
47c862bc38
Projectile: check for blockhit change on nearby blockupdate
2018-06-23 12:57:13 +01:00
860c20109b
TNT can now be ignited by burning arrows
2018-06-23 12:54:21 +01:00
1c0b49343c
Implemented Infinity enchantment ( #2259 )
2018-06-23 11:44:35 +01:00
814a949580
Implemented Power enchantment
2018-06-23 11:39:39 +01:00
b393f5f17e
Projectile: ensure that damage multiplier gets saved and restored
2018-06-23 10:41:04 +01:00
f1970492c1
Projectile: added API to modify projectile base damage multiplier
...
This adds two new methods:
- Projectile->getBaseDamage()
- Projectile->setBaseDamage()
2018-06-23 10:38:58 +01:00
dd6b5902a6
EmeraldOre: fixed not dropping XP on break
2018-06-22 21:35:58 +01:00
87852f2fe1
EmeraldOre: remove excess indentation
2018-06-22 21:31:22 +01:00
056d24c67d
Add MUTTON as an ID constant
...
fixes crashdump #518862 - Unable to resolve "minecraft:mutton" to a valid item
PC refers to these as just mutton, but PE calls them muttonraw
2018-06-22 19:39:18 +01:00
4c9ca53b32
Merge branch 'release/3.0' into release/3.1
2018-06-22 17:47:33 +01:00
484d34fe04
Living: Reset attack cooldown before applying post damage effects
...
this fixes things causing damage during post-damage calls coming back and being able to do even more damage
2018-06-22 17:47:11 +01:00
6c6630d845
Player: avoid doing some post-melee attack actions if attacking killed the attacker
...
This can happen when an attacker attacks a victim wearing thorns armour while having low health, which prior to this commit would cause the tool to be duplicated.
2018-06-22 17:17:40 +01:00
a5a236084f
Living: don't applyPostDamageEffects() for dead mobs
...
this has already been seen to cause duplication bugs when thorns is used. Anything else that modifies inventory during applyPostDamageEffects() when the mob is possibly dead will also cause duplication issues.
2018-06-22 14:31:48 +01:00
390db976e5
Arrow: allow controlling pickup mode (like PC)
...
This allows controlling how arrows are picked up:
- by anything
- by only creative players
- by nothing
This adds new API methods to Arrow:
- getPickupMode()
- setPickupMode()
This adds new public constants to Arrow:
- PICKUP_NONE
- PICKUP_ANY
- PICKUP_CREATIVE
2018-06-22 13:40:32 +01:00