@@ -132,25 +132,21 @@ private static void GameModeScreen_Init(GameModeScreen __instance)
132132 [ HarmonyPrefix ]
133133 [ HarmonyPatch ( typeof ( TechView ) , nameof ( TechView . CreateNode ) ) ]
134134 public static bool TechView_CreateNode ( TechView __instance , TechData data , TechItem parentItem , float angle ) {
135- float baseAngle = 360 / GameManager . GameState . GameLogicData . GetTechData ( TechData . Type . Basic ) . techUnlocks . Count ;
135+ GameLogicData gameLogicData = GameManager . GameState . GameLogicData ;
136+ TribeData tribeData = gameLogicData . GetTribeData ( GameManager . LocalPlayer . tribe ) ;
137+ float baseAngle = 360 / gameLogicData . GetOverride ( gameLogicData . GetTechData ( TechData . Type . Basic ) , tribeData ) . techUnlocks . Count ;
136138 float childAngle = 0f ;
137139 if ( parentItem != null )
138- {
139140 childAngle = angle + baseAngle * ( data . techUnlocks . Count - 1 ) / 2f ;
140- }
141- GameLogicData gameLogicData = GameManager . GameState . GameLogicData ;
142- TribeData tribeData = gameLogicData . GetTribeData ( GameManager . LocalPlayer . tribe ) ;
143141 foreach ( TechData techData in data . techUnlocks )
144142 {
145143 if ( gameLogicData . TryGetData ( techData . type , out TechData techData2 ) )
146144 {
147- TechData @override = GameManager . GameState . GameLogicData . GetOverride ( techData , tribeData ) ;
145+ TechData @override = gameLogicData . GetOverride ( techData , tribeData ) ;
148146 TechItem techItem = __instance . CreateTechItem ( @override , parentItem , childAngle ) ;
149147 __instance . currTechIdx ++ ;
150148 if ( @override . techUnlocks != null && @override . techUnlocks . Count > 0 )
151- {
152149 __instance . CreateNode ( @override , techItem , childAngle ) ;
153- }
154150 childAngle -= baseAngle ;
155151 }
156152 }
0 commit comments