Commit Graph

289 Commits

Author SHA1 Message Date
CraftBukkit/Spigot
38aca80dfa Missed a rename
By: feildmaster <admin@feildmaster.com>
2012-12-10 19:17:47 -06:00
CraftBukkit/Spigot
0ef3001c83 Add EntityEquipment API. Adds BUKKIT-3103
Adds:
- Getting/Setting equipment
- getting/setting drop rates
- getting/setting ability to pick up items
-- As an added feature, players with this flag start off with a canceled PlayerPickupItemEvent

By: feildmaster <admin@feildmaster.com>
2012-12-09 00:09:48 -06:00
CraftBukkit/Spigot
1b990d9590 [Bleeding] Correct getEyeHeight value. Fixes BUKKIT-3130
By: h31ix <low_gravity@outlook.com>
2012-12-09 21:40:10 -05:00
CraftBukkit/Spigot
3f11c5df16 [Bleeding] Fix NPE with a null bedSpawnLocation. Fixes BUKKIT-1500
By: EdGruberman <ed@rjump.com>
2012-12-09 17:37:37 -06:00
CraftBukkit/Spigot
90014b4094 Provide a faster way to get a location. Adds BUKKIT-3120
Currently when a plugin wants to get the location of something it calls
getLocation() which returns a new Location object. In some scenarios this
can cause enough object creation/destruction churn to be a significant
overhead. For this cases we add a method that updates a provided Location
object so there is no object creation done. This allows well written code
to work on several locations with only a single Location object getting
created.

Providing a more efficient way to set a location was also looked at but
the current solution is the fastest we can provide. You are not required
to create a new Location object every time you want to set something's
location so, with proper design, you can set locations with only a single
Location object being created.

By: Travis Watkins <amaranth@ubuntu.com>
2012-12-07 19:49:01 -06:00
CraftBukkit/Spigot
137f84d3b6 Use shooter constructor for Fireballs. Fixes BUKKIT-3121
Fixes fireballs exploding in the shooter's face and not having a shooter for the projectile. (Two birds with one stone!)

By: feildmaster <admin@feildmaster.com>
2012-12-06 18:36:40 -06:00
CraftBukkit/Spigot
0f71f7e6df Add the ability to launch WitherSkulls. Fixes BUKKIT-3106
By: feildmaster <admin@feildmaster.com>
2012-12-06 18:18:28 -06:00
CraftBukkit/Spigot
8497ec2d7c Implement API for wolves collar color. Adds BUKKIT-3109
By: feildmaster <admin@feildmaster.com>
2012-12-05 18:08:31 -06:00
CraftBukkit/Spigot
e506472f08 Implement API for mob despawn when away from players. Adds BUKKIT-2986
As of 1.4 mobs have a flag to determine if they despawn when away from a
player or not. Unfortunately animals still use their own system to prevent
despawning instead of making use of this flag. This change modifies them
to use the new system (defaults to true) and to add API for plugins to adjust
this.

By: Travis Watkins <amaranth@ubuntu.com>
2012-12-04 18:33:44 -06:00
CraftBukkit/Spigot
921c568632 [BREAKING] Update BlockFace directions. Fixes BUKKIT-1567, BUKKIT-3069
The answer is 42

By: feildmaster <admin@feildmaster.com>
2012-12-01 00:22:01 -06:00
CraftBukkit/Spigot
096ca091e1 Fix teleporting entities with vehicles/passengers teleporting you illegally. Fixes BUKKIT-2821
Also some formatting...

By: feildmaster <admin@feildmaster.com>
2012-11-20 18:15:00 -06:00
CraftBukkit/Spigot
35a4233999 No teleporting people back into the server. Fixes BUKKIT-2298
Stale player references will add a player back into the world when
teleporting them, causing a cascade of issues relating to ghost entities
and servers failing to stop.

By: Wesley Wolfe <weswolf@aol.com>
2012-11-19 21:38:31 -06:00
CraftBukkit/Spigot
4e8ec15953 Implement API for Skeleton and Zombie types. Fixes BUKKIT-2818
By: James Clarke <jamesrtclarke@me.com>
2012-11-05 18:09:40 +00:00
CraftBukkit/Spigot
3f728bab1a Update CraftBukkit to Minecraft 1.4.4.
By: Travis Watkins <amaranth@ubuntu.com>
2012-11-06 06:05:28 -06:00
CraftBukkit/Spigot
1816b5b800 Change ItemFrame to actually provide a defensive copy. Fixes BUKKIT-2784
If a defensive copy is not used in the API, changes to the item are
reflected in memory, but never updated to the client. It also goes
against the general contract provided in Bukkit, where setItem should be
the only way to change the underlying item frame.

