# AVGDialogWinform **Repository Path**: ZYFDroid/avg-dialog-winform ## Basic Information - **Project Name**: AVGDialogWinform - **Description**: 在WinForm里使用文字冒险游戏的对话框。(仅供娱乐) - **Primary Language**: Unknown - **License**: WTFPL - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-22 - **Last Updated**: 2025-07-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AVGDialog 一个用于在 WinForm 应用程序中实现视觉小说(文字冒险游戏)风格对话框的 C# 类库。 ## 简介 AVGDialog 是一个简单的视觉小说对话框框架,专为 WinForm 设计,支持文本显示、角色切换、选项选择、跳过剧情等功能。适合用于开发带有对话系统的文字冒险游戏或交互式应用程序。 ## 功能特性 - 显示对话文本 - 设置说话者(角色)名称与样式 - 支持文本与选项的动态修改(不能添加) - 支持跳过剧情段落 - 支持屏幕震动特效 - 自定义文本样式(颜色、字体大小) - 可与 WinForm 界面无缝集成 ## 使用方法 ### 基本用法 在 WinForm 项目中引入 AVGDialog 类库并创建对话系统实例: ```csharp AVGDialog avg = new AVGDialog(this); avg.Text("Hello World!"); // 显示一条对话 avg.Text(()=>$"现在是:{DateTime.Now.ToString()}"); // 显示一条动态生成内容的对话 avg.Text("角色A", "这是角色A的对话内容。"); // 添加带说话者的对话 avg.AddSelection("选项1", "选项2"); // 添加选择项 avg.Begin(); // 开始对话流程 ``` ### 高级功能 - **跳过剧情段落** ```csharp avg.BeginSkipSection("剧情A"); avg.Text("这是可以跳过的剧情段落A中的内容。"); avg.Delay(1000); avg.EndSkipSection(); ``` - **设置文本与角色样式** ```csharp avg.SetSpeakerColor(Color.Red); avg.SetTextColor(Color.Blue); avg.SetTextSize(AVGTextSizes.Large); ``` - **跳转逻辑** ```csharp avg.Goto("label_name"); // 无条件跳转 avg.GotoIf("label_name", () => someCondition); // 条件跳转 ``` - **屏幕震动** ```csharp avg.StrikeScreen(AVGStrikeScreenMode.Horizontal, 3, 10); ``` - **在剧情中执行自定义操作** ```csharp avg.Exec(() => { // 自定义逻辑 }); ``` ## 示例项目 项目包含一个测试项目 `AVGDialogTester`,演示了 AVGDialog 的基本使用方式,可以作为快速集成的参考。 ## 安装与配置 1. 克隆仓库到本地: ```bash git clone https://gitee.com/ZYFDroid/avg-dialog-winform ``` 2. 在 Visual Studio 中打开 `AVGDialog.sln` 解决方案。 3. 构建解决方案,生成 `AVGDialog.dll`。 4. 在目标 WinForm 项目中引用该 DLL 文件(别忘了把XML也拷贝过去)。 ## 项目结构说明 - **AVGDialog.cs**:核心逻辑类,实现对话系统 API。 - **AVGDialogWindow.cs**:对话框的 UI 窗体类,负责显示对话内容。 - **FrmSkipDialog.cs**:跳过剧情确认窗口。 - **Resources 文件夹**:包含界面相关的资源文件,如图标等。 - **Properties**:程序集配置、资源管理器等设置。 ## 开源许可 本项目采用 MIT License,请参考项目中的 `LICENSE` 文件以了解更多许可信息。 ## 贡献 欢迎提交 Issue 与 Pull Request!请确保代码风格一致并提供清晰的提交信息。 ## 联系方式 项目作者:ZYFDroid Gitee 项目地址:https://gitee.com/ZYFDroid/avg-dialog-winform --- > 以上内容为Gitee AI 马建仓 生成 > 经过检查没有什么大问题(给我编了一个我正打算写的功能,不过也好,我正要加上去) > 本项目仅供娱乐