Commit graph

46 Commits

Autor SHA1 Nachricht Datum
ST-DDT
93c0d7e6b5 Fix negative damage from Zombies. Fixes BUKKIT-4193
Currently, the method used for calculating the damage of zombies is scaled
to their health, but it uses the default max health rather than the real
max health value. If zombies have more health than the default max health
value, the amount of damage they deal becomes negative.

This is caused by EntityZombie.getMaxHealth() returning a hardcoded value of
20, which is the vanilla max health for zombies. Rather than using this value
when calculating zombie damage, the call is changed to instead use
((CraftLivingEntity) this.bukkitEntity).getMaxHealth(). This uses the true
maximum health of the Entity. "this.maxHealth" could be used instead of the
aforementioned method, however that creates a very unclear diff, and a
confusing change.
2013-06-13 16:53:35 -06:00
Travis Watkins
3bbfb41798 Fix things using wall time running too fast. Fixes BUKKIT-4155
When converting things in Minecraft to use wall time instead of ticks I
realized we'd run into integer division rounding issues and could have
updates that end up counting as zero ticks. To compensate for this the
code ensures we always process at least one tick. However, every time we
end up with zero ticks the next time we have an extra tick due to rounding
the other way with the leftovers. This means we are going far too fast and
should not have this at least one tick logic at all.

On top of this some potions rely on the number of ticks they run and not
just the amount of time they last and so potions were put back to running
with ticks entirely.
2013-04-27 10:42:25 -05:00
Travis Watkins
799779e4b1 Update CraftBukkit to Minecraft 1.5.2 2013-04-27 10:42:19 -05:00
Travis Watkins
1c18834b7d Use wall time instead of ticks for several things. Fixes BUKKIT-4059
Currently furnace smelting and the item pickup delay timer use wall time
(aka actual time passed) to emulate a constant tick rate so run at the
same speed regardless of the server's actual tick rate. There are several
other places this makes sense so this commit converts them.

The item despawn timer is converted so now always takes 5 minutes. Users
know this 5 minute number well so keeping this constant helps to avoid
confusion. This also helps alleviate lag because if a large number of item
drops is the reason your server is running slowly having them stay around
longer just means your server is slow longer.

Potion brewing and the zombie villager conversion timer are now constant.
These match the furnace criteria of being useful for hiding lag and not
having a detrimental effect on gameplay.

