From 61b5058b990da2fe7f4b76e1e61b817d4f511432 Mon Sep 17 00:00:00 2001
From: client_Zxw <826696702@qq.com>
Date: 星期四, 30 八月 2018 10:28:32 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
Fight/MapTransferUtility.cs | 47 +++++++++++++++++++++++++++++++++++++++++------
1 files changed, 41 insertions(+), 6 deletions(-)
diff --git a/Fight/MapTransferUtility.cs b/Fight/MapTransferUtility.cs
index 9d9ca65..539c2ff 100644
--- a/Fight/MapTransferUtility.cs
+++ b/Fight/MapTransferUtility.cs
@@ -248,10 +248,11 @@
// 鍔犲叆鍒ゆ柇鏄惁涓栫晫BOSS鍒ゆ柇
WorldBossConfig _worldBoss = Config.Instance.Get<WorldBossConfig>(npcID);
- bool _isWorldBoss = _worldBoss != null;
- if (_isWorldBoss && _findLocation)
+ FairyGrabBossConfig _fairyBoss = Config.Instance.Get<FairyGrabBossConfig>(npcID);
+ bool _isBoss = _worldBoss != null || _fairyBoss != null;
+ if (_isBoss && _findLocation)
{
- //Debug.LogFormat("鐩爣鏄笘鐣宐oss");
+ //Debug.LogFormat("鐩爣鏄痓oss");
_npc = GAMgr.Instance.GetCloserNPC(_hero.Pos, npcID);
if (_npc != null)
@@ -264,8 +265,41 @@
//Debug.LogFormat(" |-- 涓嶅湪瑙嗛噹鍐�");
var _mapConfig = Config.Instance.Get<MapConfig>(_npcLocation.mapId);
+ var _lineID = 0;
+ var _forceTransfer = false;
+
+ // 鍒ゆ柇浠欑洘boss閫昏緫
+ var _fairyBossModel = ModelCenter.Instance.GetModel<FairyGrabBossModel>();
+ if (_fairyBossModel != null)
+ {
+ // 鏄粰鐩焍oss
+ if (_fairyBossModel.bosses != null
+ && _fairyBossModel.bosses.Contains(npcID))
+ {
+ //Debug.LogFormat(" |-- 杩欐槸涓�鍙椿鍔╞oss");
+ // 鍙栧緱鍒嗙嚎
+ if (GeneralConfig.Instance.fairyGrabBossMapLines != null)
+ {
+ _lineID = GeneralConfig.Instance.fairyGrabBossMapLines.ContainsKey(_npcLocation.mapId) ?
+ GeneralConfig.Instance.fairyGrabBossMapLines[_npcLocation.mapId] : 0;
+ // 濡傛灉褰撳墠澶勪簬涓嶅悓鐨勫垎绾�, 鍒欎笅闈㈢殑澶勭悊涓�,鍦板浘ID鐩稿悓涔熷垏绾�
+ if (_lineID != PlayerDatas.Instance.baseData.FBID)
+ {
+ //Debug.LogFormat(" |-- 涓嶅湪鍚屼竴鍒嗙嚎: {0} != {1}", _lineID, PlayerDatas.Instance.baseData.FBID);
+ _forceTransfer = true;
+ }
+ }
+ else
+ {
+ Debug.LogErrorFormat("瀵瑰簲鐨勫湴鍥綢D: {0} 鍦ㄩ厤缃腑娌℃湁瀵瑰簲鐨勫垎绾縤d", _npcLocation.mapId);
+ }
+ }
+
+ npcID = 0;
+ }
+
// 濡傛灉涓嶆槸澶勪簬鐩稿悓鍦板浘, 鍒欏垏鍥�
- if (_npcLocation.mapId != PlayerDatas.Instance.baseData.MapID)
+ if (_npcLocation.mapId != PlayerDatas.Instance.baseData.MapID || _forceTransfer)
{
if (PlayerDatas.Instance.extersion.pkState == 1)
{
@@ -282,7 +316,7 @@
//Debug.LogFormat(" |-- 涓嶅湪鏈湴鍥�");
var mapId = _npcLocation.mapId;
var position = new Vector3(_mapConfig.BornPoints[0].x, 0, _mapConfig.BornPoints[0].y);
- Send_WorldTransfer(mapId, position, MapTransferType.WorldTransport, 0, npcID);
+ Send_WorldTransfer(mapId, position, MapTransferType.WorldTransport, (byte)_lineID, npcID);
if (BossFakeLineUtility.Instance.IsShuntBoss(npcID))
{
@@ -308,7 +342,8 @@
if (((lastMoveToWorldBossNpcID == npcID
&& Time.realtimeSinceStartup - lastMoveToWorldBossTime < 60)
&& PlayerDatas.Instance.baseData.FBID == 0)
- || BossFakeLineUtility.Instance.showFakeLine)
+ || BossFakeLineUtility.Instance.showFakeLine
+ || _fairyBossModel != null)
{
//Debug.LogFormat(" |-- 闈炴兂鍘荤殑boss涓�60绉掑唴琛屼负浜х敓涓斾负鍚屼竴鍙猙oss, {0}, {1}", BossFakeLineUtility.Instance.showFakeLine,
//PlayerDatas.Instance.baseData.FBID);
--
Gitblit v1.8.0