//第一个是唯一ID,第二个是挂载的NPC ID, 第三个是是否已经执行过结束逻辑 public RtBufData rmBuff(int bufId, int npcId, bool endIsExe = false) { RtBufData buf = null; OnWork.TryGetValue(bufId, out buf); //去除管理 OnWork.Remove(bufId); //去除Npc上 ServerNPC npc = WarServerManager.Instance.npcMgr.GetNPCByUniqueID(npcId); npc.rmBuff(bufId); if (buf != null && endIsExe == false) { buf.OnEnd(); } return(buf); }