Potion effects are now also using wall time. The client is told about effect
times in ticks and displays this information to the user as minutes and
seconds assuming a solid 20 ticks per second. The server does have
code for updating the client with the current time remaining to help
avoid skew due to differing tick rates but making this a constant makes
sense due to this display.
2013-04-13 00:31:08 -05:00
gjmcferrin@gmail.com
adbee6049e Call appropriate event for zombies igniting players. Adds BUKKIT-3915 2013-03-28 21:10:42 -05:00
Travis Watkins
5f089137ee Cleanup comments, formatting, etc 2013-03-25 00:51:36 -05:00
Travis Watkins
83d29e461c Update CraftBukkit to Minecraft 1.5 2013-03-15 13:28:59 -05:00
feildmaster
23b6764374 Update CraftBukkit to Minecraft 1.4.6 2012-12-20 10:43:00 -06:00
James Clarke
bd0868ae1e Implement API for Skeleton and Zombie types. Fixes BUKKIT-2818 2012-11-17 15:00:14 -06:00
Travis Watkins
7f7192f8fd Update CraftBukkit to Minecraft 1.4.4. 2012-11-13 16:09:52 -06:00
Travis Watkins
60819c6693 Update CraftBukkit to Minecraft 1.4(.2). 2012-10-27 22:19:03 -04:00
Travis Watkins
b8cc862083 Update to 1.3.2 2012-08-25 00:54:21 -04:00
feildmaster
a43d621c01 Update CraftBukkit to Minecraft 1.3.1 2012-08-02 04:58:50 -05:00
Nathan Adams
9d09e7d016 Updated to Minecraft version 1.2.4. Updated version string to 1.2.4-R0.1. 2012-03-22 20:39:39 +00:00
zerg960
96c4bb7da6 [Bleeding] Account for new rare drops in EntityDeath events. Fixes BUKKIT-1105 2012-03-21 13:24:59 -04:00
Nathan Adams
543c4879fe Updated CraftBukkit to 1.2 2012-03-01 14:38:31 +00:00
Erik Broes
61ec751ca1 Update for 1.1_01 renames.
We know these updates (can) break plugins bypassing Bukkit. They are needed for
smooth updates however. There will be another one right before before 1.1-R1.
2012-01-15 10:52:37 +01:00
Erik Broes
7219d4dd85 Updated to Minecraft 1.1 2012-01-12 23:10:13 +01:00
Nathan Adams
8fbe78a2c3 Updated to use mc-dev rename revision 1 2011-11-30 21:46:19 +00:00
Andrew Ardill
3da00ee41a Implementation of reworked EntityCombustEvents
Also includes some extra comments, and a refactoring of the
PaintingBreakByEntity event that is raised when lighting strikes a painting.
2011-11-29 18:20:21 +11:00
Erik Broes
345ea36c7b Update for 1.0.0 2011-11-20 00:01:33 -08:00
Dinnerbone
5b2c774edc Update for Minecraft 1.8 2011-09-15 01:23:52 +01:00
Dinnerbone
a679e7f380 Update to Minecraft 1.7 2011-06-30 15:19:25 +01:00
Erik Broes
a98c7ba2c7 Massive renaming update in nms. If you bypassed Bukkit, you will likely break.
Also minimized all the nms diffs and generic cleanups all around.
2011-06-27 00:47:03 +02:00
Erik Broes
6dbd710bbf Update for 1.6.5 2011-05-30 22:37:34 -04:00
Dinnerbone
6903f20242 Implemented 1.6! 2011-05-26 13:48:22 +01:00
Erik Broes
a6c8a36dce Update for 1.5_02. 2011-04-21 04:25:46 -04:00
Erik Broes
483a878b8b Update for 1.4_00_01 -- if you bypassed Bukkit, you will most likely break. 2011-04-20 19:05:14 +02:00
Dinnerbone
87c36febeb Updated to Minecraft version 1.4 2011-03-31 21:40:00 +01:00
Erik Broes
e24b10dfd9 Updated for the cleanups done in Bukkit 2011-03-26 22:32:56 +01:00
Erik Broes
09aa37fe4a Generic code cleanup 2011-02-23 14:12:33 +01:00
Dinnerbone
f759e0b60d Update to Minecraft 1.3 beta 2011-02-23 02:37:56 +00:00
Erik Broes
da00e2e3a9 Fixed rogue chmods 2011-01-30 20:18:15 +01:00
Erik Broes
b2a0c5a2ae Reworked getEntity; Hi instanceof, bay 16 classes 2011-01-30 16:15:24 +01:00
Erik Broes
df69047324 Port to new mc-dev format. 2011-01-30 13:24:39 +01:00
Andrew Ardill
1cbde901ba Entity audit. Adds checks for null entities, and adds conformity. 2011-01-21 16:54:30 +11:00
Andrew Ardill
26a590f030 fixed imports on all Entities 2011-01-18 17:16:05 +11:00
Andrew Ardill
6a3b096fb8 Addition of all Entity classes.
Each Entity creates a corresponding instance of a Craft Entity, to be
used whenever sending instances to an event handler with
getBukkitEntity().
2011-01-18 00:13:33 +08:00
Andrew Ardill
5f2c8108b7 Updates to all Entities to use getBukkitEntity() any time an event is
raised.
Similar update to CraftVehicle and CraftLivingEntity
2011-01-18 00:13:32 +08:00
Andrew Ardill
2de3e2e7e4 created getBukkitEntity() in minecraft.server.Entity
This returns a protected field that is set in the constructor of each
minecraft.server.Entity to a new CraftEntity of some specific type.
2011-01-18 00:13:31 +08:00
Dinnerbone
9150e8d85d All entity stuff in org.bukkit.craftbukkit moved to org.bukkit.craftbukkit.entity 2011-01-15 21:24:07 +00:00
Dinnerbone
2761b59845 Update to Minecraft Server 1.2 2011-01-14 13:31:10 +00:00
Erik Broes
22dab8e985 Updated against new mc-dev format, takes out quite some casting troubles at the cost of extra ()'s 2011-01-11 09:27:35 +01:00
Erik Broes
136ad76e6a Remember, minimal diffs and *NO TABS* 2011-01-10 09:30:34 +01:00
Taylor Kelly
c6d80df80d Fixed EntityZombie 2011-01-10 10:50:31 +08:00
Taylor Kelly
103d4ee887 EntityCombustEvent 2011-01-10 09:46:57 +08:00