58 lines
1.3 KiB
C#
58 lines
1.3 KiB
C#
using BitStrap;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class FriendListWidget : MonoBehaviour
|
|
{
|
|
public Image avatarImage;
|
|
|
|
public Image stateImage;
|
|
|
|
public Text nameText;
|
|
|
|
public Text stateText;
|
|
|
|
public Text levelText;
|
|
|
|
public Button showStatsBtn;
|
|
|
|
public Button inviteBtn;
|
|
|
|
[ReadOnly]
|
|
public SteamStatsManager.SteamUser steamUser;
|
|
|
|
[HideInInspector]
|
|
public PlayersGUI playersGUI;
|
|
|
|
public void RefreshWidget()
|
|
{
|
|
if (steamUser != null)
|
|
{
|
|
if ((bool)steamUser.avatarMedium)
|
|
{
|
|
avatarImage.sprite = Sprite.Create(steamUser.avatarMedium, new Rect(0f, 0f, steamUser.avatarMedium.width, steamUser.avatarMedium.height), new Vector2(0.5f, 0.5f));
|
|
}
|
|
else
|
|
{
|
|
avatarImage.sprite = null;
|
|
}
|
|
stateImage.color = SteamStatsManager.Instance.GetUserStateColor(steamUser);
|
|
nameText.text = steamUser.friendName;
|
|
levelText.text = Utilities.GetTranslation("LEADERBOARDS/LEVEL") + " " + steamUser.level;
|
|
inviteBtn.interactable = (bool)GameController.Instance && PhotonNetwork.room != null;
|
|
}
|
|
}
|
|
|
|
public void ShowStats()
|
|
{
|
|
playersGUI.steamUserWidget.steamUser = steamUser;
|
|
playersGUI.steamUserWidget.photonPlayer = null;
|
|
playersGUI.ChangeState(PlayersGUI.State.STATS);
|
|
}
|
|
|
|
public void InviteFriend()
|
|
{
|
|
SteamStatsManager.Instance.InviteFriend(steamUser);
|
|
}
|
|
}
|