void ApplyTestInjection() { // Практически все в этом методе - псевдокод! BindingFlags flags = (BindingFlags)60; Injection i = typeof(Main).GetMethod("DoUpdate_HandleChat", flags); // Внедрить исполнитель команд i.FindCondition(() => Main.chatText != "") .Replace(() => Main.chatText != "" && !Client.ExecuteCommand(Main.chatText)); i.Apply(); i = typeof(Main).GetMethod("DoUpdate_Enter_ToggleChat", flags); // Сделать чат открываемым в одиночной игре i.FindCondition(() => Main.keyState.IsKeyDown(Keys.Enter) && Main.netMode == 1 && !Main.keyState.IsKeyDown(Keys.LeftAlt) && !Main.keyState.IsKeyDown(Keys.RightAlt) && Main.hasFocus) .Replace(() => Main.keyState.IsKeyDown(Keys.Enter) && Main.netMode != 2 && !Main.keyState.IsKeyDown(Keys.LeftAlt) && !Main.keyState.IsKeyDown(Keys.RightAlt) && Main.hasFocus); i.Apply(); }