Commit Graph

494 Commits

Author SHA1 Message Date
fullwall
67510c43a5 Add missing permission error to /npc command --permission 2020-06-11 23:31:14 +08:00
fullwall
0693cd3bfc Change /npc command --permissions 2020-06-11 23:19:24 +08:00
fullwall
40bf7444dd Add some detailed help for /npc command 2020-06-11 16:47:55 +08:00
fullwall
244496dca3 Fixes for /npc command sequential 2020-06-11 16:23:48 +08:00
fullwall
1fd6ccbad9 First pass of /npc command sequential 2020-06-11 02:24:03 +08:00
fullwall
500e8527e1 Reorder player update task adding 2020-06-08 16:30:13 +08:00
fullwall
fd14197175 Account for negative max players 2020-05-28 22:34:12 +08:00
fullwall
ef03e224c2 -o implies -p in /npc command 2020-05-21 18:36:59 +08:00
fullwall
df5ed08e32 Add /npc waypoint add 2020-05-16 16:22:15 +08:00
fullwall
4633b75c24 Use new util method 2020-05-15 12:26:21 +08:00
fullwall
d484432f83 Call left click event for vehicles 2020-05-13 13:23:59 +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
0498353751 Update tablist after teleport 2020-05-12 22:13:22 +08:00
fullwall
c1a89984a3 Rework mounted pathfinding 2020-05-12 20:28:41 +08:00
fullwall
c2467b7a25 Adjust horse pathfinding 2020-05-12 16:48:21 +08:00
fullwall
cc14768607 New finder now sets the passenger movement for horses 2020-05-11 20:36:35 +08:00
fullwall
03064a55f5 Increase read timeout of /npc skin --url 2020-05-11 14:15:48 +08:00
fullwall
c79c3cbf88 Add missing messages in waypoint commands 2020-05-10 22:29:34 +08:00
fullwall
bb0aedff0c Prevent concurrent modification of player list 2020-05-10 18:42:58 +08:00
fullwall
10cea99af1 Disable milking protected NPC cows 2020-05-09 22:15:22 +08:00
fullwall
aa0752f7a2 Change /npc sound -s to a toggle and make -d reset silent to false 2020-05-08 13:36:58 +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
c72016046b Fix player movement speed and add iterations per tick setting for new pathfinder 2020-05-06 18:08:12 +08:00
fullwall
e89cd03cce Fix bug with /npc command --n 2020-05-05 21:53:12 +08:00
fullwall
41a3673a9f Make /npc pathopt more usable 2020-05-05 18:40:58 +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
fullwall
92d3605e30 Change default talk item to * 2020-05-05 15:48:35 +08:00
fullwall
071225bcb9 Revert previous change 2020-05-04 21:10:47 +08:00
fullwall
e6cf9b8b08 Clean up multiworld permission check for /npc tphere and don't respawn NPCs who were spawned for another reason 2020-05-04 16:21:34 +08:00
fullwall
a9ddebd8f8 Controllable should allow donkeys/mules to use horse physics, and delay skin respawning by a tick 2020-05-04 16:09:07 +08:00
fullwall
9a4c8e73c2 Micro optimisation 2020-05-03 02:06:33 +08:00
fullwall
5bb346e8c9 Remove cache persistence logic 2020-05-03 00:16:16 +08:00
fullwall
ba31206a4c Add path caching to linear waypoint provider 2020-05-03 00:13:29 +08:00
fullwall
a1744f0e35 Prettify /npc command output a little bit 2020-05-01 20:07:22 +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
fullwall
27f417113a Simplify CitizensNPCRegistry 2020-05-01 00:51:05 +08:00
fullwall
01b3dbfd33 PlayerUpdateTask should now be run on 1.8.8 2020-05-01 00:40:27 +08:00
fullwall
2b94ad8959 Minor cleanup 2020-05-01 00:26:17 +08:00
fullwall
f33c745e19 Add controllable ground direction modifier setting 2020-04-30 23:45:06 +08:00
fullwall
8336fe1b7c Fix load bug in body yaw 2020-04-30 23:11:45 +08:00
fullwall
521c1d3fda Add /npc command permissions for temporary permissions during the command 2020-04-30 21:32:38 +08:00
fullwall
12ffd56981 Add delay argument to /npc command and add a builder-style API for creating new commands 2020-04-30 21:15:24 +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
bbf3f281eb Fix portal removal timing 2020-04-29 19:18:16 +08:00
fullwall
d5667e53f5 Use new API 2020-04-26 12:53:00 +08:00
fullwall
dc72f7526c Support bungee /server command in Citizens command 2020-04-25 19:10:49 +08:00
fullwall
fe8eb4e85d Change how npc looking works 2020-04-25 16:57:31 +08:00
fullwall
f9b0397cab Add --eid option to /npc remove 2020-04-22 23:46:36 +08:00
fullwall
a360810e8d Pre-filter chunk unload entities 2020-04-22 20:25:17 +08:00
fullwall
4bbe797120 QoL change for /npc glowing --color to enable if not previously enabled 2020-04-22 18:00:15 +08:00
fullwall
5e431462e0 Try to remove any previous wander goals 2020-04-22 00:27:25 +08:00
fullwall
000fc19a40 Clear PhTree before recalculation 2020-04-22 00:24:18 +08:00
fullwall
2383e8f551 Further reduce default controllable speed 2020-04-21 23:04:39 +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
06d8e92ff2 Cancel right click event if NPC has talked to someone 2020-04-20 21:44:50 +08:00
fullwall
0531fe859e Implement new AI API for Minecraft 1.15.2, fix Squids 2020-04-20 17:38:56 +08:00
fullwall
725adb009f Cast command cooldowns manually 2020-04-20 00:54:35 +08:00
fullwall
341f7b1990 Incorporate speed modifier into forward controllable speed and boost left/right speed 2020-04-19 18:07:49 +08:00
fullwall
0a8736b690 Add some basic javadoc to SkinTrait 2020-04-19 02:43:08 +08:00
fullwall
2c1ef04614 Migrate /npc skin properly and deprecate skinnable entity methods 2020-04-19 02:13:00 +08:00
fullwall
93af872e93 Ensure /npc skin works while not spawned 2020-04-19 02:09:46 +08:00
fullwall
80011eed41 Revamp SkinnableEntity into SkinTrait 2020-04-19 02:07:03 +08:00
fullwall
9090d1c69b Fix lookclose target invalidation 2020-04-19 01:28:40 +08:00
fullwall
ecae2dbe8a Make wander goal more random 2020-04-19 01:22:55 +08:00
fullwall
b546afa368 Better default skin name detection 2020-04-18 12:31:27 +08:00
fullwall
aaa6397a69 Add new API to avoid default skin fetching 2020-04-18 12:24:29 +08:00
fullwall
c63b6efdf7 Fix NPE in Enderman Equipper 2020-04-16 18:31:45 +08:00
fullwall
d13530ff49 Ensure commands run on main thread 2020-04-16 03:04:42 +08:00
fullwall
b26540619b Merge branch 'master' of github.com:CitizensDev/Citizens2 2020-04-15 04:20:38 +08:00
fullwall
e288bd934c Fix NPE in linear waypoint editor 2020-04-15 04:20:21 +08:00
Tom Miller
fe024923cf
We can optimize a significant portion of LookClose's findNewTarget method with some changes: (#2103)
-Build the list of all potential Players and THEN sort by distance. A good chunk of the method's time was spend sorting things it didn't need to.
-Second, reorder the player checks for best performance, where getNPC() is the cheapest check and isPluginVanished is the most expensive check.

