Esempio n. 1
0
 static void changeTarget(MetalDetector md, int dir)
 {
     if (dir != 0)
     {
         md.targetTechTypeIndex = MathUtils.mod(md.targetTechTypeIndex + dir, md.detectableTechTypes.Count);
     }
 }
        public static void Prefix(MetalDetector __instance)
        {
            var conf = Config.Instance;

            __instance.powerConsumption = conf.PowerConsumption;
            __instance.scanDistance     = conf.ScanDistance;
        }
        public static void Postfix(MetalDetector __instance, ResourceTrackerDatabase.ResourceInfo ___closestResourceNode, MetalDetector.ScreenState ___screenState)
        {
            if (!__instance.isDrawn || ___closestResourceNode == null || ___screenState != MetalDetector.ScreenState.Tracking)
            {
                return;
            }

            var vector = ___closestResourceNode.position - MainCamera.camera.transform.position;
            var len    = vector.magnitude;
            var y      = vector.y;

            __instance.screenTooltipText.text = $"{len:0}m ({y:0}m)";
        }
Esempio n. 4
0
            static string getCurrentTarget(MetalDetector md)
            {
                bool indexValid = MathUtils.isInRange(md.targetTechTypeIndex, md.detectableTechTypes.Count - 1);

                return(!indexValid? "": Language.main.Get(md.detectableTechTypes[md.targetTechTypeIndex].AsString()));
            }