mirror of
https://github.com/Campofinale/CampofinaleBackup.git
synced 2025-12-17 04:04:36 +00:00
entity spawn only once when in range, fixed waypoints for use the depot
This commit is contained in:
parent
9621cf8274
commit
dab3723540
@ -358,7 +358,7 @@ namespace Campofinale.Game
|
|||||||
});
|
});
|
||||||
GetEntityExcludingChar().ForEach(e =>
|
GetEntityExcludingChar().ForEach(e =>
|
||||||
{
|
{
|
||||||
GetOwner().Send(new PacketScObjectEnterView(GetOwner(), new List<Entity>() { e}));
|
// GetOwner().Send(new PacketScObjectEnterView(GetOwner(), new List<Entity>() { e}));
|
||||||
|
|
||||||
});
|
});
|
||||||
UpdateShowEntities();
|
UpdateShowEntities();
|
||||||
@ -369,7 +369,7 @@ namespace Campofinale.Game
|
|||||||
{
|
{
|
||||||
en.spawned = true;
|
en.spawned = true;
|
||||||
List<Entity> toSpawn = new List<Entity>();
|
List<Entity> toSpawn = new List<Entity>();
|
||||||
toSpawn.Add(en);
|
if(en.belongLevelScriptId != 0)
|
||||||
if (spawnedCheck)
|
if (spawnedCheck)
|
||||||
{
|
{
|
||||||
foreach (Entity e in GetEntityExcludingChar().FindAll(e => e.belongLevelScriptId == en.belongLevelScriptId && e.spawned == false))
|
foreach (Entity e in GetEntityExcludingChar().FindAll(e => e.belongLevelScriptId == en.belongLevelScriptId && e.spawned == false))
|
||||||
@ -387,17 +387,18 @@ namespace Campofinale.Game
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
toSpawn.Add(en);
|
||||||
toSpawn.ForEach(e =>
|
toSpawn.ForEach(e =>
|
||||||
{
|
{
|
||||||
//GetOwner().Send(new PacketScObjectEnterView(GetOwner(), new List<Entity>() { e}));
|
GetOwner().Send(new PacketScObjectEnterView(GetOwner(), new List<Entity>() { e}));
|
||||||
});
|
});
|
||||||
UpdateShowEntities();
|
|
||||||
}
|
}
|
||||||
public void UpdateShowEntities()
|
public void UpdateShowEntities()
|
||||||
{
|
{
|
||||||
foreach(Entity en in GetEntityExcludingChar())
|
foreach(Entity en in GetEntityExcludingChar())
|
||||||
{
|
{
|
||||||
if (en.Position.Distance(GetOwner().position) < 250)
|
if (en.Position.Distance(GetOwner().position) < 100)
|
||||||
{
|
{
|
||||||
if (!en.spawned)
|
if (!en.spawned)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -133,8 +133,8 @@ namespace Campofinale.Packets.Cs
|
|||||||
m.TrackMissionId = "";
|
m.TrackMissionId = "";
|
||||||
|
|
||||||
|
|
||||||
// session.Send(ScMsgId.ScSyncAllMission, m);
|
session.Send(ScMsgId.ScSyncAllMission, m);
|
||||||
session.Send(ScMsgId.ScSyncAllMission, new ScSyncAllMission()
|
/*ession.Send(ScMsgId.ScSyncAllMission, new ScSyncAllMission()
|
||||||
{
|
{
|
||||||
NewMissionTags =
|
NewMissionTags =
|
||||||
{
|
{
|
||||||
@ -219,10 +219,37 @@ namespace Campofinale.Packets.Cs
|
|||||||
QuestObjectives =
|
QuestObjectives =
|
||||||
{
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
} },
|
||||||
|
{"e0m0_q#6", new Quest()
|
||||||
|
{
|
||||||
|
QuestId="e0m0_q#6",
|
||||||
|
QuestState=(int)QuestState.Available,
|
||||||
|
QuestObjectives =
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
} },
|
||||||
|
{"e0m0_q#7", new Quest()
|
||||||
|
{
|
||||||
|
QuestId="e0m0_q#7",
|
||||||
|
QuestState=(int)QuestState.Available,
|
||||||
|
QuestObjectives =
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
} },
|
||||||
|
{"e0m0_q#8", new Quest()
|
||||||
|
{
|
||||||
|
QuestId="e0m0_q#8",
|
||||||
|
QuestState=(int)QuestState.Available,
|
||||||
|
QuestObjectives =
|
||||||
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
} }
|
} }
|
||||||
}
|
}
|
||||||
});
|
});*/
|
||||||
|
|
||||||
session.Send(new PacketScGachaSync(session));
|
session.Send(new PacketScGachaSync(session));
|
||||||
ScSettlementSyncAll settlements = new ScSettlementSyncAll()
|
ScSettlementSyncAll settlements = new ScSettlementSyncAll()
|
||||||
|
|||||||
@ -95,6 +95,33 @@ namespace Campofinale.Packets.Cs
|
|||||||
QuestState = (int)QuestState.Processing,
|
QuestState = (int)QuestState.Processing,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
if (req.EventName == "#251df3ad")
|
||||||
|
{
|
||||||
|
session.Send(ScMsgId.ScQuestStateUpdate, new ScQuestStateUpdate()
|
||||||
|
{
|
||||||
|
QuestId = "e0m0_q#5",
|
||||||
|
QuestState = (int)QuestState.Completed,
|
||||||
|
});
|
||||||
|
session.Send(ScMsgId.ScQuestStateUpdate, new ScQuestStateUpdate()
|
||||||
|
{
|
||||||
|
QuestId = "e0m0_q#6",
|
||||||
|
QuestState = (int)QuestState.Processing,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
if (req.EventName == "#e6ac322b")
|
||||||
|
{
|
||||||
|
session.Send(ScMsgId.ScQuestStateUpdate, new ScQuestStateUpdate()
|
||||||
|
{
|
||||||
|
QuestId = "e0m0_q#6",
|
||||||
|
QuestState = (int)QuestState.Completed,
|
||||||
|
});
|
||||||
|
session.Send(ScMsgId.ScQuestStateUpdate, new ScQuestStateUpdate()
|
||||||
|
{
|
||||||
|
QuestId = "e0m0_q#7",
|
||||||
|
QuestState = (int)QuestState.Processing,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
ScSceneUpdateLevelScriptProperty update1 = new()
|
ScSceneUpdateLevelScriptProperty update1 = new()
|
||||||
{
|
{
|
||||||
SceneNumId = req.SceneNumId,
|
SceneNumId = req.SceneNumId,
|
||||||
|
|||||||
@ -12,7 +12,12 @@ namespace Campofinale.Packets.Cs
|
|||||||
public static void Handle(Player session, CsMsgId cmdId, Packet packet)
|
public static void Handle(Player session, CsMsgId cmdId, Packet packet)
|
||||||
{
|
{
|
||||||
CsSceneSetSafeZone req = packet.DecodeBody<CsSceneSetSafeZone>();
|
CsSceneSetSafeZone req = packet.DecodeBody<CsSceneSetSafeZone>();
|
||||||
|
ScSceneSetSafeZone rsp = new()
|
||||||
|
{
|
||||||
|
Id = req.Id,
|
||||||
|
InZone = req.InZone,
|
||||||
|
};
|
||||||
|
session.Send(ScMsgId.ScSceneSetSafeZone, rsp);
|
||||||
if (req.InZone)
|
if (req.InZone)
|
||||||
{
|
{
|
||||||
var entity = session.sceneManager.GetEntity(req.Id) as EntityInteractive;
|
var entity = session.sceneManager.GetEntity(req.Id) as EntityInteractive;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user