├── CONTRIBUTING.md ├── PrivacyPolicy.md ├── README.md ├── UserUseArgeement.md └── XFP.Impact_Ultimate ├── CLDownloader ├── GashByte-透明.ico ├── Program.cs └── XFP.CLDownloader.csproj ├── Image ├── GashByte+口号.png ├── GashByte-透明.ico └── GashByte.png ├── Updater ├── Updater.sln └── Updater │ ├── GashByte-透明.ico │ ├── Program.cs │ ├── Utils │ └── ZipHelper.cs │ └── XFP.Updater.csproj ├── XFP.Cora ├── App.config ├── App.xaml ├── App.xaml.cs ├── Controls │ ├── AboutUs.xaml │ ├── AboutUs.xaml.cs │ ├── AkebiPage.xaml │ ├── AkebiPage.xaml.cs │ ├── Basic │ │ ├── LoginFormMihoyo.xaml │ │ ├── LoginFormMihoyo.xaml.cs │ │ ├── Settings.xaml │ │ └── Settings.xaml.cs │ ├── CustomNote.xaml │ ├── CustomNote.xaml.cs │ ├── Game │ │ └── Utils │ │ │ ├── CommandLineBuilder.cs │ │ │ └── GameConverter.cs │ ├── HomePage.xaml │ ├── HomePage.xaml.cs │ ├── HoyolabAccount.xaml │ ├── HoyolabAccount.xaml.cs │ ├── NonClientAreaContent.xaml │ ├── NonClientAreaContent.xaml.cs │ ├── WishExport.xaml │ └── WishExport.xaml.cs ├── GashByte-透明.ico ├── GlobalUsing.cs ├── Hoyolab │ ├── Account │ │ ├── GenshinRoleInfo.cs │ │ ├── GenshinRoleInfoWrapper.cs │ │ ├── HoyolabUserInfo.cs │ │ ├── HoyolabUserInfoWrapper.cs │ │ ├── IWrapper.cs │ │ ├── SignInInfo.cs │ │ ├── SignInRisk.cs │ │ └── SignTodayJsonConverter.cs │ ├── Avatar │ │ └── AvatarInfo.cs │ ├── Core │ │ ├── ElementType.cs │ │ └── RegionType.cs │ ├── DailyNote │ │ ├── DailyNoteInfo.cs │ │ ├── Expedition.cs │ │ ├── RecoveryTimeJsonConverter.cs │ │ ├── Transformer.cs │ │ └── TransformerRecoveryTime.cs │ ├── DynamicSecret.cs │ ├── GameRecord │ │ ├── GameRecordSummary.cs │ │ ├── PlayerRiskStats.cs │ │ ├── PotHome.cs │ │ ├── WorldExploration.cs │ │ ├── WorldExplorationOffering.cs │ │ └── WorldExplorationRewardType.cs │ ├── HoyolabBaseWrapper.cs │ ├── HoyolabClient.cs │ └── TravelNotes │ │ ├── TravelNotesBase.cs │ │ ├── TravelNotesDateJsonConverter.cs │ │ ├── TravelNotesDayData.cs │ │ ├── TravelNotesMonthData.cs │ │ ├── TravelNotesPrimogemsMonthGroupStats.cs │ │ └── TravelNotesSummary.cs ├── ICoraException │ ├── ContentEmptyException.cs │ ├── DirectoryNotFound.cs │ ├── HoyolabException.cs │ ├── IncompleteFile.cs │ └── UnKnownChoose.cs ├── MainWindow.xaml ├── MainWindow.xaml.cs ├── Properties │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ ├── Resources.resx │ ├── Settings.Designer.cs │ └── Settings.settings ├── README.md ├── Resources │ ├── DailyTask.png │ ├── Domain.png │ ├── HarmonyOS_Sans_SC_Regular.ttf │ ├── HomeCoin.png │ ├── Mora.png │ ├── PaimonEmotion.png │ ├── Primogems.png │ ├── Resin.png │ ├── ResinFull.png │ └── Transformer.png ├── Service │ └── HoyolabService.cs ├── Utlis │ ├── Base │ │ └── ModuleVersion.cs │ ├── DataProvider.cs │ ├── DllUtils.cs │ ├── GetFormUrl.cs │ ├── KeySetter.cs │ ├── Log │ │ └── LogWriter.cs │ ├── MenuInfo.cs │ ├── Model │ │ ├── DeveloperOption.cs │ │ └── Files │ │ │ ├── DocumentSerializer.cs │ │ │ └── INIFiles.cs │ ├── PrimaryScreen.cs │ └── YSAccount.cs ├── XFP.ICora.csproj ├── XFP.ICora.csproj.user ├── app.manifest └── app1.manifest ├── XFP.ICora.sln ├── XFP.UnInstaller ├── App.xaml ├── App.xaml.cs ├── AssemblyInfo.cs ├── GashByte-透明.ico ├── MainWindow.xaml ├── MainWindow.xaml.cs ├── XFP.UnInstaller.csproj └── XFP.UnInstaller.csproj.user └── 赶紧删库跑路吧.jpg /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # **参与贡献** 2 | 1. Fork 本仓库 3 | 2. 新建 Feat_xxx 分支 4 | 3. 提交代码 5 | 4. 新建 Pull Request 6 | -------------------------------------------------------------------------------- /PrivacyPolicy.md: -------------------------------------------------------------------------------- 1 | # 隐私策略 2 | 3 | 更新日期:**2023/1/14** 4 | 生效日期: **2022/12/24** 5 | 6 | ## 导言 7 | 8 | _ICora_ 是一款由 _XFP Group_(下称"我们")所创作的产品。您在使用我们的服务时,我们可能会有收集和使用有关您的个人游戏账户的相关信息。我们希望通过此《隐私策略》(下称"策略")向您说明,在使用我们的服务器,我们如何收集、使用、存储和分享您的一些信息,已经我们为您提供的访问、更新、控制和保护这些信息的方式。本策略与您所使用的 _ICora_ 服务息息相关,希望您仔细阅读,在需要时,按照本策略的指引,做出您所认为适当的选择。本策略中设计的相关技术词汇,我们尽量以明了的表述方法,并提供进一步说明连接,以便您的理解。 9 | 10 | **您使用或继续使用我们的服务,即意味着您同意本策略所提到的一切有关收集、使用、储存和分享您的相关信息的服务。** 11 | 12 | 如对本策略或相关事宜有任何疑问,请通过 **QQ群** 与我们联系 13 | 14 | ## 1、 我们收集的信息 15 | 16 | 我们或我们的第三方合作伙伴提供服务时,可能会收集、储存和使用下列与您有关的信息。如果您不提供相关信息,可能无法注册成为我们的用户或无法享受我们提供的某些服务,或者无法达到相关服务最佳的效果。 17 | 18 | ## 2、 信息的存储 19 | 20 | **2.1、信息存储方式和期限** 21 | 22 | * 我们会将重要的个人数据进行加密而后保存到本地(如通过ICoraApp内部进行存储数据,或保存到本地文件)、友商服务器数据库、服务器日志。 23 | * 一般情况下,我们只会为实现服务目的所必需的时间内或法律法规规定的条件下存储您的个人信息。 24 | 25 | **2.2、信息存储的地域** 26 | 27 | * 我们会按照法律法规规定,将境内收集的用户个人信息存储于中国境内。 28 | * 目前我们不会跨境传输或除本策略提到的使用目的外的其他目的存储您的个人信息。将来如需跨境传输或存储的,我们会向您告知信息出境的目的、接收方、安全保证措施和安全风险,并征得您的同意是否进行传输以达个人需求。 29 | 30 | **2.3、产品或服务停运时的通知** 31 | 32 | * 当我们的产品或服务发生意外或由我们决定性的,不得不的停止运营时,我们将以推送通知、公告的形式通知您,并在完全停止运营前将您的所有个人信息从我们的友商服务器数据库、服务器日志(法律法规另有规定的除外)中完全删除,除您本地保存的日志外,您可以使用ICora自带的卸载器达到完全卸载的目的。 33 | 34 | ## 3、安全信息 35 | 36 | 我们使用各种安全技术和程序,以防信息的丢失、不当使用、未经授权阅览或披露。例如,在某些服务中,我们将利用加密技术(例如ASE、SSL加密)来保护您所提供的个人信息。但请您理解,由于技术的限制以及可能存在的各种恶意手段,在互联网行业,即便竭尽所能加强安全措施,也不可能始终保证信息百分之百的安全。您需要了解,您接入我们的服务所用的系统和通讯网络,有可能因我们可控范围外的因素而出现问题。若出现此类状况,ICora不承担任何用户损失,一切损失由实施者承担。 37 | 38 | ## 4、 我们如何使用信息 39 | 40 | 我们可能将在向您提供服务的过程之中所收集的信息用作下列用途: 41 | 42 | * 向您提供服务; 43 | * 在我们提供服务时,用于身份验证、客户服务、安全防范、诈骗监测、存档和备份用途,确保我们向您提供的产品和服务的安全性; 44 | * 帮助我们设计新服务,改善我们现有服务; 45 | * 使我们更加了解您如何接入和使用我们的服务,从而针对性地回应您的个性化需求,例如语言设定、位置设定、个性化的帮助服务和指示,或对您和其他用户作出其他方面的回应; 46 | * 向您提供与您更加相关的广告以替代普遍投放的广告; 47 | * 评估我们服务中的广告和其他促销及推广活动的效果,并加以改善; 48 | * 软件认证或管理软件升级; 49 | * 让您参与有关我们产品和服务的调查。 50 | 51 | ## 5、 信息共享 52 | 53 | 目前,我们不会主动共享或转让您的个人信息至第三方,如存在其他共享或转让您的个人信息或您需要我们将您的个人信息共享或转让至第三方情形时,我们会直接或确认第三方征得您对上述行为的明示同意。为了投放广告,评估、优化广告投放效果等目的,我们需要向广告主及其代理商等第三方合作伙伴共享您的部分数据,要求其严格遵守我们关于数据隐私保护的措施与要求,包括但不限于根据数据保护协议、承诺书及相关数据处理政策进行处理,避免识别出个人身份,保障隐私安全。我们不会向合作伙伴分享可用于识别您个人身份的信息(例如您的姓名或电子邮件地址),除非您明确授权。我们不会对外公开披露所收集的个人信息,如必须公开披露时,我们会向您告知此次公开披露的目的、披露信息的类型及可能涉及的敏感信息,并征得您的明示同意。随着我们业务的持续发展,我们有可能进行合并、收购、资产转让等交易,我们将告知您相关情形,按照法律法规及不低于本《隐私政策》所要求的标准继续保护或要求新的控制者继续保护您的个人信息。另外,根据相关法律法规及国家标准,以下情形中,我们可能会共享、转让、公开披露个人信息无需事先征得您的授权同意: 54 | 55 | * 与国家安全、国防安全直接相关的; 56 | * 与公共安全、公共卫生、重大公共利益直接相关的; 57 | * 犯罪侦查、起诉、审判和判决执行等直接相关的; 58 | * 出于维护个人信息主体或其他个人的生命、财产等重大合法权益但又很难得到本人同意的; 59 | * 个人信息主体自行向社会公众公开个人信息的; 60 | * 从合法公开披露的信息中收集个人信息的,如合法的新闻报道、政府信息公开等渠道 61 | 62 | ## 6、 您的权利 63 | 64 | 在您使用我们的服务期间,我们可能会视产品具体情况为您提供相应的操作设置,以便您可以查询、删除、更正或撤回您的相关个人信息,您可参考相应的具体指引进行操作。此外,我们还设置了投诉举报渠道,您的意见将会得到及时的处理。如果您无法通过上述途径和方式行使您的个人信息主体权利,您可以通过本《隐私政策》中提供的联系方式提出您的请求,我们会按照法律法规的规定予以反馈。 65 | 66 | ## 7、 变更 67 | 68 | 我们可能适时修订本《隐私政策》的条款。当变更发生时,我们会在版本更新时向您提示新的《隐私政策》,并向您说明生效日期。请您仔细阅读变更后的《隐私政策》内容,**若您继续使用我们的服务,即表示您同意我们按照更新后的《隐私政策》处理您的个人信息。** 69 | 70 | ## 8、 未成年人保护 71 | 72 | 我们鼓励父母或监护人指导未满十八岁的未成年人使用我们的服务。我们建议未成年人鼓励他们的父母或监护人阅读本《隐私政策》,并建议未成年人在提交的个人信息之前寻求父母或监护人的同意和指导。 73 | 74 | ## 9、 第三方侵害 75 | 76 | _ICora_ 在制作过程包括发布时不会携带任何会或企图损害用户计算机的内容,_ICora_ 一向以完善 _ICora_ 内容为主要目标,保护用户数据为另一极其重要的目标。若用户计算机出现被恶意破坏的行为,更具本协议第九条规定:_ICora_ 不会包含任何此类内容。则源头不为 _ICora_ 。 _ICora_ 以及 _XFP Group_ 中的所有成员不承担此事件责任,若出现类似事件,我们有权以此开源库中的内容为证据并且提供免责声明, _ICora_ 以及 _XFP Group_ 中的所有成员可以无须承担此次事件责任,但若出现较大面积扩散,我们会给予重视。 77 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # **ICora** ![GitHub last commit](https://img.shields.io/github/last-commit/GashByte/ICora) ![GitHub releases](https://img.shields.io/github/downloads/GashByte/ICora/total) 2 | 3 | ![ICora](https://socialify.git.ci/GashByte/ICora/image?description=1&descriptionEditable=%E5%8E%9F%E7%A5%9E%E5%B7%A5%E5%85%B7%E7%AE%B1%20%7C%20XFP.ICora&forks=1&language=1&name=1&pattern=Overlapping%20Hexagons&stargazers=1&theme=Auto) 4 | 5 | ## XFP Studio招人 6 | - Hi Everyone 我们目前急缺懂得 ``C#``、``WinUI3``、``数据库`` 的开发者们 如果你们有兴趣 想要加入 `XFPStudio` 可以前往我的官网 下滑 点击 **Join XFPStudio** 然后联系我的QQ 我会将你拉入我们的交流小组 `XFPStudio` 是一个由我成立的小组织 里面只有两三个人 不过我希望能有越来越多的开发者们能够支持我们 加入我们 和我们肩并肩完成属于我们的梦想 7 | - 访问我的官网:[官网](https://gashbyte.github.io/ICoraIndex/) 8 | - 您也可加入我们的 [Discord群聊](https://discord.gg/GcJCsvTMau) 获得Contributor身份组 与我们一起交流贡献!👀 9 | - ❤ 希望越来越多的人能够支持ICora的诞生 能够与ICora现在的贡献者们肩并肩的一起工作! ❤ 10 | 11 | ## 目录 12 | 13 | - [关于我们](#关于我们) 14 | - [功能](#功能) 15 | - [下载](#下载) 16 | - [使用说明](#使用说明) 17 | - [参与贡献](#参与贡献) 18 | - [隐私策略及用户协议](#隐私策略--用户协议) 19 | 20 | # 旅行者踏上了路途 21 | 22 | ## 嗨,旅行者别来无恙啊! 23 | 希望你没有忘记最初来到这片大陆的约定。 24 | 25 | ## 关于我们 26 | |创作团队|XFPGroup| 27 | |---|--- 28 | |贡献者|x3zF、LoserSkidder、SaA3ne、GashByte| 29 | |一群|811979687| 30 | |二群|590566763| 31 | 32 | ### x3zF 在这里!! 33 | - 你们好 我是 x3zF.. ❤ 34 | - 我正在努力的学习有关编程语言的知识 👀 35 | - 你可以在这里访问我或我们团队的项目储存库 🎁 36 | - 我是ICora的主要开发者之一,但是只有我在Github上传了ICora的源码🎄 37 | - ❤ 就在 -> https://github.com/GashByte/ICora ❤ 38 | 39 | ## 关于ICora 40 | ## 什么是ICora? 41 | - XFP.Impact_Ultimate.Cora(ICora)是XFP Group独自开发的免费原神工具箱,并且它严格遵守开源协议。 42 | - 目前,它只支持中国版的原神,但我们正在朝着国际化的方向发展。 43 | ## 功能 44 | V1.3.10 45 | - [x] 游戏启动 46 | - [x] 米游社账户 47 | - [ ] 深渊记录 48 | - [ ] 祈愿记录(即将添加) 49 | - [ ] 成就管理 50 | - [ ] 角色练度 51 | - [ ] 养成计划 52 | - [ ] 游戏公告 53 | - [ ] 活动公告 54 | - [ ] 图鉴管理 55 | - [ ] 过场动画 56 | - [ ] 自定义便签(即将添加) 57 | - 剩余的内容 XFPGroup正在努力开发! 58 | 59 | ## 它会一直免费吗? 60 | - 是的, 我们将一直提供它的支持直到原神停止它的更新 61 | ## 下载 62 | - 访问我们的官网或者获取ICora的源码. 63 | - 官网: https://gashbyte.github.io/ICoraIndex . 64 | - 源码存储库: https://github.com/GashByte/ICora . 65 | - ***More*** 66 | - [转服包](https://github.com/GashByte/ICora/releases/download/%E8%BD%AC%E6%9C%8D%E5%8C%85/default.zip) 67 | - [转服包国内分流](https://www.123pan.com/s/UE0KVv-GIcJH) 68 | - [ICora v1.3.11 REL](https://github.com/GashByte/ICora/releases/download/ICora/ICoraRelease.zip) 69 | ## 使用说明 70 | - 需要提前安装[.Net 7.0 SDK](https://download.visualstudio.microsoft.com/download/pr/6ba69569-ee5e-460e-afd8-79ae3cd4617b/16a385a4fab2c5806f50f49f5581b4fd/dotnet-sdk-7.0.102-win-x64.exe) 71 | - 解压REL压缩包,运行```XFP.ICora.exe```即可畅玩 72 | 73 | 74 | ## [参与贡献](/CONTRIBUTING.md) 75 | 76 | ## [隐私策略](/PrivacyPolicy.md) | [用户协议](/UserUseArgeement.md) 77 | 78 | **感谢 宵宫(@Doctor-yoi) 提供README** 79 | --- 80 | 81 | ## ❤ 我们希望ICora能成为您爱不释手的原神工具箱!❤ 82 | - 加入群聊获取更多资讯: 83 | - 原神交流群一群 811979687 84 | - 原神交流群二群 590566763 85 | 群内附带Acrepi、阻尼器等实用原神软件! 86 | 87 | ## 关于1.3.11更新的内容! 88 | ***V1.3.11*** 89 | - 集中修复了已知Bug 90 | - 添加了自定义便签页面(未完善) 91 | - 添加了祈愿记录页面(未完善) 92 | - 优化了部分代码 93 | - **Build 230129** 94 | 95 | ## 关于下个版本要添加的内容(拟定) - 给制作小组看的QAQ 96 | - [x] 修改页面UI的已知Bug 97 | - [ ] 添加祈愿记录(页面) 98 | - [ ] 添加自定义便签(页面) 99 | - [ ] 修复已知的bug 100 | - [x] 在添加账户时 弹出bug(原因:无法解析用户头像) 101 | - [ ] ~~在选择Dll注入时 自定义Dll路径不包含中文仍弹出提示~~ *wontfix* 102 | - [x] 实时检查CL无法点击、不检查 103 | - [x] 米哈游刷新过快问题 104 | - [x] 派遣提示错误的问题 105 | - **更多Bug请在Issues反馈哦!❤** 106 | -------------------------------------------------------------------------------- /UserUseArgeement.md: -------------------------------------------------------------------------------- 1 | # 用户使用协议和法律声明 2 | 3 | 更新日期:**2023/1/14** 4 | 生效日期: **2022/12/24** 5 | 6 | ## 总则 7 | 8 | 本"用户使用协议和法律声明"(以下简称"条款"或"使用协议")适用于 _XFP Group_ 开发团队(以下简称"我们")开发的全部软件作品、各开发项目的官方网站、附属的自媒体账号等。 9 | 请您仔细阅读本用户使用协议的全部内容,在您阅读"使用协议"后,若对此用户使用协议中的任何条款有异议,请立刻停止使用我们所开发的任意项目。 10 | 如您未满18周岁,请在法定监护人陪同下仔细阅读并充分理解本协议,并征得法定监护人的同意后使用我们所开发的任意项目。 11 | 若您已安装、使用或在开发时引用我们所开发的任意项目,表示您已主动阅读(已阅读完毕)并完全同意本使用协议所列明的条款,即已充分理解本协议并承诺作为本协议的一方当事人接受协议、法律声明、隐私政策以及与我们所开发的任意项目相关的规则、规范、声明、公告、通知等内容的约束。 12 | 此《用户使用协议》是由用户(以下或称"您")与我们所开发的任意项目所订立的用户使用协议和法律声明,本协议对用户和我们均具有法律效力。 13 | 14 | ## 项目性质、服务以及有关责任与义务的界定 15 | 16 | **1、** 17 | 由于我们所开发的任意项目,均"开源"、"非经营性质",故我们可随时执行全权决定:包括但不限于更改"使用协议",修改我们所开发的任意项目内的任何内容。如"条款"及"作品的内容"有任何变更,我们将在相关的项目展示网站上刊载公告作为通知。经修订的"条款"一经在官方网站上公布后,即自动生效。 18 | 19 | **2、** 20 | 本软件以"学习开发知识"、"积累开发经验"为目的进行开发,所有项目所提供的功能,均"开源"、"非经营性质",如用户对我们所开发的任意项目的安全性表示不满,请立即卸载/删除/停用,如您仍在正常使用,则表示您认可我们所开发的任意项目的安全性。 21 | 22 | **3、** 23 | 一切因使用我们所开发的任意项目的内容而导致的"任何意外损失(包括但不限于:软件、硬件、财产以及虚拟物品等)"、"合约毁坏"、"诽谤"、"版权或知识产权侵犯"及其所造成的损失与责任,均为使用者自身对于网络公开的开源软件的使用过程中自身发生的使用行为所引致的"损失与责任",基于全部作品在其开放源代码的位置(即Github、Gitee)的本声明所约定的内容,应当认定前述的"损失与责任"与全部项目的有关开发者无责任关联。 24 | 25 | **4、** 26 | 用户使用我们所开发的任意项目期间,我们不做任何不发生如下情况的保证: 27 | 28 | 因网络状况、通讯线路等任何技术原因而导致用户不能正常使用或更新; 29 | 因使用"第三方开发的本软件内插件"、"第三方进行二次编译的本软件的修改版"、"复用本开发团队所创作的项目代码而编译成的软件"造成负面结果。 30 | 五、用户认可我们所开发的任意项目,除被动接收软件或其他相关项目中的必要的上传报告或有关信息外,所有信息的上传均需要用户的主动触发; 31 | 32 | 用户认可我们所开发的任意项目,均完全尊重并保护所有用户的"个人隐私权",项目代码亦完全公开,用户不具有"因隐私权收到侵犯"而对开发团队或团队成员发起控诉的主观理由。 33 | 我们所开发的任意项目不会向第三方共享、转让您的个人信息,除非经过您本人事先授权同意,或者共享、转让的个人信息是去标识化处理后的信息,且共享第三方无法重新识别此类信息的自然人主体。 34 | 我们所开发的任意项目包含到其他站点的链接,当您访问第三方链接时,请认真阅读第三方站点的用户协议和声明,我们对于第三方站点的内容、隐私条款、使用协议等不负任何责任。 35 | 在使用我们所开发的任意项目时,提交任意资料的过程中,我们不保证提交的信息保存成功,您需要对您提交的资料做好存储保管。我们所开发的部分项目为"被授权数据"提供存储,但在存储过程中存在各种不可抗力的因素,我们无法承诺对用户的存储信息无限期保留,您的重要信息请自行备份。 36 | 37 | ## 权利和义务 38 | 39 | **6、** 40 | 我们允许任何单位或个人在没有本开发团队授权的情况下,对我们所开发的任意项目进行的二次开发、功能修改以及复用我们创作的代码进行其他项目的开发,但对其所侵犯我们计算机软件著作权的行为,我们保留追责的权利。 41 | 42 | 我开发团队不对任何单位或个人在使用我们所开发的任意项目的内容进行的公开发布行为(包括但不限于制作视频、发布带有本软件内容的文章、上传至非我开发团队指定的下载网站提供下载等)的内容所致的任意结果进行负责。 43 | 我开发团队不对使用"第三方开发的可用于我们所开发的任意项目的附属程序或额外代码"、"第三方进行二次编译的我们所开发的任意项目的修改版"、"复用本开发团队所创作的项目代码而编译成的软件"造成的任意结果负责。 44 | 在此基础上,根据《计算机软件保护条例》第二条与第三条对于"计算机软件"和"文档"的法律定义,本软件开发团队(_XFP Group_)保留全部我们开发项目的计算机软件著作权,其包括但不限于项目构建所需的全部信息、全部项目有关的所有文档资料(即用来描述程序的内容、组成、设计、功能规格、开发情况的程序设计说明书、流程图、用户手册等),具体内容以各项目《计算机软件著作权登记证书》的实际内容为准。 45 | 46 | **7、** 47 | 我们所开发的任意项目仅作用于合法、合规范围内的学习及研究所用,不得利用本软件系统从事违法活动。 48 | 49 | 我们仅作为项目的开发团队(非法人性质,为自然人组成的团体),对任何使用结果不负任何连带责任,软件以及我们开发的任意项目的使用过程中产生的任何法律后果我们概不负责、不承担任何法律责任。 50 | 若用户已开始使用我们所开发的任意项目,即已同意"使用协议",表明我们已履行完毕"本使用协议第十款"的告知情形。 51 | 52 | **8、** 53 | 所开发项目的著作权。 54 | 55 | 本软件开发团队对所开发的"XFP.Impact_Ultimate软件"、"XFP.ICora软件"等作品的软件本身(不包括软件内除功能模块外的显示内容)、上述作品的全部历史版本以及周边网站,以及我们所开发的任意其他作品,拥有软件内的"各商标的所有权"(引用于网络的图片除外),"著作权"等有关的应有权益。 56 | 我们所开发的任意项目的统计数据全部来源于软件用户主动提交,经过对数据简单地筛选后进行展示,因此我们所开发的任意项目不对数据的准确性负责,该数据也与我们无关。 57 | 使用我们所开发的任意项目的过程中可能会产生拥有原有版权的数据,对于这些数据,我们所开发的任意项目不拥有它们的所有权,为了避免造成侵权,使用者有义务完全阅读并履行"本使用协议第十条"的内容。本软件内使用的资源(包括但不限于字体、图片、文字等)均来源于互联网的公开信息,如果出现侵权可立即联系我们移除。 58 | 59 | ## 其他条款 60 | 61 | **9、** 62 | 对于团队所开发项目的"非经营性质"的确定。 63 | 64 | 我们所开发的任意项目,均无任何经营性质。 65 | 66 | 若开发团队的个别或部分成员,在参与开发我们所开发的任意项目期间,与我们所开发的任意项目的第三方用户间产生了包括但不限于:赠与、交换、买卖等关系,其所产生的关系与本开发团队无关,此种情形的发生不基于团队开发有关项目这一事实,而是基于其与第三方用户,在发生上述关系的互联网交互位置或现实地点所产生的独立事件,应当以发生上述关系的互联网交互位置的用户使用条款或结合其在现实地点所发生的具体行为来判定此行为的性质。 67 | 68 | **10、** 69 | 我们所开发的任意项目(含网站),均以"学习开发知识"、"积累开发经验"为目的进行开发,仅供学习交流,严禁用于商业用途,请您在下载或进行查看学习后的24小时内自行删除全部相关信息,若您无视本条要求,本软件开发团队不对"可能产生的版权纠纷、著作权侵权以及民事纠纷等问题"负责。 70 | 71 | **11、** 72 | 本协议的成立、生效、履行、解释及争议的解决均应适用中华人民共和国大陆地区法律。倘本协议之任何规定因与中华人民共和国的法律抵触而无效,则这些条款将尽可能接近本协议原条文意旨重新解析,且本协议其它规定仍应具有完整的效力及效果。 73 | 74 | **12、** 75 | 本协议中的标题(包括副标题)仅为方便及阅读而设,并不影响本协议中任何规定的含义或解释。 76 | 77 | **13、** 78 | 您和本开发团队均是独立的主体,在任何情况下本协议不构成本开发团队对用户的任何形式的明示或暗示担保或条件,双方之间亦不构成代理、合伙、合营或雇佣关系。 79 | 80 | **14、** 81 | 本"用户使用协议和法律声明"中,"我们"或称"本开发团队"(区别于"用户"或"您")的实际主体为" _XFP Group_ 开发团队"的团队整体及每个成员个人,即包含前述网站( https://gitee.com/XFP-Group )中,[XFP Group开发团队]( https://gitee.com/organizations/XFP-Group/members/list )的全部成员。 82 | -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/CLDownloader/GashByte-透明.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GashByte/ICora/75aab93fba19cf4e6771ae7d38f7073100f7cc0e/XFP.Impact_Ultimate/CLDownloader/GashByte-透明.ico -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/CLDownloader/Program.cs: -------------------------------------------------------------------------------- 1 | using static System.Net.Mime.MediaTypeNames; 2 | using System.Net; 3 | using System.Diagnostics; 4 | using System; 5 | 6 | namespace XFP.Impact_Ultimate.CLDownloader 7 | { 8 | public class CLDownloader 9 | { 10 | private static string Impact_UltimatePath = Environment.CurrentDirectory + "\\ICora"; 11 | private static string BkebiPath = Environment.CurrentDirectory + "\\ICora\\libstdimpact.dll"; 12 | 13 | static void Main() 14 | { 15 | if (!Directory.Exists(Impact_UltimatePath)) 16 | Directory.CreateDirectory(Impact_UltimatePath); 17 | Checker(); 18 | } 19 | 20 | static void Checker() 21 | { 22 | Console.WriteLine("-------------------------Checker-------------------------"); 23 | Console.WriteLine("正在检查数据"); 24 | if (File.Exists(BkebiPath)) 25 | { 26 | Console.WriteLine("检查到了libstdimpact.dll的存在 正在校验文件大小"); 27 | FileInfo fileInfo = new FileInfo(BkebiPath); 28 | long localsize = fileInfo.Length; 29 | HttpWebRequest request = WebRequest.CreateHttp( 30 | ""); 31 | HttpWebResponse? response = request.GetResponse() as HttpWebResponse; 32 | Console.WriteLine("您的lib大小: " + localsize); 33 | Console.WriteLine("服务器的lib大小: " + response.ContentLength); 34 | SizeChecker(localsize, response.ContentLength); 35 | } 36 | else 37 | { 38 | Console.WriteLine("没有检查到CLibrary的存在 正在转跳下载线程"); 39 | Downloader(); 40 | } 41 | } 42 | 43 | static void Downloader() 44 | { 45 | Console.WriteLine("-------------------------Downloader-------------------------"); 46 | Console.WriteLine("正在请求文件中"); 47 | HttpWebRequest request = WebRequest.CreateHttp( 48 | ""); 49 | HttpWebResponse? response = request.GetResponse() as HttpWebResponse; 50 | Stream responseStream = response.GetResponseStream(); 51 | //保存用户头像 52 | Stream stream = new FileStream(BkebiPath, FileMode.Create); 53 | byte[] bArr = new byte[1024]; 54 | int size = responseStream.Read(bArr, 0, bArr.Length); 55 | Stopwatch sw = new Stopwatch(); 56 | sw.Start(); 57 | Console.WriteLine("开始下载"); 58 | long totalBytesRead = 0; 59 | do 60 | { 61 | stream.Write(bArr, 0, size); 62 | size = responseStream.Read(bArr, 0, bArr.Length); 63 | totalBytesRead += size; 64 | Console.WriteLine("进度条: " + ((float)totalBytesRead / (float)response.ContentLength) * 100 + "%"); 65 | } while (size > 0); 66 | stream.Close(); 67 | responseStream.Close(); 68 | sw.Stop(); 69 | FileInfo fileInfo = new FileInfo(BkebiPath); 70 | long localsize = fileInfo.Length; 71 | 72 | Console.WriteLine("下载成功! 耗时: " + sw.ElapsedMilliseconds / 1000.0000 + " 秒"); 73 | Console.WriteLine("文件大小: " + localsize); 74 | Console.WriteLine("正在请求服务器大小: " + response.ContentLength); 75 | 76 | SizeChecker(localsize, response.ContentLength); 77 | } 78 | 79 | static void SizeChecker(long LocalSize, long ServerSize) 80 | { 81 | if (LocalSize != ServerSize) 82 | { 83 | Console.WriteLine("这是一个不符合要求的lib正在重新下载"); 84 | File.Delete(BkebiPath); 85 | Downloader(); 86 | } 87 | else 88 | { 89 | Console.WriteLine("这是一个合格的lib请放心使用"); 90 | Environment.Exit(0); 91 | } 92 | } 93 | } 94 | } 95 | -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/CLDownloader/XFP.CLDownloader.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | net6.0 6 | enable 7 | enable 8 | GashByte-透明.ico 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/Image/GashByte+口号.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GashByte/ICora/75aab93fba19cf4e6771ae7d38f7073100f7cc0e/XFP.Impact_Ultimate/Image/GashByte+口号.png -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/Image/GashByte-透明.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GashByte/ICora/75aab93fba19cf4e6771ae7d38f7073100f7cc0e/XFP.Impact_Ultimate/Image/GashByte-透明.ico -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/Image/GashByte.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GashByte/ICora/75aab93fba19cf4e6771ae7d38f7073100f7cc0e/XFP.Impact_Ultimate/Image/GashByte.png -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/Updater/Updater.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 17 4 | VisualStudioVersion = 17.4.33205.214 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Updater", "Updater\Updater.csproj", "{E85BC1E8-8AF2-4877-B60D-46B620B4D9B6}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {E85BC1E8-8AF2-4877-B60D-46B620B4D9B6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {E85BC1E8-8AF2-4877-B60D-46B620B4D9B6}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {E85BC1E8-8AF2-4877-B60D-46B620B4D9B6}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {E85BC1E8-8AF2-4877-B60D-46B620B4D9B6}.Release|Any CPU.Build.0 = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | GlobalSection(ExtensibilityGlobals) = postSolution 23 | SolutionGuid = {FCE38CBE-EA3E-4D12-8A11-B8F961192CCE} 24 | EndGlobalSection 25 | EndGlobal 26 | -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/Updater/Updater/GashByte-透明.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GashByte/ICora/75aab93fba19cf4e6771ae7d38f7073100f7cc0e/XFP.Impact_Ultimate/Updater/Updater/GashByte-透明.ico -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/Updater/Updater/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Diagnostics; 3 | using System.IO.Compression; 4 | using System.Net; 5 | using System.Web; 6 | using System.IO.Compression; 7 | using XFP.Impact_Ultimate.Updater.Utils; 8 | 9 | namespace XFP.Impact_Ultimate.Updater 10 | { 11 | public class Updater 12 | { 13 | public static string path = Environment.CurrentDirectory + "\\Release.zip"; 14 | public static long FileSize; 15 | public static string DownloadPath = "https://gitee.com/MasterGashByte/updates/releases/download/Release/Release.zip"; 16 | public static int DownloadCount = 0; 17 | 18 | public static void Main() 19 | { 20 | Console.WriteLine("正在更新 请不要关闭"); 21 | Console.WriteLine("正在检查库是否存在"); 22 | if (UrlIsExist(DownloadPath)) 23 | { 24 | Console.ForegroundColor = ConsoleColor.Green; 25 | Console.WriteLine("检测到库 正在调用下载线程"); 26 | Console.ForegroundColor = ConsoleColor.Black; 27 | Console.BackgroundColor = ConsoleColor.Green; 28 | Downloader(DownloadPath); 29 | } 30 | else 31 | { 32 | Console.BackgroundColor = ConsoleColor.Red; 33 | Console.WriteLine("库不存在 请前往群中下载"); 34 | Console.ReadKey(); 35 | Environment.Exit(0); 36 | } 37 | } 38 | 39 | private static void Downloader(string url) 40 | { 41 | DownloadCount += 1; 42 | if (DownloadCount > 5) 43 | { 44 | Console.BackgroundColor = ConsoleColor.Red; 45 | Console.WriteLine("多次下载失败 请前往群中下载"); 46 | Console.ReadKey(); 47 | Environment.Exit(0); 48 | } 49 | else 50 | { 51 | Console.BackgroundColor = ConsoleColor.Green; 52 | Console.WriteLine("-----------------Downloader------------------"); 53 | Console.WriteLine("下载器载入中"); 54 | // HttpDownloader by LoserSkidder 55 | Console.WriteLine("请求下载中..."); 56 | // 设置参数 57 | HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest; 58 | //发送请求并获取相应回应数据 59 | HttpWebResponse response = request.GetResponse() as HttpWebResponse; 60 | Stopwatch sp = new Stopwatch(); 61 | //直到request.GetResponse()程序才开始向目标网页发送Post请求 62 | Stream responseStream = response.GetResponseStream(); 63 | FileSize = response.ContentLength; 64 | sp.Start(); 65 | //创建本地文件写入流 66 | Stream stream = new FileStream(path, FileMode.Create); 67 | byte[] bArr = new byte[1024]; 68 | int size = responseStream.Read(bArr, 0, (int)bArr.Length); 69 | while (size > 0) 70 | { 71 | stream.Write(bArr, 0, size); 72 | size = responseStream.Read(bArr, 0, (int)bArr.Length); 73 | } 74 | stream.Close(); 75 | responseStream.Close(); 76 | sp.Stop(); 77 | 78 | Console.WriteLine("下载成功 下载时间:" + sp.ElapsedMilliseconds / 1000.0000 + "秒"); 79 | Console.WriteLine("校验数据完整性中..."); 80 | 81 | SizeChecker(); 82 | } 83 | } 84 | 85 | /// 86 | /// 文件大小的校验 by LoserSkidder 87 | /// 88 | private static void SizeChecker() 89 | { 90 | Console.WriteLine("-----------------SizeChecker-----------------"); 91 | HttpWebRequest request = (HttpWebRequest)WebRequest.Create(DownloadPath); 92 | HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 93 | FileSize = response.ContentLength; 94 | FileInfo fileInfo = new FileInfo(path); 95 | Console.WriteLine("下载的数据大小: " + fileInfo.Length + " Kb"); 96 | Console.WriteLine("服务器请求的大小: " + FileSize + " Kb"); 97 | if (fileInfo.Length == FileSize) 98 | { 99 | Console.WriteLine("看起来下载的数据很完整"); 100 | Console.WriteLine("载入解压线程..."); 101 | UnZip(); 102 | } 103 | else 104 | { 105 | Console.BackgroundColor = ConsoleColor.Red; 106 | Console.WriteLine("喔 数据好像不太完整 正在重新下载呢"); 107 | File.Delete(path); 108 | Downloader(DownloadPath); 109 | } 110 | } 111 | 112 | /// 113 | /// 文件解压 by x3zF 114 | /// 115 | private static void UnZip() 116 | { 117 | Console.WriteLine("--------------------UnZip--------------------"); 118 | Console.WriteLine("正在解压文件"); 119 | try 120 | { 121 | ZipHelper.UnZip(Environment.CurrentDirectory + "\\Release.zip", Environment.CurrentDirectory + "\\"); 122 | 123 | Console.WriteLine("解压成功! 祝您游玩愉快"); 124 | File.Delete(path); 125 | Environment.Exit(0); 126 | } 127 | catch(Exception ex) 128 | { 129 | Console.BackgroundColor = ConsoleColor.Red; 130 | Console.WriteLine("出现异常:"); 131 | Console.WriteLine(ex.Message); 132 | Console.ReadKey(); 133 | Environment.Exit(0); 134 | } 135 | } 136 | 137 | private static bool UrlIsExist(string url) 138 | { 139 | System.Uri u; 140 | try 141 | { 142 | u = new Uri(url); 143 | } 144 | catch { return false; } 145 | bool isExist = false; 146 | System.Net.HttpWebRequest? r = System.Net.WebRequest.Create(u) as System.Net.HttpWebRequest; 147 | r.Method = "HEAD"; 148 | try 149 | { 150 | System.Net.HttpWebResponse? s = r.GetResponse() as System.Net.HttpWebResponse; 151 | if (s.StatusCode == System.Net.HttpStatusCode.OK) 152 | { 153 | isExist = true; 154 | } 155 | } 156 | catch (System.Net.WebException x) 157 | { 158 | try 159 | { 160 | isExist = (x.Response as System.Net.HttpWebResponse).StatusCode != System.Net.HttpStatusCode.NotFound; 161 | } 162 | catch { isExist = x.Status == System.Net.WebExceptionStatus.Success; } 163 | } 164 | return isExist; 165 | } 166 | } 167 | } -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/Updater/Updater/Utils/ZipHelper.cs: -------------------------------------------------------------------------------- 1 | using ICSharpCode.SharpZipLib.Checksums; 2 | using ICSharpCode.SharpZipLib.Zip; 3 | using System; 4 | using System.Collections; 5 | using System.Collections.Generic; 6 | using System.Diagnostics; 7 | using System.IO; 8 | using System.Linq; 9 | using System.Text; 10 | 11 | namespace XFP.Impact_Ultimate.Updater.Utils 12 | { 13 | public class ZipHelper 14 | { 15 | /// 16 | /// 功能:解压zip格式的文件。 17 | /// 18 | /// 压缩文件路径 19 | /// 解压文件存放路径,为空时默认与压缩文件同一级目录下,跟压缩文件同名的文件夹 20 | /// 解压是否成功 21 | public static bool UnZip(string zipFilePath, string unZipDir) 22 | { 23 | try 24 | { 25 | if (zipFilePath == string.Empty) 26 | { 27 | throw new Exception("压缩文件不能为空!"); 28 | } 29 | if (!File.Exists(zipFilePath)) 30 | { 31 | throw new FileNotFoundException("压缩文件不存在!"); 32 | } 33 | //解压文件夹为空时默认与压缩文件同一级目录下,跟压缩文件同名的文件夹 34 | if (unZipDir == string.Empty) 35 | unZipDir = zipFilePath.Replace(Path.GetFileName(zipFilePath), Path.GetFileNameWithoutExtension(zipFilePath)); 36 | if (!unZipDir.EndsWith("/")) 37 | unZipDir += "/"; 38 | if (!Directory.Exists(unZipDir)) 39 | Directory.CreateDirectory(unZipDir); 40 | using (var s = new ZipInputStream(File.OpenRead(zipFilePath))) 41 | { 42 | 43 | ZipEntry theEntry; 44 | while ((theEntry = s.GetNextEntry()) != null) 45 | { 46 | string directoryName = Path.GetDirectoryName(theEntry.Name); 47 | string fileName = Path.GetFileName(theEntry.Name); 48 | if (!string.IsNullOrEmpty(directoryName)) 49 | { 50 | Directory.CreateDirectory(unZipDir + directoryName); 51 | } 52 | if (directoryName != null && !directoryName.EndsWith("/")) 53 | { 54 | } 55 | if (fileName != String.Empty) 56 | { 57 | using (FileStream streamWriter = File.Create(unZipDir + theEntry.Name)) 58 | { 59 | 60 | int size; 61 | byte[] data = new byte[2048]; 62 | while (true) 63 | { 64 | size = s.Read(data, 0, data.Length); 65 | if (size > 0) 66 | { 67 | streamWriter.Write(data, 0, size); 68 | } 69 | else 70 | { 71 | break; 72 | } 73 | } 74 | } 75 | } 76 | } 77 | } 78 | return true; 79 | } 80 | catch (Exception) 81 | { 82 | 83 | return false; 84 | } 85 | 86 | } 87 | 88 | /// 89 | /// 压缩所有的文件 90 | /// 91 | /// 92 | /// 93 | public static void CreateZipFile(string filesPath, string zipFilePath) 94 | { 95 | if (!Directory.Exists(filesPath)) 96 | { 97 | return; 98 | } 99 | ZipOutputStream stream = new ZipOutputStream(File.Create(zipFilePath)); 100 | stream.SetLevel(0); // 压缩级别 0-9 101 | byte[] buffer = new byte[4096]; //缓冲区大小 102 | string[] filenames = Directory.GetFiles(filesPath, "*.*", SearchOption.AllDirectories); 103 | foreach (string file in filenames) 104 | { 105 | ZipEntry entry = new ZipEntry(file.Replace(filesPath, "")); 106 | entry.DateTime = DateTime.Now; 107 | stream.PutNextEntry(entry); 108 | using (FileStream fs = File.OpenRead(file)) 109 | { 110 | int sourceBytes; 111 | do 112 | { 113 | sourceBytes = fs.Read(buffer, 0, buffer.Length); 114 | stream.Write(buffer, 0, sourceBytes); 115 | } while (sourceBytes > 0); 116 | } 117 | } 118 | stream.Finish(); 119 | stream.Close(); 120 | } 121 | } 122 | } -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/Updater/Updater/XFP.Updater.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Exe 5 | net7.0 6 | enable 7 | enable 8 | GashByte-透明.ico 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | E:\备份\XFP.Impact_Ultimate\PluginDownloader\bin\Release\net7.0\ICSharpCode.SharpZipLib.dll 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/XFP.Cora/App.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 0 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/XFP.Cora/App.xaml: -------------------------------------------------------------------------------- 1 |  5 | 6 | 12 | 13 | 14 | SDK_SC_Web 85W, ms-appx:///Assets/Fonts/HarmonyOS_Sans_SC_Regular.ttf#HarmonyOS Sans SC 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/XFP.Cora/App.xaml.cs: -------------------------------------------------------------------------------- 1 | namespace XFP.ICora 2 | { 3 | /// 4 | /// App.xaml 的交互逻辑 5 | /// 6 | public partial class App : Application 7 | { 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /XFP.Impact_Ultimate/XFP.Cora/Controls/AboutUs.xaml: -------------------------------------------------------------------------------- 1 |  5 | 6 | 17 | 18 | 19 | 24 | 29 | 34 | 40 | 45 | 48 | · 访问我们的官网(推荐!) 49 | 50 | 51 | 56 | 61 |