Commit Graph

1556 Commits

Author SHA1 Message Date
asofold
b5e8ee7935 Fix PassablRayTracing not respecting block flags.
Heavier but more consistent: use BlockProperties.collidesBlock, since we
don't really check the blocks bounding box against a ray anyway, but
collision with the full moves bounding box. Getting a blocks shape
should some day be routed through BlockProperties so the shape is
correct from the start.
2013-03-14 08:27:58 +01:00
asofold
0e506eb967 Set version to 3.8.11-RC for release on BukkitDev. 2013-03-13 22:21:46 +01:00
asofold
15bf8e3ece Move utility methods for altering flags to the BlockFlags utility class. 2013-03-13 22:06:55 +01:00
asofold
1eb7dbacf1 Remove the old snow-level flag for leveled snow. 2013-03-13 22:02:23 +01:00
asofold
a789b9286d Can still not stand on Minecarts (dev branch). 2013-03-13 20:57:58 +01:00
asofold
f2ab4c9a7c Override cleanup methods in BlockCache implementations to remove world
references.
2013-03-13 20:47:42 +01:00
asofold
5197dbdbae Can't stand on minecarts in 1.4.7 either.
(Skipping older versions.)
2013-03-13 20:39:52 +01:00
asofold
a9564ea8fd [BLIND] Implement MC 1.5 snow levels with an extra block-flag. 2013-03-13 20:27:55 +01:00
asofold
a2b1412ab1 Switch 1.4.x snow level handling to an extra flag. 2013-03-13 20:09:07 +01:00
asofold
333369d0ea Can't stand on a minecart, give little more room for boat. 2013-03-13 19:37:49 +01:00
asofold
e35f0585ae Rename simplified fluid level flag. 2013-03-13 19:34:35 +01:00
asofold
b8cda625f8 Double is used here. 2013-03-13 19:30:20 +01:00
asofold
15f08f13a9 Prepare 1.5 blocks with block flags. Add unused stuff.
More like a safety commit.
1. Add compatibility block flags for MC 1.5 blocks.
2. Add commented out / unused stuff (not really for 1.5).
2013-03-13 10:16:56 +01:00
asofold
c075e67f8f Make fight.reach distances (survival) configurable. 2013-03-13 09:20:17 +01:00
asofold
a04f4ad882 Adjust lostgorund/fastedge to catch more vacc fp. 2013-03-13 06:46:19 +01:00
asofold
555ae62b78 Allow "default" as flag, which will add the previously set flags. 2013-03-13 06:31:09 +01:00
asofold
4cbefc0184 Trim flag inputs for more tolerance. 2013-03-13 06:30:24 +01:00
asofold
1ec7f997cf Just add to first bucket, since update(...) has been called. 2013-03-13 06:20:14 +01:00
asofold
414796b938 Check IHaveCHeckType after CheckType.ALL for data removal.
This ensures that "ncp remove *" really removes chat.logins data, for
instance.
2013-03-13 05:51:54 +01:00
asofold
976cd59b7c Add the command "ncp unkick *". 2013-03-13 05:41:17 +01:00
asofold
0d2862c21b Check "instanceof Minecart" instead of EntityType.
Right now and especially with Minecraft 1.5, one has to account for
several types of minecarts.
2013-03-13 05:22:53 +01:00
asofold
a5ed780542 Attempt to fix issues with too low valid-count for velocity. 2013-03-13 05:08:23 +01:00
asofold
25e4cb3b05 Fix allowed h-dist in water (downstream).
Previously this was not applied in the "after-failure" h-dist estimation
 with permission checking.
2013-03-13 03:19:14 +01:00
asofold
1ad08b3729 Velocity: Decrease validity counter once activated. 2013-03-13 02:55:54 +01:00
asofold
bb38ff5a1b Add maximum activation ticks for velocity (queued). 2013-03-13 02:55:24 +01:00
asofold
310b62384f Fix aspects with jump potion-effects.
1. Set the correct effect strength in data.
2. Adjust workarounds to catch jump effect II on fences and similar.
[Might need more specialized checking for performance reasons.]
2013-03-12 21:55:04 +01:00
asofold
5b324a1a81 Fix and adjust basic move-debug output.
1. Let the basic move info be printed first, extended info gets printed
exra. This allows better printf-debugging, because the move info comes
first in any case :).
2. Show "correct" potion-effect strength.
2013-03-12 21:37:14 +01:00
asofold
fc788f55c4 [Bleeding] Optimize preparation for PlayerLocation use.
1. Only collect flags for survivalfly.
2. Set all properties for the to location if it is the same position as
the from location.
2013-03-12 09:59:52 +01:00
asofold
a7c4539783 Let NoFall be more generous with the on-ground search.
Extend xz and y margins.
2013-03-12 08:19:19 +01:00
asofold
7b4fe7acc4 Regroup lost-ground workarounds. Fix some aspects.
Check some preconditions in the check method, delegate to different
methods for different cases, also to have smaller method bodies.

