From f34795a82d62dadb41a8795c4fd6945a494687bd Mon Sep 17 00:00:00 2001
From: lewd_alt <210463139+lewd-alt@users.noreply.github.com>
Date: Sat, 13 Jun 2026 11:34:36 -0500
Subject: [PATCH 1/4] REDCODE changes
---
2DGAMELIB/2DGAMELIB.csproj | 16 ++++++++--------
2DGAMELIB/_2DGAMELIB/ParT.cs | 1 -
SlaveMatrix/Properties/launchSettings.json | 5 ++++-
SlaveMatrix/SlaveMatrix.csproj | 9 ++++++++-
SlaveMatrix/SlaveMatrix/GameClasses/Mods.cs | 2 +-
SlaveMatrix/SlaveMatrix/GameClasses/Program.cs | 6 +++++-
SlaveMatrix/SlaveMatrix/GameClasses/Sta.cs | 4 ++--
.../SlaveMatrix/GameClasses/TrainingUI.cs | 2 +-
SlaveMatrix/runtimeconfig.template.json | 5 +++++
global.json | 7 +++++++
10 files changed, 41 insertions(+), 16 deletions(-)
create mode 100644 SlaveMatrix/runtimeconfig.template.json
create mode 100644 global.json
diff --git a/2DGAMELIB/2DGAMELIB.csproj b/2DGAMELIB/2DGAMELIB.csproj
index 6f15fff..36ea877 100644
--- a/2DGAMELIB/2DGAMELIB.csproj
+++ b/2DGAMELIB/2DGAMELIB.csproj
@@ -3,26 +3,26 @@
2DGAMELIB
False
- True
- netstandard2.1
+ net8.0
x64
- AnyCPU
9.0
True
- true
+ true
+ false
+ SYSLIB0011;CA1416
-
-
-
-
+
+
+ NU1603
+
\ No newline at end of file
diff --git a/2DGAMELIB/_2DGAMELIB/ParT.cs b/2DGAMELIB/_2DGAMELIB/ParT.cs
index 7b85a4f..e3e4464 100644
--- a/2DGAMELIB/_2DGAMELIB/ParT.cs
+++ b/2DGAMELIB/_2DGAMELIB/ParT.cs
@@ -2,7 +2,6 @@ using Newtonsoft.Json;
using System;
using System.Drawing;
using System.Drawing.Drawing2D;
-using static System.Net.Mime.MediaTypeNames;
namespace _2DGAMELIB
{
diff --git a/SlaveMatrix/Properties/launchSettings.json b/SlaveMatrix/Properties/launchSettings.json
index e73cfc4..3923c68 100644
--- a/SlaveMatrix/Properties/launchSettings.json
+++ b/SlaveMatrix/Properties/launchSettings.json
@@ -2,7 +2,10 @@
"profiles": {
"SlaveMatrix": {
"commandName": "Project",
- "workingDirectory": "$(SolutionDir)\\game_folder"
+ "workingDirectory": "../game_folder",
+ "environmentVariables": {
+ "DOTNET_SYSTEM_GLOBALIZATION_INVARIANT": "true"
+ }
},
"WSL": {
"commandName": "WSL2",
diff --git a/SlaveMatrix/SlaveMatrix.csproj b/SlaveMatrix/SlaveMatrix.csproj
index 3595ef2..a4aae05 100644
--- a/SlaveMatrix/SlaveMatrix.csproj
+++ b/SlaveMatrix/SlaveMatrix.csproj
@@ -4,7 +4,7 @@
SlaveMatrix
False
WinExe
- netcoreapp3.1
+ net8.0
x64
@@ -14,10 +14,17 @@
app.ico
+ true
+ true
+ true
+ CA1416
+
+
+
True
diff --git a/SlaveMatrix/SlaveMatrix/GameClasses/Mods.cs b/SlaveMatrix/SlaveMatrix/GameClasses/Mods.cs
index 20ce0a8..ad91803 100644
--- a/SlaveMatrix/SlaveMatrix/GameClasses/Mods.cs
+++ b/SlaveMatrix/SlaveMatrix/GameClasses/Mods.cs
@@ -628,7 +628,7 @@ namespace SlaveMatrix
private static void AutoSave()
{
- string s = Sta.SavePath + "\\0: ";
+ string s = Path.Combine(Sta.SavePath, "0: ");
foreach (string item in from e in Directory.EnumerateFiles(Sta.SavePath)
where e.StartsWith(s)
select e)
diff --git a/SlaveMatrix/SlaveMatrix/GameClasses/Program.cs b/SlaveMatrix/SlaveMatrix/GameClasses/Program.cs
index 260a122..7592b04 100644
--- a/SlaveMatrix/SlaveMatrix/GameClasses/Program.cs
+++ b/SlaveMatrix/SlaveMatrix/GameClasses/Program.cs
@@ -1,15 +1,19 @@
using System;
+using System.Reflection;
using _2DGAMELIB;
namespace SlaveMatrix
{
internal static class Program
{
+ static Program()
+ {
+ AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true);
+ }
[STAThread]
private static void Main(string[] A_0)
{
-
Sta.LoadConfig();
double percent = 35.0;
diff --git a/SlaveMatrix/SlaveMatrix/GameClasses/Sta.cs b/SlaveMatrix/SlaveMatrix/GameClasses/Sta.cs
index d992f31..a8bf0ad 100644
--- a/SlaveMatrix/SlaveMatrix/GameClasses/Sta.cs
+++ b/SlaveMatrix/SlaveMatrix/GameClasses/Sta.cs
@@ -880,7 +880,7 @@ namespace SlaveMatrix
{
//if (!EncryptSave)
{
- GameData.SaveExMod(SavePath + "\\" + i + ": " + GameData.GetSaveDateString().Replace("/", "_") + ".sav");
+ GameData.SaveExMod(Path.Combine(SavePath, i + ": " + GameData.GetSaveDateString().Replace("/", "_") + ".sav"));
}
/*else
{
@@ -1410,7 +1410,7 @@ namespace SlaveMatrix
上着B_クロス初期化 = default(上着B_クロス情報);
上着B_前掛け初期化 = default(上着B_前掛け情報);
ブーツ初期化 = default(ブーツ情報);
- CurrentDirectory = Directory.GetCurrentDirectory();
+ CurrentDirectory = AppContext.BaseDirectory;
GameData = new GameState();
SavePath = Path.Combine(CurrentDirectory, "save");
ImiPath = Path.Combine(CurrentDirectory, "text", "Basement", "Training", "Imitation.txt");
diff --git a/SlaveMatrix/SlaveMatrix/GameClasses/TrainingUI.cs b/SlaveMatrix/SlaveMatrix/GameClasses/TrainingUI.cs
index 9ff1c11..e4ee289 100644
--- a/SlaveMatrix/SlaveMatrix/GameClasses/TrainingUI.cs
+++ b/SlaveMatrix/SlaveMatrix/GameClasses/TrainingUI.cs
@@ -2440,7 +2440,7 @@ namespace SlaveMatrix
{
((IDisposable)font)?.Dispose();
}
- 調教UI2.Film.DisplayLayer.Save(Path + "\\" + now.ToString("yyyy_MM_dd_HH_mm_ss") + ".png", ImageFormat.Png);
+ 調教UI2.Film.DisplayLayer.Save(System.IO.Path.Combine(Path, now.ToString("yyyy_MM_dd_HH_mm_ss") + ".png"), ImageFormat.Png);
ip.SubInfoIm = GameText.撮影しました + "\r\n" + GameText.写真はPhotoフォルダに保存されます;
if (Sta.GameData.TrainingTarget.Trained && !調教UI2.Cha.Body.Is拘束 && 調教UI2.Cha.Body.Is腕人 && !Sta.GameData.TrainingTarget.ChaD.撮影ピース経験)
{
diff --git a/SlaveMatrix/runtimeconfig.template.json b/SlaveMatrix/runtimeconfig.template.json
new file mode 100644
index 0000000..6906ea9
--- /dev/null
+++ b/SlaveMatrix/runtimeconfig.template.json
@@ -0,0 +1,5 @@
+{
+ "configProperties": {
+ "System.Drawing.EnableUnixSupport": true
+ }
+}
diff --git a/global.json b/global.json
new file mode 100644
index 0000000..dad2db5
--- /dev/null
+++ b/global.json
@@ -0,0 +1,7 @@
+{
+ "sdk": {
+ "version": "8.0.0",
+ "rollForward": "latestMajor",
+ "allowPrerelease": true
+ }
+}
\ No newline at end of file
From 0da26b047832a22005536a217d5eab73aef5d4ce Mon Sep 17 00:00:00 2001
From: lewd_alt <210463139+lewd-alt@users.noreply.github.com>
Date: Sat, 13 Jun 2026 12:46:45 -0500
Subject: [PATCH 2/4] made run.sh executable
---
run.sh | 0
1 file changed, 0 insertions(+), 0 deletions(-)
mode change 100644 => 100755 run.sh
diff --git a/run.sh b/run.sh
old mode 100644
new mode 100755
From 24b0d68e7e67c652c8641ebbf413372c4053d47e Mon Sep 17 00:00:00 2001
From: lewd_alt <210463139+lewd-alt@users.noreply.github.com>
Date: Sat, 13 Jun 2026 16:59:32 -0500
Subject: [PATCH 3/4] started cleaning up the scene graph
---
2DGAMELIB/_2DGAMELIB/But.cs | 6 +-
2DGAMELIB/_2DGAMELIB/But1.cs | 20 +-
2DGAMELIB/_2DGAMELIB/Dif.cs | 172 +-
2DGAMELIB/_2DGAMELIB/Difs.cs | 285 +--
2DGAMELIB/_2DGAMELIB/Gau.cs | 135 +-
2DGAMELIB/_2DGAMELIB/Join.cs | 16 +-
2DGAMELIB/_2DGAMELIB/JointD.cs | 4 +-
2DGAMELIB/_2DGAMELIB/Lab.cs | 47 +-
2DGAMELIB/_2DGAMELIB/MatrixD.cs | 1 +
2DGAMELIB/_2DGAMELIB/ModeEventDispatcher.cs | 4 +-
2DGAMELIB/_2DGAMELIB/Obj.cs | 134 +-
2DGAMELIB/_2DGAMELIB/Oth.cs | 26 +-
2DGAMELIB/_2DGAMELIB/Par.cs | 888 +++-----
2DGAMELIB/_2DGAMELIB/ParT.cs | 263 +--
2DGAMELIB/_2DGAMELIB/Pars.cs | 402 +---
2DGAMELIB/_2DGAMELIB/Swi.cs | 8 +-
2DGAMELIB/_2DGAMELIB/Tex.cs | 88 +-
2DGAMELIB/_2DGAMELIB/rewrite/Common.cs | 91 +
.../SlaveMatrix/BodyPartClasses/BackHair0.cs | 2 +
.../BodyPartClasses/BackHair0_カル.cs | 354 +--
.../BodyPartClasses/BackHair0_カルD.cs | 1 +
.../BodyPartClasses/BackHair0_ジグ.cs | 158 +-
.../BodyPartClasses/BackHair0_ジグD.cs | 1 +
.../BodyPartClasses/BackHair0_ハネ.cs | 158 +-
.../BodyPartClasses/BackHair0_ハネD.cs | 1 +
.../BodyPartClasses/BackHair0_パツ.cs | 136 +-
.../BodyPartClasses/BackHair0_パツD.cs | 1 +
.../BodyPartClasses/BackHair0_下1カル.cs | 186 +-
.../BodyPartClasses/BackHair0_下1カルD.cs | 1 +
.../BodyPartClasses/BackHair0_下1ジグ.cs | 106 +-
.../BodyPartClasses/BackHair0_下1ジグD.cs | 1 +
.../BodyPartClasses/BackHair0_下1ハネ.cs | 106 +-
.../BodyPartClasses/BackHair0_下1ハネD.cs | 1 +
.../BodyPartClasses/BackHair0_下1パツ.cs | 96 +-
.../BodyPartClasses/BackHair0_下1パツD.cs | 1 +
.../BodyPartClasses/BackHair0_下2カル.cs | 214 +-
.../BodyPartClasses/BackHair0_下2カルD.cs | 1 +
.../BodyPartClasses/BackHair0_下2ジグ.cs | 118 +-
.../BodyPartClasses/BackHair0_下2ジグD.cs | 1 +
.../BodyPartClasses/BackHair0_下2ハネ.cs | 118 +-
.../BodyPartClasses/BackHair0_下2ハネD.cs | 1 +
.../BodyPartClasses/BackHair0_下2パツ.cs | 106 +-
.../BodyPartClasses/BackHair0_下2パツD.cs | 1 +
.../BodyPartClasses/BackHair0_編1カル.cs | 236 +-
.../BodyPartClasses/BackHair0_編1カルD.cs | 1 +
.../BodyPartClasses/BackHair0_編1ジグ.cs | 236 +-
.../BodyPartClasses/BackHair0_編1ジグD.cs | 1 +
.../BodyPartClasses/BackHair0_編1ハネ.cs | 236 +-
.../BodyPartClasses/BackHair0_編1ハネD.cs | 1 +
.../BodyPartClasses/BackHair0_編1パツ.cs | 230 +-
.../BodyPartClasses/BackHair0_編1パツD.cs | 1 +
.../BodyPartClasses/BackHair0_編2カル.cs | 470 ++--
.../BodyPartClasses/BackHair0_編2カルD.cs | 1 +
.../BodyPartClasses/BackHair0_編2ジグ.cs | 470 ++--
.../BodyPartClasses/BackHair0_編2ジグD.cs | 1 +
.../BodyPartClasses/BackHair0_編2ハネ.cs | 470 ++--
.../BodyPartClasses/BackHair0_編2ハネD.cs | 1 +
.../BodyPartClasses/BackHair0_編2パツ.cs | 458 ++--
.../BodyPartClasses/BackHair0_編2パツD.cs | 1 +
.../BodyPartClasses/BackHair0_肢系.cs | 7 +-
.../BodyPartClasses/BackHair0_肢系D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/BackHair1.cs | 2 +
.../BodyPartClasses/BackHair1_結1カル.cs | 42 +-
.../BodyPartClasses/BackHair1_結1カルD.cs | 1 +
.../BodyPartClasses/BackHair1_結1ジグ.cs | 42 +-
.../BodyPartClasses/BackHair1_結1ジグD.cs | 1 +
.../BodyPartClasses/BackHair1_結1ハネ.cs | 42 +-
.../BodyPartClasses/BackHair1_結1ハネD.cs | 1 +
.../BodyPartClasses/BackHair1_結1パツ.cs | 42 +-
.../BodyPartClasses/BackHair1_結1パツD.cs | 1 +
.../BodyPartClasses/BackHair1_結2カル.cs | 36 +-
.../BodyPartClasses/BackHair1_結2カルD.cs | 1 +
.../BodyPartClasses/BackHair1_結2ジグ.cs | 36 +-
.../BodyPartClasses/BackHair1_結2ジグD.cs | 1 +
.../BodyPartClasses/BackHair1_結2ハネ.cs | 36 +-
.../BodyPartClasses/BackHair1_結2ハネD.cs | 1 +
.../BodyPartClasses/BackHair1_結2パツ.cs | 36 +-
.../BodyPartClasses/BackHair1_結2パツD.cs | 1 +
.../BodyPartClasses/BackHair1_編結.cs | 32 +-
.../BodyPartClasses/BackHair1_編結D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Chest.cs | 1 +
.../SlaveMatrix/BodyPartClasses/ChestD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/ContactD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Cough.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/Head.cs | 57 +-
.../SlaveMatrix/BodyPartClasses/HeadD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/InfoPanel.cs | 152 +-
.../SlaveMatrix/BodyPartClasses/Leg.cs | 2 +
.../SlaveMatrix/BodyPartClasses/Leg_人.cs | 19 +-
.../SlaveMatrix/BodyPartClasses/Leg_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Leg_獣.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/Leg_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Leg_竜.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/Leg_竜D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Leg_蹄.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/Leg_蹄D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Leg_鳥.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/Leg_鳥D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/LowerArm.cs | 2 +
.../BodyPartClasses/LowerArm_人.cs | 25 +-
.../BodyPartClasses/LowerArm_人D.cs | 1 +
.../BodyPartClasses/LowerArm_獣.cs | 7 +-
.../BodyPartClasses/LowerArm_獣D.cs | 1 +
.../BodyPartClasses/LowerArm_蝙.cs | 13 +-
.../BodyPartClasses/LowerArm_蝙D.cs | 1 +
.../BodyPartClasses/LowerArm_蹄.cs | 7 +-
.../BodyPartClasses/LowerArm_蹄D.cs | 1 +
.../BodyPartClasses/LowerArm_鳥.cs | 615 ++---
.../BodyPartClasses/LowerArm_鳥D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Neck.cs | 1 +
.../SlaveMatrix/BodyPartClasses/NeckD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Shoulder.cs | 11 +-
.../SlaveMatrix/BodyPartClasses/ShoulderD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/SideHair.cs | 2 +
.../BodyPartClasses/SideHair_カル.cs | 10 +-
.../BodyPartClasses/SideHair_カルD.cs | 1 +
.../BodyPartClasses/SideHair_ジグ.cs | 10 +-
.../BodyPartClasses/SideHair_ジグD.cs | 1 +
.../BodyPartClasses/SideHair_ハネ.cs | 10 +-
.../BodyPartClasses/SideHair_ハネD.cs | 1 +
.../BodyPartClasses/SideHair_パツ.cs | 10 +-
.../BodyPartClasses/SideHair_パツD.cs | 1 +
.../BodyPartClasses/SideHair_編み.cs | 52 +-
.../BodyPartClasses/SideHair_編みD.cs | 1 +
.../BodyPartClasses/SideHair_肢系.cs | 1 +
.../BodyPartClasses/SideHair_肢系D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Stamp.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Sweat.cs | 9 +-
.../SlaveMatrix/BodyPartClasses/TextBubble.cs | 50 +-
.../SlaveMatrix/BodyPartClasses/Torso.cs | 1 +
.../SlaveMatrix/BodyPartClasses/TorsoD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Torso_蛇.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/Torso_蛇D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Torso_蟲.cs | 12 +-
.../SlaveMatrix/BodyPartClasses/Torso_蟲D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/T剃刀.cs | 5 +-
.../SlaveMatrix/BodyPartClasses/T剃刀D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/UpperArm.cs | 2 +
.../BodyPartClasses/UpperArm_人.cs | 15 +-
.../BodyPartClasses/UpperArm_人D.cs | 1 +
.../BodyPartClasses/UpperArm_獣.cs | 7 +-
.../BodyPartClasses/UpperArm_獣D.cs | 1 +
.../BodyPartClasses/UpperArm_蝙.cs | 17 +-
.../BodyPartClasses/UpperArm_蝙D.cs | 1 +
.../BodyPartClasses/UpperArm_蹄.cs | 7 +-
.../BodyPartClasses/UpperArm_蹄D.cs | 1 +
.../BodyPartClasses/UpperArm_鳥.cs | 79 +-
.../BodyPartClasses/UpperArm_鳥D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/Waist.cs | 127 +-
.../SlaveMatrix/BodyPartClasses/WaistD.cs | 1 +
.../BodyPartClasses/ぶっかけ_大.cs | 3 +-
.../BodyPartClasses/ぶっかけ_大D.cs | 1 +
.../BodyPartClasses/ぶっかけ_小.cs | 3 +-
.../BodyPartClasses/ぶっかけ_小D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/キスマーク.cs | 1 +
.../BodyPartClasses/キスマークD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/キャップ1.cs | 5 +-
.../SlaveMatrix/BodyPartClasses/キャップ1D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/キャップ2.cs | 1 +
.../SlaveMatrix/BodyPartClasses/キャップ2D.cs | 1 +
.../BodyPartClasses/キャップ処理.cs | 13 +-
.../SlaveMatrix/BodyPartClasses/スタンプB.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/スタンプK.cs | 5 +-
.../SlaveMatrix/BodyPartClasses/スタンプW.cs | 5 +-
.../BodyPartClasses/ドレス色更新.cs | 1 +
.../SlaveMatrix/BodyPartClasses/ハンド.cs | 75 +-
.../SlaveMatrix/BodyPartClasses/ハンドD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/ハンド処理.cs | 4 +-
.../BodyPartClasses/バイブ_アナル.cs | 13 +-
.../BodyPartClasses/バイブ_アナルD.cs | 1 +
.../BodyPartClasses/バイブ_コモン.cs | 13 +-
.../BodyPartClasses/バイブ_コモンD.cs | 1 +
.../BodyPartClasses/バイブ_ディル.cs | 13 +-
.../BodyPartClasses/バイブ_ディルD.cs | 1 +
.../BodyPartClasses/バイブ_デンマ.cs | 13 +-
.../BodyPartClasses/バイブ_デンマD.cs | 1 +
.../BodyPartClasses/バイブ_ドリル.cs | 39 +-
.../BodyPartClasses/バイブ_ドリルD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/パール.cs | 37 +-
.../SlaveMatrix/BodyPartClasses/パールD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/ピアス.cs | 1 +
.../SlaveMatrix/BodyPartClasses/ピアスD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/ペニス.cs | 29 +-
.../SlaveMatrix/BodyPartClasses/ペニス処理.cs | 9 +-
.../SlaveMatrix/BodyPartClasses/ボテ腹.cs | 2 +
.../SlaveMatrix/BodyPartClasses/ボテ腹_人.cs | 63 +-
.../SlaveMatrix/BodyPartClasses/ボテ腹_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/ボテ腹_獣.cs | 33 +-
.../SlaveMatrix/BodyPartClasses/ボテ腹_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/ボテ腹板.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/ボテ腹板D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/マウス.cs | 29 +-
.../SlaveMatrix/BodyPartClasses/マウスD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/マウス処理.cs | 6 +-
.../SlaveMatrix/BodyPartClasses/ロータ.cs | 13 +-
.../SlaveMatrix/BodyPartClasses/ロータD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/上着トップ.cs | 2 +
.../BodyPartClasses/上着トップ_ドレス.cs | 8 +-
.../BodyPartClasses/上着トップ_ドレスD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/上着ボトム.cs | 2 +
.../BodyPartClasses/上着ボトム_クロス.cs | 3 +-
.../BodyPartClasses/上着ボトム_クロスD.cs | 1 +
.../BodyPartClasses/上着ボトム_クロス後.cs | 2 +-
.../BodyPartClasses/上着ボトム_クロス後D.cs | 1 +
.../BodyPartClasses/上着ボトム_前掛け.cs | 6 +-
.../BodyPartClasses/上着ボトム_前掛けD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/上着ミドル.cs | 2 +
.../BodyPartClasses/上着ミドル_ドレスD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/下着トップ.cs | 2 +
.../BodyPartClasses/下着トップ_クロス.cs | 56 +-
.../BodyPartClasses/下着トップ_クロスD.cs | 1 +
.../BodyPartClasses/下着トップ_チューブ.cs | 40 +-
.../BodyPartClasses/下着トップ_チューブD.cs | 1 +
.../BodyPartClasses/下着トップ_ビキニ.cs | 52 +-
.../BodyPartClasses/下着トップ_ビキニD.cs | 1 +
.../BodyPartClasses/下着トップ_ブラ.cs | 308 +--
.../BodyPartClasses/下着トップ_ブラD.cs | 1 +
.../BodyPartClasses/下着トップ_マイクロ.cs | 52 +-
.../BodyPartClasses/下着トップ_マイクロD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/下着ボトム.cs | 2 +
.../BodyPartClasses/下着ボトム_ノーマル.cs | 16 +-
.../BodyPartClasses/下着ボトム_ノーマルD.cs | 1 +
.../BodyPartClasses/下着ボトム_マイクロ.cs | 16 +-
.../BodyPartClasses/下着ボトム_マイクロD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/下着乳首.cs | 5 +-
.../SlaveMatrix/BodyPartClasses/下着乳首D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/下着陰核.cs | 1 +
.../SlaveMatrix/BodyPartClasses/下着陰核D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/乳房.cs | 53 +-
.../SlaveMatrix/BodyPartClasses/乳房D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/前翅.cs | 2 +
.../SlaveMatrix/BodyPartClasses/前翅_甲.cs | 53 +-
.../SlaveMatrix/BodyPartClasses/前翅_甲D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/前翅_羽.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/前翅_羽D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/前翅_草.cs | 12 +-
.../SlaveMatrix/BodyPartClasses/前翅_草D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/前翅_蝶.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/前翅_蝶D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/前髪.cs | 2 +
.../SlaveMatrix/BodyPartClasses/前髪_ジグ.cs | 62 +-
.../SlaveMatrix/BodyPartClasses/前髪_ジグD.cs | 1 +
.../BodyPartClasses/前髪_ジグ中寄.cs | 62 +-
.../BodyPartClasses/前髪_ジグ中寄D.cs | 1 +
.../BodyPartClasses/前髪_ジグ分け.cs | 62 +-
.../BodyPartClasses/前髪_ジグ分けD.cs | 1 +
.../BodyPartClasses/前髪_パッツン.cs | 62 +-
.../BodyPartClasses/前髪_パッツンD.cs | 1 +
.../BodyPartClasses/前髪_モジャ.cs | 62 +-
.../BodyPartClasses/前髪_モジャD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/前髪_三分1.cs | 66 +-
.../BodyPartClasses/前髪_三分1D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/前髪_三分2.cs | 12 +-
.../BodyPartClasses/前髪_三分2D.cs | 1 +
.../BodyPartClasses/前髪_上げ片.cs | 6 +-
.../BodyPartClasses/前髪_上げ片D.cs | 1 +
.../BodyPartClasses/前髪_上げ短1.cs | 8 +-
.../BodyPartClasses/前髪_上げ短1D.cs | 1 +
.../BodyPartClasses/前髪_上げ短2.cs | 8 +-
.../BodyPartClasses/前髪_上げ短2D.cs | 1 +
.../BodyPartClasses/前髪_上げ長1.cs | 8 +-
.../BodyPartClasses/前髪_上げ長1D.cs | 1 +
.../BodyPartClasses/前髪_上げ長2.cs | 8 +-
.../BodyPartClasses/前髪_上げ長2D.cs | 1 +
.../BodyPartClasses/前髪_中分け1.cs | 8 +-
.../BodyPartClasses/前髪_中分け1D.cs | 1 +
.../BodyPartClasses/前髪_中分け2.cs | 4 +-
.../BodyPartClasses/前髪_中分け2D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/前髪_二分1.cs | 62 +-
.../BodyPartClasses/前髪_二分1D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/前髪_二分2.cs | 8 +-
.../BodyPartClasses/前髪_二分2D.cs | 1 +
.../BodyPartClasses/前髪_横流し.cs | 58 +-
.../BodyPartClasses/前髪_横流しD.cs | 1 +
.../BodyPartClasses/前髪_目隠れ1.cs | 54 +-
.../BodyPartClasses/前髪_目隠れ1D.cs | 1 +
.../BodyPartClasses/前髪_目隠れ2.cs | 8 +-
.../BodyPartClasses/前髪_目隠れ2D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/半身.cs | 2 +
.../SlaveMatrix/BodyPartClasses/単目.cs | 17 +-
.../SlaveMatrix/BodyPartClasses/単目D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/単眼眉.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/単眼眉D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/単瞼.cs | 65 +-
.../SlaveMatrix/BodyPartClasses/単瞼D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/単足_植.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/単足_植D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/単足_粘D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/双目.cs | 17 +-
.../SlaveMatrix/BodyPartClasses/双目D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/双瞼.cs | 2 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/口.cs | 2 +
.../SlaveMatrix/BodyPartClasses/口_裂け.cs | 30 +-
.../SlaveMatrix/BodyPartClasses/口_裂けD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/口_通常.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/口_通常D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/吹出し.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/呼気.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/呼気D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/咳D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/噴乳.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/噴乳D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/四足胴.cs | 1 +
.../SlaveMatrix/BodyPartClasses/四足胴D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/四足胸.cs | 1 +
.../SlaveMatrix/BodyPartClasses/四足胸D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/四足脇.cs | 1 +
.../SlaveMatrix/BodyPartClasses/四足脇D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/四足腰.cs | 33 +-
.../SlaveMatrix/BodyPartClasses/四足腰D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/基髪.cs | 1 +
.../SlaveMatrix/BodyPartClasses/基髪D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/多足_蛸.cs | 1 +
.../SlaveMatrix/BodyPartClasses/多足_蛸D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/多足_蜘.cs | 1 +
.../SlaveMatrix/BodyPartClasses/多足_蜘D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/多足_蠍.cs | 37 +-
.../SlaveMatrix/BodyPartClasses/多足_蠍D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/大顎.cs | 11 +-
.../SlaveMatrix/BodyPartClasses/大顎D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/大顎上.cs | 1 +
.../SlaveMatrix/BodyPartClasses/大顎基.cs | 1 +
.../SlaveMatrix/BodyPartClasses/大顎基D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/射精.cs | 7 +-
SlaveMatrix/SlaveMatrix/BodyPartClasses/尾.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_ウ.cs | 45 +-
.../SlaveMatrix/BodyPartClasses/尾_ウD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_ガ.cs | 22 +-
.../SlaveMatrix/BodyPartClasses/尾_ガD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_ヘ.cs | 105 +-
.../SlaveMatrix/BodyPartClasses/尾_ヘD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_悪.cs | 38 +-
.../SlaveMatrix/BodyPartClasses/尾_悪D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_根.cs | 38 +-
.../SlaveMatrix/BodyPartClasses/尾_根D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_淫.cs | 38 +-
.../SlaveMatrix/BodyPartClasses/尾_淫D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_牛.cs | 96 +-
.../SlaveMatrix/BodyPartClasses/尾_牛D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_犬.cs | 16 +-
.../SlaveMatrix/BodyPartClasses/尾_犬D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_狐.cs | 24 +-
.../SlaveMatrix/BodyPartClasses/尾_狐D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_猫.cs | 28 +-
.../SlaveMatrix/BodyPartClasses/尾_猫D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_短.cs | 12 +-
.../SlaveMatrix/BodyPartClasses/尾_短D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_竜.cs | 36 +-
.../SlaveMatrix/BodyPartClasses/尾_竜D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_腓.cs | 134 +-
.../SlaveMatrix/BodyPartClasses/尾_腓D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_虫.cs | 22 +-
.../SlaveMatrix/BodyPartClasses/尾_虫D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_蛇.cs | 88 +-
.../SlaveMatrix/BodyPartClasses/尾_蛇D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_蜘.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_蜘D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_蟲.cs | 13 +-
.../SlaveMatrix/BodyPartClasses/尾_蟲D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_蠍.cs | 12 +-
.../SlaveMatrix/BodyPartClasses/尾_蠍D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_馬.cs | 80 +-
.../SlaveMatrix/BodyPartClasses/尾_馬D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_魚.cs | 181 +-
.../SlaveMatrix/BodyPartClasses/尾_魚D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_鯨.cs | 109 +-
.../SlaveMatrix/BodyPartClasses/尾_鯨D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_鳥.cs | 88 +-
.../SlaveMatrix/BodyPartClasses/尾_鳥D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾_龍.cs | 82 +-
.../SlaveMatrix/BodyPartClasses/尾_龍D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾鰭.cs | 2 +
.../SlaveMatrix/BodyPartClasses/尾鰭_魚.cs | 36 +-
.../SlaveMatrix/BodyPartClasses/尾鰭_魚D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/尾鰭_鯨D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/後翅.cs | 2 +
.../SlaveMatrix/BodyPartClasses/後翅_甲.cs | 18 +-
.../SlaveMatrix/BodyPartClasses/後翅_甲D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/後翅_羽.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/後翅_羽D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/後翅_草.cs | 52 +-
.../SlaveMatrix/BodyPartClasses/後翅_草D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/後翅_蝶.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/後翅_蝶D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/性器.cs | 2 +
.../SlaveMatrix/BodyPartClasses/性器_人.cs | 15 +-
.../SlaveMatrix/BodyPartClasses/性器_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/性器_獣.cs | 15 +-
.../SlaveMatrix/BodyPartClasses/性器_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/性器精液.cs | 2 +
.../BodyPartClasses/性器精液_人.cs | 2 +-
.../BodyPartClasses/性器精液_人D.cs | 1 +
.../BodyPartClasses/性器精液_獣.cs | 2 +-
.../BodyPartClasses/性器精液_獣D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/手.cs | 2 +
.../SlaveMatrix/BodyPartClasses/手_人.cs | 1148 +++++-----
.../SlaveMatrix/BodyPartClasses/手_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/手_牛.cs | 4 +-
.../SlaveMatrix/BodyPartClasses/手_牛D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/手_獣.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/手_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/手_蝙.cs | 104 +-
.../SlaveMatrix/BodyPartClasses/手_蝙D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/手_馬.cs | 4 +-
.../SlaveMatrix/BodyPartClasses/手_馬D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/手_鳥.cs | 368 +--
.../SlaveMatrix/BodyPartClasses/手_鳥D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/拘束鎖.cs | 9 +-
.../SlaveMatrix/BodyPartClasses/挿入処理.cs | 44 +-
.../SlaveMatrix/BodyPartClasses/放尿.cs | 2 +
.../SlaveMatrix/BodyPartClasses/放尿_人.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/放尿_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/放尿_獣.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/放尿_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/断面.cs | 2 +
.../SlaveMatrix/BodyPartClasses/断面_人.cs | 74 +-
.../SlaveMatrix/BodyPartClasses/断面_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/断面_獣.cs | 74 +-
.../SlaveMatrix/BodyPartClasses/断面_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/染み.cs | 2 +
.../SlaveMatrix/BodyPartClasses/染み_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/染み_獣D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/植.cs | 39 +-
.../SlaveMatrix/BodyPartClasses/植D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/汗.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/汗D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/涎.cs | 2 +
.../SlaveMatrix/BodyPartClasses/涎_裂け.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/涎_裂けD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/涎_通常.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/涎_通常D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/涙.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/涙D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/潮吹_大.cs | 2 +
.../SlaveMatrix/BodyPartClasses/潮吹_大_人.cs | 2 +-
.../BodyPartClasses/潮吹_大_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/潮吹_大_獣.cs | 2 +-
.../BodyPartClasses/潮吹_大_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/潮吹_小.cs | 2 +
.../SlaveMatrix/BodyPartClasses/潮吹_小_人.cs | 2 +-
.../BodyPartClasses/潮吹_小_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/潮吹_小_獣.cs | 2 +-
.../BodyPartClasses/潮吹_小_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/獣耳.cs | 21 +-
.../SlaveMatrix/BodyPartClasses/獣耳D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/玉口枷.cs | 1 +
.../SlaveMatrix/BodyPartClasses/玉口枷D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/目傷.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/目傷D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/目尻影.cs | 1 +
.../SlaveMatrix/BodyPartClasses/目尻影D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/目隠帯.cs | 1 +
.../SlaveMatrix/BodyPartClasses/目隠帯D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/眉.cs | 9 +-
.../SlaveMatrix/BodyPartClasses/眉D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/瞼_中.cs | 38 +-
.../SlaveMatrix/BodyPartClasses/瞼_中D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/瞼_宇.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/瞼_宇D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/瞼_弱.cs | 38 +-
.../SlaveMatrix/BodyPartClasses/瞼_弱D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/瞼_強.cs | 38 +-
.../SlaveMatrix/BodyPartClasses/瞼_強D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/瞼_獣.cs | 38 +-
.../SlaveMatrix/BodyPartClasses/瞼_獣D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/節.cs | 2 +
.../SlaveMatrix/BodyPartClasses/節尾_曳航.cs | 10 +-
.../SlaveMatrix/BodyPartClasses/節尾_曳航D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/節尾_鋏D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/節足_足百.cs | 14 +-
.../SlaveMatrix/BodyPartClasses/節足_足百D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/節足_足蜘.cs | 16 +-
.../SlaveMatrix/BodyPartClasses/節足_足蜘D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/節足_足蠍.cs | 14 +-
.../SlaveMatrix/BodyPartClasses/節足_足蠍D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/紅潮.cs | 1 +
.../SlaveMatrix/BodyPartClasses/紅潮D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/縦目.cs | 17 +-
.../SlaveMatrix/BodyPartClasses/縦目D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/縦瞼.cs | 31 +-
.../SlaveMatrix/BodyPartClasses/縦瞼D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/羽根箒.cs | 1 +
.../SlaveMatrix/BodyPartClasses/羽根箒D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/耳.cs | 2 +
.../SlaveMatrix/BodyPartClasses/耳_人.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/耳_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/耳_尖.cs | 20 +-
.../SlaveMatrix/BodyPartClasses/耳_尖D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/耳_獣.cs | 20 +-
.../SlaveMatrix/BodyPartClasses/耳_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/耳_羽.cs | 44 +-
.../SlaveMatrix/BodyPartClasses/耳_羽D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/耳_長.cs | 20 +-
.../SlaveMatrix/BodyPartClasses/耳_長D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/耳_鰭.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/耳_鰭D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/肛門.cs | 2 +
.../SlaveMatrix/BodyPartClasses/肛門_人.cs | 1 +
.../SlaveMatrix/BodyPartClasses/肛門_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/肛門_獣.cs | 1 +
.../SlaveMatrix/BodyPartClasses/肛門_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/肛門精液.cs | 2 +
.../BodyPartClasses/肛門精液_人.cs | 2 +-
.../BodyPartClasses/肛門精液_人D.cs | 1 +
.../BodyPartClasses/肛門精液_獣.cs | 2 +-
.../BodyPartClasses/肛門精液_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/背中.cs | 2 +
.../SlaveMatrix/BodyPartClasses/背中_光D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/背中_甲.cs | 28 +-
.../SlaveMatrix/BodyPartClasses/背中_甲D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/背中_羽.cs | 4 +-
.../SlaveMatrix/BodyPartClasses/背中_羽D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/胴肌.cs | 1 +
.../SlaveMatrix/BodyPartClasses/胴肌D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/胴腹板.cs | 1 +
.../SlaveMatrix/BodyPartClasses/胴腹板D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/胸毛.cs | 1 +
.../SlaveMatrix/BodyPartClasses/胸毛D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/胸肌.cs | 1 +
.../SlaveMatrix/BodyPartClasses/胸肌D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/胸腹板.cs | 1 +
.../SlaveMatrix/BodyPartClasses/胸腹板D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/腰肌.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/腰肌D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/腿.cs | 2 +
.../SlaveMatrix/BodyPartClasses/腿_人.cs | 65 +-
.../SlaveMatrix/BodyPartClasses/腿_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/腿_獣.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/腿_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/腿_竜.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/腿_竜D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/腿_蹄.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/腿_蹄D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/腿_鳥.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/腿_鳥D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/膣内精液.cs | 2 +
.../BodyPartClasses/膣内精液_人D.cs | 1 +
.../BodyPartClasses/膣内精液_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/膣基.cs | 2 +
.../SlaveMatrix/BodyPartClasses/膣基_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/膣基_獣D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/舌.cs | 2 +
.../SlaveMatrix/BodyPartClasses/舌_短D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/舌_長D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/花.cs | 2 +
.../SlaveMatrix/BodyPartClasses/花_百.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/花_百D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/花_薔.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/花_薔D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/葉.cs | 2 +
.../SlaveMatrix/BodyPartClasses/葉_心.cs | 12 +-
.../SlaveMatrix/BodyPartClasses/葉_心D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/葉_披.cs | 12 +-
.../SlaveMatrix/BodyPartClasses/葉_披D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/虫鎌.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/虫鎌D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/虫顎.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/虫顎D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/衝撃.cs | 1 +
.../SlaveMatrix/BodyPartClasses/衝撃D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角1.cs | 2 +
.../SlaveMatrix/BodyPartClasses/角1_一.cs | 4 +-
.../SlaveMatrix/BodyPartClasses/角1_一D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角1_虫.cs | 4 +-
.../SlaveMatrix/BodyPartClasses/角1_虫D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角1_鬼.cs | 4 +-
.../SlaveMatrix/BodyPartClasses/角1_鬼D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2_山1.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/角2_山1D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2_山2.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/角2_山2D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2_山3.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/角2_山3D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2_巻.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/角2_巻D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2_牛1.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/角2_牛1D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2_牛2.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/角2_牛2D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2_牛3.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/角2_牛3D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2_牛4.cs | 8 +-
.../SlaveMatrix/BodyPartClasses/角2_牛4D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2_虫.cs | 4 +-
.../SlaveMatrix/BodyPartClasses/角2_虫D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/角2_鬼.cs | 12 +-
.../SlaveMatrix/BodyPartClasses/角2_鬼D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触手.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触手_犬.cs | 127 +-
.../SlaveMatrix/BodyPartClasses/触手_犬D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触手_蔦.cs | 105 +-
.../SlaveMatrix/BodyPartClasses/触手_蔦D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触手_触.cs | 220 +-
.../SlaveMatrix/BodyPartClasses/触手_触D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触手_軟.cs | 328 +--
.../SlaveMatrix/BodyPartClasses/触手_軟D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触肢_肢蜘.cs | 24 +-
.../SlaveMatrix/BodyPartClasses/触肢_肢蜘D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触肢_肢蠍.cs | 14 +-
.../SlaveMatrix/BodyPartClasses/触肢_肢蠍D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触覚.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触覚_甲.cs | 22 +-
.../SlaveMatrix/BodyPartClasses/触覚_甲D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触覚_節.cs | 54 +-
.../SlaveMatrix/BodyPartClasses/触覚_節D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触覚_線.cs | 120 +-
.../SlaveMatrix/BodyPartClasses/触覚_線D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触覚_蛾.cs | 104 +-
.../SlaveMatrix/BodyPartClasses/触覚_蛾D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触覚_蝶.cs | 70 +-
.../SlaveMatrix/BodyPartClasses/触覚_蝶D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/触覚_蠍.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/触覚_蠍D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/調教背景.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/調教鞭.cs | 7 +-
.../SlaveMatrix/BodyPartClasses/調教鞭D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/調鞭処理.cs | 6 +-
SlaveMatrix/SlaveMatrix/BodyPartClasses/足.cs | 2 +
.../SlaveMatrix/BodyPartClasses/足_人.cs | 144 +-
.../SlaveMatrix/BodyPartClasses/足_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/足_牛.cs | 10 +-
.../SlaveMatrix/BodyPartClasses/足_牛D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/足_獣.cs | 12 +-
.../SlaveMatrix/BodyPartClasses/足_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/足_竜.cs | 10 +-
.../SlaveMatrix/BodyPartClasses/足_竜D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/足_馬.cs | 4 +-
.../SlaveMatrix/BodyPartClasses/足_馬D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/足_鳥.cs | 22 +-
.../SlaveMatrix/BodyPartClasses/足_鳥D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/鎖.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鎖D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/長物_蛇.cs | 7 +-
.../SlaveMatrix/BodyPartClasses/長物_蛇D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/長物_蟲.cs | 1 +
.../SlaveMatrix/BodyPartClasses/長物_蟲D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/長物_魚.cs | 29 +-
.../SlaveMatrix/BodyPartClasses/長物_魚D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/長物_鯨.cs | 9 +-
.../SlaveMatrix/BodyPartClasses/長物_鯨D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/長胴.cs | 2 +
.../SlaveMatrix/BodyPartClasses/鞭痕.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鞭痕D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頬目.cs | 17 +-
.../SlaveMatrix/BodyPartClasses/頬目D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頬瞼.cs | 31 +-
.../SlaveMatrix/BodyPartClasses/頬瞼D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頬肌.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頬肌D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頭色更新.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頭頂.cs | 2 +
.../SlaveMatrix/BodyPartClasses/頭頂_天D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頭頂_宇.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頭頂_宇D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頭頂_皿D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頭頂後_宇.cs | 1 +
.../SlaveMatrix/BodyPartClasses/頭頂後_宇D.cs | 1 +
.../BodyPartClasses/顔ハイライト.cs | 1 +
.../BodyPartClasses/顔ハイライトD.cs | 1 +
.../SlaveMatrix/BodyPartClasses/顔面.cs | 1 +
.../SlaveMatrix/BodyPartClasses/顔面_甲.cs | 23 +-
.../SlaveMatrix/BodyPartClasses/顔面_甲D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/顔面_虫.cs | 27 +-
.../SlaveMatrix/BodyPartClasses/顔面_虫D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/顔面_蟲.cs | 1 +
.../SlaveMatrix/BodyPartClasses/顔面_蟲D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/飛沫.cs | 2 +
.../SlaveMatrix/BodyPartClasses/飛沫_人.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/飛沫_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/飛沫_獣.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/飛沫_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/飛膜_先.cs | 495 ++--
.../SlaveMatrix/BodyPartClasses/飛膜_根.cs | 195 +-
.../SlaveMatrix/BodyPartClasses/鯨色更新.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/鰭.cs | 2 +
.../SlaveMatrix/BodyPartClasses/鰭_豚.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/鰭_豚D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鰭_魚.cs | 20 +-
.../SlaveMatrix/BodyPartClasses/鰭_魚D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鰭_鯨.cs | 2 +-
.../SlaveMatrix/BodyPartClasses/鰭_鯨D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鳳凰.cs | 42 +-
.../SlaveMatrix/BodyPartClasses/鳳凰D.cs | 1 +
SlaveMatrix/SlaveMatrix/BodyPartClasses/鼻.cs | 2 +
.../SlaveMatrix/BodyPartClasses/鼻_人.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鼻_人D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鼻_獣.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鼻_獣D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鼻水.cs | 3 +-
.../SlaveMatrix/BodyPartClasses/鼻水D.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鼻肌.cs | 1 +
.../SlaveMatrix/BodyPartClasses/鼻肌D.cs | 1 +
SlaveMatrix/SlaveMatrix/GameClasses/Body.cs | 395 ++--
SlaveMatrix/SlaveMatrix/GameClasses/CM.cs | 3 +-
.../SlaveMatrix/GameClasses/Character.cs | 10 +-
SlaveMatrix/SlaveMatrix/GameClasses/ColorP.cs | 16 +-
SlaveMatrix/SlaveMatrix/GameClasses/Ele.cs | 1985 ++++++++---------
SlaveMatrix/SlaveMatrix/GameClasses/EleD.cs | 1 +
SlaveMatrix/SlaveMatrix/GameClasses/EleI.cs | 1 +
.../SlaveMatrix/GameClasses/ListView.cs | 26 +-
SlaveMatrix/SlaveMatrix/GameClasses/Mods.cs | 1430 ++++++------
.../SlaveMatrix/GameClasses/Onomatopoeia.cs | 24 +-
.../SlaveMatrix/GameClasses/Reactions.cs | 827 +++----
SlaveMatrix/SlaveMatrix/GameClasses/Sta.cs | 5 +-
.../SlaveMatrix/GameClasses/TrainingUI.cs | 489 ++--
706 files changed, 11202 insertions(+), 11716 deletions(-)
diff --git a/2DGAMELIB/_2DGAMELIB/But.cs b/2DGAMELIB/_2DGAMELIB/But.cs
index 5ef40cb..481e37a 100644
--- a/2DGAMELIB/_2DGAMELIB/But.cs
+++ b/2DGAMELIB/_2DGAMELIB/But.cs
@@ -121,11 +121,11 @@ namespace _2DGAMELIB
{
foreach (Par item in pars.EnumAllPar())
{
- if (item.HitColor != Color.Transparent)
+ if (item.GetHitColor() != Color.Transparent)
{
- Med.RemUniqueColor(item.HitColor);
+ Med.RemUniqueColor(item.GetHitColor());
}
- item.HitColor = Med.GetUniqueColor();
+ item.SetHitColor(Med.GetUniqueColor());
}
}
diff --git a/2DGAMELIB/_2DGAMELIB/But1.cs b/2DGAMELIB/_2DGAMELIB/But1.cs
index 8f46626..61df205 100644
--- a/2DGAMELIB/_2DGAMELIB/But1.cs
+++ b/2DGAMELIB/_2DGAMELIB/But1.cs
@@ -25,7 +25,7 @@ namespace _2DGAMELIB
{
foreach (Par item in pars.EnumAllPar())
{
- BaseColors.Add(item.BrushColor);
+ BaseColors.Add(item.GetBrushColor());
OverColors.Add(BaseColors.Last().FuncHSV(delegate(Hsv hsv)
{
hsv.Hue += 30;
@@ -40,17 +40,17 @@ namespace _2DGAMELIB
hsv.Val += 100;
return hsv;
}));
- TextColors.Add(item.IsParT() ? item.ToParT().TextColor : Color.Empty);
+ TextColors.Add(item.IsParT() ? item.ToParT().GetTextColor() : Color.Empty);
}
Over = delegate
{
int num4 = 0;
foreach (Par item2 in pars.EnumAllPar())
{
- item2.BrushColor = OverColors[num4];
+ item2.SetBrushColor(OverColors[num4]);
if (item2.IsParT())
{
- item2.ToParT().TextColor = TextColors[num4].Reverse();
+ item2.ToParT().SetTextColor(TextColors[num4].Reverse());
}
num4++;
}
@@ -60,10 +60,10 @@ namespace _2DGAMELIB
int num3 = 0;
foreach (Par item3 in pars.EnumAllPar())
{
- item3.BrushColor = PushColors[num3];
+ item3.SetBrushColor(PushColors[num3]);
if (item3.IsParT())
{
- item3.ToParT().TextColor = TextColors[num3].Reverse();
+ item3.ToParT().SetTextColor(TextColors[num3].Reverse());
}
num3++;
}
@@ -73,10 +73,10 @@ namespace _2DGAMELIB
int num2 = 0;
foreach (Par item4 in pars.EnumAllPar())
{
- item4.BrushColor = OverColors[num2];
+ item4.SetBrushColor(OverColors[num2]);
if (item4.IsParT())
{
- item4.ToParT().TextColor = TextColors[num2].Reverse();
+ item4.ToParT().SetTextColor(TextColors[num2].Reverse());
}
num2++;
}
@@ -86,10 +86,10 @@ namespace _2DGAMELIB
int num = 0;
foreach (Par item5 in pars.EnumAllPar())
{
- item5.BrushColor = BaseColors[num];
+ item5.SetBrushColor(BaseColors[num]);
if (item5.IsParT())
{
- item5.ToParT().TextColor = TextColors[num];
+ item5.ToParT().SetTextColor(TextColors[num]);
}
num++;
}
diff --git a/2DGAMELIB/_2DGAMELIB/Dif.cs b/2DGAMELIB/_2DGAMELIB/Dif.cs
index a2bf5bd..a0829be 100644
--- a/2DGAMELIB/_2DGAMELIB/Dif.cs
+++ b/2DGAMELIB/_2DGAMELIB/Dif.cs
@@ -27,139 +27,31 @@ namespace _2DGAMELIB
}
}
- public double PositionSize
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.PositionSize = value;
- }
- }
- }
+ public void SetAngleBase(double value)
+ {
+ foreach (Pars item in parss)
+ {
+ item.SetAngleBase(value);
+ }
+ }
- public Vector2D PositionVector
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.PositionVector = value;
- }
- }
- }
+ public void SetSizeBase(double value)
+ {
+ foreach (Pars item in parss)
+ {
+ item.SetSizeBase(value);
+ }
+ }
- public double AngleBase
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.AngleBase = value;
- }
- }
- }
+ public void SetSizeYCont(double value)
+ {
+ foreach (Pars item in parss)
+ {
+ item.SetSizeYCont(value);
+ }
+ }
- public double AngleCont
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.AngleCont = value;
- }
- }
- }
-
- public double SizeBase
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.SizeBase = value;
- }
- }
- }
-
- public double SizeCont
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.SizeCont = value;
- }
- }
- }
-
- public double SizeXBase
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.SizeXBase = value;
- }
- }
- }
-
- public double SizeXCont
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.SizeXCont = value;
- }
- }
- }
-
- public double SizeYBase
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.SizeYBase = value;
- }
- }
- }
-
- public double SizeYCont
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.SizeYCont = value;
- }
- }
- }
-
- public bool Dra
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.Dra = value;
- }
- }
- }
-
- public bool Hit
- {
- set
- {
- foreach (Pars item in parss)
- {
- item.Hit = value;
- }
- }
- }
-
- public IEnumerable EnumAllPar()
+ public IEnumerable EnumAllPar()
{
foreach (Pars item in parss)
{
@@ -201,26 +93,6 @@ namespace _2DGAMELIB
parss.Add(Pars);
}
- public List GetHitTags(ref Color HitColor)
- {
- List list = new List();
- foreach (Pars item in parss)
- {
- list.AddRange(item.GetHitTags(ref HitColor));
- }
- return list;
- }
-
- public List GetHitPars(ref Color HitColor)
- {
- List list = new List();
- foreach (Pars item in parss)
- {
- list.AddRange(item.GetHitPars(ref HitColor));
- }
- return list;
- }
-
public bool IsHit(ref Color HitColor)
{
foreach (Pars item in parss)
diff --git a/2DGAMELIB/_2DGAMELIB/Difs.cs b/2DGAMELIB/_2DGAMELIB/Difs.cs
index 7da8acf..cee71d9 100644
--- a/2DGAMELIB/_2DGAMELIB/Difs.cs
+++ b/2DGAMELIB/_2DGAMELIB/Difs.cs
@@ -21,53 +21,49 @@ namespace _2DGAMELIB
public Dictionary pr;
- public int CountX => difs.Count;
+ public int GetCountX()
+ {
+ return difs.Count;
+ }
- public int CountY
- {
- get
- {
- if (difs.Count > 0)
- {
- return difs[IndexX].Count;
- }
- return 0;
- }
- }
+ public int GetCountY()
+ {
+ if (difs.Count > 0)
+ {
+ return difs[GetIndexX()].Count;
+ }
+ return 0;
+ }
- public int IndexX
- {
- get
- {
- if (!(ValueX >= 1.0))
- {
- return (int)((double)CountX * ValueX);
- }
- return CountX - 1;
- }
- set
- {
- ValueX = (double)value / (double)CountX;
- }
- }
+ public int GetIndexX()
+ {
+ if (!(ValueX >= 1.0))
+ {
+ return (int)((double)GetCountX() * ValueX);
+ }
+ return GetCountX() - 1;
+ }
- public int IndexY
- {
- get
- {
- if (!(ValueY >= 1.0))
- {
- return (int)((double)CountY * ValueY);
- }
- return CountY - 1;
- }
- set
- {
- ValueY = (double)value / (double)CountY;
- }
- }
+ public void SetIndexX(int value)
+ {
+ ValueX = (double)value / (double)GetCountX();
+ }
- public Dif this[int Index]
+ public int GetIndexY()
+ {
+ if (!(ValueY >= 1.0))
+ {
+ return (int)((double)GetCountY() * ValueY);
+ }
+ return GetCountY() - 1;
+ }
+
+ public void SetIndexY(int value)
+ {
+ ValueY = (double)value / (double)GetCountY();
+ }
+
+ public Dif this[int Index]
{
get
{
@@ -79,155 +75,46 @@ namespace _2DGAMELIB
}
}
- public Pars Current => difs[IndexX][IndexY];
+ public Pars GetCurrent()
+ {
+ return difs[GetIndexX()][GetIndexY()];
+ }
- public double PositionSize
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.PositionSize = value;
- }
- }
- }
+ public void SetAngleBase(double value)
+ {
+ foreach (Dif dif in difs)
+ {
+ dif.SetAngleBase(value);
+ }
+ }
- public Vector2D PositionVector
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.PositionVector = value;
- }
- }
- }
+ public void SetSizeBase(double value)
+ {
+ foreach (Dif dif in difs)
+ {
+ dif.SetSizeBase(value);
+ }
+ }
- public double AngleBase
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.AngleBase = value;
- }
- }
- }
+ public void SetSizeYCont(double value)
+ {
+ foreach (Dif dif in difs)
+ {
+ dif.SetSizeYCont(value);
+ }
+ }
- public double AngleCont
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.AngleCont = value;
- }
- }
- }
+ public Par GetCurJoinRoot()
+ {
+ Pars current = GetCurrent();
+ if (pr.ContainsKey(current))
+ {
+ return pr[current];
+ }
+ return null;
+ }
- public double SizeBase
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.SizeBase = value;
- }
- }
- }
-
- public double SizeCont
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.SizeCont = value;
- }
- }
- }
-
- public double SizeXBase
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.SizeXBase = value;
- }
- }
- }
-
- public double SizeXCont
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.SizeXCont = value;
- }
- }
- }
-
- public double SizeYBase
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.SizeYBase = value;
- }
- }
- }
-
- public double SizeYCont
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.SizeYCont = value;
- }
- }
- }
-
- public bool Dra
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.Dra = value;
- }
- }
- }
-
- public bool Hit
- {
- set
- {
- foreach (Dif dif in difs)
- {
- dif.Hit = value;
- }
- }
- }
-
- [JsonIgnore]
- public Par CurJoinRoot
- {
- get
- {
- Pars current = Current;
- if (pr.ContainsKey(current))
- {
- return pr[current];
- }
- return null;
- }
- }
-
- [JsonIgnore]
+ [JsonIgnore]
public IEnumerable EnumJoinRoot => pr.Values;
public IEnumerable EnumAllPar()
{
@@ -287,11 +174,11 @@ namespace _2DGAMELIB
public void Draw(RenderArea Are)
{
- Are.Draw(Current);
+ Are.Draw(GetCurrent());
}
public void Draw(AreM AreM)
{
- AreM.Draw(Current);
+ AreM.Draw(GetCurrent());
}
private Par GetJoinRoot(Pars ps)
@@ -304,13 +191,13 @@ namespace _2DGAMELIB
Par[] array2 = array;
foreach (Par p0 in array2)
{
- Vector2D p = p0.Position;
- if (array.All((Par p1) => p0 == p1 || p1.JP.All((Joi j) => !(p1.ToGlobal(j.Joint).DistanceSquared(p) <= Join.IdentityDistance))))
+ Vector2D p = p0.GetPosition();
+ if (array.All((Par p1) => p0 == p1 || p1.GetJP().All((Joi j) => !(p1.ToGlobal(j.Joint).DistanceSquared(p) <= Join.IdentityDistance))))
{
return p0;
}
}
- Par par = array.FirstOrDefault((Par e) => e.JP.Count > 0);
+ Par par = array.FirstOrDefault((Par e) => e.GetJP().Count > 0);
if (par != null)
{
return par;
@@ -335,12 +222,12 @@ namespace _2DGAMELIB
public void JoinP()
{
- pj[Current].JoinP();
+ pj[GetCurrent()].JoinP();
}
public void JoinPA()
{
- pj[Current].JoinPA();
+ pj[GetCurrent()].JoinPA();
}
public void JoinPAall()
@@ -351,17 +238,9 @@ namespace _2DGAMELIB
}
}
- public void JoinPA(Pars ps)
- {
- if (pj.ContainsKey(ps))
- {
- pj[ps].JoinPA();
- }
- }
-
public Par GetHitPar_(Color HitColor)
{
- return difs.FirstOrDefault((Dif d) => d.IsHit(ref HitColor)).Parss.FirstOrDefault((Pars ps) => ps.IsHit(ref HitColor)).EnumAllPar().FirstOrDefault((Par e) => e.HitColor == HitColor);
+ return difs.FirstOrDefault((Dif d) => d.IsHit(ref HitColor)).Parss.FirstOrDefault((Pars ps) => ps.IsHit(ref HitColor)).EnumAllPar().FirstOrDefault((Par e) => e.GetHitColor() == HitColor);
}
public bool IsHit(ref Color HitColor)
diff --git a/2DGAMELIB/_2DGAMELIB/Gau.cs b/2DGAMELIB/_2DGAMELIB/Gau.cs
index e23a8a0..c26eb72 100644
--- a/2DGAMELIB/_2DGAMELIB/Gau.cs
+++ b/2DGAMELIB/_2DGAMELIB/Gau.cs
@@ -81,29 +81,29 @@ namespace _2DGAMELIB
}
}
- private Vector2D TL1 => frame1.OP[0].ps[0];
+ private Vector2D TL1 => frame1.GetOP()[0].ps[0];
- private Vector2D TR1 => frame1.OP[0].ps[1];
+ private Vector2D TR1 => frame1.GetOP()[0].ps[1];
- private Vector2D BR1 => frame1.OP[0].ps[2];
+ private Vector2D BR1 => frame1.GetOP()[0].ps[2];
- private Vector2D BL1 => frame1.OP[0].ps[3];
+ private Vector2D BL1 => frame1.GetOP()[0].ps[3];
- private Vector2D TL2 => frame2.OP[0].ps[0];
+ private Vector2D TL2 => frame2.GetOP()[0].ps[0];
- private Vector2D TR2 => frame2.OP[0].ps[1];
+ private Vector2D TR2 => frame2.GetOP()[0].ps[1];
- private Vector2D BR2 => frame2.OP[0].ps[2];
+ private Vector2D BR2 => frame2.GetOP()[0].ps[2];
- private Vector2D BL2 => frame2.OP[0].ps[3];
+ private Vector2D BL2 => frame2.GetOP()[0].ps[3];
- private Vector2D TLG => gauge.OP[0].ps[0];
+ private Vector2D TLG => gauge.GetOP()[0].ps[0];
- private Vector2D TRG => gauge.OP[0].ps[1];
+ private Vector2D TRG => gauge.GetOP()[0].ps[1];
- private Vector2D BRG => gauge.OP[0].ps[2];
+ private Vector2D BRG => gauge.GetOP()[0].ps[2];
- private Vector2D BLG => gauge.OP[0].ps[3];
+ private Vector2D BLG => gauge.GetOP()[0].ps[3];
private void SetLimit()
{
@@ -133,15 +133,15 @@ namespace _2DGAMELIB
{
if (Open == Open.Top || Open == Open.Bot)
{
- gauge.SizeYCont = val;
+ gauge.SetSizeYCont(val);
}
else if (Open == Open.Lef || Open == Open.Rig)
{
- gauge.SizeXCont = val;
+ gauge.SetSizeXCont(val);
}
if (knob != null)
{
- knob.PositionBase = GetKnobPosition();
+ knob.SetPositionBase(GetKnobPosition());
}
}
@@ -161,7 +161,7 @@ namespace _2DGAMELIB
return (TR1 + BR1) * 0.5;
}
}
- return frame1.OP.GetCenter();
+ return frame1.GetOP().GetCenter();
}
private Vector2D GetBasePoint2()
@@ -180,7 +180,7 @@ namespace _2DGAMELIB
return (TL2 + BL2) * 0.5;
}
}
- return frame2.OP.GetCenter();
+ return frame2.GetOP().GetCenter();
}
private Vector2D GetBasePoint()
@@ -199,7 +199,7 @@ namespace _2DGAMELIB
return (TRG + BRG) * 0.5;
}
}
- return frame1.BasePoint;
+ return frame1.GetBasePoint();
}
private double GetWidthMag()
@@ -286,71 +286,82 @@ namespace _2DGAMELIB
base_ = new Par
{
Tag = Name + "_ベース",
- InitializeOP = new Out[1] { Shas.GetSquare() },
- PositionBase = Position,
- SizeBase = Size,
- SizeXBase = Width,
- SizeYBase = Height,
- Closed = true,
- Pen = null,
- BrushColor = BackColor
};
- base_.BasePointBase = base_.OP.GetCenter();
+
+ base_.SetInitializeOP(new Out[1] { Shas.GetSquare() });
+ base_.SetPositionBase(Position);
+ base_.SetSizeBase(Size);
+ base_.SetSizeXBase(Width);
+ base_.SetSizeYBase(Height);
+ base_.SetClosed(true);
+ base_.SetPen(null);
+ base_.SetBrushColor(BackColor);
+
+
+ base_.SetBasePointBase(base_.GetOP().GetCenter());
pars.Add(base_.Tag, base_);
frame1 = new Par
{
Tag = Name + "_フレーム1",
- InitializeOP = new Out[1] { Shas.GetSquare() },
- PositionBase = Position,
- SizeBase = Size,
- SizeXBase = Width * GetWidthMag(),
- SizeYBase = Height * GetHeightMag(),
- Closed = true,
- Brush = null
};
- frame1.BasePointBase = GetBasePoint1();
+
+ frame1.SetInitializeOP(new Out[1] { Shas.GetSquare() });
+ frame1.SetPositionBase(Position);
+ frame1.SetSizeBase(Size);
+ frame1.SetSizeXBase(Width * GetWidthMag());
+ frame1.SetSizeYBase(Height * GetHeightMag());
+ frame1.SetClosed(true);
+ frame1.SetBrush(null);
+
+
+
+ frame1.SetBasePointBase(GetBasePoint1());
pars.Add(frame1.Tag, frame1);
if (Range == Range.MinusPlus)
{
frame2 = new Par
{
Tag = Name + "_フレーム2",
- InitializeOP = new Out[1] { Shas.GetSquare() },
- PositionBase = Position,
- SizeBase = Size,
- SizeXBase = Width * GetWidthMag(),
- SizeYBase = Height * GetHeightMag(),
- Closed = true,
- Brush = null
};
- frame2.BasePointBase = GetBasePoint2();
+
+ frame2.SetInitializeOP(new Out[1] { Shas.GetSquare() });
+ frame2.SetPositionBase(Position);
+ frame2.SetSizeBase(Size);
+ frame2.SetSizeXBase(Width * GetWidthMag());
+ frame2.SetSizeYBase(Height * GetHeightMag());
+ frame2.SetClosed(true);
+ frame2.SetBrush(null);
+ frame2.SetBasePointBase(GetBasePoint2());
pars.Add(frame2.Tag, frame2);
}
gauge = new Par
{
Tag = Name + "_ゲージ",
- InitializeOP = new Out[1] { Shas.GetSquare() },
- PositionBase = GetGaugePosition(),
- SizeBase = Size,
- SizeXBase = Width * GetWidthMag() * GetGaugeWidthMag(Margin),
- SizeYBase = Height * GetHeightMag() * GetGaugeHeightMag(Margin),
- Closed = true
};
- gauge.BasePointBase = GetBasePoint();
+ gauge.SetInitializeOP(new Out[1] { Shas.GetSquare() });
+ gauge.SetPositionBase(GetGaugePosition());
+ gauge.SetSizeBase(Size);
+ gauge.SetSizeXBase(Width * GetWidthMag() * GetGaugeWidthMag(Margin));
+ gauge.SetSizeYBase(Height * GetHeightMag() * GetGaugeHeightMag(Margin));
+ gauge.SetClosed(true);
+
+
+ gauge.SetBasePointBase(GetBasePoint());
pars.Add(gauge.Tag, gauge);
if (knob)
{
this.knob = new Par
{
Tag = Name + "_ノブ",
- InitializeOP = new Out[1] { Shas.GetSquare() },
- SizeBase = Size,
- SizeXBase = GetKnobWidthMag(Width),
- SizeYBase = GetKnobHeightMag(Height),
- Closed = true,
- BrushColor = Color.FromArgb(128, Color.White)
};
- this.knob.BasePointBase = this.knob.OP.GetCenter();
+
+ this.knob.SetInitializeOP(new Out[1] { Shas.GetSquare() });
+ this.knob.SetSizeBase(Size);
+ this.knob.SetSizeXBase(GetKnobWidthMag(Width));
+ this.knob.SetSizeYBase(GetKnobHeightMag(Height));
+ this.knob.SetClosed(true);
+ this.knob.SetBrushColor(Color.FromArgb(128, Color.White));
+ this.knob.SetBasePointBase(this.knob.GetOP().GetCenter());
pars.Add(this.knob.Tag, this.knob);
}
}
@@ -474,10 +485,10 @@ namespace _2DGAMELIB
{
return Open switch
{
- Open.Top => (0.0 - gauge.SizeY) * gauge.Size,
- Open.Bot => gauge.SizeY * gauge.Size,
- Open.Rig => gauge.SizeX * gauge.Size,
- Open.Lef => (0.0 - gauge.SizeX) * gauge.Size,
+ Open.Top => (0.0 - gauge.GetSizeY()) * gauge.GetSize(),
+ Open.Bot => gauge.GetSizeY() * gauge.GetSize(),
+ Open.Rig => gauge.GetSizeX() * gauge.GetSize(),
+ Open.Lef => (0.0 - gauge.GetSizeX()) * gauge.GetSize(),
_ => 0.0,
};
}
@@ -507,7 +518,7 @@ namespace _2DGAMELIB
public bool Down(ref Color HitColor, ref Vector2D CursorPosition)
{
- if (knob != null && knob.HitColor == HitColor)
+ if (knob != null && knob.GetHitColor() == HitColor)
{
Grip = true;
op = CursorPosition;
diff --git a/2DGAMELIB/_2DGAMELIB/Join.cs b/2DGAMELIB/_2DGAMELIB/Join.cs
index 9bc4d89..f5f6d76 100644
--- a/2DGAMELIB/_2DGAMELIB/Join.cs
+++ b/2DGAMELIB/_2DGAMELIB/Join.cs
@@ -14,7 +14,7 @@ namespace _2DGAMELIB
int num = 0;
List list = new List();
List list2 = EnumPar.ToList();
- foreach (Joi item in JoinRoot.JP)
+ foreach (Joi item in JoinRoot.GetJP())
{
Vector2D v = JoinRoot.ToGlobal(item.Joint);
int num2 = 0;
@@ -23,7 +23,7 @@ namespace _2DGAMELIB
{
if (JoinRoot != item2)
{
- if (v.DistanceSquared(item2.Position) <= IdentityDistance)
+ if (v.DistanceSquared(item2.GetPosition()) <= IdentityDistance)
{
joints.Joins.Add(new Joint(JoinRoot, num, item2));
if (!list.Contains(num2))
@@ -59,7 +59,7 @@ namespace _2DGAMELIB
{
Par par = js.Joins[i].Par1;
int num3 = 0;
- foreach (Joi item in par.JP)
+ foreach (Joi item in par.GetJP())
{
Vector2D v = par.ToGlobal(item.Joint);
int num4 = 0;
@@ -68,7 +68,7 @@ namespace _2DGAMELIB
{
if (par != item2)
{
- if (v.DistanceSquared(item2.Position) <= IdentityDistance)
+ if (v.DistanceSquared(item2.GetPosition()) <= IdentityDistance)
{
js.Joins.Add(new Joint(par, num3, item2));
if (!del.Contains(num4))
@@ -108,12 +108,12 @@ namespace _2DGAMELIB
if (JoinRoot != item2)
{
int num2 = 0;
- foreach (Joi item3 in item.JP)
+ foreach (Joi item3 in item.GetJP())
{
Vector2D v = item.ToGlobal(item3.Joint);
foreach (Par item4 in item2.EnumJoinRoot)
{
- if (v.DistanceSquared(item4.Position) <= IdentityDistance)
+ if (v.DistanceSquared(item4.GetPosition()) <= IdentityDistance)
{
jointsD.Joins.Add(new JointD(JoinRoot, item, num2, item2));
if (!list.Contains(num))
@@ -160,12 +160,12 @@ namespace _2DGAMELIB
if (difs != item2)
{
int num4 = 0;
- foreach (Joi item3 in item.JP)
+ foreach (Joi item3 in item.GetJP())
{
Vector2D v = item.ToGlobal(item3.Joint);
foreach (Par item4 in item2.EnumJoinRoot)
{
- if (v.DistanceSquared(item4.Position) <= IdentityDistance)
+ if (v.DistanceSquared(item4.GetPosition()) <= IdentityDistance)
{
jsd.Joins.Add(new JointD(difs, item, num4, item2));
if (!del.Contains(num3))
diff --git a/2DGAMELIB/_2DGAMELIB/JointD.cs b/2DGAMELIB/_2DGAMELIB/JointD.cs
index 9ba88e5..da43c50 100644
--- a/2DGAMELIB/_2DGAMELIB/JointD.cs
+++ b/2DGAMELIB/_2DGAMELIB/JointD.cs
@@ -29,13 +29,13 @@ namespace _2DGAMELIB
public void JoinP()
{
- Difs0.Current.GetPar(Path0).SetJointP(Index, Difs1.CurJoinRoot);
+ Difs0.GetCurrent().GetPar(Path0).SetJointP(Index, Difs1.GetCurJoinRoot());
Difs1.JoinPA();
}
public void JoinPA()
{
- Difs0.Current.GetPar(Path0).SetJointPA(Index, Difs1.CurJoinRoot);
+ Difs0.GetCurrent().GetPar(Path0).SetJointPA(Index, Difs1.GetCurJoinRoot());
Difs1.JoinPA();
}
diff --git a/2DGAMELIB/_2DGAMELIB/Lab.cs b/2DGAMELIB/_2DGAMELIB/Lab.cs
index 0171961..188af02 100644
--- a/2DGAMELIB/_2DGAMELIB/Lab.cs
+++ b/2DGAMELIB/_2DGAMELIB/Lab.cs
@@ -57,62 +57,61 @@ namespace _2DGAMELIB
parT = new ParT
{
- InitializeOP = array,
- BasePointBase = array[0].ps[0],
- PositionBase = Position,
- SizeBase = Size,
- Closed = true,
-
-
Tag = Name,
- BrushColor = BackColor,
- PenColor = FramColor,
- Font = Font,
- FontSize = TextSize,
- TextColor = TextColor,
Text = "A"
};
+ parT.SetFont(Font);
+ parT.SetFontSize(TextSize);
+ parT.SetTextColor(TextColor);
+ parT.SetInitializeOP(array);
+ parT.SetBasePointBase(array[0].ps[0]);
+ parT.SetPositionBase(Position);
+ parT.SetSizeBase(Size);
+ parT.SetClosed(true);
+ parT.SetBrushColor(BackColor);
+ parT.SetPenColor(FramColor);
+
if (ShadColor != Color.Empty)
{
- parT.ShadBrush = new SolidBrush(ShadColor);
+ parT.SetShadBrush(new SolidBrush(ShadColor));
}
SetRect();
- Min = parT.RectSize.Y;
+ Min = parT.GetRectSize().Y;
SetText(Text);
}
public void SetHitColor(ModeEventDispatcher Med)
{
- if (parT.HitColor != Color.Transparent)
+ if (parT.GetHitColor() != Color.Transparent)
{
- Med.RemUniqueColor(parT.HitColor);
+ Med.RemUniqueColor(parT.GetHitColor());
}
- parT.HitColor = Med.GetUniqueColor();
+ parT.SetHitColor(Med.GetUniqueColor());
}
private void SetRect()
{
if (!string.IsNullOrEmpty(parT.Text))
{
- parT.RectSize = new Vector2D(Width, 10.0);
+ parT.SetRectSize(new Vector2D(Width, 10.0));
Vector2D_2 stringRect = parT.GetStringRect(Are.DisplayUnitScale, Are.DisplayGraphics);
double x = ((stringRect.v2.X > Min) ? stringRect.v2.X : Min) + 0.07;
- parT.RectSize = new Vector2D(x, stringRect.v2.Y);
+ parT.SetRectSize(new Vector2D(x, stringRect.v2.Y));
}
else
{
double x2 = Min + 0.07;
- parT.RectSize = new Vector2D(x2, Min);
+ parT.SetRectSize(new Vector2D(x2, Min));
}
- parT.OP[0].ps[0] = new Vector2D(0.0, 0.0);
- parT.OP[0].ps[1] = new Vector2D(parT.RectSize.X, 0.0);
- parT.OP[0].ps[2] = new Vector2D(parT.RectSize.X, parT.RectSize.Y);
- parT.OP[0].ps[3] = new Vector2D(0.0, parT.RectSize.Y);
+ parT.GetOP()[0].ps[0] = new Vector2D(0.0, 0.0);
+ parT.GetOP()[0].ps[1] = new Vector2D(parT.GetRectSize().X, 0.0);
+ parT.GetOP()[0].ps[2] = new Vector2D(parT.GetRectSize().X, parT.GetRectSize().Y);
+ parT.GetOP()[0].ps[3] = new Vector2D(0.0, parT.GetRectSize().Y);
}
public void Dispose()
diff --git a/2DGAMELIB/_2DGAMELIB/MatrixD.cs b/2DGAMELIB/_2DGAMELIB/MatrixD.cs
index 1805f5b..647b924 100644
--- a/2DGAMELIB/_2DGAMELIB/MatrixD.cs
+++ b/2DGAMELIB/_2DGAMELIB/MatrixD.cs
@@ -57,5 +57,6 @@ namespace _2DGAMELIB
this.M43 = M43;
this.M44 = M44;
}
+
}
}
diff --git a/2DGAMELIB/_2DGAMELIB/ModeEventDispatcher.cs b/2DGAMELIB/_2DGAMELIB/ModeEventDispatcher.cs
index 2f13b24..1239bd6 100644
--- a/2DGAMELIB/_2DGAMELIB/ModeEventDispatcher.cs
+++ b/2DGAMELIB/_2DGAMELIB/ModeEventDispatcher.cs
@@ -370,7 +370,7 @@ namespace _2DGAMELIB
{
foreach (Par p in ps)
{
- p.HitColor = GetUniqueColor();
+ p.SetHitColor(GetUniqueColor());
}
}
@@ -383,7 +383,7 @@ namespace _2DGAMELIB
{
foreach (Par p in ps)
{
- HitColors.Remove(p.HitColor);
+ HitColors.Remove(p.GetHitColor());
}
}
diff --git a/2DGAMELIB/_2DGAMELIB/Obj.cs b/2DGAMELIB/_2DGAMELIB/Obj.cs
index 621e275..e72c632 100644
--- a/2DGAMELIB/_2DGAMELIB/Obj.cs
+++ b/2DGAMELIB/_2DGAMELIB/Obj.cs
@@ -9,8 +9,6 @@ namespace _2DGAMELIB
[Serializable]
public class Obj
{
- public string Tag = "";
-
public OrderedDictionary Difss = new OrderedDictionary();
private Difs r;
@@ -19,8 +17,6 @@ namespace _2DGAMELIB
public IEnumerable Keys => Difss.Keys;
- public IEnumerable Values => Difss.Values;
-
public Difs this[string Name]
{
get
@@ -33,58 +29,13 @@ namespace _2DGAMELIB
}
}
- public Difs this[int Index]
- {
- get
- {
- return Difss[Index];
- }
- set
- {
- Difss[Index] = value;
- }
- }
-
- public double PositionSize
- {
- set
- {
- foreach (Difs value2 in Difss.Values)
- {
- value2.PositionSize = value;
- }
- }
- }
-
- public Vector2D PositionVector
- {
- set
- {
- foreach (Difs value2 in Difss.Values)
- {
- value2.PositionVector = value;
- }
- }
- }
-
public double AngleBase
{
set
{
foreach (Difs value2 in Difss.Values)
{
- value2.AngleBase = value;
- }
- }
- }
-
- public double AngleCont
- {
- set
- {
- foreach (Difs value2 in Difss.Values)
- {
- value2.AngleCont = value;
+ value2.SetAngleBase(value);
}
}
}
@@ -95,84 +46,7 @@ namespace _2DGAMELIB
{
foreach (Difs value2 in Difss.Values)
{
- value2.SizeBase = value;
- }
- }
- }
-
- public double SizeCont
- {
- set
- {
- foreach (Difs value2 in Difss.Values)
- {
- value2.SizeCont = value;
- }
- }
- }
-
- public double SizeXBase
- {
- set
- {
- foreach (Difs value2 in Difss.Values)
- {
- value2.SizeXBase = value;
- }
- }
- }
-
- public double SizeXCont
- {
- set
- {
- foreach (Difs value2 in Difss.Values)
- {
- value2.SizeXCont = value;
- }
- }
- }
-
- public double SizeYBase
- {
- set
- {
- foreach (Difs value2 in Difss.Values)
- {
- value2.SizeYBase = value;
- }
- }
- }
-
- public double SizeYCont
- {
- set
- {
- foreach (Difs value2 in Difss.Values)
- {
- value2.SizeYCont = value;
- }
- }
- }
-
- public bool Dra
- {
- set
- {
- foreach (Difs value2 in Difss.Values)
- {
- value2.Dra = value;
- }
- }
- }
-
- public bool Hit
- {
- set
- {
- foreach (Difs value2 in Difss.Values)
- {
- value2.Hit = value;
+ value2.SetSizeBase(value);
}
}
}
@@ -227,8 +101,8 @@ namespace _2DGAMELIB
{
if (difs.EnumJoinRoot.All(delegate(Par p0)
{
- p = p0.Position;
- return pa.All((Par p1) => p0 == p1 || p1.JP.All((Joi j) => !(p1.ToGlobal(j.Joint).DistanceSquared(p) <= Join.IdentityDistance)));
+ p = p0.GetPosition();
+ return pa.All((Par p1) => p0 == p1 || p1.GetJP().All((Joi j) => !(p1.ToGlobal(j.Joint).DistanceSquared(p) <= Join.IdentityDistance)));
}))
{
return difs;
diff --git a/2DGAMELIB/_2DGAMELIB/Oth.cs b/2DGAMELIB/_2DGAMELIB/Oth.cs
index 107a664..aa9fd8c 100644
--- a/2DGAMELIB/_2DGAMELIB/Oth.cs
+++ b/2DGAMELIB/_2DGAMELIB/Oth.cs
@@ -9,10 +9,6 @@ namespace _2DGAMELIB
{
public static class Oth
{
- private static double s1;
-
- private static double s0;
-
public static Color Reverse(this Color c)
{
return Color.FromArgb(c.A, 255 - c.R, 255 - c.G, 255 - c.B);
@@ -50,7 +46,7 @@ namespace _2DGAMELIB
public static LinearGradientBrush GetLGB(double Unit, Vector2D[] MM, Color Color1, Color Color2)
{
- return new LinearGradientBrush((MM[0] * Unit * s0).ToPointF(), (MM[1] * Unit * s1).ToPointF(), Color1, Color2)
+ return new LinearGradientBrush((MM[0] * Unit * 1.01.Reciprocal()).ToPointF(), (MM[1] * Unit * 1.01).ToPointF(), Color1, Color2)
{
GammaCorrection = true
};
@@ -58,7 +54,7 @@ namespace _2DGAMELIB
public static LinearGradientBrush GetLGB(double Unit, Vector2D[] MM, ref Color Color1, ref Color Color2)
{
- return new LinearGradientBrush((MM[0] * Unit * s0).ToPointF(), (MM[1] * Unit * s1).ToPointF(), Color1, Color2)
+ return new LinearGradientBrush((MM[0] * Unit * 1.01.Reciprocal()).ToPointF(), (MM[1] * Unit * 1.01).ToPointF(), Color1, Color2)
{
GammaCorrection = true
};
@@ -66,7 +62,7 @@ namespace _2DGAMELIB
private static void GetMinMaxX(Par Par, ref double MinX, ref double MaxX)
{
- foreach (Out item in Par.OP)
+ foreach (Out item in Par.GetOP())
{
foreach (Vector2D p in item.ps)
{
@@ -85,7 +81,7 @@ namespace _2DGAMELIB
private static void GetMinMaxY(Par Par, ref double MinY, ref double MaxY)
{
- foreach (Out item in Par.OP)
+ foreach (Out item in Par.GetOP())
{
foreach (Vector2D p in item.ps)
{
@@ -112,7 +108,7 @@ namespace _2DGAMELIB
public static void GetMiX_MaX(this Par Par, out Vector2D[] MM)
{
- Vector2D vector2D = Par.ToGlobal(Par.OP.First().ps.First());
+ Vector2D vector2D = Par.ToGlobal(Par.GetOP().First().ps.First());
MM = new Vector2D[2];
MM[0].X = vector2D.X;
MM[1].X = vector2D.X;
@@ -121,7 +117,7 @@ namespace _2DGAMELIB
public static void GetMaX_MiX(this Par Par, out Vector2D[] MM)
{
- Vector2D vector2D = Par.ToGlobal(Par.OP.First().ps.First());
+ Vector2D vector2D = Par.ToGlobal(Par.GetOP().First().ps.First());
MM = new Vector2D[2];
MM[0].X = vector2D.X;
MM[1].X = vector2D.X;
@@ -130,7 +126,7 @@ namespace _2DGAMELIB
public static void GetMiY_MaY(this Par Par, out Vector2D[] MM)
{
- Vector2D vector2D = Par.ToGlobal(Par.OP.First().ps.First());
+ Vector2D vector2D = Par.ToGlobal(Par.GetOP().First().ps.First());
MM = new Vector2D[2];
MM[0].Y = vector2D.Y;
MM[1].Y = vector2D.Y;
@@ -140,7 +136,7 @@ namespace _2DGAMELIB
public static void GetMiY_MaY(this Par[] Pars, out Vector2D[] MM)
{
Par par = Pars.First();
- Vector2D vector2D = par.ToGlobal(par.OP.First().ps.First());
+ Vector2D vector2D = par.ToGlobal(par.GetOP().First().ps.First());
MM = new Vector2D[2];
MM[0].Y = vector2D.Y;
MM[1].Y = vector2D.Y;
@@ -149,7 +145,7 @@ namespace _2DGAMELIB
public static void GetMaY_MiY(this Par Par, out Vector2D[] MM)
{
- Vector2D vector2D = Par.ToGlobal(Par.OP.First().ps.First());
+ Vector2D vector2D = Par.ToGlobal(Par.GetOP().First().ps.First());
MM = new Vector2D[2];
MM[0].Y = vector2D.Y;
MM[1].Y = vector2D.Y;
@@ -186,7 +182,7 @@ namespace _2DGAMELIB
public static Encoding GetEncoding(this byte[] Bytes)
{
- byte[] array = null;
+ byte[] array;
if (Bytes.Length > 4000)
{
array = new byte[4000];
@@ -339,8 +335,6 @@ namespace _2DGAMELIB
static Oth()
{
- s1 = 1.01;
- s0 = s1.Reciprocal();
}
public static void SaveExMod(this T Obj, string Path)
diff --git a/2DGAMELIB/_2DGAMELIB/Par.cs b/2DGAMELIB/_2DGAMELIB/Par.cs
index b4b7739..1f6393e 100644
--- a/2DGAMELIB/_2DGAMELIB/Par.cs
+++ b/2DGAMELIB/_2DGAMELIB/Par.cs
@@ -5,6 +5,7 @@ using System.Drawing;
using System.Drawing.Drawing2D;
using System.Linq;
using System.Diagnostics;
+using System.Numerics;
namespace _2DGAMELIB
{
@@ -12,19 +13,6 @@ namespace _2DGAMELIB
[Serializable]
public class Par
{
- //FOR TESTS
- public static long TCalc;
- public static long TCalcH;
- public static long TFill;
- public static long TOutline;
- public static long THitFill;
-
- public static int NCalc;
- public static int NCalcH;
- public static int NFill;
- public static int NOutline;
- public static int NHitFill;
-
private Pars parent;
public string Tag = "";
@@ -35,19 +23,12 @@ namespace _2DGAMELIB
protected Vector2D basePointBase = Dat.Vec2DZero;
- //cont short for contract?
protected Vector2D basePointCont = Dat.Vec2DZero;
protected Vector2D positionBase = Dat.Vec2DZero;
- protected Vector2D positionContO = Dat.Vec2DZero;
-
protected Vector2D positionCont = Dat.Vec2DZero;
- protected double positionSize = 1.0;
-
- protected Vector2D positionVector = Dat.Vec2DZero;
-
protected double anglePare;
protected double angleBase;
@@ -66,487 +47,294 @@ namespace _2DGAMELIB
protected double ySizeCont = 1.0;
- public bool Dra = true;
-
- private bool closed;
-
- [NonSerialized, JsonIgnore]
- protected Pen pen = new Pen(Color.Black, 1f);
+ protected double positionSize = 1.0;
protected double penWidth;
- private bool EditP = true;
+
+ [NonSerialized, JsonIgnore]
+ protected Pen pen = new Pen(Color.Black, 1f);
[NonSerialized, JsonIgnore]
protected Brush brush = new SolidBrush(Color.LightGray);
- public bool Hit = true;
-
[NonSerialized, JsonIgnore]
protected SolidBrush HitBrush = new SolidBrush(Color.Transparent);
- private double us;
-
- private double usx;
-
- private double usy;
-
- private Vector2D bp;
-
- private Vector2D mv;
-
- private double angle;
-
- private double M11;
-
- private double M12;
-
-
[NonSerialized, JsonIgnore]
private GraphicsPath Path = new GraphicsPath();
[NonSerialized, JsonIgnore]
private GraphicsPath OutlinePath = new GraphicsPath();
- private Vector2D p;
-
- private Vector2D v;
-
- private PointF[] points;
-
- protected bool Edit = true;
-
- protected bool EditS = true;
-
- protected bool EditPS = true;
-
- private double ush;
-
- private double usxh;
-
- private double usyh;
-
- private Vector2D bph;
-
- private Vector2D mvh;
-
- private double ah;
-
- private double M11h;
-
- private double M12h;
-
[NonSerialized, JsonIgnore]
private GraphicsPath gph = new GraphicsPath();
- private Vector2D ph;
- private Vector2D vh;
+ public bool Dra = true;
+ public bool Hit = true;
+ private bool closed;
- private PointF[] psh;
+ public Pars GetParent()
+ {
+ return parent;
+ }
- private bool EditH = true;
+ public List GetOP()
+ {
+ return op;
+ }
- public Pars Parent => parent;
+ public void SetInitializeOP(IEnumerable value)
+ {
+ op.Clear();
+ op.AddRange(value);
+ }
- public List OP
- {
- get
- {
- Edit = true;
- EditH = true;
- return op;
- }
- set
- {
- op = value;
- Edit = true;
- EditH = true;
- }
- }
+ public List GetJP()
+ {
+ return jp;
+ }
- public IEnumerable InitializeOP
- {
- set
- {
- op.Clear();
- op.AddRange(value);
- Edit = true;
- EditH = true;
- }
- }
+ public Vector2D GetBasePointBase()
+ {
+ return basePointBase;
+ }
- public List JP
- {
- get
- {
- return jp;
- }
- set
- {
- jp = value;
- }
- }
+ public void SetBasePointBase(Vector2D value)
+ {
+ basePointBase = value;
+ }
- public IEnumerable InitializeJP
- {
- set
- {
- jp.Clear();
- jp.AddRange(value);
- }
- }
+ public Vector2D GetBasePointCont()
+ {
+ return basePointCont;
+ }
- public Vector2D BasePointBase
- {
- get
- {
- return basePointBase;
- }
- set
- {
- basePointBase = value;
- Edit = true;
- EditH = true;
- }
- }
+ public void SetBasePointCont(Vector2D value)
+ {
+ basePointCont = value;
+ }
- public Vector2D BasePointCont
- {
- get
- {
- return basePointCont;
- }
- set
- {
- basePointCont = value;
- Edit = true;
- EditH = true;
- }
- }
+ public Vector2D GetBasePoint()
+ {
+ return basePointBase + basePointCont;
+ }
- public Vector2D BasePoint => basePointBase + basePointCont;
+ public Vector2D GetPositionBase()
+ {
+ return positionBase;
+ }
- public Vector2D PositionBase
- {
- get
- {
- return positionBase;
- }
- set
- {
- positionBase = value;
- Edit = true;
- EditH = true;
- }
- }
+ public void SetPositionBase(Vector2D value)
+ {
+ positionBase = value;
+ }
- public Vector2D PositionCont
- {
- get
- {
- return positionContO;
- }
- set
- {
- positionContO = value;
- Edit = true;
- EditH = true;
- }
- }
+ public Vector2D GetPositionCont()
+ {
+ return positionCont;
+ }
- public Vector2D Position
- {
- get
- {
- double d = System.Math.PI * AngleParent / 180.0;
- double num = System.Math.Cos(d);
- double num2 = System.Math.Sin(d);
- positionCont.X = positionContO.X * num + positionContO.Y * (0.0 - num2);
- positionCont.Y = positionContO.X * num2 + positionContO.Y * num;
- return (positionBase + positionCont) * positionSize + positionVector;
- }
- }
+ public void SetPositionCont(Vector2D value)
+ {
+ positionCont = value;
+ }
- public Vector2D Position_nc
- {
- get
- {
- double d = System.Math.PI * AngleParent / 180.0;
- System.Math.Cos(d);
- System.Math.Sin(d);
- return positionBase * positionSize + positionVector;
- }
- }
+ public Vector2D GetPosition()
+ {
+ double d = System.Math.PI * anglePare / 180.0;
+ double num = System.Math.Cos(d);
+ double num2 = System.Math.Sin(d);
+ Vector2D positionCont;
+ positionCont.X = this.positionCont.X * num - this.positionCont.Y * num2;
+ positionCont.Y = this.positionCont.X * num2 + this.positionCont.Y * num;
+ return (positionBase + positionCont) * positionSize;
+ }
- public double PositionSize
- {
- get
- {
- return positionSize;
- }
- set
- {
- positionSize = value;
- Edit = true;
- EditH = true;
- EditPS = true;
- }
- }
+ public void SetAngleParent(double value)
+ {
+ anglePare = value;
+ }
- public Vector2D PositionVector
- {
- get
- {
- return positionVector;
- }
- set
- {
- positionVector = value;
- Edit = true;
- EditH = true;
- }
- }
+ public double GetAngleBase()
+ {
+ return angleBase;
+ }
- public double AngleParent
- {
- get
- {
- return anglePare;
- }
- set
- {
- anglePare = value;
- Edit = true;
- EditH = true;
- }
- }
+ public void SetAngleBase(double value)
+ {
+ angleBase = value;
+ }
- public double AngleBase
- {
- get
- {
- return angleBase;
- }
- set
- {
- angleBase = value;
- Edit = true;
- EditH = true;
- }
- }
+ public double GetAngleCont()
+ {
+ return angleCont;
+ }
- public double AngleCont
- {
- get
- {
- return angleCont;
- }
- set
- {
- angleCont = value;
- Edit = true;
- EditH = true;
- }
- }
+ public void SetAngleCont(double value)
+ {
+ angleCont = value;
+ }
- public double Angle => anglePare + angleBase + angleCont;
+ public double GetAngle()
+ {
+ return anglePare + angleBase + angleCont;
+ }
- public double SizeBase
- {
- get
- {
- return sizeBase;
- }
- set
- {
- sizeBase = value;
- Edit = true;
- EditH = true;
- EditS = true;
- }
- }
+ public double GetSizeBase()
+ {
+ return sizeBase;
+ }
- public double SizeCont
- {
- get
- {
- return sizeCont;
- }
- set
- {
- sizeCont = value;
- Edit = true;
- EditH = true;
- EditS = true;
- }
- }
+ public void SetSizeBase(double value)
+ {
+ sizeBase = value;
+ }
- public double Size => sizeBase * sizeCont * positionSize;
+ public double GetSizeCont()
+ {
+ return sizeCont;
+ }
- public double SizeXBase
- {
- get
- {
- return xSizeBase;
- }
- set
- {
- xSizeBase = value;
- Edit = true;
- EditH = true;
- }
- }
+ public void SetSizeCont(double value)
+ {
+ sizeCont = value;
+ }
- public double SizeXCont
- {
- get
- {
- return xSizeCont;
- }
- set
- {
- xSizeCont = value;
- Edit = true;
- EditH = true;
- }
- }
+ public double GetSize()
+ {
+ return sizeBase * sizeCont * positionSize;
+ }
- public double SizeX => xSizeBase * xSizeCont;
+ public double GetSizeXBase()
+ {
+ return xSizeBase;
+ }
- public double SizeYBase
- {
- get
- {
- return ySizeBase;
- }
- set
- {
- ySizeBase = value;
- Edit = true;
- EditH = true;
- }
- }
+ public void SetSizeXBase(double value)
+ {
+ xSizeBase = value;
+ }
- public double SizeYCont
- {
- get
- {
- return ySizeCont;
- }
- set
- {
- ySizeCont = value;
- Edit = true;
- EditH = true;
- }
- }
+ public double GetSizeXCont()
+ {
+ return xSizeCont;
+ }
- public double SizeY => ySizeBase * ySizeCont;
+ public void SetSizeXCont(double value)
+ {
+ xSizeCont = value;
+ }
- public bool Closed
- {
- get
- {
- return closed;
- }
- set
- {
- closed = value;
- Edit = true;
- EditH = true;
- }
- }
+ public double GetSizeX()
+ {
+ return xSizeBase * xSizeCont;
+ }
- [JsonIgnore]
- public Pen Pen
- {
- get
- {
- return pen;
- }
- set
- {
- if (pen != value && pen != null)
- {
- pen.Dispose();
- }
- pen = value;
- if (pen != null)
- {
- pen.StartCap = LineCap.Round;
- pen.EndCap = LineCap.Round;
- }
- EditP = true;
- }
- }
+ public double GetSizeYBase()
+ {
+ return ySizeBase;
+ }
- public double PenWidth
- {
- get
- {
- return penWidth;
- }
- set
- {
- penWidth = value;
- EditP = true;
- }
- }
+ public void SetSizeYBase(double value)
+ {
+ ySizeBase = value;
+ }
- public Color PenColor
- {
- get
- {
- return pen.Color;
- }
- set
- {
- pen.Color = value;
- }
- }
+ public double GetSizeYCont()
+ {
+ return ySizeCont;
+ }
- [JsonIgnore]
- public Brush Brush
- {
- get
- {
- return brush;
- }
- set
- {
- if (brush != value && brush != null)
- {
- brush.Dispose();
- }
- brush = value;
- }
- }
+ public void SetSizeYCont(double value)
+ {
+ ySizeCont = value;
+ }
- public Color BrushColor
- {
- get
- {
- return ((SolidBrush)brush).Color;
- }
- set
- {
- ((SolidBrush)brush).Color = value;
- }
- }
+ public double GetSizeY()
+ {
+ return ySizeBase * ySizeCont;
+ }
- public Color HitColor
- {
- get
- {
- return HitBrush.Color;
- }
- set
- {
- HitBrush.Color = value;
- }
- }
- public void SetParent(Pars Parent)
+ public void SetClosed(bool value)
+ {
+ closed = value;
+ }
+
+ public Pen GetPen()
+ {
+ return pen;
+ }
+
+ public void SetPen(Pen value)
+ {
+ if (pen != value && pen != null)
+ {
+ pen.Dispose();
+ }
+ pen = value;
+ if (pen != null)
+ {
+ pen.StartCap = LineCap.Round;
+ pen.EndCap = LineCap.Round;
+ }
+ }
+
+ public double GetPenWidth()
+ {
+ return penWidth;
+ }
+
+ public void SetPenWidth(double value)
+ {
+ penWidth = value;
+ }
+
+ public Color GetPenColor()
+ {
+ return pen.Color;
+ }
+
+ public void SetPenColor(Color value)
+ {
+ pen.Color = value;
+ }
+
+ public Brush GetBrush1()
+ {
+ return brush;
+ }
+
+ public void SetBrush1(Brush value)
+ {
+ if (brush != value && brush != null)
+ {
+ brush.Dispose();
+ }
+ brush = value;
+ }
+
+ public Color GetBrushColor()
+ {
+ return ((SolidBrush)brush).Color;
+ }
+
+ public void SetBrushColor(Color value)
+ {
+ ((SolidBrush)brush).Color = value;
+ }
+
+ public Color GetHitColor()
+ {
+ return HitBrush.Color;
+ }
+
+ public void SetHitColor(Color value)
+ {
+ HitBrush.Color = value;
+ }
+ public void SetParent(Pars Parent)
{
parent = Parent;
}
@@ -596,10 +384,8 @@ namespace _2DGAMELIB
basePointBase = Par.basePointBase;
basePointCont = Par.basePointCont;
positionBase = Par.positionBase;
- positionContO = Par.positionContO;
positionCont = Par.positionCont;
positionSize = Par.positionSize;
- positionVector = Par.positionVector;
anglePare = Par.anglePare;
angleBase = Par.angleBase;
angleCont = Par.angleCont;
@@ -614,11 +400,11 @@ namespace _2DGAMELIB
closed = Par.closed;
if (Par.pen != null)
{
- Pen = Par.pen.Copy();
+ SetPen(Par.pen.Copy());
}
if (Par.brush != null)
{
- Brush = Par.brush.Copy();
+ SetBrush1(Par.brush.Copy());
}
Hit = Par.Hit;
if (Par.HitBrush != null)
@@ -629,56 +415,35 @@ namespace _2DGAMELIB
private void Calculation(double Unit)
{
+ double us = Unit * (sizeBase * sizeCont * positionSize);
+ double usx = us * (xSizeBase * xSizeCont);
+ double usy = us * (ySizeBase * ySizeCont);
- /*
- things that affect where this part is drawn
-
- Size, SizeX, SizeY, BasePoint, Position, Angle, Unit
-
- Size = sizeBase * sizeCont * positionSize
- SizeX = xSizeBase * xSizeCont
- SizeY = ySizeBase * ySizeCont
- BasePoint = basePointBase + basePointCont
- Position (AnglePare, positionContO, positionBase, positionCont, positionSize, positionVector)
- Angle = anglePare + angleBase + angleCont
- AnglePare = anglePare
-
- sizeBase, sizeCont, positionSize, xSizeBase, xSizeCont, ySizeBase, ySizeCont,
- basePointBase, basePointCont, positionContO, positionBase, positionCont,
- positionVector, anglePare, angleBase, angleCont
-
- */
-
- us = Unit * Size;
- usx = us * SizeX;
- usy = us * SizeY;
-
- bp = BasePoint;
+ Vector2D bp = basePointBase + basePointCont;
bp.X *= usx;
bp.Y *= usy;
- mv = Position * Unit - bp;
+ Vector2D mv = GetPosition() * Unit - bp;
- double a = System.Math.PI * Angle / 180.0;
- M11 = System.Math.Cos(a);
- M12 = System.Math.Sin(a);
+ double a = System.Math.PI * (anglePare + angleBase + angleCont) / 180.0;
Path.Reset();
OutlinePath.Reset();
foreach (Out item in op)
{
- points = new PointF[item.ps.Count];
+ PointF[] points = new PointF[item.ps.Count];
for (int i = 0; i < item.ps.Count; i++)
{
+ Vector2D p;
p.X = item.ps[i].X * usx;
p.Y = item.ps[i].Y * usy;
- p = Rotate(ref p) + mv;
+ p = Rotate(ref p, bp, a) + mv;
points[i].X = (float)p.X;
points[i].Y = (float)p.Y;
}
- if (Closed)
+ if (closed)
Path.AddClosedCurve(points, item.Tension);
else
Path.AddCurve(points, item.Tension);
@@ -687,7 +452,7 @@ namespace _2DGAMELIB
{
OutlinePath.StartFigure();
- if (Closed)
+ if (closed)
OutlinePath.AddClosedCurve(points, item.Tension);
else
OutlinePath.AddCurve(points, item.Tension);
@@ -695,11 +460,15 @@ namespace _2DGAMELIB
}
}
- private Vector2D Rotate(ref Vector2D p)
+ private Vector2D Rotate(ref Vector2D p, Vector2D bp, double a)
{
+ double M11 = System.Math.Cos(a);
+ double M12 = System.Math.Sin(a);
+
p.X -= bp.X;
p.Y -= bp.Y;
+ Vector2D v;
v.X = p.X * M11 + p.Y * (0.0 - M12);
v.Y = p.X * M12 + p.Y * M11;
@@ -713,67 +482,46 @@ namespace _2DGAMELIB
{
if (Dra)
{
- if (Edit)
- {
- long t0 = Stopwatch.GetTimestamp();
- Calculation(Unit);
- TCalc += Stopwatch.GetTimestamp() - t0;
- NCalc++;
- Edit = false;
- }
-
- if (pen != null && (EditP || EditPS))
- {
- pen.Width = (float)(Unit * penWidth * positionSize);
- EditP = false;
- EditPS = false;
- }
-
+ Calculation(Unit);
if (brush != null)
{
- long t0 = Stopwatch.GetTimestamp();
Graphics.FillPath(brush, Path);
- TFill += Stopwatch.GetTimestamp() - t0;
- NFill++;
}
if (pen != null)
{
- long t0 = Stopwatch.GetTimestamp();
+ pen.Width = (float)(Unit * penWidth * positionSize);
Graphics.DrawPath(pen, OutlinePath);
- TOutline += Stopwatch.GetTimestamp() - t0;
- NOutline++;
}
}
}
private void CalculationH(double Unit)
{
- ush = Unit * Size;
- usxh = ush * SizeX;
- usyh = ush * SizeY;
+ double ush = Unit * (sizeBase * sizeCont * positionSize);
+ double usxh = ush * (xSizeBase * xSizeCont);
+ double usyh = ush * (ySizeBase * ySizeCont);
- bph = BasePoint;
+ Vector2D bph = basePointBase + basePointCont;
bph.X *= usxh;
bph.Y *= usyh;
- mvh = Position;
+ Vector2D mvh = GetPosition();
mvh.X = mvh.X * Unit - bph.X;
mvh.Y = mvh.Y * Unit - bph.Y;
- ah = System.Math.PI * Angle / 180.0;
- M11h = System.Math.Cos(ah);
- M12h = System.Math.Sin(ah);
+ double ah = System.Math.PI * GetAngle() / 180.0;
gph.Reset();
- if (Closed)
+ if (closed)
{
foreach (Out item in op)
{
- psh = new PointF[item.ps.Count];
+ PointF[] psh = new PointF[item.ps.Count];
for (int i = 0; i < item.ps.Count; i++)
{
- ph.X = item.ps[i].X * usxh;
+ Vector2D ph;
+ ph.X = item.ps[i].X * usxh;
ph.Y = item.ps[i].Y * usyh;
- RotateH(ref ph);
+ RotateH(ref ph, bph, ah);
ph.X += mvh.X;
ph.Y += mvh.Y;
psh[i].X = (float)ph.X;
@@ -786,12 +534,13 @@ namespace _2DGAMELIB
foreach (Out item2 in op)
{
- psh = new PointF[item2.ps.Count];
+ PointF[] psh = new PointF[item2.ps.Count];
for (int j = 0; j < item2.ps.Count; j++)
{
- ph.X = item2.ps[j].X * usxh;
+ Vector2D ph;
+ ph.X = item2.ps[j].X * usxh;
ph.Y = item2.ps[j].Y * usyh;
- RotateH(ref ph);
+ RotateH(ref ph, bph, ah);
ph.X += mvh.X;
ph.Y += mvh.Y;
psh[j].X = (float)ph.X;
@@ -801,11 +550,15 @@ namespace _2DGAMELIB
}
}
- private void RotateH(ref Vector2D ph)
+ private void RotateH(ref Vector2D ph, Vector2D bph, double ah)
{
+ double M11h = System.Math.Cos(ah);
+ double M12h = System.Math.Sin(ah);
+
ph.X -= bph.X;
ph.Y -= bph.Y;
+ Vector2D vh;
vh.X = ph.X * M11h + ph.Y * (0.0 - M12h);
vh.Y = ph.X * M12h + ph.Y * M11h;
@@ -817,19 +570,8 @@ namespace _2DGAMELIB
{
if (Hit)
{
- if (EditH)
- {
- long t0 = Stopwatch.GetTimestamp();
- CalculationH(Unit);
- TCalcH += Stopwatch.GetTimestamp() - t0;
- NCalcH++;
- EditH = false;
- }
-
- long t1 = Stopwatch.GetTimestamp();
+ CalculationH(Unit);
Graphics.FillPath(HitBrush, gph);
- THitFill += Stopwatch.GetTimestamp() - t1;
- NHitFill++;
}
}
@@ -837,35 +579,31 @@ namespace _2DGAMELIB
{
if (Index < jp.Count)
{
- Par.PositionBase = ToGlobal(jp[Index].Joint);
+ Par.SetPositionBase(ToGlobal(jp[Index].Joint));
}
- Par.Edit = true;
- Par.EditH = true;
}
public void SetJointPA(int Index, Par Par)
{
if (Index < jp.Count)
{
- Par.PositionBase = ToGlobal(jp[Index].Joint);
+ Par.SetPositionBase(ToGlobal(jp[Index].Joint));
}
- Par.AngleParent = Angle;
- Par.Edit = true;
- Par.EditH = true;
+ Par.SetAngleParent(anglePare + angleBase + angleCont);
}
public Vector2D ToGlobal(Vector2D Local)
{
- double size = Size;
- double xsz = size * SizeX;
- double ysz = size * SizeY;
- Vector2D basePoint = BasePoint;
+ double size = sizeBase * sizeCont * positionSize;
+ double xsz = size * (xSizeBase * xSizeCont);
+ double ysz = size * (ySizeBase * ySizeCont);
+ Vector2D basePoint = basePointBase + basePointCont;
basePoint.X *= xsz;
basePoint.Y *= ysz;
- Vector2D position = Position;
+ Vector2D position = GetPosition();
position.X -= basePoint.X;
position.Y -= basePoint.Y;
- double d = System.Math.PI * Angle / 180.0;
+ double d = System.Math.PI * GetAngle() / 180.0;
double num3 = System.Math.Cos(d);
double num4 = System.Math.Sin(d);
double num5 = 0.0 - num4;
@@ -888,16 +626,16 @@ namespace _2DGAMELIB
public Vector2D ToGlobal_nc(Vector2D Local)
{
- double size = Size;
- double num = size * SizeX;
- double num2 = size * SizeY;
- Vector2D basePoint = BasePoint;
+ double size = sizeBase * sizeCont * positionSize;
+ double num = size * (xSizeBase * xSizeCont);
+ double num2 = size * (ySizeBase * ySizeCont);
+ Vector2D basePoint = basePointBase + basePointCont;
basePoint.X *= num;
basePoint.Y *= num2;
- Vector2D position_nc = Position_nc;
+ Vector2D position_nc = positionBase * positionSize;
position_nc.X -= basePoint.X;
position_nc.Y -= basePoint.Y;
- double d = System.Math.PI * Angle / 180.0;
+ double d = System.Math.PI * (anglePare + angleBase + angleCont) / 180.0;
double num3 = System.Math.Cos(d);
double num4 = System.Math.Sin(d);
double num5 = 0.0 - num4;
@@ -920,18 +658,18 @@ namespace _2DGAMELIB
public Vector2D ToLocal(Vector2D Global)
{
- double size = Size;
- double num = size * SizeX;
- double num2 = size * SizeY;
- Vector2D basePoint = BasePoint;
+ double size = sizeBase * sizeCont * positionSize;
+ double num = size * (xSizeBase * xSizeCont);
+ double num2 = size * (ySizeBase * ySizeCont);
+ Vector2D basePoint = basePointBase + basePointCont;
basePoint.X *= num;
basePoint.Y *= num2;
- Vector2D position = Position;
+ Vector2D position = GetPosition();
position.X = basePoint.X - position.X;
position.Y = basePoint.Y - position.Y;
num = num.Reciprocal();
num2 = num2.Reciprocal();
- double d = System.Math.PI * (0.0 - Angle) / 180.0;
+ double d = System.Math.PI * (0.0 - (anglePare + angleBase + angleCont)) / 180.0;
double num3 = System.Math.Cos(d);
double num4 = System.Math.Sin(d);
double num5 = 0.0 - num4;
@@ -1011,42 +749,6 @@ namespace _2DGAMELIB
return System.Math.Abs(num * 0.5);
}
- public void ScalingXY(double Scale)
- {
- op.ScalingXY(ref basePointBase, Scale);
- jp.ScalingXY(ref basePointBase, Scale);
- }
-
- public void ScalingX(double Scale)
- {
- op.ScalingX(ref basePointBase, Scale);
- jp.ScalingX(ref basePointBase, Scale);
- }
-
- public void ScalingY(double Scale)
- {
- op.ScalingY(ref basePointBase, Scale);
- jp.ScalingY(ref basePointBase, Scale);
- }
-
- public void ExpansionXY(double Rate)
- {
- op.ExpansionXY(ref basePointBase, Rate);
- jp.ExpansionXY(ref basePointBase, Rate);
- }
-
- public void ExpansionX(double Rate)
- {
- op.ExpansionX(ref basePointBase, Rate);
- jp.ExpansionX(ref basePointBase, Rate);
- }
-
- public void ExpansionY(double Rate)
- {
- op.ExpansionY(ref basePointBase, Rate);
- jp.ExpansionY(ref basePointBase, Rate);
- }
-
public void Dispose()
{
if (pen != null)
diff --git a/2DGAMELIB/_2DGAMELIB/ParT.cs b/2DGAMELIB/_2DGAMELIB/ParT.cs
index e3e4464..a9fc221 100644
--- a/2DGAMELIB/_2DGAMELIB/ParT.cs
+++ b/2DGAMELIB/_2DGAMELIB/ParT.cs
@@ -9,19 +9,15 @@ namespace _2DGAMELIB
[Serializable]
public class ParT : Par
{
- [NonSerialized, JsonIgnore]
- private Font font = new Font("", 1f);
private double fontSize = 1.0;
- private bool EditF = true;
+ [NonSerialized, JsonIgnore]
+ private Font font = new Font("", 1f);
[NonSerialized, JsonIgnore]
private Brush brusht = new SolidBrush(Color.Black);
- //unused
- private const double Shift = 1.0;
-
[NonSerialized, JsonIgnore]
private Brush brushs;
@@ -32,127 +28,89 @@ namespace _2DGAMELIB
private Vector2D rectSize = Dat.Vec2DOne;
+
public string Text = "";
- private RectangleF rect;
- private double us;
-
- private double usx;
-
- private double usy;
private Vector2D bp;
- private Vector2D p;
- private Vector2D v;
-
- private double a0;
-
- private double a1;
-
- private double M11;
-
- private double M12;
-
- private float af;
-
- private float xf;
-
- private float yf;
-
- private bool EditT = true;
private bool EditTS = true;
+ private bool EditF = true;
- private CharacterRange[] crr = new CharacterRange[1];
- public Font Font
- {
- get { return font; }
- set
- {
- if (font != value && font != null)
- {
- font.Dispose();
- }
- font = value;
- EditF = true;
- }
- }
- public double FontSize
- {
- get { return fontSize; }
- set
- {
- fontSize = value;
- EditF = true;
- }
- }
+ public void SetFont(Font value)
+ {
+ if (font != value && font != null)
+ {
+ font.Dispose();
+ }
+ font = value;
+ EditF = true;
+ }
- public Brush TextBrush
- {
- get { return brusht; }
- set
- {
- if (brusht != value && brusht != null)
- {
- brusht.Dispose();
- }
- brusht = value;
- }
- }
+ public double GetFontSize()
+ { return fontSize; }
- public Color TextColor
- {
- get { return ((SolidBrush)brusht).Color; }
- set { ((SolidBrush)brusht).Color = value; }
- }
+ public void SetFontSize(double value)
+ {
+ fontSize = value;
+ EditF = true;
+ }
- public Brush ShadBrush
- {
- get { return brushs; }
- set
- {
- if (brushs != value && brushs != null)
- brushs.Dispose();
+ public void SetTextBrush(Brush value)
+ {
+ if (brusht != value && brusht != null)
+ {
+ brusht.Dispose();
+ }
+ brusht = value;
+ }
- brushs = value;
- }
- }
+ public Color GetTextColor()
+ { return ((SolidBrush)brusht).Color; }
- public Color ShadColor
- {
- get { return ((SolidBrush)brushs).Color; }
- set { ((SolidBrush)brushs).Color = value; }
- }
+ public void SetTextColor(Color value)
+ { ((SolidBrush)brusht).Color = value; }
- public StringFormat StringFormat
- {
- get { return stringformat; }
- set
- {
- if (stringformat != value && stringformat != null)
- {
- stringformat.Dispose();
- }
- stringformat = value;
- }
- }
+ public void SetShadBrush(Brush value)
+ {
+ if (brushs != value && brushs != null)
+ brushs.Dispose();
- public Vector2D RectSize
- {
- get { return rectSize; }
- set
- {
- rectSize = value;
- EditT = true;
- }
- }
+ brushs = value;
+ }
- public new void SetDefault()
+ public Color GetShadColor()
+ { return ((SolidBrush)brushs).Color; }
+
+ public void SetShadColor(Color value)
+ { ((SolidBrush)brushs).Color = value; }
+
+ public StringFormat GetStringFormat()
+ { return stringformat; }
+
+ public void SetStringFormat(StringFormat value)
+ {
+ if (stringformat != value && stringformat != null)
+ {
+ stringformat.Dispose();
+ }
+ stringformat = value;
+ }
+
+ public Vector2D GetRectSize()
+ { return rectSize; }
+
+ public void SetRectSize(Vector2D value)
+ {
+ rectSize = value;
+ }
+
+ public new void SetDefault()
{
base.SetDefault();
@@ -174,7 +132,6 @@ namespace _2DGAMELIB
stringformat = new StringFormat();
EditF = true;
- EditT = true;
EditTS = true;
}
@@ -194,16 +151,16 @@ namespace _2DGAMELIB
fontSize = ParT.fontSize;
if (ParT.font != null)
- Font = ParT.font.Copy();
+ SetFont(ParT.font.Copy());
if (ParT.brusht != null)
- TextBrush = ParT.brusht.Copy();
+ SetTextBrush(ParT.brusht.Copy());
if (ParT.brushs != null)
- ShadBrush = ParT.brushs.Copy();
+ SetShadBrush(ParT.brushs.Copy());
if (ParT.stringformat != null)
- StringFormat = ParT.stringformat.Copy();
+ SetStringFormat(ParT.stringformat.Copy());
positionT = ParT.positionT;
rectSize = ParT.rectSize;
@@ -212,11 +169,14 @@ namespace _2DGAMELIB
public new void Draw(double Unit, Graphics Graphics)
{
- if (Edit)
- EditT = true;
+ Calculation(Unit);
- if (EditS || EditPS)
- EditTS = true;
+ if (EditF || EditTS)
+ {
+ RebuildFont((float)(Unit * base.GetSize() * fontSize));
+ EditF = false;
+ EditTS = false;
+ }
base.Draw(Unit, Graphics);
DrawString(Unit, Graphics);
@@ -224,30 +184,25 @@ namespace _2DGAMELIB
private void Calculation(double Unit)
{
- us = Unit * base.Size;
- usx = us * base.SizeX;
- usy = us * base.SizeY;
+ double us = Unit * base.GetSize();
+ double usx = us * base.GetSizeX();
+ double usy = us * base.GetSizeY();
- bp = base.BasePoint;
+ bp = base.GetBasePoint();
bp.X *= usx;
bp.Y *= usy;
- a0 = base.Angle;
- a1 = System.Math.PI * a0 / 180.0;
- M11 = System.Math.Cos(a1);
- M12 = System.Math.Sin(a1);
+ double a1 = System.Math.PI * base.GetAngle() / 180.0;
+ double M11 = System.Math.Cos(a1);
+ double M12 = System.Math.Sin(a1);
+ Vector2D v;
v.X = bp.X * M11 + bp.Y * (0.0 - M12);
v.Y = bp.X * M12 + bp.Y * M11;
- p = base.Position;
+ Vector2D p = base.GetPosition();
bp.X = p.X * Unit - v.X;
bp.Y = p.Y * Unit - v.Y;
-
- rect.X = (float)(positionT.X * us);
- rect.Y = (float)(positionT.Y * us);
- rect.Width = (float)(rectSize.X * us);
- rect.Height = (float)(rectSize.Y * us);
}
private void RebuildFont(double scaledSize)
@@ -273,60 +228,47 @@ namespace _2DGAMELIB
private void DrawString(double Unit, Graphics Graphics)
{
- if (EditT)
- {
- Calculation(Unit);
- EditT = false;
- }
-
- if (EditF || EditTS)
- {
- RebuildFont((float)(us * fontSize));
- EditF = false;
- EditTS = false;
- }
-
- af = (float)a0;
- xf = (float)base.SizeX;
- yf = (float)base.SizeY;
-
+ RectangleF rect = default(RectangleF);
+ rect.X = (float)(positionT.X * Unit * base.GetSize());
+ rect.Y = (float)(positionT.Y * Unit * base.GetSize());
+ rect.Width = (float)(rectSize.X * Unit * base.GetSize());
+ rect.Height = (float)(rectSize.Y * Unit * base.GetSize());
if (brushs != null)
{
GraphicsState state = Graphics.Save();
-
- Graphics.TranslateTransform((float)(bp.X + Shift), (float)(bp.Y + Shift));
- Graphics.RotateTransform(af);
- Graphics.ScaleTransform(xf, yf);
+ Graphics.TranslateTransform((float)(bp.X + 1.0), (float)(bp.Y + 1.0));
+ Graphics.RotateTransform((float)base.GetAngle());
+ Graphics.ScaleTransform((float)base.GetSizeX(), (float)base.GetSizeY());
Graphics.DrawString(Text, font, brushs, rect, stringformat);
-
Graphics.Restore(state);
}
{
GraphicsState state = Graphics.Save();
-
Graphics.TranslateTransform((float)bp.X, (float)bp.Y);
- Graphics.RotateTransform(af);
- Graphics.ScaleTransform(xf, yf);
+ Graphics.RotateTransform((float)base.GetAngle());
+ Graphics.ScaleTransform((float)base.GetSizeX(), (float)base.GetSizeY());
Graphics.DrawString(Text, font, brusht, rect, stringformat);
-
Graphics.Restore(state);
}
}
public Vector2D_2 GetStringRect(double Unit, Graphics Graphics)
{
- double num = Unit * base.Size;
+ double num = Unit * base.GetSize();
- if (EditF || EditS || EditPS || EditTS)
+ if (EditF || EditTS)
{
RebuildFont((float)(num * fontSize));
EditF = false;
EditTS = false;
}
- crr[0] = new CharacterRange(0, Text.Length);
+ CharacterRange[] crr = new CharacterRange[]{
+ new CharacterRange(0, Text.Length)
+ };
+
stringformat.SetMeasurableCharacterRanges(crr);
RectangleF layoutRect = new RectangleF(
@@ -376,8 +318,9 @@ namespace _2DGAMELIB
@out.ps.Add(stringRectPoints[2].AddXY(x, num) + vector2D);
@out.ps.Add(stringRectPoints[3].AddY(num) + vector2D);
- base.OP.Add(@out);
+ base.GetOP().Add(@out);
}
+
public new void Dispose()
{
base.Dispose();
diff --git a/2DGAMELIB/_2DGAMELIB/Pars.cs b/2DGAMELIB/_2DGAMELIB/Pars.cs
index 4a67e22..c683285 100644
--- a/2DGAMELIB/_2DGAMELIB/Pars.cs
+++ b/2DGAMELIB/_2DGAMELIB/Pars.cs
@@ -16,227 +16,54 @@ namespace _2DGAMELIB
public Pars Parent => parent;
- public IEnumerable Keys => pars.Keys;
-
public IEnumerable