Commit Graph

356 Commits

Author SHA1 Message Date
CraftBukkit/Spigot 6de31b61d5 Store last known player names in preparation for name changing
By: feildmaster <admin@feildmaster.com>
2014-03-31 14:42:33 -05:00
CraftBukkit/Spigot 05cdc26922 Fix PotionEffect removal.
The method in EntityLiving to remove a potion effect was remapped during
the 1.7.5 update.  The method invocation in CraftLivingEntity was not
updated to invoke the remapped method, which has led to a random method in
LivingEntity being called in its place.

This commit corrects the behavior of removePotionEffect by changing the
method to invoke the remapped method as opposed to EntityLiving#m(float).

Thanks to @gabizou for finding this issue.

By: Nate Mortensen <nate.richard.mortensen@gmail.com>
2014-03-23 20:50:43 -06:00
CraftBukkit/Spigot e6de9aaa17 Update CraftBukkit to Minecraft 1.7.5
By: Nate Mortensen <nate.richard.mortensen@gmail.com>
2014-03-20 22:26:30 -06:00
CraftBukkit/Spigot f65068829e Implement banning API. Adds BUKKIT-3535
Previously no implementation existed to access various additional
information fields regarding bans. This implementation expands on the
information outlined in the sister Bukkit commit to provide access to
the Minecraft implementation of the ban system.

This implementation of the banning API contains 2 new classes which
provide access to the internal workings of the built-in banning
system within Minecraft.

The CraftBanEntry class simply supports the representation of an internal
Minecraft BanEntry object. The data that may be modified within this new
object must be manually saved to the list contained within the
CraftBanEntry using it's save() method.

The CraftBanList class supports the representation of an internal
Minecraft BanList object through proxy methods. These methods do
validation on the passed objects where needed to ensure safe input to the
backed Minecraft objects.

These changes additionally re-route the existing banning API to the newer,
more detailed, system. Functionality prior to this change still behaves
as documented by the contract defined by the methods changed.

By: mbax <matt@phozop.net>
2014-02-04 20:52:50 -07:00
CraftBukkit/Spigot 7333087027 Update clients when ItemFrame direction is set. Fixes BUKKIT-3371
Hanging entities are placed into the entity tracker and updates are sent
out to clients for the initial placement. Thereafter data watchers are
configured to monitor the item inside the frame. However, if the
direction the ItemFrame facing changes the entity tracker will not send
out updates.

This commit removes and recreates the ItemFrame entity in the same way
that was already done for Painting entities. This causes clients to
be updated appropriately.

By: EdGruberman <ed@rjump.com>
2013-08-30 00:24:26 -07:00
CraftBukkit/Spigot 7179c931c0 [Bleeding] Directly set direction in EntityFireball. Fixes BUKKIT-1154
Because EntityFireball.setDirection() adds a random offset to passed
parameters, it is not appropriate for use in an API method. As such,
the values need to be directly set to remain accurate.

By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-21 22:50:15 -05:00
CraftBukkit/Spigot 9b8c0edb02 [Bleeding] Implement setCharged and getCharged for WitherSkull. Addresses BUKKIT-3060
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-21 22:50:15 -05:00
CraftBukkit/Spigot 115d946d7b [Bleeding] Implement ProjectileSource API. Addresses BUKKIT-1038, BUKKIT-1156
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-20 00:03:21 -05:00
CraftBukkit/Spigot 668c2bffdb Add setCritical and isCritical methods to CraftArrow.java. Adds BUKKIT-5113
By: MorphanOne <morphanone@gmail.com>
2013-12-16 22:30:13 -05:00
CraftBukkit/Spigot 616d88c604 Add methods to get and set arrow knockback. Adds BUKKIT-5103
By: Likaos <romain.rosique@gmail.com>
2013-12-16 22:30:13 -05:00
CraftBukkit/Spigot 97b317368b [Bleeding] Add support for ThrownExpBottle and Fish to launchProjectile(...). Fixes BUKKIT-1536
Previously, trying to launch a ThrownExpBottle or Fish projectile would
result in an IllegalArgumentException. This commit adds support for both
ThrownExpBottle and Fish, which means that all current projectiles are
now properly supported by this method.

