Wrong SteamID is returned

Status
Not open for further replies.

Jakkee

Retired Staff
Retired Staff
Plugin Developer
Jul 28, 2014
1,465
932
113
Australia
Python:
Server.FindPlayer(BuildingEvent.BuildingPart.OwnerName).SteamID.ToString()
this here returns a random connected player SteamID.

Someone said objects dont hold SteamId's, this could be why its returning random players ID's?
 

balu92

Retired Staff
Retired Staff
Trusted Member
Jul 11, 2014
338
75
28
34
Python:
Server.FindPlayer(BuildingEvent.BuildingPart.OwnerName).SteamID.ToString()
this here returns a random connected player SteamID.

Someone said objects dont hold SteamId's, this could be why its returning random players ID's?
^ under the hood:
Server.FindPlayer("").SteamID.ToString()
 

balu92

Retired Staff
Retired Staff
Trusted Member
Jul 11, 2014
338
75
28
34
FindPlayer under the hood(facepunch function, not ours):
C#:
public static BasePlayer Find (string strNameOrIDOrIP)
{
    BasePlayer basePlayer = BasePlayer.activePlayerList.Find ((BasePlayer x) => x.userID.ToString () == strNameOrIDOrIP);
    if (basePlayer) {
        return basePlayer;
    }
    BasePlayer basePlayer2 = BasePlayer.activePlayerList.Find ((BasePlayer x) => x.displayName.StartsWith (strNameOrIDOrIP, StringComparison.CurrentCultureIgnoreCase));
    if (basePlayer2) {
        return basePlayer2;
    }
    BasePlayer basePlayer3 = BasePlayer.activePlayerList.Find ((BasePlayer x) => x.net != null && x.net.connection != null && x.net.connection.ipaddress == strNameOrIDOrIP);
    if (basePlayer3) {
        return basePlayer3;
    }
    return null;
}
...

BasePlayer basePlayer2 = BasePlayer.activePlayerList.Find ((BasePlayer x) => x.displayName.StartsWith ("", StringComparison.CurrentCultureIgnoreCase));
show me a string that doesn't starts with "" :)
 
  • Like
Reactions: Snake
Status
Not open for further replies.