diff --git a/1.6/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/1.6/Assemblies/WulaFallenEmpire.dll index d2b51762..14a8dfcb 100644 Binary files a/1.6/1.6/Assemblies/WulaFallenEmpire.dll and b/1.6/1.6/Assemblies/WulaFallenEmpire.dll differ diff --git a/1.6/1.6/Defs/DamageDefs/Damages_Wula.xml b/1.6/1.6/Defs/DamageDefs/Damages_Wula.xml index c114e418..ab4647a2 100644 --- a/1.6/1.6/Defs/DamageDefs/Damages_Wula.xml +++ b/1.6/1.6/Defs/DamageDefs/Damages_Wula.xml @@ -518,7 +518,7 @@ <_DistortionIntensity>0.5 <_TexAScaleDivisorPerProgress>1.5 - (4, 4) + (5, 5) diff --git a/1.6/1.6/Defs/EventDefs/EventDef_Wula/Wula_MainEvent.xml b/1.6/1.6/Defs/EventDefs/EventDef_Wula/Wula_MainEvent.xml index 2f432691..8180761b 100644 --- a/1.6/1.6/Defs/EventDefs/EventDef_Wula/Wula_MainEvent.xml +++ b/1.6/1.6/Defs/EventDefs/EventDef_Wula/Wula_MainEvent.xml @@ -1118,6 +1118,11 @@ 0 Int +
  • + WULA_Boss_Super_Fortress_Has_Start + 0 + Int +
  • @@ -1142,6 +1147,26 @@ +
  • + + true + +
  • + WULA_Boss_Super_Fortress_Has_Start + 1 +
  • + + +
  • + +
  • + WULA_Boss_Super_Fortress_UI_1 +
  • +
  • + +
  • +
    +
  • true diff --git a/1.6/1.6/Defs/HediffDefs/WULA_Misc_Hediffs.xml b/1.6/1.6/Defs/HediffDefs/WULA_Misc_Hediffs.xml index 26966a4c..77302f4a 100644 --- a/1.6/1.6/Defs/HediffDefs/WULA_Misc_Hediffs.xml +++ b/1.6/1.6/Defs/HediffDefs/WULA_Misc_Hediffs.xml @@ -322,4 +322,28 @@ false + + + WULA_Cat_Invisibility + HediffWithComps + + 这只乌拉猫猫经过了特殊改装,无法用肉眼目视到,只有在开枪时会短暂现身。 + false + +
  • + 0.01 + + 5000 + +
  • + + +
  • + false + 60 + 90 +
  • +
  • + + \ No newline at end of file diff --git a/1.6/1.6/Defs/PawnKinds/PawnKinds_Wula.xml b/1.6/1.6/Defs/PawnKinds/PawnKinds_Wula.xml index 834ee237..2e2ffcc9 100644 --- a/1.6/1.6/Defs/PawnKinds/PawnKinds_Wula.xml +++ b/1.6/1.6/Defs/PawnKinds/PawnKinds_Wula.xml @@ -121,6 +121,29 @@
  • Wula_Assault_Cat_Weapon
  • + + Mech_WULA_Cat_Cloak_Sniper + + Mech_WULA_Cat_Cloak_Sniper + 500 + AncientsHostile + false + +
  • + + Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin + Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None + CutoutWithOverlay + Graphic_Multi + 1.2 + +
  • +
    + +
  • WULA_RW_SuperLongRange_RF
  • +
    + 9999~9999 +
    Wula_AI_Heavy_Panzer diff --git a/1.6/1.6/Defs/QuestScriptDefs/WULA_Base_Tex_Quest.xml b/1.6/1.6/Defs/QuestScriptDefs/WULA_Base_Tex_Quest.xml index 28301f97..0677e95d 100644 --- a/1.6/1.6/Defs/QuestScriptDefs/WULA_Base_Tex_Quest.xml +++ b/1.6/1.6/Defs/QuestScriptDefs/WULA_Base_Tex_Quest.xml @@ -1,5 +1,47 @@ + WULA_GiveQuest_Base_Tex @@ -149,7 +191,7 @@
  • Handle_Outtime - WULA_Base_Tex_Quest_UI_1 + WULA_Base_Tex_Quest_UI_2
  • @@ -199,7 +241,7 @@ - WULA_Base_Tex_Quest_UI_1 + WULA_Base_Tex_Quest_UI_2 Wula/Events/Portraits/WULA_Legion_6 「军团」,P.I.A diff --git a/1.6/1.6/Defs/QuestScriptDefs/WULA_Boss_Super_Fortress.xml b/1.6/1.6/Defs/QuestScriptDefs/WULA_Boss_Super_Fortress.xml index 09d4720f..592f585d 100644 --- a/1.6/1.6/Defs/QuestScriptDefs/WULA_Boss_Super_Fortress.xml +++ b/1.6/1.6/Defs/QuestScriptDefs/WULA_Boss_Super_Fortress.xml @@ -1,12 +1,63 @@ - + + + WULA_Boss_Super_Fortress_UI_1 + + Wula/Events/Portraits/WULA_Legion_1 + 「军团」,P.I.A + +
  • 我们的观察员发现,你们附近有一个不处于我们掌控下的巨型要塞——很可能是叛军留下的要塞。没有发现人影,但是防御系统还在工作,我们尝试发射了几轮EMP炮弹,但是很可惜没有击中要塞的干扰器,我们的舰队没办法顶着信号干扰进行进一步轰炸。\n\n拿上武器,把你们最好的战士派过去,扫平那座堡垒。事成之后,我会给你们批复火山炮的申请权限,如何?哦对了,要塞里面应该有这种火山炮,记得小心点,有困难就叫舰队,有引导的情况下轰炸是可以正常进行的。
  • + + +
  • + + 殖民地的表现让P.I.A相当不满意,这种特殊任务不会交给殖民地负责 + false + +
  • + Wula_Goodwill_To_PIA + -75 +
  • + + +
  • + +
  • + WULA_Boss_Super_Fortress_Has_Start + 1 + Add +
  • +
  • + WULA_Boss_Super_Fortress +
  • +
  • + +
  • +
    + +
  • + + false + +
  • + +
  • + Wula_UI_Legion_50 +
  • +
  • + +
  • + + +
    + WULA_Boss_Super_Fortress 0 true false 4 - true + true @@ -20,15 +71,17 @@ -
  • +
  • Wula_Psi_Titan
  • -
  • Wula_AI_Rocket_Panzer
  • -
  • Wula_AI_Heavy_Panzer
  • -
  • WULA_Sky_Lock
  • +
  • WULA_Cat_Bunker
  • +
  • Wula_Base_ATGun_Turret
  • +
  • Wula_Base_Laser_Turret
  • +
  • Wula_Base_Mortar_Turret
  • +
  • Wula_Disturber_Turret
  • +
  • Mech_WULA_Cat_Cloak_Sniper
  • Wula_PIA_Legion_Faction
  • @@ -57,33 +110,45 @@
  • - + NegativeEvent - 在一艘巡洋舰向失控运输舰狠狠撞击后,碎裂的运输舰如流星般坠入边缘世界地表。不过灵能泰坦随后便在地表上被目击——地点已经标记出来了。 + 乌拉帝国进步派所建立的巨型要塞已经在地图上标记——似乎因为干扰,舰队无法直接攻击这个要塞,但是如果附近有引导员,舰队依然可以正常进入要塞的上方轨道。
  • - +
  • - PsiTitan.0.Destroyed + site.AllEnemiesDefeated -
  • - - PositiveEvent - 灵能泰坦在殖民者的攻击下已经停止运转,其灵能回路核心已经暴露并掉落。\n\n记得回收灵能回路核心,这是建造新的灵能泰坦所需的材料。 -
  • Wula_PIA_Legion_Faction 25 - WULA_Killed_Psititan + WULA_Destroyed_Super_Fortress
  • - PsiTitan.0.Destroyed - WULA_Boss_Sky_Lock_UI_2 + site.AllEnemiesDefeated + WULA_Boss_Super_Fortress_UI_2
  • -
  • - Success - true +
  • + + +
  • questDescription->任务已经完成,奖励已经发放,现在在乌拉帝国舰队整天蔽日的弹雨落下前,你还有1天的时间撤出巨型要塞。
  • +
    + + +
  • + 60000 + + +
  • + $site +
  • +
  • + Success + true +
  • +
    + @@ -92,8 +157,8 @@ - WULA_Killed_Psititan - + WULA_Destroyed_Super_Fortress + WULA_Super_Fortress_Map @@ -102,6 +167,128 @@ (80, 1, 80) true 0 + +
  • + (38, 0, 8) + +
  • + WULA_Sniper_Cat + Mech_WULA_Cat_Cloak_Sniper + true + WULA_Sniper_Cat_Group + 2~3 + AncientsHostile + DefendBase + MapGeneration +
  • + + +
  • + (7, 0, 39) + +
  • + WULA_Sniper_Cat + Mech_WULA_Cat_Cloak_Sniper + true + WULA_Sniper_Cat_Group + 2~3 + AncientsHostile + DefendBase + MapGeneration +
  • + + +
  • + (39, 0, 71) + +
  • + WULA_Sniper_Cat + Mech_WULA_Cat_Cloak_Sniper + true + WULA_Sniper_Cat_Group + 2~3 + AncientsHostile + DefendBase + MapGeneration +
  • + + +
  • + (73, 0, 37) + +
  • + WULA_Sniper_Cat + Mech_WULA_Cat_Cloak_Sniper + true + WULA_Sniper_Cat_Group + 2~3 + AncientsHostile + DefendBase + MapGeneration +
  • + + +
  • + (39, 0, 48) + +
  • + WULA_Hositile + WULA_Hostile_Progressive_Light_Unit + true + WULA_Hostile_Group + 3~4 + AncientsHostile + DefendBase + MapGeneration +
  • + + +
  • + (31, 0, 39) + +
  • + WULA_Hositile + WULA_Hostile_Progressive_Light_Unit + true + WULA_Hostile_Group + 3~4 + AncientsHostile + DefendBase + MapGeneration +
  • + + +
  • + (40, 0, 31) + +
  • + WULA_Hositile + WULA_Hostile_Progressive_Light_Unit + true + WULA_Hostile_Group + 3~4 + AncientsHostile + DefendBase + MapGeneration +
  • + + +
  • + (48, 0, 40) + +
  • + WULA_Hositile + WULA_Hostile_Progressive_Light_Unit + true + WULA_Hostile_Group + 3~4 + AncientsHostile + DefendBase + MapGeneration +
  • + + +
  • RoofRockThick @@ -157,8 +344,8 @@
  • (14,11,14,12)
  • (12,15,12,22)
  • (15,12,22,12)
  • -
  • (16,13,16,14)
  • (13,16,14,16)
  • +
  • (16,13,16,14)
  • (20,13,20,14)
  • (13,20,14,20)
  • (10,22,11,22)
  • @@ -167,18 +354,18 @@
  • (10,23,10,26)
  • (26,11,26,12)
  • (11,26,12,26)
  • -
  • (15,26,16,26)
  • (26,15,29,15)
  • +
  • (15,26,16,26)
  • (26,16,26,16)
  • (15,27,15,29)
  • -
  • (11,30,13,30)
  • (30,11,34,11)
  • +
  • (11,30,13,30)
  • (30,12,30,13)
  • (11,31,11,34)
  • -
  • (31,15,34,15)
  • (15,31,15,34)
  • -
  • (12,34,12,38)
  • +
  • (31,15,34,15)
  • (34,12,38,12)
  • +
  • (12,34,12,38)
  • (16,34,16,34)
  • (34,16,34,16)
  • (38,13,38,15)
  • @@ -191,68 +378,68 @@
  • (12,42,12,45)
  • (45,11,49,11)
  • (11,45,11,49)
  • -
  • (45,15,48,15)
  • (15,45,16,45)
  • -
  • (41,24,43,24)
  • +
  • (45,15,48,15)
  • (24,41,24,43)
  • +
  • (41,24,43,24)
  • (45,16,45,16)
  • (15,46,15,48)
  • -
  • (49,12,49,13)
  • (12,49,13,49)
  • +
  • (49,12,49,13)
  • (50,15,53,15)
  • (15,50,15,53)
  • -
  • (53,10,57,10)
  • (10,53,12,53)
  • +
  • (53,10,57,10)
  • (53,11,53,12)
  • (10,54,10,57)
  • -
  • (53,16,53,16)
  • (16,53,16,53)
  • +
  • (53,16,53,16)
  • (11,57,12,57)
  • (57,11,57,12)
  • -
  • (12,58,12,65)
  • (58,12,65,12)
  • +
  • (12,58,12,65)
  • (13,59,14,59)
  • (59,13,59,14)
  • (13,63,14,63)
  • (63,13,63,14)
  • (36,55,38,55)
  • (55,36,55,38)
  • -
  • (10,65,11,65)
  • (65,10,69,10)
  • +
  • (10,65,11,65)
  • (65,11,65,11)
  • (10,66,10,69)
  • -
  • (16,65,16,67)
  • (65,16,67,16)
  • -
  • (65,20,67,20)
  • +
  • (16,65,16,67)
  • (20,65,20,67)
  • -
  • (63,26,64,26)
  • +
  • (65,20,67,20)
  • (26,63,26,64)
  • +
  • (63,26,64,26)
  • (14,67,15,67)
  • (67,14,69,14)
  • (41,55,43,55)
  • (55,41,55,43)
  • (67,15,67,15)
  • -
  • (67,17,67,19)
  • (17,67,19,67)
  • +
  • (67,17,67,19)
  • (14,68,14,69)
  • -
  • (64,27,64,29)
  • (27,64,29,64)
  • -
  • (69,11,69,13)
  • +
  • (64,27,64,29)
  • (11,69,13,69)
  • -
  • (21,67,22,67)
  • +
  • (69,11,69,13)
  • (67,21,67,22)
  • +
  • (21,67,22,67)
  • (31,64,34,64)
  • (64,31,64,34)
  • (22,68,22,69)
  • (68,22,69,22)
  • -
  • (63,34,63,34)
  • (34,63,34,63)
  • +
  • (63,34,63,34)
  • (26,67,26,69)
  • (67,26,69,26)
  • (30,66,30,68)
  • (66,30,68,30)
  • -
  • (23,69,25,69)
  • (69,23,69,25)
  • +
  • (23,69,25,69)
  • (64,38,67,38)
  • (38,64,38,67)
  • (68,31,68,34)
  • @@ -263,20 +450,20 @@
  • (41,64,41,67)
  • (45,63,45,64)
  • (63,45,64,45)
  • -
  • (64,46,64,48)
  • (46,64,48,64)
  • +
  • (64,46,64,48)
  • (42,67,45,67)
  • (67,42,67,45)
  • -
  • (50,64,53,64)
  • (64,50,64,53)
  • +
  • (50,64,53,64)
  • (45,68,49,68)
  • (68,45,68,49)
  • (66,49,67,49)
  • (49,66,49,67)
  • (63,53,63,53)
  • (53,63,53,63)
  • -
  • (67,53,69,53)
  • (53,67,53,69)
  • +
  • (67,53,69,53)
  • (69,54,69,57)
  • (54,69,57,69)
  • (59,65,59,67)
  • @@ -285,12 +472,12 @@
  • (57,67,58,67)
  • (67,58,67,58)
  • (57,68,57,68)
  • -
  • (60,67,65,67)
  • (67,60,67,65)
  • +
  • (60,67,65,67)
  • (63,65,63,66)
  • (65,63,66,63)
  • -
  • (65,68,65,69)
  • (68,65,69,65)
  • +
  • (65,68,65,69)
  • (66,69,69,69)
  • (69,66,69,68)
  • @@ -317,8 +504,8 @@
  • (28,27,28,28)
  • (27,28,27,28)
  • (17,35,17,38)
  • -
  • (36,19,38,19)
  • (19,36,21,36)
  • +
  • (36,19,38,19)
  • (28,30,28,36)
  • (30,28,36,28)
  • (36,20,36,21)
  • @@ -393,25 +580,25 @@
  • (60,37,60,38)
  • (35,62,38,62)
  • (62,35,62,38)
  • -
  • (57,43,60,43)
  • (43,57,43,60)
  • -
  • (50,52,51,52)
  • +
  • (57,43,60,43)
  • (52,50,57,50)
  • +
  • (50,52,51,52)
  • (57,45,57,49)
  • (45,57,50,57)
  • -
  • (60,41,60,42)
  • (41,60,42,60)
  • +
  • (60,41,60,42)
  • (50,53,50,56)
  • -
  • (62,41,62,45)
  • (41,62,45,62)
  • +
  • (62,41,62,45)
  • (53,53,57,53)
  • (45,60,53,60)
  • (60,45,61,45)
  • (60,46,60,53)
  • (53,54,53,57)
  • (45,61,45,61)
  • -
  • (53,59,53,59)
  • (59,53,59,53)
  • +
  • (53,59,53,59)
  • (61,53,62,53)
  • (53,61,53,62)
  • (62,54,62,62)
  • @@ -604,14 +791,17 @@
  • Wula_DarkEnergy_Generators AncientsHostile - 1.98768 - (54,0,32) -
  • -
  • - Wula_DarkEnergy_Generators - AncientsHostile - 1.98768663 - (32,0,25) + 2 + +
  • (25,32,25,32)
  • +
  • (32,25,32,25)
  • +
  • (25,47,25,47)
  • +
  • (47,25,47,25)
  • +
  • (32,54,32,54)
  • +
  • (54,32,54,32)
  • +
  • (47,54,47,54)
  • +
  • (54,47,54,47)
  • +
  • Wula_Disturber_Turret @@ -623,42 +813,31 @@
  • (47,47,47,47)
  • -
  • - Wula_DarkEnergy_Generators - AncientsHostile - 1.98771334 - (32,0,54) -
  • -
  • - Wula_DarkEnergy_Generators - AncientsHostile - 1.98772669 - (25,0,47) -
  • -
  • - Wula_DarkEnergy_Generators - AncientsHostile - 1.98775172 - (47,0,25) -
  • -
  • - Wula_DarkEnergy_Generators - AncientsHostile - 1.98775339 - (47,0,54) -
  • -
  • - Wula_DarkEnergy_Generators - AncientsHostile - 1.98776674 - (25,0,32) -
  • -
  • - Wula_DarkEnergy_Generators - AncientsHostile - 1.98778009 - (54,0,47) -
  • + + WULA_Boss_Super_Fortress_UI_2 + + Wula/Events/Portraits/WULA_Legion_1 + 「军团」,P.I.A + +
  • 不错,你们确实是我最值得信赖的下属,我还在想这个要塞对你们来说会不会太大了一点。\n\n许可已经给你们准备好了,你们随时可以部署火山炮以打击帝国之敌。现在,把人员从那个堡垒撤出吧,我们的舰队会用舰炮把这里洗个底朝天。
  • +
    + +
  • + + false + +
  • + +
  • + Wula_Disturber_Turret_Technology +
  • +
  • + +
  • + + +
    +
    \ No newline at end of file diff --git a/1.6/1.6/Defs/ResearchProjectDefs/WULA_ResearchProjects_Remake.xml b/1.6/1.6/Defs/ResearchProjectDefs/WULA_ResearchProjects_Remake.xml index c7d6b390..c2ff072e 100644 --- a/1.6/1.6/Defs/ResearchProjectDefs/WULA_ResearchProjects_Remake.xml +++ b/1.6/1.6/Defs/ResearchProjectDefs/WULA_ResearchProjects_Remake.xml @@ -522,12 +522,15 @@ Wula_Disturber_Turret_Technology 11.00 0.90 - - 允许殖民地申请空投四联装舰炮,以毁灭性的等离子风暴连射毁灭一切帝国之敌。 + + 允许殖民地申请空投四联装火山炮,以毁灭性的熔岩风暴抹去一切帝国之敌。\n\n这种武备对殖民地来说是过剩的,并不是所有的殖民地都有能力拿到这个许可··· 4500 - -
  • WULA_Turret_Base_Mortar_Technology
  • -
    + 9999 + 0 + 0 + +
  • Wula_PIA_Legion_Faction
  • +
    diff --git a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Mech_Buildings.xml b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Mech_Buildings.xml index de2b2a7f..5625d42d 100644 --- a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Mech_Buildings.xml +++ b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Mech_Buildings.xml @@ -468,8 +468,7 @@ Normal None - Wula_Mech_Mobile_Factory - WULA_Mech_Flyer + Wula_Psi_Titan
  • BuildingsMisc
  • diff --git a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Turret_Buildings.xml b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Turret_Buildings.xml index c608c50d..758752ac 100644 --- a/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Turret_Buildings.xml +++ b/1.6/1.6/Defs/ThingDefs_Buildings/WULA_Turret_Buildings.xml @@ -486,13 +486,13 @@ 6 1.5 -
  • +
  • true
  • @@ -1641,7 +1641,7 @@
  • CompPowerTrader - 300 + 1500
  • 6 diff --git a/1.6/1.6/Defs/ThingDefs_Misc/WULA_Flyover_Item.xml b/1.6/1.6/Defs/ThingDefs_Misc/WULA_Flyover_Item.xml index f6ac2df6..09cae253 100644 --- a/1.6/1.6/Defs/ThingDefs_Misc/WULA_Flyover_Item.xml +++ b/1.6/1.6/Defs/ThingDefs_Misc/WULA_Flyover_Item.xml @@ -2011,7 +2011,7 @@
  • (1, -31)
  • - 35 + 25 WULA_DarkMatterBomb 1 CraterLarge diff --git a/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Manpack_Weapon.xml b/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Manpack_Weapon.xml index 8a3d2e49..1cb0a857 100644 --- a/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Manpack_Weapon.xml +++ b/1.6/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Manpack_Weapon.xml @@ -1173,6 +1173,92 @@
    + + WULA_RW_SuperLongRange_RF + + 乌拉帝国的重型磁轨狙击枪,射程比制式磁轨狙击枪远得多,虽然需要一些时间瞄准但是拥有堪比战车炮的破坏力。这种现役武器不会轻易下发给边缘世界这样的边陲星区······ + Spacer + + Wula/Weapon/WULA_RW_SuperLongRange_RF/WULA_RW_SuperLongRange_RF + Graphic_Single + 1.5 + + + Interact_Rifle + +
  • WULA_RW_SuperLongRange_RF
  • +
    + + 1200 + 3.5 + 0.3 + 0.7 + 1 + 1 + 1.5 + + + 300 + 25 + 12 + + +
  • + WulaFallenEmpire.Verb_ShootWithOffset + true + Bullet_WULA_RW_SuperLongRange_RF + 1.75 + 500 + 1 + WULA_RW_Railgun_Shootingsound + GunTail_Medium + 9 + false +
  • +
    + +
  • + Wula/Weapon/WULA_RW_SuperLongRange_RF/WULA_RW_SuperLongRange_RF_Anim + 8 + 8 +
  • +
    + +
  • + +
  • (0, -1.0)
  • + + +
    +
    + + Bullet_WULA_RW_SuperLongRange_RF + + WulaFallenEmpire.Projectile_WulaLineAttack + +
  • + -1 + 0 + true + WULA_GunTail_Lighting_Small + 0 + Bullet_WULA_RW_Fractal_RF_Hit +
  • +
    + + Wula/Projectile/WULA_Bullet_Needle_AT + Graphic_Single + TransparentPostLight + 1.4 + + + WULA_Armour_Piercing_Projectile_4_Damage + 150 + 130 + 2 + 10 + +
    diff --git a/1.6/1.6/Defs/ThingDefs_Races/Races_Wulaspecies.xml b/1.6/1.6/Defs/ThingDefs_Races/Races_Wulaspecies.xml index 25a1d4b4..75b0e42f 100644 --- a/1.6/1.6/Defs/ThingDefs_Races/Races_Wulaspecies.xml +++ b/1.6/1.6/Defs/ThingDefs_Races/Races_Wulaspecies.xml @@ -1011,6 +1011,41 @@ 4 + + Mech_WULA_Cat_Cloak_Sniper + + 由乌拉帝国的进步派叛军改装的乌拉猫猫机械体,手持一把特殊的磁轨狙击枪,可以凭借光学迷彩和娇小身形隐藏在野外,随时准备给敌人一发冷枪。 + Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_south + + + + true + + + false + + + + 0.5 + 0.5 + + 6 + + +
  • + WULA_Cat_Invisibility + 120 + true +
  • +
  • + +
  • WULA_Cat_Invisibility
  • + + 1.0 + false + +
    +
    diff --git a/1.6/1.6/Defs/ThinkTreeDefs/WULA_AutonomousMech.xml b/1.6/1.6/Defs/ThinkTreeDefs/WULA_AutonomousMech.xml index 345f9a57..c09c45e7 100644 --- a/1.6/1.6/Defs/ThinkTreeDefs/WULA_AutonomousMech.xml +++ b/1.6/1.6/Defs/ThinkTreeDefs/WULA_AutonomousMech.xml @@ -4,6 +4,16 @@ WULA_AutonomousMech +
  • + Mech_WULA_Cat_Cloak_Sniper + +
  • + 500 + 500 +
  • +
    + +
  • Despawned diff --git a/1.6/1.6/Languages/ChineseSimplified (简体中文)/DefInjected/QuestScriptDef/WULA_Boss_Super_Fortress.xml b/1.6/1.6/Languages/ChineseSimplified (简体中文)/DefInjected/QuestScriptDef/WULA_Boss_Super_Fortress.xml new file mode 100644 index 00000000..a342b125 --- /dev/null +++ b/1.6/1.6/Languages/ChineseSimplified (简体中文)/DefInjected/QuestScriptDef/WULA_Boss_Super_Fortress.xml @@ -0,0 +1,9 @@ + + + +
  • questName->特殊任务:清扫巨型要塞
  • + + +
  • questDescription->乌拉帝国行星封锁机关的总控AI向殖民地发送了一个特殊的请求,一座装备了火山炮的<color=#C87451><i>巨型要塞</i></color>被发现,它不处于行星封锁机关的控制下,很可能是叛军的一个根据地,你的殖民地必须使用一切力量将其消灭。行星封锁机关为殖民地提供了以下信息:\n\n<color=#9F0400><i>-先发制人</i></color> 这个要塞已经被乌拉帝国舰队的EMP炮弹攻击过,需要一段时间才能重启防御系统——但是从轰炸效果来说,这个空窗时间可能不会太长\n<color=#9F0400><i>-炼狱号角</i></color> 要塞中有四门火山炮,一旦其重启完成,将对所有进攻部队造成毁灭性打击,应该优先解决\n<color=#9F0400><i>-碉楼林立</i></color> 要塞被多层防御设施所保护,正面攻击会非常花费时间,并且要塞的顶部进行了特别加厚,厚度堪比岩顶\n<color=#9F0400><i>-草木皆兵</i></color> 要塞附近很可能有别的不可见的埋伏,舰队在此处检测到的活动迹象与目视不匹配\n\n行星封锁机关承诺,一旦摧毁<color=#C87451><i>巨型要塞</i></color>,她们就会派遣舰队轰炸残余的设施,并为殖民地开放火山炮的申请权限。
  • +
    + \ No newline at end of file diff --git a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_east.dds b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_east.dds similarity index 100% rename from 美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_east.dds rename to Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_east.dds diff --git a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_east.png b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_east.png similarity index 100% rename from 美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_east.png rename to Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_east.png diff --git a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_north.dds b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_north.dds similarity index 100% rename from 美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_north.dds rename to Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_north.dds diff --git a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_north.png b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_north.png similarity index 100% rename from 美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_north.png rename to Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_north.png diff --git a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_south.dds b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_south.dds similarity index 100% rename from 美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_south.dds rename to Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_south.dds diff --git a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_south.png b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_south.png similarity index 100% rename from 美术与文本源文件/Wula/Things/WULA_Commander_Cat/AllegianceOverlays/None_south.png rename to Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_south.png diff --git a/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_east.png b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_east.png new file mode 100644 index 00000000..3043746c Binary files /dev/null and b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_east.png differ diff --git a/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_north.png b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_north.png new file mode 100644 index 00000000..c59cb496 Binary files /dev/null and b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_north.png differ diff --git a/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_south.png b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_south.png new file mode 100644 index 00000000..c1d0e05b Binary files /dev/null and b/Content/Textures/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_south.png differ diff --git a/Content/Textures/Wula/Weapon/WULA_RW_DM_AR.png b/Content/Textures/Wula/Weapon/WULA_RW_DM_AR.png deleted file mode 100644 index d7e62e81..00000000 Binary files a/Content/Textures/Wula/Weapon/WULA_RW_DM_AR.png and /dev/null differ diff --git a/Content/Textures/Wula/Weapon/WULA_RW_SuperLongRange_RF/WULA_RW_SuperLongRange_RF.png b/Content/Textures/Wula/Weapon/WULA_RW_SuperLongRange_RF/WULA_RW_SuperLongRange_RF.png new file mode 100644 index 00000000..43d46fa4 Binary files /dev/null and b/Content/Textures/Wula/Weapon/WULA_RW_SuperLongRange_RF/WULA_RW_SuperLongRange_RF.png differ diff --git a/Content/Textures/Wula/Weapon/WULA_RW_SuperLongRange_RF/WULA_RW_SuperLongRange_RF_Anim.png b/Content/Textures/Wula/Weapon/WULA_RW_SuperLongRange_RF/WULA_RW_SuperLongRange_RF_Anim.png new file mode 100644 index 00000000..a27ab7a7 Binary files /dev/null and b/Content/Textures/Wula/Weapon/WULA_RW_SuperLongRange_RF/WULA_RW_SuperLongRange_RF_Anim.png differ diff --git a/Source/WulaFallenEmpire/Pawn/WULA_AutonomousMech/CompAutonomousMech.cs b/Source/WulaFallenEmpire/Pawn/WULA_AutonomousMech/CompAutonomousMech.cs index cc921a5c..348fc874 100644 --- a/Source/WulaFallenEmpire/Pawn/WULA_AutonomousMech/CompAutonomousMech.cs +++ b/Source/WulaFallenEmpire/Pawn/WULA_AutonomousMech/CompAutonomousMech.cs @@ -217,6 +217,12 @@ namespace WulaFallenEmpire /// private Gizmo CreateWeaponSwitchGizmo() { + // 检查Pawn是否属于玩家派系 + if (MechPawn?.Faction != Faction.OfPlayer) + { + return null; // 非玩家派系时不显示 + } + Command_Action switchWeaponCommand = new Command_Action { defaultLabel = "WULA_SwitchWeapon".Translate(), @@ -224,7 +230,6 @@ namespace WulaFallenEmpire icon = ContentFinder.Get("Wula/UI/Abilities/WULA_WeaponSwitchAbility", false) ?? BaseContent.BadTex, action = SwitchWeapon }; - return switchWeaponCommand; } diff --git a/Source/WulaFallenEmpire/Pawn/WULA_Cat_Invisible/CompFighterInvisible.cs b/Source/WulaFallenEmpire/Pawn/WULA_Cat_Invisible/CompFighterInvisible.cs new file mode 100644 index 00000000..ac35618a --- /dev/null +++ b/Source/WulaFallenEmpire/Pawn/WULA_Cat_Invisible/CompFighterInvisible.cs @@ -0,0 +1,274 @@ +using System.Collections.Generic; +using RimWorld; +using UnityEngine; +using Verse; +using Verse.AI; +using Verse.AI.Group; +using Verse.Sound; + +namespace WulaFallenEmpire +{ + public class CompFighterInvisible : ThingComp + { + public CompProperties_FighterInvisible Props => (CompProperties_FighterInvisible)props; + [Unsaved(false)] + private HediffComp_Invisibility invisibility; + private int lastDetectedTick = -99999; + private int lastRevealedTick = -99999; + private Pawn Sightstealer => (Pawn)parent; + + // 新增:记录最后一次检查敌人的时间 + private int lastEnemyCheckTick = -99999; + + public HediffDef GetTargetInvisibilityDef() + { + return Props.InvisibilityDef; + } + + // 添加一个属性来检查是否有效 + private bool IsValid => Sightstealer?.health?.hediffSet != null && + GetTargetInvisibilityDef() != null && + !Sightstealer.IsShambler && + Sightstealer.Spawned && + Sightstealer.Map != null; + + private HediffComp_Invisibility Invisibility + { + get + { + if (!IsValid) return null; + return invisibility ?? (invisibility = Sightstealer.health.hediffSet + .GetFirstHediffOfDef(GetTargetInvisibilityDef()) + ?.TryGetComp()); + } + } + + public override void PostExposeData() + { + base.PostExposeData(); + Scribe_Values.Look(ref lastDetectedTick, "lastDetectedTick", 0); + Scribe_Values.Look(ref lastRevealedTick, "lastRevealedTick", 0); + Scribe_Values.Look(ref lastEnemyCheckTick, "lastEnemyCheckTick", 0); + } + + public override void CompTick() + { + // 使用统一的有效性检查 + if (!IsValid || Invisibility == null) return; + + // 检查敌人 + CheckForEnemiesInSight(); + + // 隐身恢复逻辑 + if (Sightstealer.IsHashIntervalTick(Props.CheckDetectedIntervalTicks)) + { + if (Find.TickManager.TicksGame > lastDetectedTick + Props.stealthCooldownTicks) + { + Invisibility.BecomeInvisible(); + } + } + } + + public override void Notify_UsedVerb(Pawn pawn, Verb verb) + { + base.Notify_UsedVerb(pawn, verb); + + // 统一的 null 检查 + if (Invisibility == null) return; + + Invisibility.BecomeVisible(); + lastDetectedTick = Find.TickManager.TicksGame; + } + + /// + /// 检查视线内是否有敌人 + /// + private void CheckForEnemiesInSight() + { + + // 检查频率:每30 tick检查一次(约0.5秒) + if (!Sightstealer.IsHashIntervalTick(30) || + Find.TickManager.TicksGame <= lastEnemyCheckTick + 30) + { + return; + } + + lastEnemyCheckTick = Find.TickManager.TicksGame; + + // 如果配置为只在战斗状态时检查,且当前不在战斗状态,则跳过 + if (Props.onlyCheckInCombat && !IsInCombatState()) + { + return; + } + + // 检查视线内是否有敌人 + bool enemyInSight = false; + List enemiesInSight = new List(); + + // 获取地图上所有Pawn + IReadOnlyList allPawns = Sightstealer.Map.mapPawns.AllPawnsSpawned; + + foreach (Pawn otherPawn in allPawns) + { + // 跳过自身 + if (otherPawn == Sightstealer) continue; + + // 跳过自律机械 + if (otherPawn.GetComp() != null) continue; + + // 跳过死亡的 + if (otherPawn.Dead) continue; + + // 跳过倒地的(如果配置为忽略) + if (Props.ignoreDownedEnemies && otherPawn.Downed) continue; + + // 跳过睡着的(如果配置为忽略) + if (Props.ignoreSleepingEnemies && otherPawn.CurJobDef == JobDefOf.LayDown) continue; + + // 检查是否为敌对关系 + if (!otherPawn.HostileTo(Sightstealer)) continue; + + // 检查敌人类型过滤器(如果有) + if (Props.enemyTypeFilter != null && Props.enemyTypeFilter.Count > 0) + { + if (!Props.enemyTypeFilter.Contains(otherPawn.def)) continue; + } + + // 关键修改:直接检查直线可见性,不使用距离限制 + if (GenSight.LineOfSight(Sightstealer.Position, otherPawn.Position, Sightstealer.Map)) + { + enemiesInSight.Add(otherPawn); + enemyInSight = true; + + // 如果只需要知道是否有敌人,且已经找到一个,可以提前退出循环 + if (Props.minEnemiesToReveal <= 1) + { + break; + } + } + } + + // 如果启用敌人检测后解除隐身,并且发现了足够数量的敌人 + if (enemyInSight && Props.revealOnEnemyInSight && enemiesInSight.Count >= Props.minEnemiesToReveal) + { + // 立即解除隐身 + Invisibility.BecomeVisible(); + lastDetectedTick = Find.TickManager.TicksGame; + lastRevealedTick = Find.TickManager.TicksGame; + + // 可选:添加视觉或声音效果 + if (Props.showRevealEffect) + { + ShowRevealEffect(enemiesInSight); + } + + // 可选:发送消息 + if (Props.sendRevealMessage && Sightstealer.Faction == Faction.OfPlayer) + { + SendRevealMessage(enemiesInSight); + } + } + } + + /// + /// 检查是否处于战斗状态 + /// + private bool IsInCombatState() + { + // 如果有当前工作且是战斗相关工作 + if (Sightstealer.CurJob != null) + { + JobDef jobDef = Sightstealer.CurJob.def; + if (jobDef == JobDefOf.AttackMelee || + jobDef == JobDefOf.AttackStatic || + jobDef == JobDefOf.Wait_Combat || + jobDef == JobDefOf.Flee || + jobDef == JobDefOf.FleeAndCower) + { + return true; + } + } + + // 如果有敌人目标 + if (Sightstealer.mindState.enemyTarget != null) + { + return true; + } + + // 如果最近受到过伤害 + if (Find.TickManager.TicksGame - Sightstealer.mindState.lastHarmTick < 300) // 最近5秒内受到伤害 + { + return true; + } + + // 如果最近攻击过目标 + if (Find.TickManager.TicksGame - Sightstealer.mindState.lastAttackTargetTick < 300) + { + return true; + } + + return false; + } + + /// + /// 显示解除隐身的效果 + /// + private void ShowRevealEffect(List enemies) + { + if (Sightstealer.Map == null) return; + + // 创建一个闪光效果 + FleckMaker.ThrowLightningGlow(Sightstealer.Position.ToVector3Shifted(), + Sightstealer.Map, 2f); + + // 可选:播放声音 + if (Props.revealSound != null) + { + Props.revealSound.PlayOneShot(new TargetInfo(Sightstealer.Position, Sightstealer.Map)); + } + } + + /// + /// 发送解除隐身消息 + /// + private void SendRevealMessage(List enemies) + { + if (enemies.Count == 0) return; + + string message; + if (enemies.Count == 1) + { + message = "WFE.RevealedBySingleEnemy".Translate( + Sightstealer.LabelShort, + enemies[0].LabelShort + ); + } + else + { + message = "WFE.RevealedByMultipleEnemies".Translate( + Sightstealer.LabelShort, + enemies.Count + ); + } + + Messages.Message(message, Sightstealer, MessageTypeDefOf.NeutralEvent); + } + + /// + /// 获取下次可以隐身的时间 + /// + public int NextInvisibilityTick => lastDetectedTick + Props.stealthCooldownTicks; + + /// + /// 手动触发解除隐身(供外部调用) + /// + public void ForceReveal() + { + if (Invisibility == null) return; + + Invisibility.BecomeVisible(); + lastDetectedTick = Find.TickManager.TicksGame; + lastRevealedTick = Find.TickManager.TicksGame; + } + } +} diff --git a/Source/WulaFallenEmpire/Pawn/WULA_Cat_Invisible/CompProperties_FighterInvisible.cs b/Source/WulaFallenEmpire/Pawn/WULA_Cat_Invisible/CompProperties_FighterInvisible.cs new file mode 100644 index 00000000..f48456db --- /dev/null +++ b/Source/WulaFallenEmpire/Pawn/WULA_Cat_Invisible/CompProperties_FighterInvisible.cs @@ -0,0 +1,73 @@ +using RimWorld; +using System.Collections.Generic; +using Verse; + +namespace WulaFallenEmpire +{ + public class CompProperties_FighterInvisible : CompProperties + { + public float BaseVisibleRadius = 14f; + public int UndetectedTimeout = 120; + public int CheckDetectedIntervalTicks = 7; + public float FirstDetectedRadius = 30f; + public int RevealedLetterDelayTicks = 6; + public int AmbushCallMTBTicks = 600; + + // 修改:一个可定义的提供隐身的hediff + public HediffDef InvisibilityDef; + + // 隐身冷却 + public int stealthCooldownTicks = 1200; + + // 新增:是否在视线内出现敌人时解除隐身 + public bool revealOnEnemyInSight = false; + + // 新增:解除隐身的检测半径(默认为FirstDetectedRadius) + public float revealDetectionRadius = 500f; + + // 新增:是否显示解除隐身效果 + public bool showRevealEffect = true; + + // 新增:解除隐身时的声音 + public SoundDef revealSound; + + // 新增:是否发送解除隐身消息 + public bool sendRevealMessage = false; + + // 新增:解除隐身的最小敌人数量(默认为1) + public int minEnemiesToReveal = 1; + + // 新增:敌人类型过滤器(空表示所有敌人) + public List enemyTypeFilter; + + // 新增:是否只在战斗状态时检查敌人 + public bool onlyCheckInCombat = false; + + // 新增:是否忽略某些状态的敌人(如倒地、死亡等) + public bool ignoreDownedEnemies = true; + public bool ignoreSleepingEnemies = false; + + public CompProperties_FighterInvisible() + { + compClass = typeof(CompFighterInvisible); + } + + public override IEnumerable ConfigErrors(ThingDef parentDef) + { + foreach (string error in base.ConfigErrors(parentDef)) + { + yield return error; + } + + if (InvisibilityDef == null) + { + yield return "InvisibilityDef is not defined for CompProperties_FighterInvisible"; + } + + if (revealDetectionRadius <= 0) + { + revealDetectionRadius = FirstDetectedRadius; + } + } + } +} diff --git a/Source/WulaFallenEmpire/WulaFallenEmpire.csproj b/Source/WulaFallenEmpire/WulaFallenEmpire.csproj index d2893ce1..1bf373b7 100644 --- a/Source/WulaFallenEmpire/WulaFallenEmpire.csproj +++ b/Source/WulaFallenEmpire/WulaFallenEmpire.csproj @@ -269,6 +269,8 @@ + + diff --git a/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_east.dds b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_east.dds new file mode 100644 index 00000000..b88cc944 Binary files /dev/null and b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_east.dds differ diff --git a/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_east.png b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_east.png new file mode 100644 index 00000000..37b54f7e Binary files /dev/null and b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_east.png differ diff --git a/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_north.dds b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_north.dds new file mode 100644 index 00000000..b88cc944 Binary files /dev/null and b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_north.dds differ diff --git a/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_north.png b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_north.png new file mode 100644 index 00000000..37b54f7e Binary files /dev/null and b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_north.png differ diff --git a/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_south.dds b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_south.dds new file mode 100644 index 00000000..b88cc944 Binary files /dev/null and b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_south.dds differ diff --git a/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_south.png b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_south.png new file mode 100644 index 00000000..37b54f7e Binary files /dev/null and b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/AllegianceOverlays/None_south.png differ diff --git a/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_east.png b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_east.png new file mode 100644 index 00000000..3043746c Binary files /dev/null and b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_east.png differ diff --git a/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_north.png b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_north.png new file mode 100644 index 00000000..c59cb496 Binary files /dev/null and b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_north.png differ diff --git a/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_south.png b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_south.png new file mode 100644 index 00000000..c1d0e05b Binary files /dev/null and b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_south.png differ diff --git a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_south.sai2 b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_south.sai2 similarity index 67% rename from 美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_south.sai2 rename to 美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_south.sai2 index 23b30846..2b45dc33 100644 Binary files a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_south.sai2 and b/美术与文本源文件/Wula/Things/WULA_Cloak_Sniper_Cat/WULA_Cat_Thin_south.sai2 differ diff --git a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_east.png b/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_east.png deleted file mode 100644 index 6863db28..00000000 Binary files a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_east.png and /dev/null differ diff --git a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_north.png b/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_north.png deleted file mode 100644 index e674be4f..00000000 Binary files a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_north.png and /dev/null differ diff --git a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_south.png b/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_south.png deleted file mode 100644 index ff0ec162..00000000 Binary files a/美术与文本源文件/Wula/Things/WULA_Commander_Cat/WULA_Cat_Thin_south.png and /dev/null differ diff --git a/美术与文本源文件/Wula/Things/WULA_bomb_Cat/WULA_Cat_Thin_south.sai2 b/美术与文本源文件/Wula/Things/WULA_bomb_Cat/WULA_Cat_Thin_south.sai2 index 57a3ff71..79fb771d 100644 Binary files a/美术与文本源文件/Wula/Things/WULA_bomb_Cat/WULA_Cat_Thin_south.sai2 and b/美术与文本源文件/Wula/Things/WULA_bomb_Cat/WULA_Cat_Thin_south.sai2 differ diff --git a/美术与文本源文件/Wula/Weapon/WULA_RW_DM_AR.sai2 b/美术与文本源文件/Wula/Weapon/WULA_RW_DM_AR.sai2 index 2daa602a..b822f9fe 100644 Binary files a/美术与文本源文件/Wula/Weapon/WULA_RW_DM_AR.sai2 and b/美术与文本源文件/Wula/Weapon/WULA_RW_DM_AR.sai2 differ diff --git a/美术与文本源文件/Wula/Weapon/WULA_RW_SuperLongRange_RF.sai2 b/美术与文本源文件/Wula/Weapon/WULA_RW_SuperLongRange_RF.sai2 new file mode 100644 index 00000000..1a7c889a Binary files /dev/null and b/美术与文本源文件/Wula/Weapon/WULA_RW_SuperLongRange_RF.sai2 differ