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
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; |
|
} |
|
} |
|
} |