mirror of
https://github.com/EggLinks/DanhengServer-OpenSource.git
synced 2026-01-03 04:36:03 +08:00
Fix Basic Rogue Event
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
using EggLink.DanhengServer.Data;
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Data.Excel;
|
||||
using EggLink.DanhengServer.Enums.Scene;
|
||||
using EggLink.DanhengServer.GameServer.Game.Player;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
using EggLink.DanhengServer.Data;
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Data.Excel;
|
||||
using EggLink.DanhengServer.Enums.Scene;
|
||||
using EggLink.DanhengServer.GameServer.Game.Player;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
using EggLink.DanhengServer.Data;
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Data.Excel;
|
||||
using EggLink.DanhengServer.Enums.Rogue;
|
||||
using EggLink.DanhengServer.Enums.Scene;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
using EggLink.DanhengServer.Data;
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Data.Excel;
|
||||
using EggLink.DanhengServer.Enums.Scene;
|
||||
using EggLink.DanhengServer.GameServer.Game.Scene;
|
||||
|
||||
@@ -359,10 +359,10 @@ public abstract class BaseRogueInstance(PlayerInstance player, int rogueVersionI
|
||||
|
||||
public async ValueTask<RogueEventInstance> GenerateEvent(RogueNpc npc)
|
||||
{
|
||||
RogueNPCDialogueExcel? dialogue;
|
||||
RogueNPCExcel? dialogue;
|
||||
do
|
||||
{
|
||||
dialogue = GameData.RogueNPCDialogueData.Values.ToList().RandomElement();
|
||||
dialogue = GameData.RogueNPCData.Values.ToList().RandomElement();
|
||||
} while (!dialogue.CanUseInVer(RogueType));
|
||||
|
||||
var instance = new RogueEventInstance(dialogue, npc, CurEventUniqueID++);
|
||||
|
||||
@@ -8,12 +8,12 @@ namespace EggLink.DanhengServer.GameServer.Game.Rogue.Event;
|
||||
|
||||
public class RogueEventInstance(int eventId, RogueNpc npc, List<RogueEventParam> optionIds, int uniqueId)
|
||||
{
|
||||
public RogueEventInstance(RogueNPCDialogueExcel excel, RogueNpc npc, int uniqueId) : this(excel.RogueNPCID, npc, [],
|
||||
public RogueEventInstance(RogueNPCExcel excel, RogueNpc npc, int uniqueId) : this(excel.RogueNPCID, npc, [],
|
||||
uniqueId) // check in RogueInstance.cs
|
||||
{
|
||||
foreach (var option in excel.DialogueInfo!.DialogueIds)
|
||||
foreach (var option in excel.RogueNpcConfig!.DialogueList[0].OptionInfo?.OptionList ?? [])
|
||||
{
|
||||
GameData.DialogueEventData.TryGetValue(option, out var dialogueEvent);
|
||||
GameData.DialogueEventData.TryGetValue(option.OptionID, out var dialogueEvent);
|
||||
if (dialogueEvent == null) continue;
|
||||
|
||||
var argId = 0;
|
||||
@@ -25,7 +25,7 @@ public class RogueEventInstance(int eventId, RogueNpc npc, List<RogueEventParam>
|
||||
|
||||
Options.Add(new RogueEventParam
|
||||
{
|
||||
OptionId = option,
|
||||
OptionId = option.OptionID,
|
||||
ArgId = argId
|
||||
});
|
||||
}
|
||||
|
||||
@@ -108,8 +108,7 @@ public class RogueEventManager
|
||||
await Player.SendPacket(new PacketSelectRogueCommonDialogueOptionScRsp());
|
||||
return;
|
||||
}
|
||||
|
||||
option.IsSelected = true;
|
||||
await Player.SendPacket(new PacketSyncRogueCommonDialogueDataScNotify(eventInstance));
|
||||
|
||||
var param = dialogueEvent.RogueEffectParamList;
|
||||
if (option.ArgId > 0)
|
||||
@@ -138,6 +137,7 @@ public class RogueEventManager
|
||||
|
||||
// send rsp
|
||||
await Player.SendPacket(new PacketSyncRogueCommonDialogueOptionFinishScNotify(eventInstance));
|
||||
option.IsSelected = true;
|
||||
await Player.SendPacket(new PacketSelectRogueCommonDialogueOptionScRsp(eventInstance));
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.GameServer.Game.Rogue.Event;
|
||||
using EggLink.DanhengServer.GameServer.Game.Scene;
|
||||
using EggLink.DanhengServer.GameServer.Game.Scene.Entity;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Data.Excel;
|
||||
using EggLink.DanhengServer.GameServer.Game.Scene;
|
||||
using EggLink.DanhengServer.GameServer.Game.Scene.Entity;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
using EggLink.DanhengServer.Data;
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Enums.Scene;
|
||||
using EggLink.DanhengServer.GameServer.Game.Player;
|
||||
using EggLink.DanhengServer.GameServer.Game.Rogue.Scene.Entity;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
using EggLink.DanhengServer.Data;
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Data.Excel;
|
||||
using EggLink.DanhengServer.Database.Inventory;
|
||||
using EggLink.DanhengServer.Enums.Mission;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.GameServer.Game.Battle;
|
||||
using EggLink.DanhengServer.Proto;
|
||||
using EggLink.DanhengServer.Util;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Data.Excel;
|
||||
using EggLink.DanhengServer.Enums.Scene;
|
||||
using EggLink.DanhengServer.GameServer.Game.Battle;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
using EggLink.DanhengServer.Data;
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Enums;
|
||||
using EggLink.DanhengServer.Enums.Mission;
|
||||
using EggLink.DanhengServer.Enums.Scene;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
using EggLink.DanhengServer.Data;
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Data.Excel;
|
||||
using EggLink.DanhengServer.Database.Avatar;
|
||||
using EggLink.DanhengServer.Enums.Scene;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using EggLink.DanhengServer.Data.Config;
|
||||
using EggLink.DanhengServer.Data.Config.Scene;
|
||||
using EggLink.DanhengServer.Data.Config.Task;
|
||||
using EggLink.DanhengServer.Data.Excel;
|
||||
using EggLink.DanhengServer.Enums.Mission;
|
||||
|
||||
Reference in New Issue
Block a user