By: Wesley Wolfe <weswolf@aol.com>
2012-10-31 18:07:27 -05:00
CraftBukkit/Spigot
6ea108ec2e Implement the API for ItemFrames. Adds BUKKIT-2668
By: h31ix <effectsdude@gmail.com>
2012-10-31 00:59:06 -04:00
CraftBukkit/Spigot
026494018e Expose API for giving and taking experience levels for use with ExpCommand's new behaviour with Minecraft 1.4. Adds BUKKIT-2739
By: EvilSeph <evilseph@gmail.com>
2012-10-29 12:37:45 -04:00
CraftBukkit/Spigot
c464cba5b2 Revert changing EntityType.FIREBALL to LARGE_FIREBALL
By: feildmaster <admin@feildmaster.com>
2012-10-29 20:17:52 -05:00
CraftBukkit/Spigot
1177b02708 Update CraftBukkit to Minecraft 1.4(.2).
By: Travis Watkins <amaranth@ubuntu.com>
2012-10-24 22:53:23 -05:00
CraftBukkit/Spigot
e29c5d9725 Ensure entity isn't destroyed when trying to show it. Fixes BUKKIT-2038
If two players (or a player and any other entity) are teleported to the
same location in the same tick they will both get added to the other's
destroy queue then have a new entity spawn packet sent. Next tick the
destroy queue will be processed and they will then be invisible to each
other. To prevent this situation we remove the entity from the destroy
queue when sending out a spawn packet for them.

By: Travis Watkins <amaranth@ubuntu.com>
2012-10-13 15:27:45 -05:00
CraftBukkit/Spigot
980784204e Remove player from destroy queue when they go visible. Fixes BUKKIT-2071
If a plugin calls player.hidePlayer(other); then player.showPlayer(other);
in the same tick the other player will be added to the entity destroy queue
then a spawn packet will be sent. On the next tick the queue will be
processed and a destroy packet will be sent that renders the other player
invisible. To correct this we ensure the destroy queue is in sync with use
of the vanish API.

By: Travis Watkins <amaranth@ubuntu.com>
2012-09-28 14:53:28 -05:00
CraftBukkit/Spigot
f57bc0f77f Map org.bukkit.Sound to String values for sending to client.
This change was done to remove the internal sound names from the API.
Along with moving the internal names into CraftBukkit, a unit test was
added for any new sounds added in the API to assure they have a non-null
mapping.

By: Wesley Wolfe <weswolf@aol.com>
2012-09-26 16:34:06 -05:00
CraftBukkit/Spigot
2a57bac117 Bulk pending cleanup.
By: Wesley Wolfe <weswolf@aol.com>
2012-09-09 23:19:28 -05:00
CraftBukkit/Spigot
ae2357b96e Implement API for Sound, and playing the sounds for Worlds and Players. Adds BUKKIT-1430, BUKKIT-1226 and BUKKIT-2019
By: feildmaster <admin@feildmaster.com>
2012-08-21 17:23:17 -05:00
CraftBukkit/Spigot
7a4660c49e Implement API to retrieve and open EnderChests. Adds BUKKIT-2016
By: feildmaster <admin@feildmaster.com>
2012-08-20 15:52:44 -05:00
CraftBukkit/Spigot
73cf129db7 Implement methods for spawning FallingBlocks and add various FallingBlock methods. Adds BUKKIT-2282
By: feildmaster <admin@feildmaster.com>
2012-08-13 22:21:10 -05:00
CraftBukkit/Spigot
939c2c8477 Implement player speed API. Addresses BUKKIT-2205
By: Wesley Wolfe <weswolf@aol.com>
2012-08-10 00:00:04 -05:00
CraftBukkit/Spigot
7383d52df7 Implement new AsyncPlayerChatEvent. Addresses BUKKIT-2064
Added two utility collections for use with PlayerChatEvents allowing lazier
initialization of events and less need to synchronize against the player
list.

Provided a hidden queue system for similar logic to pre-1.3 chat. When a
plugin is listening for the deprecated PlayerChatEvent, all chat will be
delayed to be mirror executed from the main thread. All developers are
encouraged to immediately update to the developmental Bukkit chat API as a
minimum transition for server stability.

Additionally, changes were required to bring thread-safety to the flow
logic. CopyOnWriteArrayList is the only viable means to produce thread
safety with minimal diff; using a sane pre-implemented collection would
require reworking of sections of NMS logic.

As a minor change, implemented expected functionality for
PlayerCommandPreProcessEvent. Setting the player should now change the
player executing the command.

