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.
90 lines
2.7 KiB
90 lines
2.7 KiB
4 years ago
|
using System;
|
||
|
using System.Collections;
|
||
|
using System.Collections.Generic;
|
||
|
using UnityEngine;
|
||
|
using AX.NetworkSystem;
|
||
|
using AX.MessageSystem;
|
||
|
using UnityEngine.UI;
|
||
|
|
||
|
public struct FireDeployLeftSYNCData
|
||
|
{
|
||
|
public string modeName;
|
||
|
public string modeItemName;
|
||
|
public bool selected;
|
||
|
}
|
||
|
|
||
|
public class FireDepolySYNCInfo
|
||
|
{
|
||
|
public List<FireDeployLeftSYNCData> fireDeployLeftSYNCDatas = new List<FireDeployLeftSYNCData>();
|
||
|
public FireDeployCameraSYNCData fireDeployCameraSYNCData = new FireDeployCameraSYNCData();
|
||
|
public List<FireDeploySYNCDATA> fireDeploySYNCDATAs = new List<FireDeploySYNCDATA>();
|
||
|
}
|
||
|
|
||
|
public class FireDeploySend : BaseButton
|
||
|
{
|
||
|
public static FireDeploySend Instance;
|
||
|
FireDepolySYNCInfo fireDepolySYNCInfo;
|
||
|
|
||
|
public List<UserData> receivers = new List<UserData>();
|
||
|
public Transform Content;
|
||
|
|
||
|
private void Start()
|
||
|
{
|
||
|
Instance = this;
|
||
|
|
||
|
Content = transform.parent.Find("Scroll View/Viewport/Content");
|
||
|
}
|
||
|
|
||
|
public override void RespondFun()
|
||
|
{
|
||
|
fireDepolySYNCInfo = new FireDepolySYNCInfo();
|
||
|
|
||
|
fireDepolySYNCInfo.fireDeployCameraSYNCData.targetPos =
|
||
|
GameObject.Find("FireDeployCamera").GetComponent<FireDeployCameraManager>().target.position;
|
||
|
fireDepolySYNCInfo.fireDeployCameraSYNCData.cameraSize =
|
||
|
GameObject.Find("FireDeployCamera").GetComponent<Camera>().orthographicSize;
|
||
|
|
||
|
fireDepolySYNCInfo.fireDeployLeftSYNCDatas.Clear();
|
||
|
MessageDispatcher.SendMessage("GET_DEPLOY_LEFT_SYNCDATA");
|
||
|
|
||
|
fireDepolySYNCInfo.fireDeploySYNCDATAs.Clear();
|
||
|
MessageDispatcher.SendMessage("GET_DEPLOY_SYNCDATA");
|
||
|
|
||
|
receivers.Clear();
|
||
|
foreach (Transform item in Content)
|
||
|
{
|
||
|
if (item.GetComponent<Toggle>().isOn)
|
||
|
{//作战部署信息发送给选中的中队,及他的上下级,(默认发给导调组,观察团)
|
||
|
receivers.Add(item.GetComponent<SenderItemMessage>().receiverUser);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
foreach (UserData user in receivers)
|
||
|
{
|
||
|
NetworkManager.Default.SendAsync("FIREDEPLOY_SYNC", new KeyValuePair<long, FireDepolySYNCInfo>(user.UserInfo.Id, fireDepolySYNCInfo));
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public void AddFireDeploySYNCDATA(FireDeploySYNCDATA syncData)
|
||
|
{
|
||
|
fireDepolySYNCInfo.fireDeploySYNCDATAs.Add(syncData);
|
||
|
}
|
||
|
|
||
|
public void AddFireDeployLeftSYNCData(FireDeployLeftSYNCData syncData)
|
||
|
{
|
||
|
fireDepolySYNCInfo.fireDeployLeftSYNCDatas.Add(syncData);
|
||
|
}
|
||
|
|
||
|
private void Update()
|
||
|
{
|
||
|
if (!CurrentUserInfo.generalCommanding)
|
||
|
{
|
||
|
transform.GetComponent<Button>().interactable = false;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
transform.GetComponent<Button>().interactable = true;
|
||
|
}
|
||
|
}
|
||
|
}
|