Closed mfmfuyu closed 1 year ago
VRC Pickup の Disallow Theft を有効にしていても他人がピックアップしているオブジェクトを横取りできてしまうようです
VRC Pickup
Disallow Theft
https://github.com/mimyquality/FukuroUdon/blob/c2ebcafd511ef4fea0f7b68a892ef5cf07fef3d2/Packages/com.mimylab.fukuroudon/Runtime/ManualObjectSync/Scripts/ManualObjectSync.cs#L63 DisallowTheft の値を見てピックアップできるかの判定は上記の箇所で実装されてましたが、確認したところピックアップした人のローカルでのみ動作しているようでした
DisallowTheft
https://github.com/mimyquality/FukuroUdon/blob/c2ebcafd511ef4fea0f7b68a892ef5cf07fef3d2/Packages/com.mimylab.fukuroudon/Runtime/ManualObjectSync/Scripts/ManualObjectSync.cs#L142 上記の _isHeld に [FieldChangeCallback(nameof(IsHeld))] を設定すると一見正しく動作はしていそうなのですが、これで正しい挙動になるのかまでは確認できていません...
_isHeld
[FieldChangeCallback(nameof(IsHeld))]
おっしゃる通り、FieldChangeCallbackの一文が抜けていたために機能していませんでした。 1.4.2にて修正しました。
VRC Pickup
のDisallow Theft
を有効にしていても他人がピックアップしているオブジェクトを横取りできてしまうようですhttps://github.com/mimyquality/FukuroUdon/blob/c2ebcafd511ef4fea0f7b68a892ef5cf07fef3d2/Packages/com.mimylab.fukuroudon/Runtime/ManualObjectSync/Scripts/ManualObjectSync.cs#L63
DisallowTheft
の値を見てピックアップできるかの判定は上記の箇所で実装されてましたが、確認したところピックアップした人のローカルでのみ動作しているようでしたhttps://github.com/mimyquality/FukuroUdon/blob/c2ebcafd511ef4fea0f7b68a892ef5cf07fef3d2/Packages/com.mimylab.fukuroudon/Runtime/ManualObjectSync/Scripts/ManualObjectSync.cs#L142 上記の
_isHeld
に[FieldChangeCallback(nameof(IsHeld))]
を設定すると一見正しく動作はしていそうなのですが、これで正しい挙動になるのかまでは確認できていません...