From 24a0ed126be6846a898283bcf57131fb7a570ca9 Mon Sep 17 00:00:00 2001 From: "ProjectKoi-Kalo\\Kalo" Date: Mon, 8 Sep 2025 21:39:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9A=82=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 1.6/1.6/Assemblies/ArachnaeSwarm.dll | Bin 119296 -> 113664 bytes .../ArachnaeNode_Race/Constant/Constant.xml | 84 ---------- .../ArachnaeNode_Race/Constant/Thoughts.xml | 29 ---- .../ArachnaeNode_Race/ForJobs/AttackMelee.xml | 37 ----- .../ForJobs/AttackStatic.xml | 37 ----- .../ArachnaeNode_Race/ForJobs/DoBill.xml | 67 -------- .../ArachnaeNode_Race/ForJobs/Goto.xml | 20 --- .../ArachnaeNode_Race/ForJobs/Ingest.xml | 32 ---- .../ArachnaeNode_Race/ForJobs/LayDown.xml | 76 --------- .../ArachnaeNode_Race/ForJobs/Lovin.xml | 80 --------- .../ArachnaeNode_Race/ForJobs/Mine.xml | 33 ---- .../ForJobs/RemoveApparel.xml | 78 --------- .../ArachnaeNode_Race/ForJobs/Research.xml | 100 ------------ .../ArachnaeNode_Race/ForJobs/SocialRelax.xml | 19 --- .../ForJobs/StandAndBeSociallyActive.xml | 35 ---- .../ArachnaeNode_Race/ForJobs/Strip.xml | 53 ------ .../ArachnaeNode_Race/ForJobs/WaitCombat.xml | 84 ---------- .../ArachnaeNode_Race/ForJobs/Wait_Downed.xml | 50 ------ .../ArachnaeNode_Race/ForJobs/Wear.xml | 77 --------- .../AnimationDefs/WULA_Mech_Flyer_Anim.xml | 58 +++++++ .../WULA_Mech_Flyer_Graphics.xml | 52 ++++++ .../Defs/HeadType_Defs/ARA_HeadTypeDefs.xml | 2 +- 1.6/1.6/Defs/PawnKindDef/ARA_PawnKinds.xml | 7 +- .../PawnRenderNodeTagDefs/ARA_NodeTagDefs.xml | 6 + .../PawnRenderTreeDefs/ARA_RenderTree.xml | 153 ++++++++++++++++++ .../Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml | 86 ++-------- Source/ArachnaeSwarm/ArachnaeSwarm.csproj | 2 - Source/ArachnaeSwarm/CompPawnFlight.cs | 128 +-------------- .../CompProperties_PawnFlight.cs | 50 +++--- .../DynamicPawnRenderNodeSetup_FlightWings.cs | 45 ------ Source/ArachnaeSwarm/HarmonyPatches.cs | 122 ++++++++------ .../PawnRenderNode_AnimatedAttachment.cs | 38 ----- 32 files changed, 401 insertions(+), 1339 deletions(-) delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/Constant/Constant.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/Constant/Thoughts.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/AttackMelee.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/AttackStatic.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/DoBill.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Goto.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Ingest.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/LayDown.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Lovin.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Mine.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/RemoveApparel.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Research.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/SocialRelax.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/StandAndBeSociallyActive.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Strip.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/WaitCombat.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Wait_Downed.xml delete mode 100644 1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Wear.xml create mode 100644 1.6/1.6/Defs/AnimationDefs/WULA_Mech_Flyer_Anim.xml create mode 100644 1.6/1.6/Defs/GraphicStateDefs/WULA_Mech_Flyer_Graphics.xml create mode 100644 1.6/1.6/Defs/PawnRenderNodeTagDefs/ARA_NodeTagDefs.xml create mode 100644 1.6/1.6/Defs/PawnRenderTreeDefs/ARA_RenderTree.xml delete mode 100644 Source/ArachnaeSwarm/DynamicPawnRenderNodeSetup_FlightWings.cs delete mode 100644 Source/ArachnaeSwarm/PawnRenderNode_AnimatedAttachment.cs diff --git a/1.6/1.6/Assemblies/ArachnaeSwarm.dll b/1.6/1.6/Assemblies/ArachnaeSwarm.dll index 24cac348320c80953fa87ce717d60e0128832c3d..47bdf0a149ba034fca71d549e519554050b124e8 100644 GIT binary patch literal 113664 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

