I'm unable to properly detect when a team member is promoted. The existing hook OnTeamMemberPromote is helpful for preventing a promotion but does not mean the promotion actually occured. I would like to recommend adding the hook OnTeamMemberPromoted which would be called after the promotion takes place.
Thanks in advance for the consideration.
Usage within RelationshipManager.PlayerTeam.SetTeamLeader
public void SetTeamLeader(ulong newTeamLeader)
{
if (Interface.CallHook("OnTeamMemberPromote", (object) this, (object) newTeamLeader) != null)
return;
Facepunch.Rust.Analytics.Azure.OnTeamChanged("promoted", this.teamID, this.teamLeader, newTeamLeader, this.members);
ulong oldTeamLeader = this.teamLeader
this.teamLeader = newTeamLeader;
this.MarkDirty()
Interface.CallHook("OnTeamMemberPromoted", (object) this, (object) oldTeamLeader, (object) newTeamLeader)
}
Documentation
void OnTeamMemberPromoted(RelationshipManager.PlayerTeam team, ulong oldTeamLeader, ulong newTeamLeader)
{
Puts("OnTeamMemberPromoted works!");
}