levelscript starting

This commit is contained in:
AlessandroCH 2025-05-16 21:32:38 +02:00
parent 18414087f3
commit 8fc6d623b0
6 changed files with 74 additions and 79 deletions

View File

@ -10,7 +10,7 @@
}
public class ServerOptions
{
public int defaultSceneNumId = 98;
public int defaultSceneNumId = 87;
public int maxPlayers = 20;
public CharactersOptions defaultCharacters = new();
public ServerOptions()

View File

@ -11,7 +11,6 @@
};
public static string GAME_VERSION = "0.5.28"; //CBT 2
public static string
public static string GAME_VERSION_ASSET_URL = "https://beyond.hg-cdn.com/uXUuLlNbIYmMMTlN/0.5/update/6/1/Windows/0.5.28_U1mgxrslUitdn3hb/files";//CBT 2
public static int MAX_TEAMS_NUMBER = 5; //Not used yet
public static (long, string) SERVER_UID = (99, "99"); //Not used yet, no friend chat in current Beta

View File

@ -12,11 +12,16 @@ namespace Campofinale.Packets.Cs
{
public class HandleCsLogin
{
[Server.Handler(CsMsgId.CsCreateRole)]
public static void HandleCsCreateRole(Player session, CsMsgId cmdId, Packet packet)
[Server.Handler(CsMsgId.CsSetGender)]
public static void HandleCsSetGender(Player session, CsMsgId cmdId, Packet packet)
{
CsCreateRole req = packet.DecodeBody<CsCreateRole>();
CsSetGender req = packet.DecodeBody<CsSetGender>();
ScSetGender rsp = new()
{
Gender = req.Gender,
};
session.gender = rsp.Gender;
session.Send(ScMsgId.ScSetGender, rsp);
}
[Server.Handler(CsMsgId.CsLogin)]
@ -121,65 +126,6 @@ namespace Campofinale.Packets.Cs
session.Send(new PacketScItemBagScopeSync(session, ItemValuableDepotType.SpecialItem));
session.Send(new PacketScSyncAllMail(session));
session.Send(new PacketScSceneCollectionSync(session));
/*ScSyncAllMission missions = new()
{
Missions =
{
{"e0m0",
new Mission()
{
MissionId="e0m0",
MissionState=(int)MissionState.Processing,
Properties =
{
{1,new DynamicParameter()
{
ValueType=1,
RealType=1,
ValueBoolList =
{
true
}
}
},
{2,new DynamicParameter()
{
ValueType=1,
RealType=1,
ValueBoolList =
{
false
}
}
},
{3,new DynamicParameter()
{
ValueType=1,
RealType=1,
ValueBoolList =
{
false
}
}
}
}
}
}
},
TrackMissionId= "e0m0",
CurQuests =
{
{"e0m0#1", new Quest(){
QuestId="e0m0#1",
QuestState=2,
QuestObjectives =
{
}
}}
}
};*/
//session.Send(ScMessageId.ScSyncAllMission, missions);
string json1 = File.ReadAllText("44_ScSyncAllMission.json");
@ -187,16 +133,12 @@ namespace Campofinale.Packets.Cs
m.TrackMissionId = "";
session.Send(ScMsgId.ScSyncAllMission, m);
/* session.Send(ScMsgId.ScSyncAllMission, new ScSyncAllMission()
//session.Send(ScMsgId.ScSyncAllMission, m);
session.Send(ScMsgId.ScSyncAllMission, new ScSyncAllMission()
{
NewMissionTags =
{
new NewMissionTag()
{
MissionId="e0m0",
QuestId="e0m0_q#1",
}
},
Missions =
@ -214,7 +156,7 @@ namespace Campofinale.Packets.Cs
ValueType=1,
ValueBoolList =
{
true
false
}
} }
}
@ -224,6 +166,7 @@ namespace Campofinale.Packets.Cs
CurQuests =
{
{"e0m0_q#1", new Quest()
{
QuestId="e0m0_q#1",
@ -239,7 +182,7 @@ namespace Campofinale.Packets.Cs
}
} }
}
});*/
});
session.Send(new PacketScGachaSync(session));
ScSettlementSyncAll settlements = new ScSettlementSyncAll()

View File

@ -0,0 +1,53 @@
using Campofinale.Game.Character;
using Campofinale.Game.Entities;
using Campofinale.Network;
using Campofinale.Protocol;
namespace Campofinale.Packets.Cs
{
public class HandleCsSceneSetLevelScriptActive
{
[Server.Handler(CsMsgId.CsSceneSetLevelScriptActive)]
public static void Handle(Player session, CsMsgId cmdId, Packet packet)
{
CsSceneSetLevelScriptActive req = packet.DecodeBody<CsSceneSetLevelScriptActive>();
ScSceneLevelScriptStateNotify rsp = new ScSceneLevelScriptStateNotify()
{
SceneNumId = req.SceneNumId,
ScriptId = req.ScriptId,
State = 3
};
session.Send(ScMsgId.ScSceneLevelScriptStateNotify, rsp);
}
[Server.Handler(CsMsgId.CsSceneSetLevelScriptStart)]
public static void HandleCsSceneSetLevelScriptStart(Player session, CsMsgId cmdId, Packet packet)
{
CsSceneSetLevelScriptStart req = packet.DecodeBody<CsSceneSetLevelScriptStart>();
ScSceneLevelScriptStateNotify rsp = new ScSceneLevelScriptStateNotify()
{
SceneNumId = req.SceneNumId,
ScriptId = req.ScriptId,
State = 4
};
session.Send(ScMsgId.ScSceneLevelScriptStateNotify, rsp);
}
[Server.Handler(CsMsgId.CsSceneLevelScriptEventTrigger)]
public static void HandleCsSceneLevelScriptEventTrigger(Player session, CsMsgId cmdId, Packet packet)
{
CsSceneLevelScriptEventTrigger req = packet.DecodeBody<CsSceneLevelScriptEventTrigger>();
ScSceneLevelScriptEventTrigger rsp = new ScSceneLevelScriptEventTrigger()
{
};
session.Send(ScMsgId.ScSceneLevelScriptEventTrigger, rsp,packet.csHead.UpSeqid);
}
}
}

View File

@ -66,12 +66,13 @@ namespace Campofinale.Packets.Sc
{
ScriptId = l.scriptId,
IsDone = false,
State = 1,
State = 2,
};
int i = 0;
foreach (var item in l.properties)
{
DynamicParameter p=item.ToProto();
if (p != null)
script.Properties.Add(l.GetPropertyId(item.key,script.Properties.Keys.ToList()), p);

View File

@ -12,13 +12,12 @@ namespace Campofinale.Packets.Sc
{
Roleid = client.roleId,
Level = client.level,
Exp=client.xp,
Exp = client.xp,
RoleName = client.nickname,
Gender = client.gender,
ShortId="1",
};
ShortId = "1",
};
SetData(ScMsgId.ScSyncBaseData, proto);
}