5^iZ_%h1>2JO-Q@RUhSFt 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 EKX1{vP+NNsAdU@{nn_lwq5+-upCt=tm~*ufLc& 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

T_@lGYbX@CKVdAxy1 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 PYXzC+KY#w|ap3;|+HZw> literal 119296 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 - - - - ArachnaeNode_normal - ArachnaeNode_Race_Myrmecocystus - -

  • - 1 - normal - normal - normal - normal -
  • - - 0 - - - ArachnaeNode_eyeMoving - ArachnaeNode_Race_Myrmecocystus - -
  • - 15 - (-0.005,0,0) -
  • -
    - 1002 - 30 - 500 -
    - - ArachnaeNode_eyeMoving2 - ArachnaeNode_Race_Myrmecocystus - -
  • - 15 - (0.005,0,0) -
  • -
    - 1001 - 30 - 500 -
    - - ArachnaeNode_eyeFlicker - ArachnaeNode_Race_Myrmecocystus - -
  • - 3 -
  • -
    - 1001 - 10 - 30 -
    - - ArachnaeNode_blink - ArachnaeNode_Race_Myrmecocystus - -
  • - 3 - (0,0,-0.005) - (0,0,-0.005) - normal -
  • -
  • - 12 - (0,0,-0.01) - close -
  • -
  • - 3 - (0,0,-0.005) - (0,0,-0.005) - normal -
  • -
    - 30 - 500 - 1000 -
    - - - \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/Constant/Thoughts.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/Constant/Thoughts.xml deleted file mode 100644 index 0e3bc26..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/Constant/Thoughts.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/AttackMelee.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/AttackMelee.xml deleted file mode 100644 index 88e7398..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/AttackMelee.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - - ArachnaeNode_AttackMelee - ArachnaeNode_Race_Myrmecocystus - -
  • - 1 - angled - open - (0,0,-0.00875) - (0.0,0,-0.005) -
  • -
    - -
  • AttackMelee
  • -
    - 10200 -
    - - - AttackMelee2 - -
  • - 1 - angled - normal -
  • -
    - -
  • AttackMelee
  • -
    - 10201 - true -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/AttackStatic.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/AttackStatic.xml deleted file mode 100644 index 3acb48e..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/AttackStatic.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - - ArachnaeNode_AttackStatic - ArachnaeNode_Race_Myrmecocystus - -
  • - 1 - angled - open - (0,0,-0.00875) - (0.0,0,-0.005) -
  • -
    - -
  • AttackStatic
  • -
    - 10200 -
    - - - AttackStatic2 - -
  • - 1 - angled - normal -
  • -
    - -
  • AttackStatic
  • -
    - 10201 - true -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/DoBill.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/DoBill.xml deleted file mode 100644 index c0bee2d..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/DoBill.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - - ArachnaeNode_DoBill - ArachnaeNode_Race_Myrmecocystus - -
  • - 1 - (0,0,-0.00625) - (0.0,0,-0.0075) - (0,0,-0.0007) - normal - (0,0,-0.00325) - (0,0,-0.00125) -
  • -
    - 0 - 0 - -
  • DoBill
  • -
    - 10000 - true -
    - - - ArachnaeNode_DoBill2 - ArachnaeNode_Race_Myrmecocystus - -
  • - 3 - (0,0,-0.0035) - (0.0,0,-0.00375) - (0,0,-0.0035) - normal - (0,0,-0.00025) - (0,0,-0.000625) -
  • -
  • - 6 - (0,0,-0.007) - (0.0,0,-0.00525) - (0,0,-0.0075) - normal - (0,0,-0.00375) - (0,0,-0.00125) -
  • -
  • - 3 - (0,0,-0.0035) - (0.0,0,-0.00375) - (0,0,-0.0035) - normal - (0,0,-0.00025) - (0,0,-0.000625) -
  • -
    - 100 - 200 - -
  • DoBill
  • -
    - 10001 - true -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Goto.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Goto.xml deleted file mode 100644 index 4fe2805..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Goto.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - ArachnaeNode_Goto - ArachnaeNode_Race_Myrmecocystus - -
  • - 1 - angled - normal - (0.0,0,-0.0025) -
  • -
    - -
  • Goto
  • -
    - 10300 -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Ingest.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Ingest.xml deleted file mode 100644 index 3cdcc4c..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Ingest.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - - - ArachnaeNode_Ingest - ArachnaeNode_Race_Myrmecocystus - -
  • - 4 - (0.0,0,0.0025) - open -
  • -
  • - 4 - (0.0,0,0.005) - open -
  • -
  • - 6 - (0.0,0,0) - normal -
  • -
    - 0 - 30 - -
  • Ingest
  • -
    - 10 - true -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/LayDown.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/LayDown.xml deleted file mode 100644 index a7fb6bf..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/LayDown.xml +++ /dev/null @@ -1,76 +0,0 @@ - - - - - ArachnaeNode_laydown - ArachnaeNode_Race_Myrmecocystus - -
  • - 1 - flat - close - normal -
  • -
    - 0 - 0 - -
  • LayDown
  • -
    - 10001 - true -
    - - - ArachnaeNode_laydown2 - ArachnaeNode_Race_Myrmecocystus - -
  • - 240 - open -
  • -
    - 100 - 500 - -
  • LayDown
  • -
    - 10002 - true -
    - - - ArachnaeNode_laydown3 - ArachnaeNode_Race_Myrmecocystus - -
  • - 15 - (0.0,0,0.0015) - (0,0,0.0035) - (0,0,0.00025) - (0,0,0.000625) -
  • -
  • - 60 - (0.0,0,0.00275) - (0,0,0.0075) - (0,0,0.00375) - (0,0,0.00125) -
  • -
  • - 10 - (0.0,0,0.0015) - (0,0,0.0035) - (0,0,0.00025) - (0,0,0.000625) -
  • -
    - 40 - 200 - -
  • LayDown
  • -
    - 10003 - true -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Lovin.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Lovin.xml deleted file mode 100644 index 23e8c77..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Lovin.xml +++ /dev/null @@ -1,80 +0,0 @@ - - - - - ArachnaeNode_Lovin - ArachnaeNode_Race_Myrmecocystus - -
  • - 8 - s-shaped - (0.0,0,0.00125) - (0.0,0,-0.005) - close - (0.0,0,-0.001) - (0.0,0,0.0075) - open - blush -
  • -
  • - 8 - s-shaped - (0.0,0,-0.00375) - (0.0,0,-0.0075) - close - (0.0,0,-0.0015) - (0.0,0,0.0075) - open - (0,0,-0.002) - blush -
  • -
  • - 8 - s-shaped - (0.0,0,0.0075) - (0.0,0,0.00125) - close - (0.0,0,0.001) - (0.0,0,0.0075) - open - (0,0,-0.001) - blush -
  • -
    - true - -
  • Lovin
  • -
  • MLI_Jobs_MassLoveIn
  • -
  • MLI_Jobs_SingleLoveIn
  • -
    - 10400 -
    - - - ArachnaeNode_Lovin2 - ArachnaeNode_Race_Myrmecocystus - -
  • - 240 - s-shaped - (0.0,0,0.01) - (0.0,0,-0.00) - normal - (0.0,0,-0.001) - (0,0,-0.001) - (0.0,0,0.005) - normal - blush -
  • -
    - 240 - 240 - true - -
  • Lovin
  • -
  • MLI_Jobs_MassLoveIn
  • -
  • MLI_Jobs_SingleLoveIn
  • -
    - 10500 -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Mine.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Mine.xml deleted file mode 100644 index 0e168f9..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Mine.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - ArachnaeNode_Mine - ArachnaeNode_Race_Myrmecocystus - -
  • - 10 - (0,0,0.005) - (0,0,0) - angled - (0,0,0.0025) - open -
  • -
  • - 5 - (0,0,0.01) - (0,0,-0.01) - angled - (0,0,-0.0025) - open -
  • -
    - 0 - 0 - -
  • Mine
  • -
    - 10000 - true -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/RemoveApparel.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/RemoveApparel.xml deleted file mode 100644 index 4bceab1..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/RemoveApparel.xml +++ /dev/null @@ -1,78 +0,0 @@ - - - - - ArachnaeNode_RemoveApparel - ArachnaeNode_Race_Myrmecocystus - -
  • - 10 - (0,0,0.0) - (-0.005,0,0.005) - open - blush -
  • -
  • - 10 - (0,0,0.0) - (0.005,0,0.005) - open - blush -
  • -
  • - 10 - (0,0,0.0) - (0,0,0.005) - open - blush -
  • -
    - -
  • RemoveApparel
  • -
    - 105 - true - 30 - 300 -
    - - - ArachnaeNode_RemoveApparel2 - ArachnaeNode_Race_Myrmecocystus - -
  • - 1 - s-shaped - normal - (0.0,0,0.005) - blush -
  • -
    - -
  • RemoveApparel
  • -
    - 104 - true -
    - - - ArachnaeNode_RemoveApparel3 - ArachnaeNode_Race_Myrmecocystus - -
  • - 120 - flat - close - (0.0,0,0.005) - blush -
  • -
    - -
  • RemoveApparel
  • -
    - 110 - true - 30 - 300 -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Research.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Research.xml deleted file mode 100644 index 84c987e..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Research.xml +++ /dev/null @@ -1,100 +0,0 @@ - - - - - ArachnaeNode_Research - ArachnaeNode_Race_Myrmecocystus - -
  • - 10 - (0,0,-0.005) - (0,0,-0.01) - flat - normal - (0,0,-0.00375) -
  • -
    - -
  • Research
  • -
    - 10001 - true -
    - - - ArachnaeNode_Research2 - ArachnaeNode_Race_Myrmecocystus - -
  • - 4 - (0,0,0.00325) - (0,0,0.00625) - (0,0,0.005) - normal - open -
  • -
  • - 40 - (0,0,0.00625) - (0,0,0.00875) - (0,0,0.01) - normal - (0,0,0.0025) - open -
  • -
  • - 3 - (0,0,0.00625) - (0,0,0.00875) - (0,0,0.01) - close - normal - (0,0,0.0025) - open -
  • -
  • - 20 - (0,0,0.00625) - (0,0,0.00875) - (0,0,0.01) - normal - (0,0,0.0025) - open -
  • -
  • - 3 - (0,0,0.00625) - (0,0,0.00875) - (0,0,0.01) - close - normal - (0,0,0.0025) - open -
  • -
  • - 40 - (0,0,0.00625) - (0,0,0.00875) - (0,0,0.01) - normal - (0,0,0.0025) - open -
  • -
  • - 8 - (0,0,0.00325) - (0,0,0.00625) - (0,0,0.005) - normal - open -
  • -
    - 900 - 1200 - -
  • Research
  • -
    - 10002 - true -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/SocialRelax.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/SocialRelax.xml deleted file mode 100644 index fff8b13..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/SocialRelax.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - ArachnaeNode_SocialRelax - ArachnaeNode_Race_Myrmecocystus - -
  • - 1 - normal - close -
  • -
    - -
  • SocialRelax
  • -
    - 10200 -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/StandAndBeSociallyActive.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/StandAndBeSociallyActive.xml deleted file mode 100644 index cfdbbbd..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/StandAndBeSociallyActive.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - ArachnaeNode_StandAndBeSociallyActive - ArachnaeNode_Race_Myrmecocystus - -
  • - 3 - normal - (0.0,0,-0.0025) - open -
  • -
  • - 3 - normal - (0.0,0,-0.005) - open -
  • -
  • - 3 - normal - (0.0,0,0) - normal -
  • -
    - 0 - 100 - -
  • StandAndBeSociallyActive
  • -
    - 10 - true -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Strip.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Strip.xml deleted file mode 100644 index 38c6499..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Strip.xml +++ /dev/null @@ -1,53 +0,0 @@ - - - - - ArachnaeNode_Strip - ArachnaeNode_Race_Myrmecocystus - -
  • - 10 - (0,0,0.0) - (-0.005,0,0.005) - blush -
  • -
  • - 10 - (0,0,0.0) - (0.005,0,0.005) - blush -
  • -
  • - 10 - (0,0,0.0) - (0,0,0.005) - blush -
  • -
    - -
  • Strip
  • -
    - 105 - true - 30 - 300 -
    - - - Strip2 - -
  • - 1 - s-shaped - normal - open - blush -
  • -
    - -
  • Strip
  • -
    - 106 - true -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/WaitCombat.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/WaitCombat.xml deleted file mode 100644 index 3a6a2a7..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/WaitCombat.xml +++ /dev/null @@ -1,84 +0,0 @@ - - - - - ArachnaeNode_WaitCombat - ArachnaeNode_Race_Myrmecocystus - -
  • - 1 - angled - normal -
  • -
    - -
  • Wait_Combat
  • -
    - 10200 -
    - - - ArachnaeNode_Wait_Combat_Rare - ArachnaeNode_Race_Myrmecocystus - -
  • - 15 - normal -
  • -
  • - 4 - (0,0,-0.00375) - flat - close - (0,0,-0.0025) - (0,0,-0.00625) - open -
  • -
  • - 45 - (0,0,-0.01) - s-shaped - close - (0,0,-0.005) - (0,0,-0.0175) - open - (0,0,-0.005) -
  • -
  • - 30 - (0,0,-0.01) - s-shaped - close - (0,0,-0.005) - (0,0,-0.015) - open - (0,0,-0.005) -
  • -
  • - 7 - (0,0,-0.00375) - s-shaped - close - (0,0,-0.0025) - (0,0,-0.0085) - open -
  • -
  • - 4 - flat - close - normal -
  • -
  • - 30 - normal -
  • -
    - -
  • Wait_Combat
  • -
    - 10301 - 1000 - 2000 -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Wait_Downed.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Wait_Downed.xml deleted file mode 100644 index b5dab76..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Wait_Downed.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - - ArachnaeNode_Wait_Downed - ArachnaeNode_Race_Myrmecocystus - -
  • - 30 - (0,0,0.015) - (0,0,0.01) - (0,0,0.01) - flat - (0,0,0.0025) - open -
  • -
  • - 3 - (0,0,0.0075) - (0,0,0.005) - (0,0,0.005) - flat - normal -
  • -
    - 0 - 100 - -
  • Wait_Downed
  • -
    - 10000 - true -
    - - - Wait_Downed2 - -
  • - 3 - (0,0,0.005) - flat -
  • -
    - -
  • Wait_Downed
  • -
    - 10001 - true -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Wear.xml b/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Wear.xml deleted file mode 100644 index 03d1202..0000000 --- a/1.6/1.6/Defs/AnimationDefs/ArachnaeNode_Race/ForJobs/Wear.xml +++ /dev/null @@ -1,77 +0,0 @@ - - - - - ArachnaeNode_Wear - ArachnaeNode_Race_Myrmecocystus - -
  • - 10 - (0,0,0.0) - (-0.005,0,0.005) - open - blush -
  • -
  • - 10 - (0,0,0.0) - (0.005,0,0.005) - open - blush -
  • -
  • - 10 - (0,0,0.0) - (0,0,0.005) - open - blush -
  • -
    - -
  • Wear
  • -
    - 105 - true - 30 - 300 -
    - - - ArachnaeNode_Wear2 - ArachnaeNode_Race_Myrmecocystus - -
  • - 1 - s-shaped - normal - (0.0,0,0.005) - blush -
  • -
    - -
  • Wear
  • -
    - 104 - true -
    - - - Wear3 - -
  • - 120 - flat - close - (0.0,0,0.005) - blush -
  • -
    - -
  • Wear
  • -
    - 110 - true - 30 - 300 -
    -
    \ No newline at end of file diff --git a/1.6/1.6/Defs/AnimationDefs/WULA_Mech_Flyer_Anim.xml b/1.6/1.6/Defs/AnimationDefs/WULA_Mech_Flyer_Anim.xml new file mode 100644 index 0000000..34824ca --- /dev/null +++ b/1.6/1.6/Defs/AnimationDefs/WULA_Mech_Flyer_Anim.xml @@ -0,0 +1,58 @@ + + + + + + WULA_Mech_Flyer_North + 4 + true + +
  • + ARA_Flight_Attachment + + +
  • WULA_Mech_Flyer_Flying_north_0_gs0
  • +
  • WULA_Mech_Flyer_Flying_north_1_gs2
  • + + + +
    +
    + + + + WULA_Mech_Flyer_East + 4 + true + +
  • + ARA_Flight_Attachment + + +
  • WULA_Mech_Flyer_Flying_east_0_gs0
  • +
  • WULA_Mech_Flyer_Flying_east_1_gs2
  • + + + +
    +
    + + + + WULA_Mech_Flyer_South + 4 + true + +
  • + ARA_Flight_Attachment + + +
  • WULA_Mech_Flyer_Flying_south_0_gs0
  • +
  • WULA_Mech_Flyer_Flying_south_1_gs2
  • + + + +
    +
    + +
    \ No newline at end of file diff --git a/1.6/1.6/Defs/GraphicStateDefs/WULA_Mech_Flyer_Graphics.xml b/1.6/1.6/Defs/GraphicStateDefs/WULA_Mech_Flyer_Graphics.xml new file mode 100644 index 0000000..92aadc2 --- /dev/null +++ b/1.6/1.6/Defs/GraphicStateDefs/WULA_Mech_Flyer_Graphics.xml @@ -0,0 +1,52 @@ + + + + + + WULA_Mech_Flyer_Flying_north_0_gs + + Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer_Flying_north_0 + 1.35 + + + + WULA_Mech_Flyer_Flying_north_1_gs + + Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer_Flying_north_1 + 1.35 + + + + + + WULA_Mech_Flyer_Flying_east_0_gs + + Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer_Flying_east_0 + 1.35 + + + + WULA_Mech_Flyer_Flying_east_1_gs + + Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer_Flying_east_1 + 1.35 + + + + + + WULA_Mech_Flyer_Flying_south_0_gs + + Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer_Flying_south_0 + 1.35 + + + + WULA_Mech_Flyer_Flying_south_1_gs + + Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer_Flying_south_1 + 1.35 + + + + \ No newline at end of file diff --git a/1.6/1.6/Defs/HeadType_Defs/ARA_HeadTypeDefs.xml b/1.6/1.6/Defs/HeadType_Defs/ARA_HeadTypeDefs.xml index ea612ad..3b0e85e 100644 --- a/1.6/1.6/Defs/HeadType_Defs/ARA_HeadTypeDefs.xml +++ b/1.6/1.6/Defs/HeadType_Defs/ARA_HeadTypeDefs.xml @@ -12,7 +12,7 @@ ARA_QUEEN_Female_AverageNormalA - Textures/Pawns/General/Invisible/Inv + ArachnaeSwarm/Things/General/Invisible/Inv diff --git a/1.6/1.6/Defs/PawnKindDef/ARA_PawnKinds.xml b/1.6/1.6/Defs/PawnKindDef/ARA_PawnKinds.xml index 2087809..8bf5e9b 100644 --- a/1.6/1.6/Defs/PawnKindDef/ARA_PawnKinds.xml +++ b/1.6/1.6/Defs/PawnKindDef/ARA_PawnKinds.xml @@ -169,7 +169,7 @@ 0 - + ArachnaeNode_Race_Facehugger ArachnaeNode_Race_Facehugger @@ -219,6 +219,11 @@ ArachnaeNode_Race_Skyraider PlayerColony 0 + Things/Pawn/Animal/Goose/Goose_Flying_ + 1.35 + 2 + 2 + false
  • diff --git a/1.6/1.6/Defs/PawnRenderNodeTagDefs/ARA_NodeTagDefs.xml b/1.6/1.6/Defs/PawnRenderNodeTagDefs/ARA_NodeTagDefs.xml new file mode 100644 index 0000000..f5ee0bc --- /dev/null +++ b/1.6/1.6/Defs/PawnRenderNodeTagDefs/ARA_NodeTagDefs.xml @@ -0,0 +1,6 @@ + + + + ARA_Flight_Attachment + + \ No newline at end of file diff --git a/1.6/1.6/Defs/PawnRenderTreeDefs/ARA_RenderTree.xml b/1.6/1.6/Defs/PawnRenderTreeDefs/ARA_RenderTree.xml new file mode 100644 index 0000000..1973a1d --- /dev/null +++ b/1.6/1.6/Defs/PawnRenderTreeDefs/ARA_RenderTree.xml @@ -0,0 +1,153 @@ + + + + ARA_ArachnaeRenderTree + + Root + Root + +
  • + Body + PawnRenderNode_Body + PawnRenderNodeWorker_Body + Body + Body + Skin + true + true + +
  • + Body tattoo + PawnRenderNode_Tattoo_Body + PawnRenderNodeWorker_Body_Tattoo + Skin + true + 2 + Fresh, Rotting +
  • +
  • + Wounds - pre apparel + PawnRenderNodeWorker_OverlayWounds + Body + 8 +
  • +
  • + Baby swaddle + PawnRenderNode_Swaddle + PawnRenderNodeWorker_Swaddle + Things/Pawn/Humanlike/Apparel/SwaddledBaby/Swaddled_Child + 0.1 + 0.6~0.89 + 10 +
  • + + +
  • + Arachnae Flight Attachment + ARA_Flight_Attachment + ArachnaeSwarm/Things/General/Invisible/Inv + -10 +
  • + + +
  • + Apparel root + ApparelBody + 20 +
  • +
  • + Wounds - post apparel + PawnRenderNodeWorker_OverlayWounds + true + Body + 30 +
  • +
  • + Firefoam + PawnRenderNodeWorker_OverlayFirefoam + Body + 40 +
  • + + +
  • + Head stump + PawnRenderNode_Stump + PawnRenderNodeWorker_Stump + Things/Pawn/Humanlike/Heads/None_Average_Stump + 50 + Skin + Head + true + true + Fresh, Rotting +
  • +
  • + Head + PawnRenderNode_Head + PawnRenderNodeWorker_Head + Head + Head + 50 + Skin + true + true + +
  • + Head tattoo + PawnRenderNode_Tattoo_Head + PawnRenderNodeWorker_Tattoo_Head + Fresh, Rotting + Skin + 52 +
  • +
  • + Beard + PawnRenderNode_Beard + PawnRenderNodeWorker_Beard + Fresh, Rotting + Hair + Beard + 60 +
  • +
  • + Hair + PawnRenderNode_Hair + PawnRenderNodeWorker_FlipWhenCrawling + Fresh, Rotting + Hair + Hair + 62 +
  • +
  • + Head wounds + PawnRenderNodeWorker_OverlayWounds + Head + 65 +
  • +
  • + Apparel root + ApparelHead + 70 +
  • +
  • + Firefoam + PawnRenderNodeWorker_OverlayFirefoam + Head + 85 +
  • +
  • + Status overlay + PawnRenderNodeWorker_OverlayStatus + 100 +
  • + + +
  • + Weapon/carried thing + PawnRenderNodeWorker_Carried +
  • + + + + \ No newline at end of file diff --git a/1.6/1.6/Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml b/1.6/1.6/Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml index 7f0bbaf..b0491f2 100644 --- a/1.6/1.6/Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml +++ b/1.6/1.6/Defs/ThingDef_Races/ARA_RaceNodeSwarm.xml @@ -1169,85 +1169,20 @@ true + -
  • - - - +
  • - - Wula/Things/WULA_Mech_Flyer/WULA_Mech_Flyer_Flying_ + + Drafted - - 2 - - - 2 - - - - - - - 1.35 - - - (0, 0.1, -0.2) - - - false - - - Body - - - 90 - - - - - - - 40 - - - 40 - - - 15 - - - 10 - - - 1.0 - - - - - - - - -
  • (0, 0)
  • -
  • (0.5, 0.6)
  • -
  • (1, 1)
  • - - - - - - -
  • (0, 1)
  • -
  • (0.5, 0.4)
  • -
  • (1, 0)
  • -
    -
    + + WULA_Mech_Flyer_North + WULA_Mech_Flyer_East + WULA_Mech_Flyer_South - -
    @@ -1255,6 +1190,9 @@ 4.5 + 9999 + 0 + @@ -1295,6 +1233,8 @@ ArachnaeFighter_Body + ARA_ArachnaeRenderTree + 1.0 0.85 2 5 diff --git a/Source/ArachnaeSwarm/ArachnaeSwarm.csproj b/Source/ArachnaeSwarm/ArachnaeSwarm.csproj index 0b17708..1129ebc 100644 --- a/Source/ArachnaeSwarm/ArachnaeSwarm.csproj +++ b/Source/ArachnaeSwarm/ArachnaeSwarm.csproj @@ -141,8 +141,6 @@ - - diff --git a/Source/ArachnaeSwarm/CompPawnFlight.cs b/Source/ArachnaeSwarm/CompPawnFlight.cs index 31e8b76..58d39e2 100644 --- a/Source/ArachnaeSwarm/CompPawnFlight.cs +++ b/Source/ArachnaeSwarm/CompPawnFlight.cs @@ -1,132 +1,14 @@ -using UnityEngine; using Verse; -using Verse.AI; -using RimWorld; -using System.Collections.Generic; namespace ArachnaeSwarm { + /// + /// A marker component that holds custom flight properties. + /// The actual flight logic is handled by Harmony patches that check for this component + /// and use its properties to override or trigger vanilla flight behavior. + /// public class CompPawnFlight : ThingComp { - private enum FlightState { Grounded, TakingOff, Flying, Landing } - - private FlightState flightState; - private int flightTicks = -1; - private int flightCooldownTicks; - private int lerpTick; - - private Dictionary> cachedGraphics = new Dictionary>(); - private PawnRenderNode_AnimatedAttachment activeWingNode; - - private Pawn Pawn => (Pawn)parent; public CompProperties_PawnFlight Props => (CompProperties_PawnFlight)props; - - public bool Flying => flightState != FlightState.Grounded; - public bool ShouldShowWings => flightState != FlightState.Grounded; - - // Hardcoded curves, similar to vanilla Pawn_FlightTracker - private static readonly SimpleCurve TakeoffCurve = new SimpleCurve { new CurvePoint(0f, 0f), new CurvePoint(0.5f, 0.6f), new CurvePoint(1f, 1f) }; - private static readonly SimpleCurve LandingCurve = new SimpleCurve { new CurvePoint(0f, 1f), new CurvePoint(0.5f, 0.4f), new CurvePoint(1f, 0f) }; - - - public override void CompTick() - { - base.CompTick(); - if (!parent.Spawned) return; - - FlightState oldState = flightState; - - switch (flightState) - { - case FlightState.TakingOff: - lerpTick++; - if (lerpTick >= Props.takeoffDurationTicks) { flightState = FlightState.Flying; lerpTick = 0; } - break; - case FlightState.Landing: - lerpTick++; - if (lerpTick >= Props.landingDurationTicks) { flightState = FlightState.Grounded; lerpTick = 0; flightCooldownTicks = (int)(Props.flightCooldownSeconds * 60f); } - break; - case FlightState.Flying: - flightTicks++; - if (flightTicks >= Props.maxFlightTimeSeconds * 60f) { flightState = FlightState.Landing; } - break; - case FlightState.Grounded: - if (flightCooldownTicks > 0) { flightCooldownTicks--; } - break; - } - - if (oldState != flightState) - { - StateChanged(); - } - } - - private void StateChanged() - { - Pawn.Drawer.renderer.SetAllGraphicsDirty(); - } - - public void Notify_JobStarted(Job job) - { - bool isFlyingOrTakingOff = flightState == FlightState.Flying || flightState == FlightState.TakingOff; - bool wantsToFly = (job.def.tryStartFlying || (job.def.ifFlyingKeepFlying && isFlyingOrTakingOff)); - if (wantsToFly && flightState == FlightState.Grounded && flightCooldownTicks <= 0 && Rand.Chance(Props.flightStartChanceOnJobStart)) - { - flightState = FlightState.TakingOff; - flightTicks = 0; - lerpTick = 0; - StateChanged(); - } - else if (!wantsToFly && isFlyingOrTakingOff) - { - flightState = FlightState.Landing; - lerpTick = 0; - StateChanged(); - } - } - - public void LinkToRenderNode(PawnRenderNode_AnimatedAttachment node) - { - activeWingNode = node; - } - - public int GetCurrentFrame(int totalFrames) - { - if (totalFrames == 0) return 0; - int currentTickInAnim = (flightState == FlightState.Flying) ? flightTicks : lerpTick; - return (currentTickInAnim / Props.ticksPerFrame) % totalFrames; - } - - public List GetGraphicsForRotation(Rot4 rot) - { - if (cachedGraphics.TryGetValue(rot, out var graphics)) return graphics; - - var newGraphics = new List(); - bool isFemale = Pawn.gender == Gender.Female && !string.IsNullOrEmpty(Props.flyingAnimationFramePathPrefixFemale); - string prefix = isFemale ? Props.flyingAnimationFramePathPrefixFemale : Props.flyingAnimationFramePathPrefix; - string suffix = (rot == Rot4.North) ? "_north" : (rot == Rot4.South) ? "_south" : "_east"; - - if (rot == Rot4.West) suffix = "_east"; - - for (int i = 1; i <= Props.flyingAnimationFrameCount; i++) - { - string path = prefix + i + suffix; - Color color = Props.inheritColors ? Pawn.story.SkinColor : Color.white; - var graphic = GraphicDatabase.Get(path, ShaderDatabase.Transparent, Vector2.one * Props.drawSize, color); - newGraphics.Add(graphic); - } - - cachedGraphics[rot] = newGraphics; - return newGraphics; - } - - public override void PostExposeData() - { - base.PostExposeData(); - Scribe_Values.Look(ref flightTicks, "flightTicks", -1); - Scribe_Values.Look(ref flightCooldownTicks, "flightCooldownTicks", 0); - Scribe_Values.Look(ref lerpTick, "lerpTick", 0); - Scribe_Values.Look(ref flightState, "flightState", FlightState.Grounded); - } } } \ No newline at end of file diff --git a/Source/ArachnaeSwarm/CompProperties_PawnFlight.cs b/Source/ArachnaeSwarm/CompProperties_PawnFlight.cs index fd10f65..26da5b6 100644 --- a/Source/ArachnaeSwarm/CompProperties_PawnFlight.cs +++ b/Source/ArachnaeSwarm/CompProperties_PawnFlight.cs @@ -1,33 +1,45 @@ using Verse; using RimWorld; -using UnityEngine; namespace ArachnaeSwarm { + public enum FlightCondition + { + Drafted + } + public class CompProperties_PawnFlight : CompProperties { - // --- Animation --- + // --- Custom Flight Logic --- + public FlightCondition flightCondition = FlightCondition.Drafted; + + // --- Vanilla PawnKindDef Flight Parameters --- + [NoTranslate] public string flyingAnimationFramePathPrefix; + + [NoTranslate] public string flyingAnimationFramePathPrefixFemale; - public int flyingAnimationFrameCount = 1; - public int ticksPerFrame = 2; - - // --- Render Node Properties (Defined directly here) --- - public Vector3 offset = Vector3.zero; - public float drawSize = 1f; - public bool inheritColors = false; - public PawnRenderNodeTagDef parentTagDef; // e.g., "Body" - public float baseLayer = 85f; - // --- Flight Mechanics --- - public int takeoffDurationTicks = 50; - public int landingDurationTicks = 50; - public float maxFlightTimeSeconds = 5f; - public float flightCooldownSeconds = 2f; - public float flightStartChanceOnJobStart = 0.5f; + public int flyingAnimationFrameCount; + + public int flyingAnimationTicksPerFrame = -1; + + public float flyingAnimationDrawSize = 1f; + + public bool flyingAnimationDrawSizeIsMultiplier; + + public bool flyingAnimationInheritColors; + + // --- Vanilla PawnKindLifeStage Flight Parameters --- + // Note: These are normally defined per lifestage, we define them once here for simplicity. + // The harmony patch will need to inject these into the correct lifestage at runtime. + public AnimationDef flyingAnimationEast; + public AnimationDef flyingAnimationNorth; + public AnimationDef flyingAnimationSouth; + public AnimationDef flyingAnimationEastFemale; + public AnimationDef flyingAnimationNorthFemale; + public AnimationDef flyingAnimationSouthFemale; - // takeoffCurve and landingCurve are removed as they cannot be loaded directly from XML. - // They will be hardcoded in the CompPawnFlight class. public CompProperties_PawnFlight() { diff --git a/Source/ArachnaeSwarm/DynamicPawnRenderNodeSetup_FlightWings.cs b/Source/ArachnaeSwarm/DynamicPawnRenderNodeSetup_FlightWings.cs deleted file mode 100644 index 150205e..0000000 --- a/Source/ArachnaeSwarm/DynamicPawnRenderNodeSetup_FlightWings.cs +++ /dev/null @@ -1,45 +0,0 @@ -using System; -using System.Collections.Generic; -using Verse; -using RimWorld; -using HarmonyLib; // Required for AccessTools - -namespace ArachnaeSwarm -{ - public class DynamicPawnRenderNodeSetup_FlightWings : DynamicPawnRenderNodeSetup - { - public override bool HumanlikeOnly => false; - - public override IEnumerable<(PawnRenderNode node, PawnRenderNode parent)> GetDynamicNodes(Pawn pawn, PawnRenderTree tree) - { - CompPawnFlight flightComp = pawn.GetComp(); - if (flightComp != null && flightComp.ShouldShowWings) - { - // Create properties directly from CompProperties - var nodeProps = new PawnRenderNodeProperties - { - nodeClass = typeof(PawnRenderNode_AnimatedAttachment), - workerClass = AccessTools.TypeByName("Verse.PawnRenderNodeWorker_Flip"), - parentTagDef = flightComp.Props.parentTagDef ?? PawnRenderNodeTagDefOf.Body, - baseLayer = flightComp.Props.baseLayer - }; - - // Create a new DrawData struct and set its offset, then assign it. - DrawData drawData = new DrawData(); - typeof(DrawData).GetField("offset").SetValueDirect(__makeref(drawData), flightComp.Props.offset); - nodeProps.drawData = drawData; - - if (tree.ShouldAddNodeToTree(nodeProps)) - { - var newNode = (PawnRenderNode_AnimatedAttachment)Activator.CreateInstance( - nodeProps.nodeClass, pawn, nodeProps, tree - ); - - flightComp.LinkToRenderNode(newNode); - yield return (node: newNode, parent: null); - } - } - yield break; - } - } -} \ No newline at end of file diff --git a/Source/ArachnaeSwarm/HarmonyPatches.cs b/Source/ArachnaeSwarm/HarmonyPatches.cs index f2a9aa8..db53363 100644 --- a/Source/ArachnaeSwarm/HarmonyPatches.cs +++ b/Source/ArachnaeSwarm/HarmonyPatches.cs @@ -1,70 +1,100 @@ using HarmonyLib; using Verse; -using System.Reflection; using RimWorld; +using Verse.AI; namespace ArachnaeSwarm { - [StaticConstructorOnStartup] - public static class HarmonyPatches + // Note: We are no longer patching PawnGenerator. + // We will inject/override flight logic at more precise points. + [HarmonyPatch] + public static class FlightHarmonyPatches { - private static readonly FieldInfo flightField = AccessTools.Field(typeof(Pawn), "flight"); - - static HarmonyPatches() + // Patch 1: Override the animation selection + [HarmonyPrefix] + [HarmonyPatch(typeof(Pawn_FlightTracker), "GetBestFlyAnimation")] + public static bool GetBestFlyAnimation_Prefix(Pawn_FlightTracker __instance, Pawn ___pawn, Rot4? facingOverride, ref AnimationDef __result) { - var harmony = new Harmony("com.arachnaeswarm.flightcomp"); - - harmony.Patch(AccessTools.Method(typeof(PawnComponentsUtility), nameof(PawnComponentsUtility.AddComponentsForSpawn)), - postfix: new HarmonyMethod(typeof(HarmonyPatches), nameof(DisableVanillaFlightTracker))); - - harmony.Patch(AccessTools.PropertyGetter(typeof(Pawn), nameof(Pawn.Flying)), - postfix: new HarmonyMethod(typeof(HarmonyPatches), nameof(OverrideFlyingProperty))); - - harmony.Patch(AccessTools.Method(typeof(Pawn), nameof(Pawn.ExposeData)), - prefix: new HarmonyMethod(typeof(HarmonyPatches), nameof(PreventVanillaFlightTrackerSave_Prefix)), - postfix: new HarmonyMethod(typeof(HarmonyPatches), nameof(PreventVanillaFlightTrackerSave_Postfix))); - } - - public static void DisableVanillaFlightTracker(Pawn pawn) - { - if (pawn.TryGetComp() != null) + var flightComp = ___pawn.TryGetComp(); + if (flightComp == null) { - flightField?.SetValue(pawn, null); + return true; // Let original method run for non-comped pawns } - } - public static void OverrideFlyingProperty(Pawn __instance, ref bool __result) - { - var comp = __instance.TryGetComp(); - if (comp != null) + var compProps = flightComp.Props; + bool isFemale = ___pawn.gender == Gender.Female; + + // Determine which animation to use based on rotation and gender + AnimationDef selectedAnim = null; + switch ((facingOverride ?? ___pawn.Rotation).AsInt) { - __result = comp.Flying; + case 0: // North + selectedAnim = isFemale ? compProps.flyingAnimationNorthFemale : compProps.flyingAnimationNorth; + break; + case 1: // East + selectedAnim = isFemale ? compProps.flyingAnimationEastFemale : compProps.flyingAnimationEast; + break; + case 2: // South + selectedAnim = isFemale ? compProps.flyingAnimationSouthFemale : compProps.flyingAnimationSouth; + break; + case 3: // West - Use East animation as fallback if West is not defined + selectedAnim = isFemale ? (compProps.flyingAnimationEastFemale ?? compProps.flyingAnimationEast) : compProps.flyingAnimationEast; + break; } - } - - // Correct fix: Use 'object' to store the instance, avoiding direct type reference at compile time. - private static object tempFlightTracker; - public static void PreventVanillaFlightTrackerSave_Prefix(Pawn __instance) - { - if (__instance.TryGetComp() != null) + // If we have a valid animation from our comp, use it and stop the original method. + if (selectedAnim != null) { - object flightTrackerInstance = flightField?.GetValue(__instance); - if (flightTrackerInstance != null) + __result = selectedAnim; + return false; // Stop original method + } + + return true; // Fallback to original if no animation is found in comp + } + + + // Patch 2: Decide whether to fly when a new job starts + [HarmonyPrefix] + [HarmonyPatch(typeof(Pawn_FlightTracker), "Notify_JobStarted")] + public static bool Notify_JobStarted_Prefix(Job job, Pawn_FlightTracker __instance, Pawn ___pawn) + { + var flightComp = ___pawn.TryGetComp(); + if (flightComp == null || !__instance.CanEverFly || ___pawn.Dead) + { + return true; // Let original method run + } + + var compProps = flightComp.Props; + bool shouldBeFlying = false; + + // Check our custom condition + if (compProps.flightCondition == FlightCondition.Drafted) + { + if (___pawn.Drafted) { - tempFlightTracker = flightTrackerInstance; - flightField.SetValue(__instance, null); + shouldBeFlying = true; } } - } - public static void PreventVanillaFlightTrackerSave_Postfix(Pawn __instance) - { - if (tempFlightTracker != null) + // Apply the decision + if (shouldBeFlying) { - flightField?.SetValue(__instance, tempFlightTracker); - tempFlightTracker = null; + if (!__instance.Flying) + { + __instance.StartFlying(); + } + job.flying = true; // Mark the job as a flying job } + else + { + if (__instance.Flying) + { + __instance.ForceLand(); + } + job.flying = false; + } + + return false; // We have handled the logic, stop the original method. } } } \ No newline at end of file diff --git a/Source/ArachnaeSwarm/PawnRenderNode_AnimatedAttachment.cs b/Source/ArachnaeSwarm/PawnRenderNode_AnimatedAttachment.cs deleted file mode 100644 index 8a954a6..0000000 --- a/Source/ArachnaeSwarm/PawnRenderNode_AnimatedAttachment.cs +++ /dev/null @@ -1,38 +0,0 @@ -using System.Collections.Generic; -using UnityEngine; -using Verse; - -namespace ArachnaeSwarm -{ - public class PawnRenderNode_AnimatedAttachment : PawnRenderNode - { - private CompPawnFlight flightComp; - private List cachedGraphics; - - public PawnRenderNode_AnimatedAttachment(Pawn pawn, PawnRenderNodeProperties props, PawnRenderTree tree) : base(pawn, props, tree) - { - flightComp = pawn.GetComp(); - } - - public override Graphic GraphicFor(Pawn pawn) - { - if (flightComp == null) return null; - - if (cachedGraphics == null) - { - cachedGraphics = flightComp.GetGraphicsForRotation(pawn.Rotation); - } - - if (cachedGraphics.NullOrEmpty()) return null; - - int frame = flightComp.GetCurrentFrame(cachedGraphics.Count); - return cachedGraphics[frame]; - } - - // We might need to override this if west-facing graphics need to be flipped. - // public override Mesh GetMesh(PawnDrawParms parms) - // { - // return base.GetMesh(parms); - // } - } -} \ No newline at end of file