Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ SyncOnePlayer()

static void Terraria.NetMessage.SyncOnePlayer ( int plr,
int toWho,
int fromWho )
inlinestaticprivate

Definition at line 2816 of file NetMessage.cs.

2817 {
2818 int num = 0;
2819 if (Main.player[plr].active)
2820 {
2821 num = 1;
2822 }
2823 if (Netplay.Clients[plr].State == 10)
2824 {
2825 SendData(14, toWho, fromWho, null, plr, num);
2826 SendData(4, toWho, fromWho, null, plr);
2827 SendData(13, toWho, fromWho, null, plr);
2828 if (Main.player[plr].statLife <= 0)
2829 {
2830 SendData(135, toWho, fromWho, null, plr);
2831 }
2832 SendData(16, toWho, fromWho, null, plr);
2833 SendData(30, toWho, fromWho, null, plr);
2834 SendData(45, toWho, fromWho, null, plr);
2835 SendData(42, toWho, fromWho, null, plr);
2836 SendData(50, toWho, fromWho, null, plr);
2837 SendData(80, toWho, fromWho, null, plr, Main.player[plr].chest);
2838 SendData(142, toWho, fromWho, null, plr);
2839 SendData(147, toWho, fromWho, null, plr, Main.player[plr].CurrentLoadoutIndex);
2840 for (int i = 0; i < 59; i++)
2841 {
2842 SendData(5, toWho, fromWho, null, plr, PlayerItemSlotID.Inventory0 + i, (int)Main.player[plr].inventory[i].prefix);
2843 }
2844 for (int j = 0; j < Main.player[plr].armor.Length; j++)
2845 {
2846 SendData(5, toWho, fromWho, null, plr, PlayerItemSlotID.Armor0 + j, (int)Main.player[plr].armor[j].prefix);
2847 }
2848 for (int k = 0; k < Main.player[plr].dye.Length; k++)
2849 {
2850 SendData(5, toWho, fromWho, null, plr, PlayerItemSlotID.Dye0 + k, (int)Main.player[plr].dye[k].prefix);
2851 }
2852 SyncOnePlayer_ItemArray(plr, toWho, fromWho, Main.player[plr].miscEquips, PlayerItemSlotID.Misc0);
2853 SyncOnePlayer_ItemArray(plr, toWho, fromWho, Main.player[plr].miscDyes, PlayerItemSlotID.MiscDye0);
2854 SyncOnePlayer_ItemArray(plr, toWho, fromWho, Main.player[plr].Loadouts[0].Armor, PlayerItemSlotID.Loadout1_Armor_0);
2855 SyncOnePlayer_ItemArray(plr, toWho, fromWho, Main.player[plr].Loadouts[0].Dye, PlayerItemSlotID.Loadout1_Dye_0);
2856 SyncOnePlayer_ItemArray(plr, toWho, fromWho, Main.player[plr].Loadouts[1].Armor, PlayerItemSlotID.Loadout2_Armor_0);
2857 SyncOnePlayer_ItemArray(plr, toWho, fromWho, Main.player[plr].Loadouts[1].Dye, PlayerItemSlotID.Loadout2_Dye_0);
2858 SyncOnePlayer_ItemArray(plr, toWho, fromWho, Main.player[plr].Loadouts[2].Armor, PlayerItemSlotID.Loadout3_Armor_0);
2859 SyncOnePlayer_ItemArray(plr, toWho, fromWho, Main.player[plr].Loadouts[2].Dye, PlayerItemSlotID.Loadout3_Dye_0);
2860 if (!Netplay.Clients[plr].IsAnnouncementCompleted)
2861 {
2862 Netplay.Clients[plr].IsAnnouncementCompleted = true;
2863 ChatHelper.BroadcastChatMessage(NetworkText.FromKey(Lang.mp[19].Key, Main.player[plr].name), new Color(255, 240, 20), plr);
2864 if (Main.dedServ)
2865 {
2866 Console.WriteLine(Lang.mp[19].Format(Main.player[plr].name));
2867 }
2868 }
2869 return;
2870 }
2871 num = 0;
2872 SendData(14, -1, plr, null, plr, num);
2873 if (Netplay.Clients[plr].IsAnnouncementCompleted)
2874 {
2875 Netplay.Clients[plr].IsAnnouncementCompleted = false;
2876 ChatHelper.BroadcastChatMessage(NetworkText.FromKey(Lang.mp[20].Key, Netplay.Clients[plr].Name), new Color(255, 240, 20), plr);
2877 if (Main.dedServ)
2878 {
2879 Console.WriteLine(Lang.mp[20].Format(Netplay.Clients[plr].Name));
2880 }
2881 Netplay.Clients[plr].Name = "Anonymous";
2882 }
2883 Player.Hooks.PlayerDisconnect(plr);
2884 }
static void WriteLine()
Definition Console.cs:733
static void BroadcastChatMessage(NetworkText text, Color color, int excludedPlayer=-1)
Definition ChatHelper.cs:46
static readonly int Loadout1_Armor_0
static readonly int Loadout3_Dye_0
static readonly int Loadout2_Dye_0
static readonly int Loadout1_Dye_0
static readonly int Loadout3_Armor_0
static readonly int Loadout2_Armor_0
static readonly int Inventory0
static NetworkText FromKey(string key, params object[] substitutions)
static void SendData(int msgType, int remoteClient=-1, int ignoreClient=-1, NetworkText text=null, int number=0, float number2=0f, float number3=0f, float number4=0f, int number5=0, int number6=0, int number7=0)
Definition NetMessage.cs:88
static void SyncOnePlayer_ItemArray(int plr, int toWho, int fromWho, Item[] arr, int slot)

References Terraria.ID.PlayerItemSlotID.Armor0, Terraria.Chat.ChatHelper.BroadcastChatMessage(), Terraria.Netplay.Clients, Terraria.Main.dedServ, Terraria.ID.PlayerItemSlotID.Dye0, Terraria.Localization.NetworkText.FromKey(), Terraria.ID.PlayerItemSlotID.Inventory0, Terraria.ID.PlayerItemSlotID.Loadout1_Armor_0, Terraria.ID.PlayerItemSlotID.Loadout1_Dye_0, Terraria.ID.PlayerItemSlotID.Loadout2_Armor_0, Terraria.ID.PlayerItemSlotID.Loadout2_Dye_0, Terraria.ID.PlayerItemSlotID.Loadout3_Armor_0, Terraria.ID.PlayerItemSlotID.Loadout3_Dye_0, Terraria.ID.PlayerItemSlotID.Misc0, Terraria.ID.PlayerItemSlotID.MiscDye0, Terraria.Lang.mp, Terraria.Main.player, Terraria.Player.Hooks.PlayerDisconnect(), Terraria.NetMessage.SendData(), Terraria.NetMessage.SyncOnePlayer_ItemArray(), and System.Console.WriteLine().

Referenced by Terraria.NetMessage.SyncConnectedPlayer(), and Terraria.NetMessage.SyncDisconnectedPlayer().