By: GJ <gjmcferrin@gmail.com>
2013-12-16 22:40:00 -05:00
CraftBukkit/Spigot f87c5cd9dd [Bleeding] Fix Achievements and Statistics API. Fixes BUKKIT-5305
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-14 23:42:40 -05:00
CraftBukkit/Spigot a6a6c99078 Add new setResourcePack method. Fixes BUKKIT-5015
Minecraft now uses resource packs instead of texture packs, which broke
the setTexturePack method, as the client no longer listens on the MC|TPack
channel.

This commit fixes the issue by adding in a setResourcePack method, and by
deprecating setTexturePack and rewriting it to call the newly added
setResourcePack.  In order to simplify the method and prevent this from
happening in the future, setResourcePack calls EntityPlayer.a(String) to use
the same logic as minecraft when sending resource packs.

By: Nate Mortensen <nate.richard.mortensen@gmail.com>
2013-12-17 19:23:26 -07:00
CraftBukkit/Spigot b79e797434 Show fall particles while in creative mode. Fixes BUKKIT-5009
Relocate CraftBukkit patch to fall damage when changing
gamemode from creative mode.

By: t00thpick1 <t00thpick1dirko@gmail.com>
2013-12-13 19:31:59 -05:00
CraftBukkit/Spigot 672d7e3316 Implement Firework.detonate(). Adds BUKKIT-4538
This implements the detonate method from bukkit by setting the fuse
timer to 0. This makes a firework explode using the normal codepath,
but without waiting for the fuse.

By: Wesley Wolfe <weswolf@aol.com>
2013-12-06 00:05:23 -06:00
CraftBukkit/Spigot 5783df9d13 Update CraftBukkit to Minecraft 1.7.2
By: mbax <matt@phozop.net>
2013-11-04 07:07:38 -06:00
CraftBukkit/Spigot 46b65df5ae Update CraftBukkit to 1.6.4
By: feildmaster <admin@feildmaster.com>
2013-09-19 13:25:08 -05:00
CraftBukkit/Spigot 84e8935a22 Add support for custom Hopper inventories. Fixes BUKKIT-4722
Opening a hopper inventory created by Server.createInventory will
currently have no effect as proper handling code is missing in
CraftEntityHuman for hopper inventories that aren't associated with a tile
entity or minecart. Initialization logic for hoppers is also missing from
CraftContainer, which is necessary for the opening of custom hopper
inventories.

This commit fixes the two aforementioned by adding proper handling to
CraftHumanEntity for opening inventories not associated with a tile
entity, and by adding initialization logic for hoppers to CraftContainer.

By: FrozenBrain <carstenbamsti@googlemail.com>
2013-08-27 00:04:48 +02:00
CraftBukkit/Spigot 9680b8dcdb Return correct hasLineOfSight value for players. Fixes BUKKIT-4634
Prior to this change when a plugin called Player.hasLineOfSite() the
method would always return false because EntityHuman does not extend
EntityInsentient. This commit changes that by explicitly checking for
line of sight between two entities and returning that value.

By: Roger Baumgartner <rogermarcbaumgartner@hotmail.com>
2013-08-17 16:13:31 +02:00
CraftBukkit/Spigot ed3c404bc3 Fix mistranslation in isPlayerCreated() for IronGolems. Fixes BUKKIT-4543
By: Kai Dederichs <kai.dederichs@gmx.de>
2013-07-13 11:56:59 +02:00
CraftBukkit/Spigot 4cd10145c5 Implement Leash API. Adds BUKKIT-4459, BUKKIT-4583
By: T00thpick1 <t00thpick1dirko@gmail.com>
2013-07-31 17:35:16 -04:00
CraftBukkit/Spigot cdb0ea7069 Ignore null sound by contract. Fixes BUKKIT-4641
By: Wesley Wolfe <weswolf@aol.com>
2013-08-02 20:05:22 -05:00
CraftBukkit/Spigot 1e6a141afb Add raw sound string playSound method. Adds BUKKIT-2443
A method has been added to Player which allows the server to send a sound string to the client. Assuming the client has the specified sound, it will be played. This is needed by the implementation of the /playsound command.

