forked from Cookies_Github_mirror/AquaDX
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
85296ae3b1 |
@@ -1,20 +0,0 @@
|
||||
FROM gradle:8.8.0-jdk21
|
||||
|
||||
ENV NODE_VERSION=22
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install -y curl && \
|
||||
curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash - && \
|
||||
apt-get install -y nodejs && \
|
||||
npm install -g npm@latest
|
||||
|
||||
RUN npm install -g bun
|
||||
|
||||
RUN apt-get install -y maven
|
||||
|
||||
RUN gradle --version && \
|
||||
node --version && \
|
||||
npm --version && \
|
||||
bun --version
|
||||
|
||||
WORKDIR /workspace
|
||||
@@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "AquaDX Dev Container",
|
||||
"build": {
|
||||
"dockerfile": "Dockerfile"
|
||||
},
|
||||
"customizations": {
|
||||
"vscode": {
|
||||
"extensions": [
|
||||
"vscjava.vscode-gradle",
|
||||
"vscjava.vscode-java-pack",
|
||||
"dbaeumer.vscode-eslint",
|
||||
"esbenp.prettier-vscode",
|
||||
"fwcd.kotlin"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
49
.github/workflows/build.yml
vendored
49
.github/workflows/build.yml
vendored
@@ -1,49 +0,0 @@
|
||||
name: Gradle Build
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches: [ v1-dev ]
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: macos-arm64
|
||||
env:
|
||||
GIT_SSL_NO_VERIFY: true
|
||||
|
||||
steps:
|
||||
- name: Force Git to use HTTP/1.1 (Experimental)
|
||||
run: |
|
||||
git config --global http.version HTTP/1.1
|
||||
git config --global http.sslVerify false
|
||||
git config --global http.sslVerify false
|
||||
git config --global https.sslVerify false
|
||||
git config --global http.proxy 'http://127.0.0.1:7890'
|
||||
git config --global https.proxy 'http://127.0.0.1:7890'
|
||||
export NODE_TLS_REJECT_UNAUTHORIZED='0'
|
||||
|
||||
- name: Disable SSL verification (Temporary Fix)
|
||||
run: git config --global http.sslVerify false
|
||||
|
||||
- name: Checkout repository
|
||||
uses: https://gitee.com/github-actions/checkout@v4
|
||||
|
||||
|
||||
- name: Set up JDK
|
||||
uses: https://gitea.com/actions/setup-java@v3
|
||||
with:
|
||||
java-version: '21'
|
||||
distribution: 'temurin'
|
||||
|
||||
- name: Build with Gradle
|
||||
run: |
|
||||
mkdir data
|
||||
bash ./src/main/resources/meta/update.sh
|
||||
chmod +x gradlew
|
||||
./gradlew build
|
||||
|
||||
- name: Upload artifact
|
||||
uses: https://gitee.com/actions-mirror/upload-artifact@v3
|
||||
with:
|
||||
name: AquaDX-1.0.0.jar
|
||||
path: build/libs
|
||||
63
.github/workflows/docker-image.yml
vendored
63
.github/workflows/docker-image.yml
vendored
@@ -1,63 +0,0 @@
|
||||
name: Build and Publish Docker Image
|
||||
|
||||
# Trigger the workflow on push to the main branch or on manual dispatch
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: '0 0 * * 0' # Runs at midnight UTC every Sunday
|
||||
|
||||
jobs:
|
||||
build-and-push:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
# 1. Checkout the repository
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
# 2. Set up QEMU and Docker Buildx (for multi-platform builds, optional)
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
# 3. Log in to Docker Hub
|
||||
- name: Log in to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: hykilpikonna
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
# 3. Log in to GitHub Container Registry (ghcr.io)
|
||||
- name: Log in to GitHub Container Registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
# Use GITHUB_TOKEN for authentication
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
# 4. Cache Docker layers to speed up builds (optional but recommended)
|
||||
- name: Cache Docker layers
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: /tmp/.buildx-cache
|
||||
key: ${{ runner.os }}-buildx-${{ github.sha }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-buildx-
|
||||
|
||||
# 5. Build and push the Docker image
|
||||
- name: Build and push Docker image
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
context: .
|
||||
push: true
|
||||
tags: |
|
||||
hykilpikonna/aquadx:latest
|
||||
platforms: linux/amd64,linux/arm64
|
||||
cache-from: type=local,src=/tmp/.buildx-cache
|
||||
cache-to: type=local,dest=/tmp/.buildx-cache
|
||||
10
.github/workflows/gradle.yml
vendored
10
.github/workflows/gradle.yml
vendored
@@ -9,17 +9,19 @@ jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Set up JDK
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: '21'
|
||||
java-version: '17'
|
||||
distribution: 'temurin'
|
||||
server-id: github
|
||||
|
||||
- name: Setup Gradle
|
||||
uses: gradle/gradle-build-action@v2
|
||||
|
||||
- name: Build with Gradle
|
||||
run: |
|
||||
mkdir data
|
||||
bash ./src/main/resources/meta/update.sh
|
||||
chmod +x gradlew
|
||||
./gradlew build
|
||||
|
||||
4
.gitignore
vendored
4
.gitignore
vendored
@@ -1,4 +1,3 @@
|
||||
db/
|
||||
web/
|
||||
bin/
|
||||
|
||||
@@ -81,6 +80,3 @@ gradle-app.setting
|
||||
src/main/resources/meta/*/*.json
|
||||
*.log.*.gz
|
||||
*.salive
|
||||
test-diff
|
||||
htmlReport
|
||||
docs/logs
|
||||
|
||||
376
AquaMai/.gitignore
vendored
Normal file
376
AquaMai/.gitignore
vendored
Normal file
@@ -0,0 +1,376 @@
|
||||
|
||||
# Created by https://www.toptal.com/developers/gitignore/api/git,visualstudio
|
||||
# Edit at https://www.toptal.com/developers/gitignore?templates=git,visualstudio
|
||||
|
||||
### Git ###
|
||||
# Created by git for backups. To disable backups in Git:
|
||||
# $ git config --global mergetool.keepBackup false
|
||||
*.orig
|
||||
|
||||
# Created by git when using merge tools for conflicts
|
||||
*.BACKUP.*
|
||||
*.BASE.*
|
||||
*.LOCAL.*
|
||||
*.REMOTE.*
|
||||
*_BACKUP_*.txt
|
||||
*_BASE_*.txt
|
||||
*_LOCAL_*.txt
|
||||
*_REMOTE_*.txt
|
||||
|
||||
### VisualStudio ###
|
||||
## Ignore Visual Studio temporary files, build results, and
|
||||
## files generated by popular Visual Studio add-ons.
|
||||
##
|
||||
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
|
||||
|
||||
# User-specific files
|
||||
*.rsuser
|
||||
*.suo
|
||||
*.user
|
||||
*.userosscache
|
||||
*.sln.docstates
|
||||
|
||||
# User-specific files (MonoDevelop/Xamarin Studio)
|
||||
*.userprefs
|
||||
|
||||
# Mono auto generated files
|
||||
mono_crash.*
|
||||
|
||||
# Build results
|
||||
[Dd]ebug/
|
||||
[Dd]ebugPublic/
|
||||
[Rr]elease/
|
||||
[Rr]eleases/
|
||||
x64/
|
||||
x86/
|
||||
[Aa][Rr][Mm]/
|
||||
[Aa][Rr][Mm]64/
|
||||
bld/
|
||||
[Bb]in/
|
||||
[Oo]bj/
|
||||
[Ll]og/
|
||||
[Ll]ogs/
|
||||
|
||||
# Visual Studio 2015/2017 cache/options directory
|
||||
.vs/
|
||||
# Uncomment if you have tasks that create the project's static files in wwwroot
|
||||
#wwwroot/
|
||||
|
||||
# Visual Studio 2017 auto generated files
|
||||
Generated\ Files/
|
||||
|
||||
# MSTest test Results
|
||||
[Tt]est[Rr]esult*/
|
||||
[Bb]uild[Ll]og.*
|
||||
|
||||
# NUnit
|
||||
*.VisualState.xml
|
||||
TestResult.xml
|
||||
nunit-*.xml
|
||||
|
||||
# Build Results of an ATL Project
|
||||
[Dd]ebugPS/
|
||||
[Rr]eleasePS/
|
||||
dlldata.c
|
||||
|
||||
# Benchmark Results
|
||||
BenchmarkDotNet.Artifacts/
|
||||
|
||||
# .NET Core
|
||||
project.lock.json
|
||||
project.fragment.lock.json
|
||||
artifacts/
|
||||
|
||||
# StyleCop
|
||||
StyleCopReport.xml
|
||||
|
||||
# Files built by Visual Studio
|
||||
*_i.c
|
||||
*_p.c
|
||||
*_h.h
|
||||
*.ilk
|
||||
*.meta
|
||||
*.obj
|
||||
*.iobj
|
||||
*.pch
|
||||
*.pdb
|
||||
*.ipdb
|
||||
*.pgc
|
||||
*.pgd
|
||||
*.rsp
|
||||
*.sbr
|
||||
*.tlb
|
||||
*.tli
|
||||
*.tlh
|
||||
*.tmp
|
||||
*.tmp_proj
|
||||
*_wpftmp.csproj
|
||||
*.log
|
||||
*.vspscc
|
||||
*.vssscc
|
||||
.builds
|
||||
*.pidb
|
||||
*.svclog
|
||||
*.scc
|
||||
|
||||
# Chutzpah Test files
|
||||
_Chutzpah*
|
||||
|
||||
# Visual C++ cache files
|
||||
ipch/
|
||||
*.aps
|
||||
*.ncb
|
||||
*.opendb
|
||||
*.opensdf
|
||||
*.sdf
|
||||
*.cachefile
|
||||
*.VC.db
|
||||
*.VC.VC.opendb
|
||||
|
||||
# Visual Studio profiler
|
||||
*.psess
|
||||
*.vsp
|
||||
*.vspx
|
||||
*.sap
|
||||
|
||||
# Visual Studio Trace Files
|
||||
*.e2e
|
||||
|
||||
# TFS 2012 Local Workspace
|
||||
$tf/
|
||||
|
||||
# Guidance Automation Toolkit
|
||||
*.gpState
|
||||
|
||||
# ReSharper is a .NET coding add-in
|
||||
_ReSharper*/
|
||||
*.[Rr]e[Ss]harper
|
||||
*.DotSettings.user
|
||||
|
||||
# TeamCity is a build add-in
|
||||
_TeamCity*
|
||||
|
||||
# DotCover is a Code Coverage Tool
|
||||
*.dotCover
|
||||
|
||||
# AxoCover is a Code Coverage Tool
|
||||
.axoCover/*
|
||||
!.axoCover/settings.json
|
||||
|
||||
# Coverlet is a free, cross platform Code Coverage Tool
|
||||
coverage*[.json, .xml, .info]
|
||||
|
||||
# Visual Studio code coverage results
|
||||
*.coverage
|
||||
*.coveragexml
|
||||
|
||||
# NCrunch
|
||||
_NCrunch_*
|
||||
.*crunch*.local.xml
|
||||
nCrunchTemp_*
|
||||
|
||||
# MightyMoose
|
||||
*.mm.*
|
||||
AutoTest.Net/
|
||||
|
||||
# Web workbench (sass)
|
||||
.sass-cache/
|
||||
|
||||
# Installshield output folder
|
||||
[Ee]xpress/
|
||||
|
||||
# DocProject is a documentation generator add-in
|
||||
DocProject/buildhelp/
|
||||
DocProject/Help/*.HxT
|
||||
DocProject/Help/*.HxC
|
||||
DocProject/Help/*.hhc
|
||||
DocProject/Help/*.hhk
|
||||
DocProject/Help/*.hhp
|
||||
DocProject/Help/Html2
|
||||
DocProject/Help/html
|
||||
|
||||
# Click-Once directory
|
||||
publish/
|
||||
|
||||
# Publish Web Output
|
||||
*.[Pp]ublish.xml
|
||||
*.azurePubxml
|
||||
# Note: Comment the next line if you want to checkin your web deploy settings,
|
||||
# but database connection strings (with potential passwords) will be unencrypted
|
||||
*.pubxml
|
||||
*.publishproj
|
||||
|
||||
# Microsoft Azure Web App publish settings. Comment the next line if you want to
|
||||
# checkin your Azure Web App publish settings, but sensitive information contained
|
||||
# in these scripts will be unencrypted
|
||||
PublishScripts/
|
||||
|
||||
# NuGet Packages
|
||||
*.nupkg
|
||||
# NuGet Symbol Packages
|
||||
*.snupkg
|
||||
# Uncomment if necessary however generally it will be regenerated when needed
|
||||
#!**/[Pp]ackages/repositories.config
|
||||
# NuGet v3's project.json files produces more ignorable files
|
||||
*.nuget.props
|
||||
*.nuget.targets
|
||||
|
||||
# Microsoft Azure Build Output
|
||||
csx/
|
||||
*.build.csdef
|
||||
|
||||
# Microsoft Azure Emulator
|
||||
ecf/
|
||||
rcf/
|
||||
|
||||
# Windows Store app package directories and files
|
||||
AppPackages/
|
||||
BundleArtifacts/
|
||||
Package.StoreAssociation.xml
|
||||
_pkginfo.txt
|
||||
*.appx
|
||||
*.appxbundle
|
||||
*.appxupload
|
||||
|
||||
# Visual Studio cache files
|
||||
# files ending in .cache can be ignored
|
||||
*.[Cc]ache
|
||||
# but keep track of directories ending in .cache
|
||||
!?*.[Cc]ache/
|
||||
|
||||
# Others
|
||||
ClientBin/
|
||||
~$*
|
||||
*~
|
||||
*.dbmdl
|
||||
*.dbproj.schemaview
|
||||
*.jfm
|
||||
*.pfx
|
||||
*.publishsettings
|
||||
orleans.codegen.cs
|
||||
|
||||
# Including strong name files can present a security risk
|
||||
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
|
||||
#*.snk
|
||||
|
||||
# Since there are multiple workflows, uncomment next line to ignore bower_components
|
||||
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
|
||||
#bower_components/
|
||||
|
||||
# RIA/Silverlight projects
|
||||
Generated_Code/
|
||||
|
||||
# Backup & report files from converting an old project file
|
||||
# to a newer Visual Studio version. Backup files are not needed,
|
||||
# because we have git ;-)
|
||||
_UpgradeReport_Files/
|
||||
Backup*/
|
||||
UpgradeLog*.XML
|
||||
UpgradeLog*.htm
|
||||
ServiceFabricBackup/
|
||||
*.rptproj.bak
|
||||
|
||||
# SQL Server files
|
||||
*.mdf
|
||||
*.ldf
|
||||
*.ndf
|
||||
|
||||
# Business Intelligence projects
|
||||
*.rdl.data
|
||||
*.bim.layout
|
||||
*.bim_*.settings
|
||||
*.rptproj.rsuser
|
||||
*- [Bb]ackup.rdl
|
||||
*- [Bb]ackup ([0-9]).rdl
|
||||
*- [Bb]ackup ([0-9][0-9]).rdl
|
||||
|
||||
# Microsoft Fakes
|
||||
FakesAssemblies/
|
||||
|
||||
# GhostDoc plugin setting file
|
||||
*.GhostDoc.xml
|
||||
|
||||
# Node.js Tools for Visual Studio
|
||||
.ntvs_analysis.dat
|
||||
node_modules/
|
||||
|
||||
# Visual Studio 6 build log
|
||||
*.plg
|
||||
|
||||
# Visual Studio 6 workspace options file
|
||||
*.opt
|
||||
|
||||
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
|
||||
*.vbw
|
||||
|
||||
# Visual Studio LightSwitch build output
|
||||
**/*.HTMLClient/GeneratedArtifacts
|
||||
**/*.DesktopClient/GeneratedArtifacts
|
||||
**/*.DesktopClient/ModelManifest.xml
|
||||
**/*.Server/GeneratedArtifacts
|
||||
**/*.Server/ModelManifest.xml
|
||||
_Pvt_Extensions
|
||||
|
||||
# Paket dependency manager
|
||||
.paket/paket.exe
|
||||
paket-files/
|
||||
|
||||
# FAKE - F# Make
|
||||
.fake/
|
||||
|
||||
# CodeRush personal settings
|
||||
.cr/personal
|
||||
|
||||
# Python Tools for Visual Studio (PTVS)
|
||||
__pycache__/
|
||||
*.pyc
|
||||
|
||||
# Cake - Uncomment if you are using it
|
||||
# tools/**
|
||||
# !tools/packages.config
|
||||
|
||||
# Tabs Studio
|
||||
*.tss
|
||||
|
||||
# Telerik's JustMock configuration file
|
||||
*.jmconfig
|
||||
|
||||
# BizTalk build output
|
||||
*.btp.cs
|
||||
*.btm.cs
|
||||
*.odx.cs
|
||||
*.xsd.cs
|
||||
|
||||
# OpenCover UI analysis results
|
||||
OpenCover/
|
||||
|
||||
# Azure Stream Analytics local run output
|
||||
ASALocalRun/
|
||||
|
||||
# MSBuild Binary and Structured Log
|
||||
*.binlog
|
||||
|
||||
# NVidia Nsight GPU debugger configuration file
|
||||
*.nvuser
|
||||
|
||||
# MFractors (Xamarin productivity tool) working folder
|
||||
.mfractor/
|
||||
|
||||
# Local History for Visual Studio
|
||||
.localhistory/
|
||||
|
||||
# BeatPulse healthcheck temp database
|
||||
healthchecksdb
|
||||
|
||||
# Backup folder for Package Reference Convert tool in Visual Studio 2017
|
||||
MigrationBackup/
|
||||
|
||||
# Ionide (cross platform F# VS Code tools) working folder
|
||||
.ionide/
|
||||
|
||||
# End of https://www.toptal.com/developers/gitignore/api/git,visualstudio
|
||||
|
||||
Output
|
||||
.idea
|
||||
Libs/Assembly-CSharp.dll
|
||||
packages
|
||||
14
AquaMai/App.config
Normal file
14
AquaMai/App.config
Normal file
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="mscorlib" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Xml" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
284
AquaMai/AquaMai.csproj
Normal file
284
AquaMai/AquaMai.csproj
Normal file
@@ -0,0 +1,284 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{788BC472-59F7-46F6-B760-65C18BA74389}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>AquaMai</RootNamespace>
|
||||
<AssemblyName>AquaMai</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<Deterministic>true</Deterministic>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugSymbols>false</DebugSymbols>
|
||||
<DebugType>None</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>$(SolutionDir)Output\</OutputPath>
|
||||
<DefineConstants>
|
||||
</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
<DebugSymbols>false</DebugSymbols>
|
||||
<PlatformTarget>x64</PlatformTarget>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="0Harmony">
|
||||
<HintPath>Libs\0Harmony.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Assembly-CSharp">
|
||||
<HintPath>Libs\Assembly-CSharp.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MelonLoader">
|
||||
<HintPath>Libs\MelonLoader.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Mono.Posix">
|
||||
<HintPath>Libs\Mono.Posix.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Mono.Security">
|
||||
<HintPath>Libs\Mono.Security.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="mscorlib">
|
||||
<HintPath>Libs\mscorlib.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration">
|
||||
<HintPath>Libs\System.Configuration.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Core">
|
||||
<HintPath>Libs\System.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Security">
|
||||
<HintPath>Libs\System.Security.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml">
|
||||
<HintPath>Libs\System.Xml.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Tomlet">
|
||||
<HintPath>Libs\Tomlet.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.Analytics.DataPrivacy">
|
||||
<HintPath>Libs\Unity.Analytics.DataPrivacy.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Unity.TextMeshPro">
|
||||
<HintPath>Libs\Unity.TextMeshPro.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine">
|
||||
<HintPath>Libs\UnityEngine.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AccessibilityModule">
|
||||
<HintPath>Libs\UnityEngine.AccessibilityModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AIModule">
|
||||
<HintPath>Libs\UnityEngine.AIModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AnimationModule">
|
||||
<HintPath>Libs\UnityEngine.AnimationModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ARModule">
|
||||
<HintPath>Libs\UnityEngine.ARModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AssetBundleModule">
|
||||
<HintPath>Libs\UnityEngine.AssetBundleModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.AudioModule">
|
||||
<HintPath>Libs\UnityEngine.AudioModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.BaselibModule">
|
||||
<HintPath>Libs\UnityEngine.BaselibModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ClothModule">
|
||||
<HintPath>Libs\UnityEngine.ClothModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ClusterInputModule">
|
||||
<HintPath>Libs\UnityEngine.ClusterInputModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ClusterRendererModule">
|
||||
<HintPath>Libs\UnityEngine.ClusterRendererModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.CoreModule">
|
||||
<HintPath>Libs\UnityEngine.CoreModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.CrashReportingModule">
|
||||
<HintPath>Libs\UnityEngine.CrashReportingModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.DirectorModule">
|
||||
<HintPath>Libs\UnityEngine.DirectorModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.FileSystemHttpModule">
|
||||
<HintPath>Libs\UnityEngine.FileSystemHttpModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.GameCenterModule">
|
||||
<HintPath>Libs\UnityEngine.GameCenterModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.GridModule">
|
||||
<HintPath>Libs\UnityEngine.GridModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.HotReloadModule">
|
||||
<HintPath>Libs\UnityEngine.HotReloadModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ImageConversionModule">
|
||||
<HintPath>Libs\UnityEngine.ImageConversionModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.IMGUIModule">
|
||||
<HintPath>Libs\UnityEngine.IMGUIModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.InputModule">
|
||||
<HintPath>Libs\UnityEngine.InputModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.JSONSerializeModule">
|
||||
<HintPath>Libs\UnityEngine.JSONSerializeModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.LocalizationModule">
|
||||
<HintPath>Libs\UnityEngine.LocalizationModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.Networking">
|
||||
<HintPath>Libs\UnityEngine.Networking.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ParticleSystemModule">
|
||||
<HintPath>Libs\UnityEngine.ParticleSystemModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.PerformanceReportingModule">
|
||||
<HintPath>Libs\UnityEngine.PerformanceReportingModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.Physics2DModule">
|
||||
<HintPath>Libs\UnityEngine.Physics2DModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.PhysicsModule">
|
||||
<HintPath>Libs\UnityEngine.PhysicsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ProfilerModule">
|
||||
<HintPath>Libs\UnityEngine.ProfilerModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.ScreenCaptureModule">
|
||||
<HintPath>Libs\UnityEngine.ScreenCaptureModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.SharedInternalsModule">
|
||||
<HintPath>Libs\UnityEngine.SharedInternalsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.SpatialTracking">
|
||||
<HintPath>Libs\UnityEngine.SpatialTracking.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.SpriteMaskModule">
|
||||
<HintPath>Libs\UnityEngine.SpriteMaskModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.SpriteShapeModule">
|
||||
<HintPath>Libs\UnityEngine.SpriteShapeModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.StreamingModule">
|
||||
<HintPath>Libs\UnityEngine.StreamingModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.StyleSheetsModule">
|
||||
<HintPath>Libs\UnityEngine.StyleSheetsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.SubstanceModule">
|
||||
<HintPath>Libs\UnityEngine.SubstanceModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TerrainModule">
|
||||
<HintPath>Libs\UnityEngine.TerrainModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TerrainPhysicsModule">
|
||||
<HintPath>Libs\UnityEngine.TerrainPhysicsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TextCoreModule">
|
||||
<HintPath>Libs\UnityEngine.TextCoreModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TextRenderingModule">
|
||||
<HintPath>Libs\UnityEngine.TextRenderingModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TilemapModule">
|
||||
<HintPath>Libs\UnityEngine.TilemapModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.Timeline">
|
||||
<HintPath>Libs\UnityEngine.Timeline.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TimelineModule">
|
||||
<HintPath>Libs\UnityEngine.TimelineModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.TLSModule">
|
||||
<HintPath>Libs\UnityEngine.TLSModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UI">
|
||||
<HintPath>Libs\UnityEngine.UI.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UIElementsModule">
|
||||
<HintPath>Libs\UnityEngine.UIElementsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UIModule">
|
||||
<HintPath>Libs\UnityEngine.UIModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UmbraModule">
|
||||
<HintPath>Libs\UnityEngine.UmbraModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UNETModule">
|
||||
<HintPath>Libs\UnityEngine.UNETModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityAnalyticsModule">
|
||||
<HintPath>Libs\UnityEngine.UnityAnalyticsModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityConnectModule">
|
||||
<HintPath>Libs\UnityEngine.UnityConnectModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityTestProtocolModule">
|
||||
<HintPath>Libs\UnityEngine.UnityTestProtocolModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityWebRequestAssetBundleModule">
|
||||
<HintPath>Libs\UnityEngine.UnityWebRequestAssetBundleModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityWebRequestAudioModule">
|
||||
<HintPath>Libs\UnityEngine.UnityWebRequestAudioModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityWebRequestModule">
|
||||
<HintPath>Libs\UnityEngine.UnityWebRequestModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityWebRequestTextureModule">
|
||||
<HintPath>Libs\UnityEngine.UnityWebRequestTextureModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.UnityWebRequestWWWModule">
|
||||
<HintPath>Libs\UnityEngine.UnityWebRequestWWWModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.VehiclesModule">
|
||||
<HintPath>Libs\UnityEngine.VehiclesModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.VFXModule">
|
||||
<HintPath>Libs\UnityEngine.VFXModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.VideoModule">
|
||||
<HintPath>Libs\UnityEngine.VideoModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.VRModule">
|
||||
<HintPath>Libs\UnityEngine.VRModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.WindModule">
|
||||
<HintPath>Libs\UnityEngine.WindModule.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="UnityEngine.XRModule">
|
||||
<HintPath>Libs\UnityEngine.XRModule.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Cheat\TicketUnlock.cs" />
|
||||
<Compile Include="Config.cs" />
|
||||
<Compile Include="Fix\FixCharaCrash.cs" />
|
||||
<Compile Include="Performance\ImproveLoadSpeed.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Main.cs" />
|
||||
<Compile Include="UX\CustomVersionString.cs" />
|
||||
<Compile Include="UX\SinglePlayer.cs" />
|
||||
<Compile Include="UX\SkipWarningScreen.cs" />
|
||||
<Compile Include="UX\SkipToMusicSelection.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="AquaMai.toml" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
25
AquaMai/AquaMai.sln
Normal file
25
AquaMai/AquaMai.sln
Normal file
@@ -0,0 +1,25 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.6.33815.320
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AquaMai", "AquaMai.csproj", "{788BC472-59F7-46F6-B760-65C18BA74389}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{788BC472-59F7-46F6-B760-65C18BA74389}.Debug|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{788BC472-59F7-46F6-B760-65C18BA74389}.Debug|Any CPU.Build.0 = Release|Any CPU
|
||||
{788BC472-59F7-46F6-B760-65C18BA74389}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{788BC472-59F7-46F6-B760-65C18BA74389}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {DDF15A6C-2A44-4EBE-BD85-F3EE61DCD8BF}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
23
AquaMai/AquaMai.toml
Normal file
23
AquaMai/AquaMai.toml
Normal file
@@ -0,0 +1,23 @@
|
||||
|
||||
# ===================================
|
||||
# Cheat: You control the buttons you press
|
||||
[Cheat]
|
||||
# Unlock normally event-only tickets
|
||||
TicketUnlock=true
|
||||
|
||||
# ===================================
|
||||
# UX: User Experience Improvements
|
||||
[UX]
|
||||
# Skip the warning screen and logo shown after the POST sequence
|
||||
SkipWarningScreen=true
|
||||
# Single player: Show 1P only, at the center of the screen
|
||||
SinglePlayer=true
|
||||
# !!EXPERIMENTAL!! Skip from the card-scanning screen directly to music selection screen
|
||||
SkipToMusicSelection=false
|
||||
# Set the version string displayed at the top-right corner of the screen
|
||||
CustomVersionString=""
|
||||
|
||||
[Performance]
|
||||
# Disable some useless checks and delays to speed up the game boot process
|
||||
# !! Known issue: The game may crash if DX Pass scanning is enabled
|
||||
ImproveLoadSpeed=false
|
||||
40
AquaMai/Cheat/TicketUnlock.cs
Normal file
40
AquaMai/Cheat/TicketUnlock.cs
Normal file
@@ -0,0 +1,40 @@
|
||||
using Manager.MaiStudio;
|
||||
using HarmonyLib;
|
||||
|
||||
namespace AquaMai.Cheat
|
||||
{
|
||||
/**
|
||||
* Unlock tickets that are typically locked unless a specific event is open.
|
||||
*/
|
||||
public class TicketUnlock
|
||||
{
|
||||
// For any ticket, return the event ID 1 to unlock it
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(TicketData), "get_ticketEvent")]
|
||||
public static bool get_ticketEvent(ref StringID __result)
|
||||
{
|
||||
var id = new Manager.MaiStudio.Serialize.StringID
|
||||
{
|
||||
id = 1,
|
||||
str = "無期限常時解放"
|
||||
};
|
||||
|
||||
var sid = new StringID();
|
||||
sid.Init(id);
|
||||
|
||||
__result = sid;
|
||||
return false;
|
||||
}
|
||||
|
||||
// Modify the maxTicketNum to 0
|
||||
// this is because TicketManager.GetTicketData adds the ticket to the list if either
|
||||
// the player owns at least one ticket or the maxTicketNum = 0
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(TicketData), "get_maxCount")]
|
||||
public static bool get_maxCount(ref int __result)
|
||||
{
|
||||
__result = 0;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
30
AquaMai/Config.cs
Normal file
30
AquaMai/Config.cs
Normal file
@@ -0,0 +1,30 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
namespace AquaMai
|
||||
{
|
||||
[SuppressMessage("ReSharper", "ClassNeverInstantiated.Global")]
|
||||
public class Config
|
||||
{
|
||||
public UXConfig UX { get; set; }
|
||||
public CheatConfig Cheat { get; set; }
|
||||
public PerformanceConfig Performance { get; set; }
|
||||
|
||||
public class CheatConfig
|
||||
{
|
||||
public bool TicketUnlock { get; set; }
|
||||
}
|
||||
|
||||
public class UXConfig
|
||||
{
|
||||
public bool SkipWarningScreen { get; set; }
|
||||
public bool SinglePlayer { get; set; }
|
||||
public bool SkipToMusicSelection { get; set; }
|
||||
public string CustomVersionString { get; set; }
|
||||
}
|
||||
|
||||
public class PerformanceConfig
|
||||
{
|
||||
public bool ImproveLoadSpeed { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
||||
44
AquaMai/Fix/FixCharaCrash.cs
Normal file
44
AquaMai/Fix/FixCharaCrash.cs
Normal file
@@ -0,0 +1,44 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using HarmonyLib;
|
||||
using Process;
|
||||
using Util;
|
||||
|
||||
namespace AquaMai.Fix
|
||||
{
|
||||
/**
|
||||
* Fix character selection crashing due to missing character data
|
||||
*/
|
||||
public class FixCharaCrash
|
||||
{
|
||||
// Check if the return is null. If it is, make up a color
|
||||
[HarmonyPostfix]
|
||||
[HarmonyPatch(typeof(CharacterSelectProces), "GetMapColorData")]
|
||||
public static void GetMapColorData(ref CharacterSelectProces __instance, ref CharacterMapColorData __result)
|
||||
{
|
||||
if (__result != null) return;
|
||||
|
||||
// 1 is a color that definitely exists
|
||||
if (MapMaster.GetSlotData(1) == null)
|
||||
{
|
||||
MapMaster.GetSlotData(1).Load();
|
||||
}
|
||||
__result = MapMaster.GetSlotData(1);
|
||||
}
|
||||
|
||||
// This is called when loading the music selection screen, to display characters on the top screen
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(Monitor.CommonMonitor), "SetCharacterSlot", new Type[] { typeof(MessageCharactorInfomationData) })]
|
||||
public static bool SetCharacterSlot(ref MessageCharactorInfomationData data, Dictionary<int, CharacterSlotData> ____characterSlotData)
|
||||
{
|
||||
// Some characters are not found in this dictionary. We simply skip loading those characters
|
||||
if (!____characterSlotData.ContainsKey(data.MapKey))
|
||||
{
|
||||
Console.Log($"Could not get CharacterSlotData for character [Index={data.Index}, MapKey={data.MapKey}], ignoring...");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
AquaMai/Libs/0Harmony.dll
Normal file
BIN
AquaMai/Libs/0Harmony.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/MelonLoader.dll
Normal file
BIN
AquaMai/Libs/MelonLoader.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/Mono.Posix.dll
Normal file
BIN
AquaMai/Libs/Mono.Posix.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/Mono.Security.dll
Normal file
BIN
AquaMai/Libs/Mono.Security.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/System.Configuration.dll
Normal file
BIN
AquaMai/Libs/System.Configuration.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/System.Core.dll
Normal file
BIN
AquaMai/Libs/System.Core.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/System.Security.dll
Normal file
BIN
AquaMai/Libs/System.Security.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/System.Xml.dll
Normal file
BIN
AquaMai/Libs/System.Xml.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/System.dll
Normal file
BIN
AquaMai/Libs/System.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/Tomlet.dll
Normal file
BIN
AquaMai/Libs/Tomlet.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/Unity.Analytics.DataPrivacy.dll
Normal file
BIN
AquaMai/Libs/Unity.Analytics.DataPrivacy.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/Unity.TextMeshPro.dll
Normal file
BIN
AquaMai/Libs/Unity.TextMeshPro.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.AIModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.AIModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.ARModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.ARModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.AccessibilityModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.AccessibilityModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.AnimationModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.AnimationModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.AssetBundleModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.AssetBundleModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.AudioModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.AudioModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.BaselibModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.BaselibModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.ClothModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.ClothModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.ClusterInputModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.ClusterInputModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.ClusterRendererModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.ClusterRendererModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.CoreModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.CoreModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.CrashReportingModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.CrashReportingModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.DirectorModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.DirectorModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.FileSystemHttpModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.FileSystemHttpModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.GameCenterModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.GameCenterModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.GridModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.GridModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.HotReloadModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.HotReloadModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.IMGUIModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.IMGUIModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.ImageConversionModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.ImageConversionModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.InputModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.InputModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.JSONSerializeModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.JSONSerializeModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.LocalizationModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.LocalizationModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.Networking.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.Networking.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.ParticleSystemModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.ParticleSystemModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.PerformanceReportingModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.PerformanceReportingModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.Physics2DModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.Physics2DModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.PhysicsModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.PhysicsModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.ProfilerModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.ProfilerModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.ScreenCaptureModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.ScreenCaptureModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.SharedInternalsModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.SharedInternalsModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.SpatialTracking.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.SpatialTracking.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.SpriteMaskModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.SpriteMaskModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.SpriteShapeModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.SpriteShapeModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.StreamingModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.StreamingModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.StyleSheetsModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.StyleSheetsModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.SubstanceModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.SubstanceModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.TLSModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.TLSModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.TerrainModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.TerrainModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.TerrainPhysicsModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.TerrainPhysicsModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.TextCoreModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.TextCoreModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.TextRenderingModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.TextRenderingModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.TilemapModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.TilemapModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.Timeline.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.Timeline.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.TimelineModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.TimelineModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UI.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UI.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UIElementsModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UIElementsModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UIModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UIModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UNETModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UNETModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UmbraModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UmbraModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UnityAnalyticsModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UnityAnalyticsModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UnityConnectModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UnityConnectModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UnityTestProtocolModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UnityTestProtocolModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UnityWebRequestAssetBundleModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UnityWebRequestAssetBundleModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UnityWebRequestAudioModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UnityWebRequestAudioModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UnityWebRequestModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UnityWebRequestModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UnityWebRequestTextureModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UnityWebRequestTextureModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.UnityWebRequestWWWModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.UnityWebRequestWWWModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.VFXModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.VFXModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.VRModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.VRModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.VehiclesModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.VehiclesModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.VideoModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.VideoModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.WindModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.WindModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.XRModule.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.XRModule.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/UnityEngine.dll
Normal file
BIN
AquaMai/Libs/UnityEngine.dll
Normal file
Binary file not shown.
BIN
AquaMai/Libs/mscorlib.dll
Normal file
BIN
AquaMai/Libs/mscorlib.dll
Normal file
Binary file not shown.
86
AquaMai/Main.cs
Normal file
86
AquaMai/Main.cs
Normal file
@@ -0,0 +1,86 @@
|
||||
using System;
|
||||
using AquaMai.Fix;
|
||||
using AquaMai.UX;
|
||||
using MelonLoader;
|
||||
using Tomlet;
|
||||
|
||||
namespace AquaMai
|
||||
{
|
||||
public static class BuildInfo
|
||||
{
|
||||
public const string Name = "AquaMai";
|
||||
public const string Description = "Mod for Sinmai";
|
||||
public const string Author = "Aza";
|
||||
public const string Company = null;
|
||||
public const string Version = "1.0.0";
|
||||
public const string DownloadLink = null;
|
||||
}
|
||||
|
||||
public class AquaMai : MelonMod
|
||||
{
|
||||
public static Config AppConfig { get; private set; }
|
||||
|
||||
private static void Patch(Type type)
|
||||
{
|
||||
MelonLogger.Msg($"> Patching {type}");
|
||||
HarmonyLib.Harmony.CreateAndPatchAll(type);
|
||||
}
|
||||
|
||||
/**
|
||||
* Apply patches using reflection, based on the settings
|
||||
*/
|
||||
private static void ApplyPatches()
|
||||
{
|
||||
// Iterate over all properties of AppConfig
|
||||
foreach (var categoryProp in AppConfig.GetType().GetProperties())
|
||||
{
|
||||
// Get the value of the category property (e.g., UX, Cheat)
|
||||
var categoryValue = categoryProp.GetValue(AppConfig);
|
||||
if (categoryValue == null) continue;
|
||||
var categoryType = categoryValue.GetType();
|
||||
|
||||
// Iterate over properties in the category (e.g., SkipWarningScreen, SinglePlayer)
|
||||
foreach (var settingProp in categoryType.GetProperties())
|
||||
{
|
||||
// The property should be a boolean
|
||||
if (settingProp.PropertyType != typeof(bool)) continue;
|
||||
|
||||
// Check if the boolean value is true
|
||||
if (!(bool) settingProp.GetValue(categoryValue)) continue;
|
||||
|
||||
// Get the Type from the config directive name
|
||||
var directiveType = Type.GetType($"AquaMai.{categoryProp.Name}.{settingProp.Name}");
|
||||
|
||||
// If the type is found, call the Patch method
|
||||
if (directiveType != null) Patch(directiveType);
|
||||
else MelonLogger.Error($"Type not found for {categoryProp.Name}.{settingProp.Name}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override void OnInitializeMelon()
|
||||
{
|
||||
MelonLogger.Msg("Loading mod settings...");
|
||||
|
||||
// Check if AquaMai.toml exists
|
||||
if (!System.IO.File.Exists("AquaMai.toml"))
|
||||
{
|
||||
MelonLogger.Error("AquaMai.toml not found! Please create it.");
|
||||
return;
|
||||
}
|
||||
|
||||
// Read AquaMai.toml to load settings
|
||||
AppConfig = TomletMain.To<Config>(System.IO.File.ReadAllText("AquaMai.toml"));
|
||||
|
||||
// Apply patches based on the settings
|
||||
ApplyPatches();
|
||||
|
||||
// Fixes that does not have side effects
|
||||
// These don't need to be configurable
|
||||
Patch(typeof(FixCharaCrash));
|
||||
Patch(typeof(CustomVersionString));
|
||||
|
||||
MelonLogger.Msg("Loaded!");
|
||||
}
|
||||
}
|
||||
}
|
||||
63
AquaMai/Performance/ImproveLoadSpeed.cs
Normal file
63
AquaMai/Performance/ImproveLoadSpeed.cs
Normal file
@@ -0,0 +1,63 @@
|
||||
using System.Diagnostics;
|
||||
using HarmonyLib;
|
||||
using MAI2.Util;
|
||||
using Manager;
|
||||
using Process;
|
||||
|
||||
namespace AquaMai.Performance
|
||||
{
|
||||
public class ImproveLoadSpeed
|
||||
{
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(PowerOnProcess), "OnUpdate")]
|
||||
public static bool PrePowerOnUpdate(PowerOnProcess __instance)
|
||||
{
|
||||
var traverse = Traverse.Create(__instance);
|
||||
var state = traverse.Field("_state").GetValue<byte>();
|
||||
switch (state)
|
||||
{
|
||||
case 3:
|
||||
traverse.Field("_state").SetValue((byte)4);
|
||||
break;
|
||||
case 5:
|
||||
case 6:
|
||||
case 7:
|
||||
traverse.Field("_state").SetValue((byte)8);
|
||||
break;
|
||||
case 9:
|
||||
traverse.Field("_state").SetValue((byte)10);
|
||||
break;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(StartupProcess), "OnUpdate")]
|
||||
public static bool PreStartupUpdate(StartupProcess __instance)
|
||||
{
|
||||
var traverse = Traverse.Create(__instance);
|
||||
var state = traverse.Field("_state").GetValue<byte>();
|
||||
switch (state)
|
||||
{
|
||||
case 0:
|
||||
traverse.Field("_state").SetValue((byte)1);
|
||||
break;
|
||||
case 2:
|
||||
// AimeReader maybe typeof AimeReaderManager or ChimeReaderManager, must build with correct Assembly-CSharp.dll in Libs folder
|
||||
if(SingletonStateMachine<AmManager, AmManager.EState>.Instance.AimeReader.GetType().FullName == "Manager.AimeReaderManager")
|
||||
traverse.Field("_state").SetValue((byte)3);
|
||||
break;
|
||||
case 4:
|
||||
traverse.Field("_state").SetValue((byte)5);
|
||||
break;
|
||||
case 8:
|
||||
var timer = traverse.Field("timer").GetValue<Stopwatch>();
|
||||
Traverse.Create(timer).Field("elapsed").SetValue(2 * 10000000L);
|
||||
break;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
18
AquaMai/Properties/AssemblyInfo.cs
Normal file
18
AquaMai/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using System.Reflection;
|
||||
using MelonLoader;
|
||||
|
||||
[assembly: AssemblyTitle(AquaMai.BuildInfo.Description)]
|
||||
[assembly: AssemblyDescription(AquaMai.BuildInfo.Description)]
|
||||
[assembly: AssemblyCompany(AquaMai.BuildInfo.Company)]
|
||||
[assembly: AssemblyProduct(AquaMai.BuildInfo.Name)]
|
||||
[assembly: AssemblyCopyright("Created by " + AquaMai.BuildInfo.Author)]
|
||||
[assembly: AssemblyTrademark(AquaMai.BuildInfo.Company)]
|
||||
[assembly: AssemblyVersion(AquaMai.BuildInfo.Version)]
|
||||
[assembly: AssemblyFileVersion(AquaMai.BuildInfo.Version)]
|
||||
[assembly: MelonInfo(typeof(AquaMai.AquaMai), AquaMai.BuildInfo.Name, AquaMai.BuildInfo.Version, AquaMai.BuildInfo.Author, AquaMai.BuildInfo.DownloadLink)]
|
||||
[assembly: MelonColor()]
|
||||
|
||||
// Create and Setup a MelonGame Attribute to mark a Melon as Universal or Compatible with specific Games.
|
||||
// If no MelonGame Attribute is found or any of the Values for any MelonGame Attribute on the Melon is null or empty it will be assumed the Melon is Universal.
|
||||
// Values for MelonGame Attribute can be found in the Game's app.info file or printed at the top of every log directly beneath the Unity version.
|
||||
[assembly: MelonGame(null, null)]
|
||||
33
AquaMai/README.md
Normal file
33
AquaMai/README.md
Normal file
@@ -0,0 +1,33 @@
|
||||
## AquaMai
|
||||
|
||||
This mod is heavily WIP. More details will be added as the development progresses.
|
||||
|
||||
### Features
|
||||
|
||||
**Cheats**
|
||||
|
||||
* Unlock all tickets
|
||||
|
||||
**UX Optimization**
|
||||
|
||||
* Remove the starting logo and warning cutscene
|
||||
* Single Player (1P) mode
|
||||
* Skip from card scanning directly to music selection (experimental)
|
||||
|
||||
**Bug Fixes**
|
||||
|
||||
* Fix crash in the character selection screen
|
||||
|
||||
### Development
|
||||
|
||||
1. Copy `Assembly-CSharp.dll` to `Libs` folder.
|
||||
2. Install [.NET Framework 4.7.2 Developer Pack](https://dotnet.microsoft.com/en-us/download/dotnet-framework/thank-you/net472-developer-pack-offline-installer)
|
||||
3. Open `AquaMai.sln` in JetBrains Rider.
|
||||
4. Build the solution.
|
||||
5. Copy `Output/AquaMai.dll` to `Mods` folder.
|
||||
6. Configure and copy `AquaMai.toml` to the same folder as your game executable: `Sinmai.exe`
|
||||
|
||||
### Relevant Links
|
||||
|
||||
* [MelonLoader Wiki](https://melonwiki.xyz/#/modders/quickstart)
|
||||
* [Harmony Docs](https://harmony.pardeike.net/articles/patching-prefix.html)
|
||||
24
AquaMai/UX/CustomVersionString.cs
Normal file
24
AquaMai/UX/CustomVersionString.cs
Normal file
@@ -0,0 +1,24 @@
|
||||
using HarmonyLib;
|
||||
|
||||
namespace AquaMai.UX
|
||||
{
|
||||
public class CustomVersionString
|
||||
{
|
||||
/*
|
||||
* Patch displayVersionString Property Getter
|
||||
*/
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(MAI2System.Config), "displayVersionString", MethodType.Getter)]
|
||||
public static bool GetDisplayVersionString(ref string __result)
|
||||
{
|
||||
if (string.IsNullOrEmpty(AquaMai.AppConfig.UX.CustomVersionString))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
__result = AquaMai.AppConfig.UX.CustomVersionString;
|
||||
// Return false to block the original method
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
32
AquaMai/UX/SinglePlayer.cs
Normal file
32
AquaMai/UX/SinglePlayer.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
using HarmonyLib;
|
||||
using UnityEngine;
|
||||
|
||||
namespace AquaMai.UX
|
||||
{
|
||||
// Hides the 2p (right hand side) UI.
|
||||
// Note: this is not my original work. I simply interpreted the code and rewrote it as a mod.
|
||||
public class SinglePlayer
|
||||
{
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(Main.GameMain), "LateInitialize", new Type[] { typeof(MonoBehaviour), typeof(Transform), typeof(Transform) })]
|
||||
public static bool LateInitialize(MonoBehaviour gameMainObject, ref Transform left, ref Transform right)
|
||||
{
|
||||
left.transform.position = Vector3.zero;
|
||||
right.localScale = Vector3.zero;
|
||||
GameObject.Find("Mask").SetActive(false);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(MeshButton), "IsPointInPolygon", new Type[] { typeof(Vector2[]), typeof(Vector2) })]
|
||||
public static bool IsPointInPolygon(Vector2[] polygon, ref Vector2 point)
|
||||
{
|
||||
var screenWidth = Screen.width;
|
||||
point = new Vector2(point.x - (screenWidth / 2), point.y);
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
26
AquaMai/UX/SkipToMusicSelection.cs
Normal file
26
AquaMai/UX/SkipToMusicSelection.cs
Normal file
@@ -0,0 +1,26 @@
|
||||
using HarmonyLib;
|
||||
using Manager;
|
||||
using Process;
|
||||
using Process.Information;
|
||||
|
||||
namespace AquaMai.UX
|
||||
{
|
||||
public class SkipToMusicSelection
|
||||
{
|
||||
/*
|
||||
* Highly experimental, may well break some stuff
|
||||
* Works by overriding the info screen (where it shows new events and stuff)
|
||||
* to directly exit to the music selection screen, skipping character and
|
||||
* event selection, among others
|
||||
*/
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(InformationProcess), "OnUpdate")]
|
||||
public static bool OnUpdate(InformationProcess __instance, ProcessDataContainer ___container)
|
||||
{
|
||||
GameManager.SetMaxTrack();
|
||||
___container.processManager.AddProcess(new MusicSelectProcess(___container));
|
||||
___container.processManager.ReleaseProcess(__instance);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
28
AquaMai/UX/SkipWarningScreen.cs
Normal file
28
AquaMai/UX/SkipWarningScreen.cs
Normal file
@@ -0,0 +1,28 @@
|
||||
using HarmonyLib;
|
||||
using Monitor;
|
||||
|
||||
namespace AquaMai.UX
|
||||
{
|
||||
public class SkipWarningScreen
|
||||
{
|
||||
/*
|
||||
* Patch PlayLogo to disable the warning screen
|
||||
*/
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof (WarningMonitor), "PlayLogo")]
|
||||
public static bool PlayLogo()
|
||||
{
|
||||
// Return false to block the original method
|
||||
return false;
|
||||
}
|
||||
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof (WarningMonitor), "IsLogoAnimationEnd")]
|
||||
public static bool IsLogoAnimationEnd(ref bool __result)
|
||||
{
|
||||
// Always return true to indicate the animation has ended
|
||||
__result = true;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
VITE_AQUA_HOST=https://aquadx.net/aqua
|
||||
VITE_DATA_HOST=https://aquadx.net
|
||||
|
||||
VITE_AQUA_CONNECTION=aquadx.hydev.org
|
||||
|
||||
VITE_TURNSTILE_SITE_KEY=0x4AAAAAAASGA2KQEIelo9P9
|
||||
VITE_DISCORD_INVITE=https://discord.gg/FNgveqFF7s
|
||||
VITE_TELEGRAM_INVITE=https://t.me/+zBL4RZdyfvUzZGU1
|
||||
VITE_QQ_INVITE=https://qm.qq.com/q/dpYmGoVHnG
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user