using AX.InputSystem;
using AX.MessageSystem;
using AX.NetworkSystem;
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class AllotButton : BaseButton {
private Transform PowerScrollContent;
private Transform OwnerContent;
///
/// 所选择的力量列表
///
public static List SelectToAllot = new List();
///
/// 选择的要分配给的用户Id
///
public static long SelectUserId = 0;
///
/// 现在所拥有的力量,总力量抛去已经分配出去的。
///
public static List OwnerPowerNowList = new List();
///
/// 该中队所拥有的所有力量
///
public List AllPowerThisTeam = new List();
void Start()
{
PowerScrollContent = transform.parent.Find("PowerScrollView/Viewport/PowerScrollContent");
OwnerContent = transform.parent.Find("OwnerScrollView/Viewport/OwnerContent");
}
public override void RespondFun()
{
if (SelectUserId != 0 && SelectToAllot.Count > 0 )
{
List alloPowers = new List();
//保存所有被移交力量的gameObjID
foreach (GameObject powerObj in SelectToAllot)
{
alloPowers.Add(powerObj.GetComponent().gameObjID);
}
HandOverPair pair = new HandOverPair()
{
powers = alloPowers,
acceptedID = SelectUserId,
senderID = CurrentUserInfo.mySelf.Id
};
//取消所有物体的选中
MessageDispatcher.SendMessage("CANCEL_SELECTED_COMMAND", new CmdArgs());
//发给房间所有人
NetworkManager.Default.SendAsync("HAND_OVER_SYNC", pair);
//MessageDispatcher.SendMessage("HandOverUpdate");
LoadPromptWin.Instance.LoadTextPromptWindow("已移交选中力量", 1);
//取消移交对象选择
SelectUserId = 0;
SelectToAllot.Clear();
MessageDispatcher.SendMessage("CancelAllocateSelectUserID");
}
else if(SelectUserId==0)
{
LoadPromptWin.Instance.LoadTextPromptWindow("请选择移交对象", 1.5f);
}
else if (SelectToAllot.Count <= 0)
{
LoadPromptWin.Instance.LoadTextPromptWindow("请选择移交力量", 1.5f);
}
}
}
public class HandOverPair
{
///
/// 被移交的力量
///
public List powers;
///
/// 被移交的人员ID
///
public long acceptedID;
///
/// 移交人员的ID
///
public long senderID;
}