From 5d4856099c79ed1ee101da82db62dc90fcdc1eb2 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期二, 07 五月 2019 14:38:06 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
Core/NetworkPackage/DTCFile/ServerPack/HA8_Item/DTCA813_tagMCVirtualItemDrop.cs | 11 ++++++++++-
System/HazyRegion/HazyRegionIncidentPanel.cs | 5 ++++-
System/HazyRegion/HazyRegionModel.cs | 3 +--
System/HazyRegion/HazyRegionIncidentBehaviour.cs | 15 ++++++++++++---
System/Dungeon/DungeonFightWin.cs | 4 +++-
Fight/Stage/MapEditor/Game/ClientSceneManager.cs | 4 ++++
6 files changed, 34 insertions(+), 8 deletions(-)
diff --git a/Core/NetworkPackage/DTCFile/ServerPack/HA8_Item/DTCA813_tagMCVirtualItemDrop.cs b/Core/NetworkPackage/DTCFile/ServerPack/HA8_Item/DTCA813_tagMCVirtualItemDrop.cs
index 89edf53..deec120 100644
--- a/Core/NetworkPackage/DTCFile/ServerPack/HA8_Item/DTCA813_tagMCVirtualItemDrop.cs
+++ b/Core/NetworkPackage/DTCFile/ServerPack/HA8_Item/DTCA813_tagMCVirtualItemDrop.cs
@@ -21,7 +21,16 @@
return;
}
- Vector3 _pos = new Vector3((package.PosX - GA_Hero.MapOffset.x) * .5f, 0, (package.PosY - GA_Hero.MapOffset.z) * .5f);
+ Vector3 _pos;
+
+ if (package.PosX == 0 && package.PosY == 0)
+ {
+ _pos = ClientSceneManager.Instance.lastDeadPos;
+ }
+ else
+ {
+ _pos = new Vector3((package.PosX - GA_Hero.MapOffset.x) * .5f, 0, (package.PosY - GA_Hero.MapOffset.z) * .5f);
+ }
RaycastHit _hitInfo;
if (Physics.Raycast(_pos + new Vector3(0, 30, 0), Vector3.down, out _hitInfo, 100, LayerUtility.WalkbleMask))
diff --git a/Fight/Stage/MapEditor/Game/ClientSceneManager.cs b/Fight/Stage/MapEditor/Game/ClientSceneManager.cs
index 1ef45c7..56bec93 100644
--- a/Fight/Stage/MapEditor/Game/ClientSceneManager.cs
+++ b/Fight/Stage/MapEditor/Game/ClientSceneManager.cs
@@ -90,6 +90,8 @@
}
}
+ public Vector3 lastDeadPos { get; private set; }
+
public void NpcDead(int eventID, GActor npc, int npcID)
{
if (eventID < 0 || npc == null)
@@ -110,6 +112,8 @@
m_EventActorDict[eventID].Remove(npc);
}
}
+
+ lastDeadPos = npc.Pos;
}
public void Handle_0820(H0820_tagMissionDict package)
diff --git a/System/Dungeon/DungeonFightWin.cs b/System/Dungeon/DungeonFightWin.cs
index d4eb3e9..d58127e 100644
--- a/System/Dungeon/DungeonFightWin.cs
+++ b/System/Dungeon/DungeonFightWin.cs
@@ -79,7 +79,8 @@
m_Liquid.gameObject.SetActive(false);
var dataMapId = model.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
m_ExitDungeon.gameObject.SetActive(dataMapId != DemonJarModel.DEMONJAR_MAPID
- && !CrossServerUtility.IsCrossServerOneVsOne());
+ && !CrossServerUtility.IsCrossServerOneVsOne()
+ && !hazyDemonKingModel.IsInDungeon);
m_ContainerAncient.gameObject.SetActive(dataMapId == 31160);
m_BossInfosContainer.gameObject.SetActive(
dataMapId == ElderGodAreaModel.ELDERGODAREA_MAPID
@@ -122,6 +123,7 @@
break;
case JadeDynastyBossModel.JADEDYNASTY_MAP:
case AllianceBossModel.DATAMAPID:
+ case RidingPetBossModel.RIDINGPETBOSS_MAP:
m_Inspire.gameObject.SetActive(true);
break;
default:
diff --git a/System/HazyRegion/HazyRegionIncidentBehaviour.cs b/System/HazyRegion/HazyRegionIncidentBehaviour.cs
index c8719c6..6cb574f 100644
--- a/System/HazyRegion/HazyRegionIncidentBehaviour.cs
+++ b/System/HazyRegion/HazyRegionIncidentBehaviour.cs
@@ -103,8 +103,12 @@
m_BossAlive = findPreciousModel.IsBossAlive(config.npcId);
}
+ HazyRegionModel.Incident incident;
+ model.TryGetIncident(incidentId, out incident);
var error = 0;
- redpointAble = model.TryGotoIncident(incidentId, false, out error);
+ redpointAble = model.TryGotoIncident(incidentId, false, out error)
+ && incident.state == HazyRegionModel.IncidentState.Processing;
+
DisplayBase();
DisplayItems();
@@ -257,8 +261,13 @@
bossAlive = findPreciousModel.IsBossAlive(config.npcId);
}
- var error = 0;
- redpointAble = model.TryGotoIncident(incidentId, false, out error);
+ HazyRegionModel.Incident incident;
+ if (model.TryGetIncident(incidentId, out incident))
+ {
+ var error = 0;
+ redpointAble = model.TryGotoIncident(incidentId, false, out error)
+ && incident.state == HazyRegionModel.IncidentState.Processing;
+ }
}
}
diff --git a/System/HazyRegion/HazyRegionIncidentPanel.cs b/System/HazyRegion/HazyRegionIncidentPanel.cs
index 0d85832..97455e3 100644
--- a/System/HazyRegion/HazyRegionIncidentPanel.cs
+++ b/System/HazyRegion/HazyRegionIncidentPanel.cs
@@ -63,7 +63,10 @@
var error = 0;
foreach (var id in incidents)
{
- if (model.TryGotoIncident(id, false, out error))
+ HazyRegionModel.Incident incident;
+ if (model.TryGotoIncident(id, false, out error)
+ && model.TryGetIncident(id, out incident)
+ && incident.state == HazyRegionModel.IncidentState.Processing)
{
model.selectIncident = id;
break;
diff --git a/System/HazyRegion/HazyRegionModel.cs b/System/HazyRegion/HazyRegionModel.cs
index 0f15ecd..df0a83a 100644
--- a/System/HazyRegion/HazyRegionModel.cs
+++ b/System/HazyRegion/HazyRegionModel.cs
@@ -120,8 +120,7 @@
{
SnxxzGame.Instance.StartCoroutine(Co_TryOpenHazyRegionWin());
WindowCenter.Instance.Close<HazyAdventureHintWin>();
-
- taskModel.AutomaticTripToTask(taskModel.currentMission);
+ //taskModel.AutomaticTripToTask(taskModel.currentMission);
}
private void OnStageLoadFinish()
--
Gitblit v1.8.0