By: h31ix <zero_gravity@outlook.com>
2013-07-19 15:21:50 -04:00
CraftBukkit/Spigot 4af51c2ffb Add API to control scaled health. Adds BUKKIT-4590
This commit implements the ability to set the scale of hearts that the
client renders.  When the Packet44UpdateAttributes packet is sent, the
max health attribute is replaced with a scaled version, to preserve the
scaled health illusion clientside.

In order to accurately display the scaled health for players, a true
health is stored within CraftPlayer, and the datawatcher now stores the
scaled health. The getHealth() method for players still returns their
true health.

Changed setHealth() within EntityLiving to appropriately handle health
for instances of EntityPlayer. Inlined a call to
setHealth(getMaxHealth()) within the EntityLiving constructor to work
around CraftEntity instantiation.

Additionally fixes the health values sent when eating food within
FoodMetaData and ItemFood, which previously sent the unscaled health;
this commit alters them to send the properly scaled health.

Additionally fixes BUKKIT-4535, BUKKIT-4536, and BUKKIT-4127

By: T00thpick1 <t00thpick1dirko@gmail.com>
2013-07-23 21:30:38 -05:00
CraftBukkit/Spigot 701de44fd3 Use ambient setting of potion effects. Fixes BUKKIT-4357 and BUKKIT-3653
This changes livingEntity.addPotionEffect(PotionEffect, boolean) to
construct the MobEffect using the constructor that includes the ambient
setting as supplied by the PotionEffect

This also changes livingEntity.getActivePotionEffects() to construct the
PotionEffects using the ambient setting supplied by the MobEffects.

By: Jim Bilbrey <jb_aero@verizon.net>
2013-06-19 05:38:05 -04:00
CraftBukkit/Spigot 5bd02e83f2 Return inGround when checking Arrow's OnGround state. Fixes BUKKIT-4439
By: EvilSeph <evilseph@gmail.com>
2013-07-10 20:25:34 -04:00
CraftBukkit/Spigot 8524394d06 Implement Horse API. Adds BUKKIT-4424
API has been added to interface with Horses and to modify their inventories. Horse entities will now be recognized with the type EntityType.HORSE, and will no longer be UNKNOWN.

HorseJumpEvent, EntityDamageEvent, and EntityTameEvent are all correctly fired for horses.

This commit fixes BUKKIT-4393.

By: h31ix <zero_gravity@outlook.com>
2013-07-10 11:58:18 -04:00
CraftBukkit/Spigot 69a37fc533 Update CraftBukkit to 1.6.2
By: mbax <matt@phozop.net>
2013-07-08 19:43:37 -04:00
CraftBukkit/Spigot 6addfb0dff Properly clear attributes on remove and death. Fixes BUKKIT-4416
By: EvilSeph <evilseph@gmail.com>
2013-07-03 00:23:34 -04:00
CraftBukkit/Spigot 48a3e72018 Fix scaling for player health. Fixes BUKKIT-4431
By: Wesley Wolfe <weswolf@aol.com>
2013-07-02 23:08:55 -05:00
CraftBukkit/Spigot 4c2d673bd3 Rework max health values. Fixes BUKKIT-4398
By: Wesley Wolfe <weswolf@aol.com>
2013-07-02 12:34:40 -05:00
CraftBukkit/Spigot a578800a63 Update CraftBukkit to 1.6.1
By: Nate Mortensen <nate.richard.mortensen@gmail.com>
2013-07-01 06:03:00 -05:00
CraftBukkit/Spigot 9fdae1c35b Update CraftBukkit to Minecraft 1.5.2
By: Travis Watkins <amaranth@ubuntu.com>
2013-04-27 04:40:05 -05:00
CraftBukkit/Spigot e8b9ca83cb Check connection status before setting scoreboard. Fixes BUKKIT-4064
Two connection status checks were added to setting a scoreboard for a
player. The first checks to see if a player has logged in yet, which
implicates the ability to receive packets. The second checks to affirm
that the CraftPlayer reference is still to a logged in player; setting
it while not logged in would maintain a stale player reference in the
scoreboard manager.

By: Wesley Wolfe <weswolf@aol.com>
2013-04-12 21:31:24 -05:00
CraftBukkit/Spigot 09f861ef48 Implement Scoreboard API. Adds BUKKIT-3776
This implementation facilitates the correspondence of the Bukkit Scoreboard
API to the internal minecraft implementation.

