public static List<string> GetInteractionStrs(MS2C_InteractionMessage reply, bool firstNameIsSelf) { List<string> list = new List<string>(); bool flag = (reply.Gender & 1) != 0; bool flag2 = (reply.Gender & 2) != 0; bool flag3 = (reply.Reward & 1) != 0; bool flag4 = (reply.Reward & 2) != 0; bool flag5 = (reply.Reward & 4) != 0; string text = string.Empty; if (firstNameIsSelf) { reply.Name1 = Singleton<StringManager>.Instance.GetString("costumePartyInteractionYou"); text = ((!flag2) ? Singleton<StringManager>.Instance.GetString("costumePartyInteractionHe") : Singleton<StringManager>.Instance.GetString("costumePartyInteractionShe")); } else { reply.Name2 = Singleton<StringManager>.Instance.GetString("costumePartyInteractionYou"); text = reply.Name2; } EInteractionType type = (EInteractionType)reply.Type; switch (type) { case EInteractionType.EInteraction_Rose: if (flag == flag2) { if (firstNameIsSelf) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo1", new object[] { reply.Name1, string.Empty })); list.Add(reply.Name2); list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo22", new object[] { text })); } else { list.Add(string.Empty); list.Add(reply.Name1); list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo1", new object[] { string.Empty, reply.Name2 }) + Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo22", new object[] { text })); } } else if (firstNameIsSelf) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo1", new object[] { reply.Name1, string.Empty })); list.Add(reply.Name2); list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo11", new object[] { text })); } else { list.Add(string.Empty); list.Add(reply.Name1); list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo1", new object[] { string.Empty, reply.Name2 }) + Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo11", new object[] { text })); } break; case EInteractionType.EInteraction_Dance: if (flag == flag2) { if (firstNameIsSelf) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo3", new object[] { reply.Name1, string.Empty })); list.Add(reply.Name2); list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo44", new object[] { text })); } else { list.Add(string.Empty); list.Add(reply.Name1); list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo3", new object[] { string.Empty, reply.Name2 }) + Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo44", new object[] { text })); } } else if (firstNameIsSelf) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo3", new object[] { reply.Name1, string.Empty })); list.Add(reply.Name2); list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo33", new object[] { text })); } else { list.Add(string.Empty); list.Add(reply.Name1); list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo3", new object[] { string.Empty, reply.Name2 }) + Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo33", new object[] { text })); } break; case EInteractionType.EInteraction_Wand: if (firstNameIsSelf) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo8", new object[] { reply.Name1, string.Empty })); list.Add(reply.Name2); if (flag5) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo83", new object[] { text })); } else { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo81", new object[] { text })); } } else { list.Add(string.Empty); list.Add(reply.Name1); if (flag5) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo8", new object[] { string.Empty, reply.Name2 }) + Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo83", new object[] { text })); } else { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo8", new object[] { string.Empty, reply.Name2 }) + Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo81", new object[] { text })); } } break; case EInteractionType.EInteraction_Turtle: if (firstNameIsSelf) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo8", new object[] { reply.Name1, string.Empty })); list.Add(reply.Name2); list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo82", new object[] { text })); } else { list.Add(string.Empty); list.Add(reply.Name1); list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo8", new object[] { string.Empty, reply.Name2 }) + Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo82", new object[] { text })); } break; } if (type == EInteractionType.EInteraction_Dance || type == EInteractionType.EInteraction_Rose || type == EInteractionType.EInteraction_Wand) { if (flag3 && flag4) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo7", new object[] { string.Empty })); } else if (flag3) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo6", new object[] { string.Empty })); } else if (flag4) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo5", new object[] { string.Empty })); } else { list.Add(string.Empty); } } else if (type == EInteractionType.EInteraction_Turtle) { if (flag3 && flag4) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo71", new object[] { string.Empty })); } else if (flag3) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo66", new object[] { string.Empty })); } else if (flag4) { list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo55", new object[] { string.Empty })); } else { list.Add(string.Empty); } } list.Add(Singleton<StringManager>.Instance.GetString("costumePartyInteractionGift")); return list; }
public static bool ConvertChatMsg2InteractionMsg(ChatMessage chatMsg, out MS2C_InteractionMessage msg) { msg = new MS2C_InteractionMessage(); for (int i = 1; i <= 4; i++) { if ((chatMsg.Value1 & 1u << i + 8) != 0u) { msg.Type = i; break; } } msg.Reward |= (int)(chatMsg.Value1 & 4u) >> 2; msg.Reward |= (int)(chatMsg.Value1 & 8u) >> 2; msg.Reward |= (int)(chatMsg.Value1 & 16u) >> 2; if ((chatMsg.Value1 & 2u) != 0u) { msg.Name1 = Singleton<StringManager>.Instance.GetString("costumePartyInteractionYou"); msg.Name2 = chatMsg.Name; msg.Gender |= Globals.Instance.Player.Data.Gender; msg.Gender |= (((chatMsg.Value1 & 1u) == 0u) ? ((Globals.Instance.Player.Data.Gender + 1) % 2) : Globals.Instance.Player.Data.Gender) << 1; return true; } msg.Name1 = chatMsg.Name; msg.Name2 = Singleton<StringManager>.Instance.GetString("costumePartyInteractionYou"); msg.Gender |= (((chatMsg.Value1 & 1u) == 0u) ? ((Globals.Instance.Player.Data.Gender + 1) % 2) : Globals.Instance.Player.Data.Gender); msg.Gender |= Globals.Instance.Player.Data.Gender << 1; return false; }
public static string GetInteractionMsgToString(MS2C_InteractionMessage reply, bool showDifferentColor = true, bool firstNameIsSelf = true) { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Remove(0, stringBuilder.Length); string str = "[ff8900]"; string str2 = "[-]"; string text = Singleton<StringManager>.Instance.GetString("costumePartyInteractionGift"); bool flag = (reply.Gender & 1) != 0; bool flag2 = (reply.Gender & 2) != 0; bool flag3 = (reply.Reward & 1) != 0; bool flag4 = (reply.Reward & 2) != 0; bool flag5 = (reply.Reward & 4) != 0; string text2 = string.Empty; if (!showDifferentColor) { if (firstNameIsSelf) { reply.Name1 = Singleton<StringManager>.Instance.GetString("costumePartyInteractionYou"); text2 = ((!flag2) ? Singleton<StringManager>.Instance.GetString("costumePartyInteractionHe") : Singleton<StringManager>.Instance.GetString("costumePartyInteractionShe")); } else { reply.Name2 = Singleton<StringManager>.Instance.GetString("costumePartyInteractionYou"); text2 = reply.Name2; } } else { reply.Name1 = str + reply.Name1 + str2; reply.Name2 = str + reply.Name2 + str2; text = str + text + str2; text2 = ((!flag2) ? Singleton<StringManager>.Instance.GetString("costumePartyInteractionHe") : Singleton<StringManager>.Instance.GetString("costumePartyInteractionShe")); } EInteractionType type = (EInteractionType)reply.Type; switch (type) { case EInteractionType.EInteraction_Rose: if (flag == flag2) { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo1", new object[] { reply.Name1, reply.Name2 })); stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo22", new object[] { text2 })); } else { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo1", new object[] { reply.Name1, reply.Name2 })); stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo11", new object[] { text2 })); } break; case EInteractionType.EInteraction_Dance: if (flag == flag2) { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo3", new object[] { reply.Name1, reply.Name2 })); stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo44", new object[] { text2 })); } else { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo3", new object[] { reply.Name1, reply.Name2 })); stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo33", new object[] { text2 })); } break; case EInteractionType.EInteraction_Wand: stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo8", new object[] { reply.Name1, reply.Name2 })); if (flag5) { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo83", new object[] { text2 })); } else { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo81", new object[] { text2 })); } break; case EInteractionType.EInteraction_Turtle: stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo8", new object[] { reply.Name1, reply.Name2 })); stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo82", new object[] { text2 })); break; } if (type == EInteractionType.EInteraction_Dance || type == EInteractionType.EInteraction_Rose || type == EInteractionType.EInteraction_Wand) { if (flag3 && flag4) { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo7", new object[] { text })); } else if (flag3) { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo6", new object[] { text })); } else if (flag4) { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo5", new object[] { text })); } } else if (type == EInteractionType.EInteraction_Turtle) { if (flag3 && flag4) { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo71", new object[] { text })); } else if (flag3) { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo66", new object[] { text })); } else if (flag4) { stringBuilder.Append(Singleton<StringManager>.Instance.GetString("costumePartyInteractionInfo55", new object[] { text })); } } return stringBuilder.ToString(); }
public void AddInteractionMsg(MS2C_InteractionMessage msg) { if (this.InteractionMsgs.Count >= 30) { this.InteractionMsgs.RemoveAt(0); } this.InteractionMsgs.Add(msg); }