IsAboveStairs is only checked for "mild" y-distances. For faster
descending an individual edge-check has been added.
2013-03-12 07:55:50 +01:00
asofold
409ba0b2ee Don't check god mode for dead players. 2013-03-12 07:05:49 +01:00
asofold
d60c77b66a Confine bounding boxes and y-distance for flag collection.
This leads to less blocks visited. (Cleanup pending.)
2013-03-12 04:25:45 +01:00
asofold
186eec69ab Moving: Only set sfDirty flag if velocity is really used. 2013-03-11 19:18:22 +01:00
asofold
ea0b26ad19 SurvivalFly: adjust "swimup" workarounds.
1. After-failure workarounds checking (performance).
2. Hopefully fixes issues with flowing water and stairs.
2013-03-11 18:42:45 +01:00
asofold
3f2780fe7d Fix block-flag-setup for bukkit-api-only.
Allow all blocks that get the IGN_PASSABLE flag set but which the player
can stand on to be ground from height 0 on (GROUND_HEIGHT, takes
effect unless for blocks with an explicit workaround). Set IGN_PASSABLE
and GROUND_HEIGHT for ENDER_PORTAL_FRAME explicitly.
2013-03-11 07:50:44 +01:00
asofold
ae0cdff5f2 Remove debug message. 2013-03-11 06:34:58 +01:00
asofold
ba8ebb2a61 Fix cauldron workarounds. 2013-03-11 06:34:39 +01:00
asofold
d4616f415d [Bleeding] Various fixes for collision logic and consequent changes.
General:
- Wrong flags checked or flags checked in the wrong way.
- isPassable should use collidesBlock.
- collidesBlock should not see high-value-only matches as collisions.
- collidesCenter returns true for the case of collision (...).

Liquid blocks:
- New flag introduced to model rough liquid height for flowing liquids.
- One more workaround condition for moving in/off liquids.
- Use exact bounding-box for liquids checking in PlayerLocation.
- Check for water first in PlayerLocation.isInLiquid.

Other:
- Alter some block flags and workarounds.
- (other)
2013-03-11 06:01:39 +01:00
asofold
4ff54f0020 Revert setting set-back-y to block bottom on some occasions. 2013-03-11 03:23:10 +01:00
asofold
2fe9f1e668 Higher default capacity for CoordMap instances in BlockCache. 2013-03-10 00:30:00 +01:00
asofold
f882c8bc8c Another attempt to set the bounding box (use Math.round). 2013-03-09 20:04:16 +01:00
asofold
0c59487a0a Use the same Location instance for passable and nofall. 2013-03-09 19:42:16 +01:00
asofold
dfc8e7c5a7 Attempt to fix issues with falling through narrow spots.
The bounding box gets "corrected" by decreasing maxX and maxZ slightly.
This is not a generic approach, might get replaced by something else
later on.
2013-03-09 17:13:33 +01:00
asofold
434a83c398 [BLEEDING] Adjust the set-back y-coordinate to block bottom for some
cases.
2013-03-09 03:53:51 +01:00
asofold
8d9e2fdadc Add more detailed tags to lost-ground workarounds. 2013-03-09 03:53:06 +01:00
asofold
7eab369a00 Alter small-range-tp margin. Add debug info for teleport and setback-y. 2013-03-09 03:04:50 +01:00
asofold
498f23e704 Reduce amount fed to improbable by fight.reach. 2013-03-09 00:34:04 +01:00
asofold
de4faa392d Allow fight.speed to create improbable violations for higher violation
levels.

Might need configuration/testing.
2013-03-08 23:26:57 +01:00
asofold
61bc88b64f Add "strict" method to fight.direction.
Set as default, the "strict" option will also check the angle between
the viewing direction and the direction towards the target. This might
not stay the default method, but it does help against auras in close
combat.
2013-03-08 23:24:51 +01:00
asofold
593ea71c9b Add convenience methods for combinedDirectionCheck. 2013-03-08 23:10:05 +01:00