In somewhat minimal testing, these changes almost dropped findNewTarget off of my profiling entirely
2020-04-14 01:57:20 +08:00
fullwall
09f7cbb9d5 Use chunk.getEntities on chunk unload 2020-04-13 21:56:48 +08:00
fullwall
14ebf26935 Try to avoid water more 2020-04-08 23:59:49 +08:00
fullwall
ba13f6c389 Use raw chat messages to perform commands 2020-04-08 23:19:59 +08:00
fullwall
275728e65b Fix cat lying down, remove dead code 2020-04-02 13:28:42 +08:00
fullwall
a535cea8bc Pretty print location in /npc moveto 2020-03-31 21:44:04 +08:00
fullwall
8779062a82 Initialise location cache 2020-03-28 01:51:53 +08:00
fullwall
4cc3c40c87 SpawnReason.COMMAND should try to load the destination spawn location 2020-03-28 01:20:20 +08:00
fullwall
947f4301f3 Set head yaw when teleporting NPCs 2020-03-28 01:14:11 +08:00
fullwall
f0000cdf3b Allow placeholder API in /npc create, fix float persistence bug 2020-03-27 18:50:14 +08:00
fullwall
773058fa22 Add method to wander provider to set XY range properly 2020-03-22 11:51:32 +08:00
fullwall
1cd8e1913e Add head yaw persistence 2020-03-21 18:30:52 +08:00
fullwall
1e507a1d57 Use old logic for glowing colour in 1.12, remove unnecessary respawn in /npc rename for non-Player NPCs 2020-03-21 15:19:46 +08:00
fullwall
5f6026f50b Add --url parameter to /npc skin 2020-03-20 17:29:23 +08:00
fullwall
1ddc78a543 Restore old stuck behaviour 2020-03-16 20:28:41 +08:00
fullwall
46b1ba6e98 Use strings instead of UUID keys 2020-03-07 12:43:16 +08:00
fullwall
f345ef3f16 Restore PR, add --n to /npc command to allow a maximum number of uses per command 2020-03-03 23:40:42 +08:00
fullwall
9f3841c3ec Fix /npc name in 1.8.8 2020-03-03 23:31:04 +08:00
fullwall
188c65f203 Add --permissions to /npc command 2020-03-02 23:40:13 +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
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
fullwall
a8676cd739 Add a new look close setting to control enabling while pathfinding 2020-02-25 13:43:19 +08:00
fullwall
225ede02ce Don't use teleport for flying navigation 2020-02-23 11:08:51 +08:00
fullwall
efc41dc492 Add cooldown option to /npc command 2020-02-22 12:57:03 +08:00
fullwall
0e043843e4 Adjust NPC_NAME_TOO_LONG message 2020-02-21 23:52:53 +08:00
fullwall
de94185133 Fix turtle navigation between biomes 2020-02-21 23:50:35 +08:00
fullwall
e52f616a4b Added sitting flag to /npc panda 2020-02-21 20:28:57 +08:00
fullwall
fca5dc21e0 Make bee always flyable 2020-02-21 17:40:27 +08:00
fullwall
b9a08d609a Reformat project 2020-02-14 22:48:40 +08:00
fullwall
ade25b246a Use Minecraft horse controls 2020-02-14 22:42:03 +08:00
fullwall
3bf5881c4b Fix /npc equip for horses on 1.15, add max controllable speed setting 2020-02-14 19:00:06 +08:00
fullwall
c42d5f7aa0 Catch /npc command exceptions 2020-01-17 18:15:21 +09:00
fullwall
36ff6730fd Allow both hands in /npc command 2020-01-17 18:11:23 +09:00
fullwall
89874092ed Use PlaceholderAPI for /npc command 2020-01-16 20:40:32 +09:00
fullwall
529855bd6d Deregister event handlers in deregisterAll(), empty talk item is now equivalent to * talk item 2020-01-16 17:17:58 +09:00
fullwall
cd21b9fb8a Increase max controllable speed 2020-01-12 21:08:29 +09:00
fullwall
41f4c6e1b4 Properly remove wander waypoint marker 2020-01-12 00:33:43 +09:00
fullwall
a0e3b23bc3 Try to migrate ocelot modifiers trait for new MC versions 2020-01-11 13:41:46 +09:00
fullwall
52e288e43f Add -o option to /npc command 2019-12-29 22:14:38 +09:00
fullwall
ab4060964c Add isPowered method 2019-12-24 00:39:27 +09:00
fullwall
1a0282d970 Fix /npc metadata remove and forward getOptional call to avoid default entity type issue 2019-12-23 11:03:08 +09:00
fullwall
5972e3dffc Make LinearWaypointProvider more null safe 2019-12-21 20:25:38 +09:00
fullwall
3186f6de5e Change waypoints to onAttach 2019-12-21 19:09:50 +09:00
fullwall
8c165b9d55 Warn on missing delay in text prompt 2019-12-19 16:46:26 +09:00
fullwall
688f78ea6f Merge moduled trait code and discontinue building of 1.10 2019-12-12 00:13:54 +08:00
fullwall
ff9c920df3 Initial 1.15 support 2019-12-11 11:25:10 +08:00
fullwall
0a748c7825 Load /npc spawn --at chunk 2019-12-03 19:01:29 +08:00
fullwall
7715232bb3 Add missing p flag to the annotation 2019-12-02 11:28:34 +08:00
fullwall
0d558c8ee1 Add -p flag to /npc command to run as the clicking player 2019-12-02 11:27:15 +08:00
fullwall
798c82536c Fix bug in tpto 2019-11-28 16:14:29 +08:00
fullwall
d0dcb235b3 Various fixes and features 2019-11-28 16:10:35 +08:00
fullwall
94733ddb81
Update NPCCommands.java 2019-11-18 23:55:11 +08:00
fullwall
727d1508e9 Implement new command method 2019-11-12 15:17:54 +08:00
fullwall
174ec609ca Convert to iterator loop 2019-10-20 09:52:07 +08:00
fullwall
771281ef89 Allow tpto to work with 2 arguments 2019-10-19 13:42:37 +08:00
fullwall
63a88acf81 Fix distance calculations for new pathfinder 2019-10-17 18:04:20 +08:00
fullwall
72002e96fa Don't fall through 2019-10-17 17:38:57 +08:00
fullwall
d7e1110d46 Normalise distance margin calculations across implementations and loosen up the y distance restriction 2019-10-16 18:04:55 +08:00
fullwall
d64876dd65 Temp test fix for spawning 2019-10-03 21:33:06 +08:00
fullwall
d72b6ef9e8 Change isSpawned API to use old valid logic. May fix spawning issues. 2019-10-03 13:14:20 +08:00
fullwall
95e9aa1389 Fix new command trait persistence 2019-10-01 14:16:00 +08:00
fullwall
dabe4bb43e Add error colour setting, don't over-paginate for console commands 2019-09-24 22:05:10 +08:00
fullwall
03f3d1a713 Further fix... 2019-09-23 21:30:12 +08:00
fullwall
023ab5e8a6 Wrong load order 2019-09-23 21:12:21 +08:00
fullwall
c072a0887a Add a super simple command - /npc command. More features as required 2019-09-23 20:29:31 +08:00
fullwall
64e47912c7 Further fixes for guided waypoints 2019-09-22 20:14:33 +08:00
fullwall
b14663c588 Fix guided waypoint provider (?) 2019-09-22 19:23:11 +08:00
fullwall
ccdb7b8d92 Add explanatory message for /npc glowing --color 2019-09-17 19:48:21 +08:00
fullwall
b3589e40f9 Further fix to /npc sound 2019-09-17 19:44:43 +08:00
fullwall
3cef996a24 Fix /npc sound -n bug 2019-09-17 19:30:09 +08:00
SkytAsul
b740cf6c5b Fix exception in chat waypoint trigger (#1928) 2019-08-29 17:22:53 +08:00
fullwall
6f4ec9c4cc Implement new method 2019-08-20 14:35:41 +08:00
fullwall
950ab24800 Add onSpawn to another area of Waypoints 2019-08-12 20:49:36 +08:00
fullwall
5a6820957e Scoreboard tag method doesn't exist in 1.8.8 2019-08-08 22:43:12 +08:00
fullwall
d6ee1e0025 Initialise linearwaypointprovider with NPC 2019-08-07 23:38:37 +08:00
fullwall
51984323dc Fix rename issue 2019-07-23 22:04:36 +08:00
Alex 'mcmonkey' Goodwin
783fe7ad2e
fix defaulting of "/npc sound" ambient 2019-07-23 04:38:20 -07:00
fullwall
f4ef934932 Fix scoreboards, villager level 2019-07-19 01:14:52 +08:00
fullwall
68e9ca68b5 Use NMS#look instead of teleporting to set pitch 2019-07-14 00:24:14 +08:00
fullwall
c7b59c84a7 Fix NPE 2019-07-12 19:18:13 +08:00
fullwall
673ee02542 Migrate glowing stuff to new scoreboard trait, add /npc scoreboard 2019-07-12 15:39:38 +08:00
fullwall
f767c2bbd1 Fix /npc glowing --color 2019-07-12 14:48:10 +08:00
fullwall
0e328ee167 Add /waypoints opendoors 2019-07-12 14:35:30 +08:00
fullwall
82e4f2dcea Delay processing of chunkloadevent 2019-07-07 14:44:08 +08:00
fullwall
74836f6cc3 Add /npc villager for 1.14 2019-07-01 16:14:16 +08:00
fullwall
d0b358a27c Change /npc mount permission, force chunk load on spawning due to chunk load 2019-06-12 21:06:06 +08:00
fullwall
7b2f08b372 Update /citizens output 2019-05-31 00:23:28 +08:00
fullwall
e7cba79e1a Add a proper 1.14 solution for KEEP_CHUNKS_LOADED 2019-05-29 16:45:18 +08:00
fullwall
220fc1623d Use PhTree 2019-05-27 23:19:42 +08:00
fullwall
0e747889e7 Add wander delays 2019-05-26 15:40:54 +08:00
fullwall
04daf1c053 Allow /npc horse -c | -b to be used on chestedhorse entities 2019-05-24 18:32:51 +08:00
fullwall
d9afd7ebdf Don't use door code 2019-05-23 17:32:38 +08:00
fullwall
9fa1646ad6 getField should return null on exception 2019-05-21 19:26:33 +08:00
fullwall
8c30a785a4 Add some javadoc 2019-05-16 19:58:29 +08:00
fullwall
65cbb8850f Support java 12 2019-05-16 17:50:59 +08:00
fullwall
f28ccb550b Include C-API javadoc 2019-05-12 20:48:17 +08:00
fullwall
b640788033 Allow chat messages for any equipment slot 2019-05-08 21:04:08 +08:00
fullwall
483c25f11a Add new commands for new 1.14 API 2019-05-07 20:02:14 +08:00
fullwall
b02bcbe38b Temp fix for chunk unloading problem 2019-04-29 15:58:07 +08:00
fullwall
ca8d9c41ea Work around chunk unload change 2019-04-28 20:45:38 +08:00
fullwall
4a73b0faf6 Fix typos for path-distance-margin 2019-04-27 18:31:16 +08:00
fullwall
3e5e77aa3a Remove debug 2019-04-26 23:39:49 +08:00
fullwall
cf874bd301 Temp fix for new 1.14 builds 2019-04-26 23:39:15 +08:00
fullwall
53efb60b68 Add random looking feature to lookclose 2019-04-26 21:14:15 +08:00
fullwall
4c7bc91eaa Fix path distance margin setting 2019-04-26 20:34:21 +08:00
fullwall
cc7d3ae85f Refactor and bugfix customNameUpdate 2019-04-26 18:20:34 +08:00
fullwall
0922694604 Allow users to set the path distance margin as well 2019-04-26 18:10:23 +08:00
fullwall
eac158eb83 Add shulker peek-look-close 2019-04-25 17:11:02 +08:00
fullwall
ca5cb195b7 Reset pitch after navigation end 2019-04-25 17:03:18 +08:00
fullwall
86f4118683 Set destVector for doors as well 2019-04-25 16:57:36 +08:00
fullwall
0f45b85ca3 Compare to destination vector not block vector for A* 2019-04-25 16:55:48 +08:00
fullwall
0ec8ea68e8 Upgrade to MethodHandles 2019-04-25 15:43:44 +08:00
fullwall
2d05ca134e Preliminary 1.14 update 2019-04-24 21:01:22 +08:00
fullwall
d08f56e6b1 Implement events 2019-04-23 22:39:51 +08:00
mcmonkey
043b9e87e5
NPC name coloration quick-patch
this section of code could really stand a total rewrite. Fixes issues with longer-than-16-character coloration, doesn't fix trouble with longer-than-32 if there is any (based on Discord reports)
2019-04-13 07:08:07 -07:00
fullwall
aea3cd37a7 Merge branch 'master' of github.com:CitizensDev/Citizens2 2019-03-28 22:46:45 +08:00
fullwall
068b85a647 Add extra look call to /npc moveto 2019-03-28 22:46:26 +08:00
mcmonkey
2d0370a55e
patch NPE in followTrait#toggle 2019-03-09 10:36:48 -08:00
Alex "mcmonkey" Goodwin
7c348bff13 Update quick-select and talk items to material names (#1710)
also add back-support for if the original IDs are used (there's no good generic legacy ID upverter, but recognizing the old default numbers should suffice for 99% of servers). Should be cross-compatible with all supported minecraft versions, but is *required* in particular for 1.13
2019-03-09 14:19:31 +08:00
mariaum
7d7bf356de Improve 1.8 performance by not just catching exceptions. (#1697) 2019-03-08 00:12:29 +08:00
fullwall
3feaf43f48 Add unmount flag to /npc mount 2019-03-01 20:50:44 +08:00
fullwall
8ed08f0b2e Add skull null check 2019-02-10 12:17:15 +08:00