When the first scoreboard is loaded, the scoreboard manager will be created.
It uses the newly added WeakCollection for handling plugin scoreboard
references to update the respective objectives. When a scoreboard contains no
more active references, it should be garbage collected.

An active reference can be held by a still registered objective, team, and
transitively a score for a still registered objective. An internal reference
will also be kept if a player's specific scoreboard has been set, and will
remain persistent until that player logs out.

A player's specific scoreboard becomes the scoreboard used when determining
team structure for the player's attacking damage and the player's vision.

By: mbax <matt@phozop.net>
2013-03-22 17:21:33 -04:00
CraftBukkit/Spigot 10245ce119 Allow fishing success rate to be adjustable. Adds BUKKIT-3837
By: Andre LeBlanc <andre@norcode.com>
2013-03-20 11:48:35 -04:00
CraftBukkit/Spigot 56947c94a9 Cleanup comments, formatting, etc
By: Travis Watkins <amaranth@ubuntu.com>
2013-03-24 23:22:32 -05:00
CraftBukkit/Spigot 329ac32171 Include ThrownPotion in spawn methods. Adds BUKKIT-2542
By: Carlos Cobo <toqueteos@gmail.com>
2013-03-23 15:28:23 +01:00
CraftBukkit/Spigot d9c6b90716 Add ability to modify ThrownPotion properties. Adds BUKKIT-3197
By: Olof Larsson <olof@sylt.nu>
2012-12-17 09:45:30 +01:00
CraftBukkit/Spigot f60d880814 Add method to get the source of a TNTPrimed. Adds BUKKIT-3815
By: AlphaBlend <whizkid3000@hotmail.com>
2013-03-21 12:47:46 -06:00
CraftBukkit/Spigot 4c1cb5c8a7 Implement per-player Weather API. Adds BUKKIT-812
By: T00thpick1 <t00thpick1dirko@gmail.com>
2012-12-20 16:51:27 -05:00
CraftBukkit/Spigot 9262bc5393 Make CraftMinecartHopper work as InventoryHolder. Adds BUKKIT-3796
By: Michael Limiero <mike5713@gmail.com>
2013-03-17 15:50:34 -04:00
CraftBukkit/Spigot e3356c9896 Implement Entity.isOnGround(). Adds BUKKIT-3787
By: Chad Waters <authorblues@gmail.com>
2013-03-17 11:51:11 -04:00
CraftBukkit/Spigot 002dd2b7cd Implement Hopper block state and inventory methods. Adds BUKKIT-3749
By: Michael Limiero <mike5713@gmail.com>
2013-03-16 00:46:35 -04:00
CraftBukkit/Spigot 7e0364660a Limit mob names to 64 chars to avoid client crash. Fixes BUKKIT-3753
By: Travis Watkins <amaranth@ubuntu.com>
2013-03-16 08:31:03 -05:00
CraftBukkit/Spigot afd0b4899b Handle the newly refactored minecarts.
By: Wesley Wolfe <weswolf@aol.com>
2013-03-15 23:09:04 -05:00
CraftBukkit/Spigot bb2baf6ba7 Use proper naming convention for boolean methods.
By: Travis Watkins <amaranth@ubuntu.com>
2013-03-15 14:25:37 -05:00
CraftBukkit/Spigot 18164ee949 Update CraftBukkit to Minecraft 1.5
By: Travis Watkins <amaranth@ubuntu.com>
2013-03-13 17:33:27 -05:00
CraftBukkit/Spigot 0d9124396f Close inventory on teleport. FIXES BUKKIT-3021.
By: Andrzej Pomirski <andrzejp@dysleksja.pl>
2013-02-09 23:38:53 +01:00
CraftBukkit/Spigot 20ddd83f9a Fix players spawning above portals. Fixes BUKKIT-3542.
Vanilla does not check for blocks in which the player could
suffocate when changing dimension, so portals will happily spawn
players in blocks when using a portal under certain
circumstances. However, we currently check for these instances
and move the player up until they will not suffocate. This means
that players can sometimes be taken to above the target portal,
making it seem as if a portal was not created. Instead, we now
disable this suffocation check when moveToWorld is called from
changeDimension, mirroring vanilla behavior more accurately.

By: James Clarke <jamesrtclarke@me.com>
2013-02-03 00:32:07 +00:00