You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
3.3 KiB
94 lines
3.3 KiB
4 years ago
|
using AX.MessageSystem;
|
||
|
using System;
|
||
|
using System.Collections;
|
||
|
using System.Collections.Generic;
|
||
|
using UnityEngine;
|
||
|
using UnityEngine.UI;
|
||
|
/// <summary>
|
||
|
/// 仅负责获取开启4G图传的人员数据
|
||
|
/// </summary>
|
||
|
public class GetUsers : MonoBehaviour
|
||
|
{
|
||
|
public static List<CloneGameObjInfo> users = new List<CloneGameObjInfo>();
|
||
|
void OnEnable()
|
||
|
{
|
||
|
getTransferableUsers(); //每次开启图传面板时,先获取所有图传人员
|
||
|
MessageDispatcher.SendMessage("UpdateTransferUserItems", users); //通知各子面板生成人员item
|
||
|
MessageDispatcher.AddListener("Update4GTransferUsers", Reset); //一旦有新人员开启图传,重新获取人员列表并通知各子面板生成人员item
|
||
|
}
|
||
|
void OnDisable()
|
||
|
{
|
||
|
MessageDispatcher.RemoveListener("Update4GTransferUsers", Reset);
|
||
|
}
|
||
|
void OnDestroy()
|
||
|
{
|
||
|
MessageDispatcher.RemoveListener("Update4GTransferUsers", Reset);
|
||
|
}
|
||
|
private void Reset(IMessage obj)
|
||
|
{
|
||
|
getTransferableUsers(); //先获取所有图传人员
|
||
|
MessageDispatcher.SendMessage("UpdateTransferUserItems", users); //通知各子面板生成人员item
|
||
|
}
|
||
|
public static event Func<List<CloneGameObjInfo>,bool,List<CloneGameObjInfo>> PicTransferableCheck;
|
||
|
private void getTransferableUsers()
|
||
|
{
|
||
|
//FIXME: 这里不应该新建实例,应当清空
|
||
|
users.Clear();
|
||
|
switch (CurrentUserInfo.role)
|
||
|
{
|
||
|
case Role.None:
|
||
|
break;
|
||
|
case Role.总队指挥中心:
|
||
|
break;
|
||
|
case Role.支队指挥中心:
|
||
|
break;
|
||
|
case Role.导调组:
|
||
|
if (PicTransferableCheck != null)
|
||
|
{
|
||
|
PicTransferableCheck(users,false); //false表示不用检查人员是否为自己下属
|
||
|
}
|
||
|
break;
|
||
|
case Role.观察团:
|
||
|
if (PicTransferableCheck != null)
|
||
|
{
|
||
|
PicTransferableCheck(users,false);
|
||
|
}
|
||
|
break;
|
||
|
case Role.总队指挥:
|
||
|
if (PicTransferableCheck != null)
|
||
|
{
|
||
|
PicTransferableCheck(users,false);
|
||
|
}
|
||
|
break;
|
||
|
case Role.支队指挥:
|
||
|
//找自己支队的UserData
|
||
|
if (PicTransferableCheck != null)
|
||
|
{
|
||
|
PicTransferableCheck(users, true); //true表示需要检查人员是否为自己下属
|
||
|
}
|
||
|
break;
|
||
|
case Role.大队指挥:
|
||
|
//找自己大队的UserData
|
||
|
if (PicTransferableCheck != null)
|
||
|
{
|
||
|
PicTransferableCheck(users, true);
|
||
|
}
|
||
|
break;
|
||
|
case Role.中队指挥:
|
||
|
//无4G图传功能
|
||
|
break;
|
||
|
case Role.战斗班长:
|
||
|
//无4G图传功能
|
||
|
break;
|
||
|
case Role.参谋:
|
||
|
//可以看所有人的图传
|
||
|
if (PicTransferableCheck != null)
|
||
|
{
|
||
|
PicTransferableCheck(users,false);
|
||
|
}
|
||
|
break;
|
||
|
default:
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
}
|