From e660e02f44933f28dc0d42c541332aae66040ef8 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 28 十一月 2025 22:15:04 +0800
Subject: [PATCH] 0312 行商小人喊话
---
Main/System/InternalAffairs/FuncNPCManager.cs | 34 +++++++++++++++++++++++++++++++++-
1 files changed, 33 insertions(+), 1 deletions(-)
diff --git a/Main/System/InternalAffairs/FuncNPCManager.cs b/Main/System/InternalAffairs/FuncNPCManager.cs
index dd8f9c9..6d482f2 100644
--- a/Main/System/InternalAffairs/FuncNPCManager.cs
+++ b/Main/System/InternalAffairs/FuncNPCManager.cs
@@ -17,6 +17,10 @@
public float lastGuildTalkTime;
public int lastGuildRandomIndex;
+ //琛屽晢鐗规畩澶勭悊
+ public bool isHawkerShowNow = false; //琛屽晢鐘舵�侊紝true 琛屽晢璧板嚭鏉ュ拰绔欏矖涓紝false 琛屽晢璧板嚭鍘诲拰澶栧嚭涓�
+ public bool isHawkerStandBy = false; //琛屽晢鐘舵�侊紝true 琛屽晢绔欏矖涓紝鍙湁true鎵嶈兘鍙備笌鍠婅瘽锛涚Щ鍔ㄦ垨鑰呮秷澶遍兘涓篺alse
+
public override void Init()
{
@@ -69,9 +73,28 @@
public int GetRandomGuildNpcTalk()
{
- int index = Random.Range(0, guildTalkIndexList.Count);
+ //琛屽晢鐗规畩澶勭悊锛岃鍟嗛潪绔欏矖涓笉鍙備笌鍠婅瘽
+ int index;
+ if (isHawkerStandBy)
+ {
+ index = Random.Range(0, guildTalkIndexList.Count);
+ }
+ else
+ {
+ if (guildTalkIndexList.Count == 1)
+ {
+ return -1;
+ }
+ index = Random.Range(1, guildTalkIndexList.Count);
+ }
if (index == lastGuildRandomIndex)
{
+ if (guildTalkIndexList.Count == 1)
+ {
+ //鍙湁涓�涓殑鎯呭喌
+ lastGuildRandomIndex = -1;
+ return -1;
+ }
index = (index + 1) % guildTalkIndexList.Count;
}
lastGuildRandomIndex = index;
@@ -87,5 +110,14 @@
}
return null;
}
+
+ public string GetGuildTalk(int skinID)
+ {
+ if (guildNpcTalkDic.ContainsKey(skinID))
+ {
+ return guildNpcTalkDic[skinID][Random.Range(0, guildNpcTalkDic[skinID].Length)];
+ }
+ return null;
+ }
}
--
Gitblit v1.8.0