When it keeps spam u invalid jump.
I saw it was when NPC's aint spawning on ur screen, then u just have to walk/run to the area with the npc's wich aint spawning.
Can it be because NPC maybe spawn before your character?
So the solution could be to move NPCspawning before Character spawning?
Original spawn:
Code:
public static void Spawns(Character C, bool Check) { try { COPacket CSpawn = Packets.SpawnEntity(C); foreach (Character CC in H_Chars.Values) { if (CC != C && CC.Loc.Map == C.Loc.Map && MyMath.InBox(C.Loc.X, C.Loc.Y, CC.Loc.X, CC.Loc.Y, 17) && !MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, CC.Loc.X, CC.Loc.Y, 17) || !Check) { C.MyClient.AddSend(Packets.SpawnEntity(CC)); if (CC.MyGuild != null) C.MyClient.AddSend(Packets.String(CC.MyGuild.GuildID, (byte)StringType.GuildName, CC.MyGuild.GuildName)); CC.MyClient.AddSend(CSpawn); if (C.MyGuild != null) CC.MyClient.AddSend(Packets.String(C.MyGuild.GuildID, (byte)StringType.GuildName, C.MyGuild.GuildName)); } } Hashtable MapMobs = (Hashtable)H_Mobs[C.Loc.Map]; if (MapMobs != null) { foreach (Mob M in MapMobs.Values) if (M.Alive && MyMath.InBox(C.Loc.X, C.Loc.Y, M.Loc.X, M.Loc.Y, 16) && (!MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, M.Loc.X, M.Loc.Y, 16) || !Check)) C.MyClient.AddSend(Packets.SpawnEntity(M)); } Hashtable MapItems = (Hashtable)H_Items[C.Loc.Map]; if (MapItems != null) { foreach (DroppedItem DI in MapItems.Values) if (MyMath.InBox(C.Loc.X, C.Loc.Y, DI.Loc.X, DI.Loc.Y, 14) && (!MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, DI.Loc.X, DI.Loc.Y, 14) || !Check)) C.MyClient.AddSend(Packets.ItemDrop(DI)); } foreach (NPC N in H_NPCs.Values) if (N.Loc.Map == C.Loc.Map && MyMath.InBox(C.Loc.X, C.Loc.Y, N.Loc.X, N.Loc.Y, 14) && (!MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, N.Loc.X, N.Loc.Y, 14) || !Check)) { if (N.MaxHP == 0) C.MyClient.AddSend(Packets.SpawnNPC(N)); else C.MyClient.AddSend(Packets.SpawnNPCWithHP(N)); } foreach (Features.PersonalShops.Shop S in H_PShops.Values) if (S.NPCInfo.Loc.Map == C.Loc.Map && MyMath.InBox(C.Loc.X, C.Loc.Y, S.NPCInfo.Loc.X, S.NPCInfo.Loc.Y, 14) && (!MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, S.NPCInfo.Loc.X, S.NPCInfo.Loc.Y, 14) || !Check)) { C.MyClient.AddSend(Packets.SpawnNamedNPC(S.NPCInfo, S.Name)); if (S.Hawk != "") C.MyClient.AddSend(Packets.ChatMessage(26514, S.Owner.Name, "ALL", S.Hawk, 2104, 0)); } foreach (Companion Cmp in H_Companions.Values) if (Cmp.Loc.Map == C.Loc.Map && MyMath.InBox(C.Loc.X, C.Loc.Y, Cmp.Loc.X, Cmp.Loc.Y, 16) && (!MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, Cmp.Loc.X, Cmp.Loc.Y, 16) || !Check)) C.MyClient.AddSend(Packets.SpawnEntity(Cmp)); Features.GuildWars.ThePole.Spawn(C, Check); Features.GuildWars.TheLeftGate.Spawn(C, Check); Features.GuildWars.TheRightGate.Spawn(C, Check); } catch { } }
Code:
public static void Spawns(Character C, bool Check) { try { COPacket CSpawn = Packets.SpawnEntity(C); foreach (NPC N in H_NPCs.Values) if (N.Loc.Map == C.Loc.Map && MyMath.InBox(C.Loc.X, C.Loc.Y, N.Loc.X, N.Loc.Y, 14) && (!MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, N.Loc.X, N.Loc.Y, 14) || !Check)) { if (N.MaxHP == 0) C.MyClient.AddSend(Packets.SpawnNPC(N)); else C.MyClient.AddSend(Packets.SpawnNPCWithHP(N)); } foreach (Character CC in H_Chars.Values) { if (CC != C && CC.Loc.Map == C.Loc.Map && MyMath.InBox(C.Loc.X, C.Loc.Y, CC.Loc.X, CC.Loc.Y, 17) && !MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, CC.Loc.X, CC.Loc.Y, 17) || !Check) { C.MyClient.AddSend(Packets.SpawnEntity(CC)); if (CC.MyGuild != null) C.MyClient.AddSend(Packets.String(CC.MyGuild.GuildID, (byte)StringType.GuildName, CC.MyGuild.GuildName)); CC.MyClient.AddSend(CSpawn); if (C.MyGuild != null) CC.MyClient.AddSend(Packets.String(C.MyGuild.GuildID, (byte)StringType.GuildName, C.MyGuild.GuildName)); } } Hashtable MapMobs = (Hashtable)H_Mobs[C.Loc.Map]; if (MapMobs != null) { foreach (Mob M in MapMobs.Values) if (M.Alive && MyMath.InBox(C.Loc.X, C.Loc.Y, M.Loc.X, M.Loc.Y, 16) && (!MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, M.Loc.X, M.Loc.Y, 16) || !Check)) C.MyClient.AddSend(Packets.SpawnEntity(M)); } Hashtable MapItems = (Hashtable)H_Items[C.Loc.Map]; if (MapItems != null) { foreach (DroppedItem DI in MapItems.Values) if (MyMath.InBox(C.Loc.X, C.Loc.Y, DI.Loc.X, DI.Loc.Y, 14) && (!MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, DI.Loc.X, DI.Loc.Y, 14) || !Check)) C.MyClient.AddSend(Packets.ItemDrop(DI)); } foreach (Features.PersonalShops.Shop S in H_PShops.Values) if (S.NPCInfo.Loc.Map == C.Loc.Map && MyMath.InBox(C.Loc.X, C.Loc.Y, S.NPCInfo.Loc.X, S.NPCInfo.Loc.Y, 14) && (!MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, S.NPCInfo.Loc.X, S.NPCInfo.Loc.Y, 14) || !Check)) { C.MyClient.AddSend(Packets.SpawnNamedNPC(S.NPCInfo, S.Name)); if (S.Hawk != "") C.MyClient.AddSend(Packets.ChatMessage(26514, S.Owner.Name, "ALL", S.Hawk, 2104, 0)); } foreach (Companion Cmp in H_Companions.Values) if (Cmp.Loc.Map == C.Loc.Map && MyMath.InBox(C.Loc.X, C.Loc.Y, Cmp.Loc.X, Cmp.Loc.Y, 16) && (!MyMath.InBox(C.Loc.PreviousX, C.Loc.PreviousY, Cmp.Loc.X, Cmp.Loc.Y, 16) || !Check)) C.MyClient.AddSend(Packets.SpawnEntity(Cmp)); Features.GuildWars.ThePole.Spawn(C, Check); Features.GuildWars.TheLeftGate.Spawn(C, Check); Features.GuildWars.TheRightGate.Spawn(C, Check); } catch { } }