NyaaCat / LockettePro

LockettePro - A much better Lockette plugin for Bukkit
58 stars 26 forks source link

Creating a sign manually does not add UUIDs #6

Open villermen opened 4 years ago

villermen commented 4 years ago

If you add a sign and type out the names manually, no UUID gets added after the added names (like with /lock 3 [playername]).

If you select a sign created this way with the first user being you, the UUID will be added.

Artoria2e5 commented 4 years ago

The part that handles the update does seem to try to fill in the UUID. The whole re-doing getSelectedSign thing seems a bit out of place though (shouldn't mess things up still, since it's a cache on the other side). https://github.com/NyaaCat/LockettePro/blob/8b63feb/src/main/java/me/crafter/mc/lockettepro/LockettePro.java#L204-L210

The code that does it for the first player seems to be in another place: https://github.com/NyaaCat/LockettePro/blob/8b63febd209b8253995bc3020abf0f5264b5de6b/src/main/java/me/crafter/mc/lockettepro/BlockPlayerListener.java#L72-L75

The main difference between the two seems to be that the "add sign" case performs an ID fetch immediately, while the updateUuidByUsername case does it async (you can't not do it async with all the web stuff). The edit sign case also has some username format checks, but that's unlikely to fail either.