Commit Graph

302 Commits

Author SHA1 Message Date
fullwall
d34fd48533 Make lookAtFunction use packets for yaw, tweak API further 2022-12-06 23:50:11 +08:00
fullwall
c935caa140 Remove some dead code 2022-12-03 21:02:59 +08:00
fullwall
ede598cc9b Fix some issues with ShopTrait item costs/results and add NBT filter API. Adjust /npc item to be more flexible. 2022-12-03 18:21:46 +08:00
fullwall
8a65d4a5a0 Add way to set custom name directly 2022-11-30 06:13:55 +08:00
fullwall
b8050199f1 Add per-player rotation API 2022-11-28 23:10:50 +08:00
fullwall
d9c55b97b0 Implement cancellable variant 2022-11-14 23:53:14 +08:00
fullwall
ed9230c680 Implement knockback event 2022-11-13 23:33:18 +08:00
fullwall
da19c909fe Implement isPushableByFluid metadata up to 1.13.2 2022-11-13 20:54:06 +08:00
fullwall
85dd78e582 Fix NMS#sleep 2022-11-12 19:50:05 +08:00
fullwall
35245a580b Fix /npc pickupitems message and for players, null casing for /npc panimate START_SLEEPING 2022-11-10 21:31:32 +08:00
fullwall
73689cf9c2 Widen navigating definition 2022-11-07 23:30:39 +08:00
fullwall
f8cdbc4515 Add SleepTrait 2022-10-25 17:07:11 +08:00
fullwall
f6d7ebe809 Add STOP_ELYTRA PlayerAnimation, add a right click option to /npc shop to avoid having to make a command for it 2022-10-22 10:42:44 +08:00
fullwall
d04ea81225 WIP fix for NPCs not despawning properly 2022-10-17 01:17:32 +08:00
fullwall
fc83c28085 Consolidate sit implementation, persist sit location to avoid sinking over successive restarts 2022-10-04 23:42:23 +08:00
md5nake
d29781e0b5
Make pathfinder max visited nodes configurable (#2902) 2022-10-02 02:44:06 +08:00
fullwall
03e757d411 Fix wither arrow shield typo 2022-09-15 01:01:48 +08:00
fullwall
1977e146d0 Try to deploy parent pom 2022-09-10 10:08:33 +08:00
fullwall
d64cfda050 Update poms for new repo 2022-09-09 19:05:23 +08:00
fullwall
1ccc2eae6d Adjust /npc wither charged -> invulnerable, add arrow-shield 2022-09-08 13:28:14 +08:00
fullwall
7b3c0c8126 Add /npc allay 2022-07-28 06:36:51 +08:00
fullwall
ddf5660c66 Stop anvil guis from giving out input items 2022-07-26 15:08:13 +08:00
fullwall
5dbc578fd2 Integrate team creation directly into ScoreboardTrait 2022-07-25 23:14:00 +08:00
fullwall
b28348ec52 Cleanup 2022-07-22 16:40:18 +08:00
fullwall
d7ce79fe85 Update maven pom plugin version and trial a microoptimisation for players 2022-07-22 15:22:55 +08:00
fullwall
b6eb42e07f Fix updateInventoryTitle on containers 2022-07-22 00:57:36 +08:00
fullwall
58b53174c8 Fix itemframes, add /npc debug command, don't lowercase skin names early in skintrait 2022-07-15 10:21:44 +08:00
fullwall
4dfac9c62d Remove team unregistering to ScoreboardTrait, add scoreboard-teams send ticks to assist with a possible scoreboard conflict 2022-07-13 20:09:21 +08:00
fullwall
3fcf8931f7 Consolidate versioned trait commands 2022-07-10 01:53:34 +08:00
fullwall
98c2d3492a Add /npc piglin --dancing 2022-07-07 23:34:15 +08:00
fullwall
35dd4078dd Fix double updating bee/bat/ghast AI 2022-07-05 19:13:31 +08:00
fullwall
36cbef81a7 Fix dropstrait, allow player hurt/death sound to be set 2022-06-24 12:43:23 +08:00
fullwall
bf532728d1 Set destination even for non NPCs 2022-06-22 12:35:01 +08:00
fullwall
318596c715 Adjust minecraft pathfinder to look less frequently and pathfind closer to destination in players 2022-06-21 23:52:25 +08:00
fullwall
a64ad43d11 Fix block breaker on old versions not picking up the entity held item 2022-06-17 20:36:05 +08:00
fullwall
4768a4f76a Add SitTrait for NPCs 2022-06-14 21:38:15 +08:00
fullwall
2e2a83779e Implement anvil GUI 2022-06-12 19:49:21 +08:00
fullwall
21f3a7755a Implement new API 2022-06-12 01:37:38 +08:00
fullwall
4c3224efad Remove eclipse compiler from poms 2022-06-08 14:07:33 +08:00
fullwall
d94e83b74c Attempt to update to 1.19 2022-06-08 11:58:22 +08:00
fullwall
2341ccfbf9 Update references 2022-04-28 13:47:50 +08:00
fullwall
8694603c85 Refactor PlayerControllerLook into RotationTrait 2022-04-25 02:22:39 +08:00
fullwall
324d94a21f Rename /npc pose --save to /npc pose --mirror and add /npc pose --save to save the current NPC pose 2022-04-24 19:22:55 +08:00
fullwall
3685d33980 Add /npc bossbar --track and fix equipment caching logic 2022-04-23 13:42:48 +08:00
fullwall
53d7a23d9f Renamings from NMS 2022-04-19 15:37:35 +08:00
fullwall
b0f1290b58 Change EAT_FOOD to LEAVE_BED in 1.18/17 2022-04-13 11:14:37 +08:00
fullwall
908e678135 entityBaseTick should update some variables 2022-03-10 03:12:43 +08:00
fullwall
897c511757 Fix dragon yaw and make it same as rider yaw. Refactor out redundant calculation of yaw 2022-02-20 22:34:29 +08:00
fullwall
97d4c3b117 Make nonliving entities look at entities too, fix /npc lookclose with shulkers spamming noises 2022-02-20 21:56:51 +08:00
fullwall
626b6d6b42 Allow NPCs to push other entities 2022-02-20 21:21:50 +08:00
fullwall
ecbab327ed Fix some bugs 2022-02-20 10:04:09 +08:00
fullwall
be019c0e83 Refactor blockbreaker, add /npc blockbreak 2022-02-20 01:05:38 +08:00
fullwall
b12ae2ee66 Improve underwater pathfinding, cleanup 2022-02-19 18:26:37 +08:00
fullwall
b26dfb3d0f Implement new PathStrategy method, improve swimming navigation 2022-02-19 16:36:31 +08:00
fullwall
984ce6d9e7 Improve underwater mobs staying in place 2022-02-16 17:36:03 +08:00
fullwall
bef0f16f3b Cancel current move destination when navigator paused 2022-02-02 21:40:19 +08:00
fullwall
77aa63f1ff Trial minor optimisation 2022-01-22 21:08:55 +08:00
fullwall
7683516d62 Avoid setting NPC.COLLIDABLE_METADATA on Player NPCs 2022-01-20 17:10:52 +08:00
fullwall
bf3bf6f776 Add /npc llama -c/b 2022-01-02 01:33:19 +08:00
fullwall
5fffa23e94 Add packet update delay setting 2022-01-02 01:22:35 +08:00
fullwall
85cf761933 Further micro-optimisation 2021-12-29 00:42:20 +08:00
fullwall
b933246a95 Implement a surprisingly missed optimisation 2021-12-29 00:30:53 +08:00
fullwall
19ee0e2c19 Use metadata and track players if on the playerlist which should make mobs spawn nearby 2021-12-28 20:13:25 +08:00
fullwall
750f8e2e4c Implement helper methods and allow hologram lines to be items 2021-12-27 23:59:21 +08:00
fullwall
71a6e43c0e Reduce eclipse compiler version 2021-12-01 23:13:32 +08:00
fullwall
bbae8d83d5 Trial updating eclipse compiler version 2021-12-01 23:09:38 +08:00
fullwall
22fe84831e Initial 1.18 update 2021-12-01 22:56:22 +08:00
fullwall
8f341ccaf2 Implement new metadata 2021-11-28 00:09:30 +08:00
fullwall
3da3cc2ae8 Fix /npc villager --profession error message, more sane boundingbox calculation 2021-11-27 12:19:19 +08:00
fullwall
840f32469b First pass at fall damage 2021-10-25 00:22:19 +08:00
fullwall
19c07ff1f5 Null check /npc bossbar 2021-10-14 18:05:19 +08:00
fullwall
fd3833deba Backport bukkitEntity change 2021-09-27 20:50:38 +08:00
fullwall
3d3de6576d Use onPreSpawn event to avoid 'FOUC' in armorstands. Fix invulnerable ticks being reduced too quickly. 2021-09-23 14:12:44 +08:00
fullwall
f9bb877e85 Explicit types for 1.14 and 1.15 2021-09-20 21:16:40 +08:00
fullwall
db825cce72 Add rough impl of SneakTrait 2021-09-20 20:59:54 +08:00
fullwall
b930cb2460 Block invalid item material AIR 2021-08-31 02:06:31 +08:00
fullwall
d4c557d5b2 Improve /npc text editor, implement speech bubbles, allow armor stands to pathfind using the A* finder, allow /npc bossbar to work on all entities 2021-07-19 23:02:41 +08:00
fullwall
f2d4c38843 Preliminary update to 1.17 - known bugs include every entity glowing 2021-06-13 03:20:18 +08:00
Alex "mcmonkey" Goodwin
4dc123bb4b
Refactor scoreboard handling to use instant scoreboard application at spawn (#2544)
Full description in PR https://github.com/CitizensDev/Citizens2/pull/2544
2021-05-08 02:02:17 +08:00
fullwall
c24ce1e1ed Use NMS methods for isSolid checking 2021-04-30 10:31:25 +08:00
fullwall
15f57c4970 Add null checks 2021-01-24 20:51:12 +08:00
fullwall
9cbc1c6bd8 Send equipment packets when equipment changes 2021-01-24 19:25:59 +08:00
fullwall
688ba3af8e Avoid errors with missing metadata 2021-01-20 17:55:34 +08:00
fullwall
0a6b1235db Reduce jar size by refactoring push event 2021-01-03 00:09:21 +08:00
fullwall
0111600aa8 Fix /npc polarbear message and simplify behavior map entities to work with /npc ai 2020-12-17 13:38:02 +08:00
fullwall
fe7f6e373f Add /npc polarbear -r and restore target and goal selectors 2020-12-17 13:13:23 +08:00
fullwall
556c58a7f6 Only jump with head height
distance of above
2020-12-16 01:16:04 +08:00
fullwall
7743763d3c Refactor common code, add missing condition 2020-11-14 18:41:21 +08:00
fullwall
dffbf60465 Simplify inBlock check to avoid chunk loading 2020-11-14 17:27:54 +08:00
fullwall
e52a3c4685 Extend CraftTippedArrow 2020-10-24 13:39:25 +08:00
fullwall
a944c3ca9c Make mob entity uuids the same as their NPC uuid 2020-10-18 18:32:33 +08:00
fullwall
9f7e57fbda Add spaces between /npc villager output 2020-10-03 22:13:47 +08:00
fullwall
8c1b51da98 Look more often even if target hasn't moved much 2020-09-16 21:58:15 +08:00
fullwall
0db8f37eeb Block right click water bucket for protected NPC fish 2020-09-16 20:35:34 +08:00
fullwall
7450c4db45 Use new getOrAddTrait methodf 2020-09-14 17:57:58 +08:00
fullwall
ab16b50814 Try to avoid handling player properties twice if respawning in the same tick 2020-09-13 16:16:54 +08:00
fullwall
934f94e137 Add setting for max minecraft pathfinder fall distance 2020-09-05 15:13:34 +08:00
fullwall
0c7dd3b4f0 Set default invulnerability ticks to 0 2020-09-01 23:51:17 +08:00
fullwall
c4e4d2f300 Add tablist remove delay setting 2020-08-28 22:55:07 +08:00
Alex "mcmonkey" Goodwin
a79e8a571a
Patch consistent application of scoreboard teams (#2302)
* Patch consistent application of scoreboard teams

This corrects issues with scoreboard team logic by ensuring NPCs use a consistent internal name, rather than randomizing

* apply team name tag visible=false earlier
2020-08-28 22:43:14 +08:00
fullwall
45907da2d7 Hologram bugfixes 2020-08-11 22:47:45 +08:00
fullwall
d9762be13b Use head height for block breaker 2020-08-08 23:08:08 +08:00
fullwall
b902879ca6 Fix gravity 2020-08-08 15:21:54 +08:00
fullwall
2a8f54f2d6 Move movement code into playerTick to avoid inter-world crashes 2020-07-27 17:14:57 +08:00
fullwall
0a4905c0f3 Randomise name if using holograms to have unique scoreboard names 2020-07-08 18:58:39 +08:00
fullwall
0a58215541 Use holograms instead of scoreboard for names 2020-07-06 16:37:34 +08:00
fullwall
d333c98823 Refactor getHeight for NMS 2020-07-06 08:42:46 +08:00
fullwall
9d2cad098a Implement new bounding box checker for pathfinding 2020-06-30 20:39:40 +08:00
fullwall
c9564c4be2 Implement enderman methods 2020-06-27 15:41:47 +08:00
fullwall
1505ccfeca Extra NPE check 2020-06-27 15:17:29 +08:00
fullwall
04519d868b Initial 1.16 commit 2020-06-25 17:24:32 +08:00
fullwall
c5bcfdc8cd Reformat 2020-06-12 20:02:48 +08:00
fullwall
b68782d661 Backport to 1.13/14 2020-06-12 19:57:45 +08:00
fullwall
df2c7689fe Fix 1.14 2020-05-20 16:29:43 +08:00
fullwall
3a27dd79bf Fix compile error 2020-05-16 20:25:02 +08:00
fullwall
e7368747c7 Rework packet sending to avoid replacing the entity tracker entry 2020-05-16 19:13:19 +08:00
fullwall
d484432f83 Call left click event for vehicles 2020-05-13 13:23:59 +08:00
fullwall
241810eedc Delay remove packet one tick 2020-05-12 23:50:54 +08:00
fullwall
0b922011bd Rework tablist for recent versions 2020-05-12 23:12:39 +08:00
fullwall
5e2a7efb9e Revert view distance tracking code 2020-05-12 22:33:54 +08:00
fullwall
c1a89984a3 Rework mounted pathfinding 2020-05-12 20:28:41 +08:00
fullwall
a044eed988 Attempted fix for /npc tphere - make NPCs tracked over a longer range than previously 2020-05-12 19:43:52 +08:00
fullwall
c2467b7a25 Adjust horse pathfinding 2020-05-12 16:48:21 +08:00
fullwall
9d6a9f7a14 Just block right clicks for mushroom cows if protected 2020-05-10 13:38:02 +08:00
fullwall
10cea99af1 Disable milking protected NPC cows 2020-05-09 22:15:22 +08:00
fullwall
3cf8c7c256 Fix bug with /npc snowman /npc pufferfish and make /npc ocelot more descriptive 2020-05-07 16:29:45 +08:00
fullwall
e1f749236b Fix /npc mushroomcow, increase base player speed 2020-05-06 11:13:54 +08:00
Alex "mcmonkey" Goodwin
30f2dee4d7
Reduce potential for errors with packet teams (#2138)
* Reduce potential for errors with packet teams

Move scoreboard removal out of NMS to event method, and make more unique names

* remove unneeded isCancelled check
2020-05-05 18:20:56 +08:00
Alex "mcmonkey" Goodwin
2c24671ae3
simplify scoreboard patch to be 100% packet based (#2129)
* simplify scoreboard patch to be 100% packet based

which fixes edge case client errors

* fix edge cases of respawning and multinpc boards
2020-05-01 17:49:25 +08:00
fullwall
16c418415b Cleanup, reduce number of packets per packet update cycle 2020-05-01 17:49:03 +08:00
fullwall
a2208f0d32 Minor style changes 2020-05-01 01:47:07 +08:00
Alex "mcmonkey" Goodwin
981ade8974
patch the majority of potential scoreboard packet errors (#2128) 2020-05-01 01:39:07 +08:00
Alex "mcmonkey" Goodwin
0e31ffb9f8
Implement packet-based scoreboard team enforcement (#2127)
* Implement packet-based scoreboard team enforcement

This should fix incompatibility with scoreboard plugins that break the main scoreboard

* impl to 1.8-1.12, move event logic, fix Setting usage

* pull setting if to outside of foreach loop

* fix return vs continue, minor opti as requested
2020-04-30 20:51:10 +08:00
fullwall
8109a90440 Fix saving of body vs head yaw 2020-04-30 19:11:56 +08:00
fullwall
32429f140d Run clientside player ticking at a different time 2020-04-29 20:56:39 +08:00
fullwall
a269bf1ccc Revert entity looking changes for now 2020-04-26 21:28:51 +08:00
fullwall
fe8eb4e85d Change how npc looking works 2020-04-25 16:57:31 +08:00
fullwall
655bdf0001 Change how NPC looking works so that body yaw matches head yaw after a tick 2020-04-21 22:24:13 +08:00
fullwall
0531fe859e Implement new AI API for Minecraft 1.15.2, fix Squids 2020-04-20 17:38:56 +08:00
fullwall
80011eed41 Revamp SkinnableEntity into SkinTrait 2020-04-19 02:07:03 +08:00
fullwall
14ebf26935 Try to avoid water more 2020-04-08 23:59:49 +08:00
fullwall
275728e65b Fix cat lying down, remove dead code 2020-04-02 13:28:42 +08:00
fullwall
1cd8e1913e Add head yaw persistence 2020-03-21 18:30:52 +08:00
fullwall
1ddc78a543 Restore old stuck behaviour 2020-03-16 20:28:41 +08:00
fullwall
9f3841c3ec Fix /npc name in 1.8.8 2020-03-03 23:31:04 +08:00
fullwall
496a4cbb3b Use Minecraft's no gravity logic and enable it for all default flying NPCs 2020-03-02 14:51:54 +08:00
fullwall
bd95e7d364 Remove some dead code 2020-03-01 15:33:48 +08:00
fullwall
87c2a884c5 Merge branch 'master' of github.com:CitizensDev/Citizens2 2020-03-01 15:30:00 +08:00
fullwall
95ab688877 Fix shulker color setting 2020-03-01 15:29:47 +08:00
fullwall
ad69b483db Add /npc snowman 2020-02-25 14:12:06 +08:00