Permissions Panel no longer adds duplicates into the player list on first load.
This commit is contained in:
parent
be83f3a0b2
commit
b6921d760a
@ -26,7 +26,7 @@ public class PermissionsPanel : UdonSharpBehaviour
|
|||||||
[SerializeField] private UdonBehaviour[] _HostEventListeners = new UdonBehaviour[0];
|
[SerializeField] private UdonBehaviour[] _HostEventListeners = new UdonBehaviour[0];
|
||||||
[SerializeField] private UdonBehaviour[] _CameraEventListeners = new UdonBehaviour[0];
|
[SerializeField] private UdonBehaviour[] _CameraEventListeners = new UdonBehaviour[0];
|
||||||
|
|
||||||
private const int MAX_PLAYERS_IN_LIST = 100;
|
private const int MAX_PLAYERS_IN_LIST = 85;
|
||||||
|
|
||||||
|
|
||||||
void Start()
|
void Start()
|
||||||
@ -40,40 +40,46 @@ public class PermissionsPanel : UdonSharpBehaviour
|
|||||||
|
|
||||||
public override void OnPlayerJoined(VRCPlayerApi Player)
|
public override void OnPlayerJoined(VRCPlayerApi Player)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < PlayerData_Name.Length; i++)
|
if (Networking.LocalPlayer == Networking.GetOwner(gameObject))
|
||||||
{
|
{
|
||||||
if (PlayerData_Name[i] == null)
|
for (int i = 0; i < PlayerData_Name.Length; i++)
|
||||||
{
|
{
|
||||||
PlayerData_Name[i] = Player.displayName;
|
if (PlayerData_Name[i] == null)
|
||||||
PlayerData_ID[i] = Player.playerId;
|
{
|
||||||
|
PlayerData_Name[i] = Player.displayName;
|
||||||
|
PlayerData_ID[i] = Player.playerId;
|
||||||
|
|
||||||
PlayerData_Admin[i] = (Player.isInstanceOwner || Player.isMaster);
|
PlayerData_Admin[i] = (Player.isInstanceOwner || Player.isMaster);
|
||||||
PlayerData_Host[i] = (Player.isInstanceOwner || Player.isMaster);
|
PlayerData_Host[i] = (Player.isInstanceOwner || Player.isMaster);
|
||||||
PlayerData_Camera[i] = (Player.isInstanceOwner || Player.isMaster);
|
PlayerData_Camera[i] = (Player.isInstanceOwner || Player.isMaster);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
RebuildPlayerList();
|
RebuildPlayerList();
|
||||||
RequestSerialization();
|
RequestSerialization();
|
||||||
|
}
|
||||||
|
|
||||||
base.OnPlayerJoined(Player);
|
base.OnPlayerJoined(Player);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void OnPlayerLeft(VRCPlayerApi Player)
|
public override void OnPlayerLeft(VRCPlayerApi Player)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < PlayerData_Name.Length; i++)
|
if (Networking.LocalPlayer == Networking.GetOwner(gameObject))
|
||||||
{
|
{
|
||||||
if (PlayerData_Name[i] == Player.displayName)
|
for (int i = 0; i < PlayerData_Name.Length; i++)
|
||||||
{
|
{
|
||||||
PlayerData_Name[i] = null;
|
if (PlayerData_Name[i] == Player.displayName)
|
||||||
break;
|
{
|
||||||
|
PlayerData_Name[i] = null;
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
RebuildPlayerList();
|
RebuildPlayerList();
|
||||||
RequestSerialization();
|
RequestSerialization();
|
||||||
|
}
|
||||||
|
|
||||||
base.OnPlayerLeft(Player);
|
base.OnPlayerLeft(Player);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user