Browse Source

消防员未装备管线连接水源可以移动问题修改

develop
曹衍涛 4 years ago
parent
commit
2db14d8af6
  1. 15
      Assets/Scripts/Common/Cars/AgentController.cs
  2. 18
      Assets/Scripts/Common/Fireman/FireManControl.cs
  3. 4
      Assets/Scripts/DongYouLiQing/BaseCommander/FiremanSkill/LayWaterHose/LayWaterHose.cs
  4. 7
      Assets/Scripts/DongYouLiQing/BaseCommander/SkillPanel/FireManSkillPanelController.cs

15
Assets/Scripts/Common/Cars/AgentController.cs

@ -128,6 +128,21 @@ public class AgentController : MonoBehaviour
}
}
}
if (GetComponent<FireManControl>())
{
if (GetComponent<FireManControl>().WorkType == FireManSkills.SprayFoam ||
GetComponent<FireManControl>().WorkType == FireManSkills.SprayWater
//GetComponent<FireManControl>().WorkType == FireManSkills.LayLifeSavingFlarePath||
//GetComponent<FireManControl>().WorkType == FireManSkills.LayWaterHose
)
{
if (GetComponent<LayWaterHose>().remainlenght < 0.5f)
{
return;
}
}
}
begionmove = true;
var data = (PathFindingCmdArgs)obj.Data;
pointhit = data.hitPoint;

18
Assets/Scripts/Common/Fireman/FireManControl.cs

@ -742,13 +742,17 @@ public class FireManControl : MonoBehaviour
}
else
{
float realewater = 0;//实际分到的水量=自己的流量/直接水源的总流量*直接水源总水量
float dirTotalFlow = waterhosemanage.ConnentSource.GetComponent<WaterSource>().TotalFlow;
realewater = (Flow / dirTotalFlow) * remainwater;
if (Flow != 0)
remaintime = Mathf.CeilToInt(realewater / Flow);
else
remaintime = 0;
if (waterhosemanage.ConnentSource)
{
float realewater = 0;//实际分到的水量=自己的流量/直接水源的总流量*直接水源总水量
float dirTotalFlow = waterhosemanage.ConnentSource.GetComponent<WaterSource>().TotalFlow;
realewater = (Flow / dirTotalFlow) * remainwater;
if (Flow != 0)
remaintime = Mathf.CeilToInt(realewater / Flow);
else
remaintime = 0;
}
}
remain = new KeyValuePair<int, float>(remaintime, remainwater);

4
Assets/Scripts/DongYouLiQing/BaseCommander/FiremanSkill/LayWaterHose/LayWaterHose.cs

@ -331,7 +331,7 @@ public class LayWaterHose : MonoBehaviour
// GetComponent<FireManWaterHoseManager>().WaterHoseLenghtRemain =
// GetComponent<FireManWaterHoseManager>().NowRemainWaterHose * 20 + GetComponent<FireManWaterHoseManager>().OverLenght;
//}
//如果当前起始位置与上一次铺设的末点距离较近,则认为此次铺设是上一次铺设的继续
if (endPoint != Vector3.zero && Vector3.Distance(transform.position, endPoint) < 5)
{
@ -950,7 +950,7 @@ public class LayWaterHose : MonoBehaviour
}
else
{
LoadPromptWin.Instance.LoadTextPromptWindow("距离太远,无法自动拿起管线", 1f);
LoadPromptWin.Instance.LoadTextPromptWindow("距离放下水带太远,无法自动拿起管线,请靠近当前放下管线或者重新连接水源", 1f);
}
}

7
Assets/Scripts/DongYouLiQing/BaseCommander/SkillPanel/FireManSkillPanelController.cs

@ -915,6 +915,13 @@ public class FireManSkillPanelController : MonoBehaviour
//InputManager.skill = true;
SelectFireMan.GetComponent<FireManControl>().workType = FireManSkills.LayWaterHose;
if (SelectFireMan.GetComponent<FireManWaterHoseManager>().WaterHoseLenghtRemain <= 0)
{
LoadPromptWin.Instance.LoadTextPromptWindow("未装备水带或水带已用完", 1f);
LayWaterHoseToggle.transform.Find("Label").GetComponent<Text>().text = "放下水带";
return;
}
if (!SelectFireMan.GetComponent<AgentController>().pathFindEnable)
{
SelectFireMan.GetComponent<AgentController>().pathFindEnable = true;

Loading…
Cancel
Save