By: Wesley Wolfe <weswolf@aol.com>
2012-08-03 06:24:55 -05:00
CraftBukkit/Spigot
6e2987bb35 Update CraftBukkit to Minecraft 1.3.1
By: feildmaster <admin@feildmaster.com>
2012-07-29 02:33:13 -05:00
CraftBukkit/Spigot
985d65840b Implement getExpToLevel method. Fixes BUKKIT-1906
By: feildmaster <admin@feildmaster.com>
2012-07-10 13:32:21 -05:00
CraftBukkit/Spigot
b69d15792e Factor invulnerableTicks into getNoDamageTicks. Fixes BUKKIT-1324
By: feildmaster <admin@feildmaster.com>
2012-07-04 15:12:29 -05:00
CraftBukkit/Spigot
fdbd4efbd6 Treat ComplexParts as proxies for setLastDamageCause. Fixes BUKKIT-1821
By: feildmaster <admin@feildmaster.com>
2012-07-01 05:02:44 -05:00
CraftBukkit/Spigot
d96b0ca73f Clean entity.damage functions. Fixes BUKKIT-1822
By: feildmaster <admin@feildmaster.com>
2012-07-01 05:00:48 -05:00
CraftBukkit/Spigot
cdfbbb4638 Mark entities as invalid when they get despawned. Addresses BUKKIT-810
By: Travis Watkins <amaranth@ubuntu.com>
2012-06-25 03:24:53 -05:00
CraftBukkit/Spigot
18adfe63c3 Implement LivingEntity.hasLineOfSight. Addresses BUKKIT-1255
By: TomyLobo <tomylobo@nurfuerspam.de>
2012-03-21 16:31:30 +01:00
CraftBukkit/Spigot
b91f0fe488 Implement plugin channel events. Addresses BUKKIT-1844
By: Wesley Wolfe <weswolf@aol.com>
2012-06-20 23:15:31 -05:00
CraftBukkit/Spigot
474a9e54a8 Clear animal owner when untamed. Fixes BUKKIT-1482
By: Ammar Askar <ammar_askar@hotmail.com>
2012-06-17 23:18:00 +05:00
CraftBukkit/Spigot
18ff0924ce Launch fireballs at eye location. Fixes BUKKIT-1155
By: feildmaster <admin@feildmaster.com>
2012-04-16 10:31:57 -05:00
CraftBukkit/Spigot
df04eb1bcf Removed AnimalTamer cache, fixes BUKKIT-1628
By: Wesley Wolfe <weswolf@aol.com>
2012-05-24 23:02:02 -05:00
CraftBukkit/Spigot
3776921464 Fixed broken hashCode()
By: Wesley Wolfe <weswolf@aol.com>
2012-05-06 13:39:46 -05:00
CraftBukkit/Spigot
6b250f016d Add in checks for potential NPEs. Fixes BUKKIT-1706 and BUKKIT-1590.
By: Travis Watkins <amaranth@ubuntu.com>
2012-05-24 19:11:05 -05:00
CraftBukkit/Spigot
deb6c53960 Revert "Fix potential NPE in vanish API. Fixes BUKKIT-1541"
This reverts commit ebf121800bd3161e4af0f6d9229ccb39c31fc278.

If the handle ever becomes null we need to know about it so we can debug it further.

By: feildmaster <admin@feildmaster.com>
2012-04-27 12:48:40 -05:00
CraftBukkit/Spigot
b8fdda282e Remove Player cache and edit CraftPlayer.equals to account for EntityID. Fixes BUKKIT-1541 and Addresses BUKKIT-761
By: feildmaster <admin@feildmaster.com>
2012-04-21 18:02:25 -05:00
CraftBukkit/Spigot
a208a4f9e3 Update players when potion effects are moved from them. Fixes BUKKIT-789
By: Travis Watkins <amaranth@ubuntu.com>
2012-04-24 18:59:55 -05:00
CraftBukkit/Spigot
ff8b2d38f9 Fix potential NPE in vanish API. Fixes BUKKIT-1541
By: Travis Watkins <amaranth@ubuntu.com>
2012-04-24 12:25:07 -05:00
CraftBukkit/Spigot
37d14787d9 Persist PlayerDeathEvent values. Fixes BUKKIT-1521
By: feildmaster <admin@feildmaster.com>
2012-04-14 00:24:51 -05:00
CraftBukkit/Spigot
0ebe730fce [Bleeding] Allow CraftItem to be backed by non-EntityItems. Fixes BUKKIT-1351
By: feildmaster <admin@feildmaster.com>
2012-03-25 20:58:12 -05:00
CraftBukkit/Spigot
c92c764f2c Fixed incorrect assigning to isFlying when toggling setAllowedFlight(false)
By: Nathan Adams <dinnerbone@dinnerbone.com>
2012-03-23 14:41:53 +00:00
CraftBukkit/Spigot
ec19b8a466 Implemented new player flight methods. This implements BUKKIT-1281. This also fixes BUKKIT-1146.
By: Nathan Adams <dinnerbone@dinnerbone.com>
2012-03-22 22:04:13 +00:00
CraftBukkit/Spigot
7bb0a3fe51 Updated to Minecraft version 1.2.4. Updated version string to 1.2.4-R0.1.
By: Nathan Adams <dinnerbone@dinnerbone.com>
2012-03-22 20:39:39 +00:00