コード例 #1
0
        public static ProjectorConfig GenerateEquipmentConfig(EquipmentVO equipmentVO, Action <RenderTexture, ProjectorConfig> callback, float width, float height)
        {
            IGeometryVO     vo = ProjectorUtils.DetermineVOForEquipment(equipmentVO);
            ProjectorConfig projectorConfig = ProjectorUtils.GenerateGeometryConfig(vo, callback, width, height);

            projectorConfig.buildingEquipmentShaderName = ProjectorUtils.GetEquipmentBuildingShaderName(equipmentVO);
            return(projectorConfig);
        }
コード例 #2
0
        public static ProjectorConfig GenerateEquipmentConfig(EquipmentVO equipmentVO, UXSprite frameSprite, bool closeup)
        {
            IGeometryVO     vo = ProjectorUtils.DetermineVOForEquipment(equipmentVO);
            ProjectorConfig projectorConfig = ProjectorUtils.GenerateGeometryConfig(vo, frameSprite, closeup);

            projectorConfig.buildingEquipmentShaderName = ProjectorUtils.GetEquipmentBuildingShaderName(equipmentVO);
            return(projectorConfig);
        }
コード例 #3
0
        public static ProjectorConfig GenerateGeometryConfig(IGeometryVO vo, Action <RenderTexture, ProjectorConfig> callback, float width, float height)
        {
            ProjectorConfig projectorConfig = ProjectorUtils.GenerateGeometryConfig(vo, null, false);

            projectorConfig.RenderCallback = callback;
            projectorConfig.RenderWidth    = width;
            projectorConfig.RenderHeight   = height;
            return(projectorConfig);
        }
コード例 #4
0
        public static ProjectorConfig GenerateBuildingConfig(BuildingTypeVO vo, UXSprite frameSprite)
        {
            ProjectorConfig projectorConfig = ProjectorUtils.GenerateGeometryConfig(vo, frameSprite, false);
            BuildingType    type            = vo.Type;

            if (type != BuildingType.Barracks)
            {
                if (type != BuildingType.Turret && type != BuildingType.Storage)
                {
                    if (type != BuildingType.Armory)
                    {
                        projectorConfig.AnimationName = "Active";
                    }
                    else
                    {
                        projectorConfig.AnimationName = "Idle";
                    }
                }
                else
                {
                    projectorConfig.AnimationName = null;
                }
            }
            else
            {
                projectorConfig.AnimationName = "IdleClosed";
            }
            BuildingType type2 = vo.Type;

            switch (type2)
            {
            case BuildingType.ChampionPlatform:
                projectorConfig.AttachmentAssets = new string[]
                {
                    vo.AssetName
                };
                return(projectorConfig);

            case BuildingType.Housing:
            case BuildingType.Squad:
IL_8F:
                if (type2 == BuildingType.Turret)
                {
                    if (!string.IsNullOrEmpty(vo.TurretUid))
                    {
                        TurretTypeVO turretTypeVO = Service.StaticDataController.Get <TurretTypeVO>(vo.TurretUid);
                        projectorConfig.TrackerName = turretTypeVO.TrackerName;
                    }
                    return(projectorConfig);
                }
                if (type2 != BuildingType.Trap)
                {
                    return(projectorConfig);
                }
                projectorConfig.SnapshotFrameDelay = 4;
                return(projectorConfig);

            case BuildingType.Starport:
                projectorConfig.Metered    = true;
                projectorConfig.MeterValue = 1f;
                return(projectorConfig);
            }
            goto IL_8F;
        }
コード例 #5
0
 public static ProjectorConfig GenerateGeometryConfig(IGeometryVO vo, UXSprite frameSprite)
 {
     return(ProjectorUtils.GenerateGeometryConfig(vo, frameSprite, false));
 }
コード例 #6
0
        public static ProjectorConfig GenerateBuildingConfig(BuildingTypeVO vo, UXSprite frameSprite)
        {
            ProjectorConfig projectorConfig = ProjectorUtils.GenerateGeometryConfig(vo, frameSprite, false);
            BuildingType    type            = vo.Type;

            if (type <= BuildingType.Turret)
            {
                if (type == BuildingType.Barracks)
                {
                    projectorConfig.AnimationName = "IdleClosed";
                    goto IL_5A;
                }
                if (type != BuildingType.Turret)
                {
                    goto IL_4F;
                }
            }
            else if (type != BuildingType.Storage)
            {
                if (type != BuildingType.Armory)
                {
                    goto IL_4F;
                }
                projectorConfig.AnimationName = "Idle";
                goto IL_5A;
            }
            projectorConfig.AnimationName = null;
            goto IL_5A;
IL_4F:
            projectorConfig.AnimationName = "Active";
IL_5A:
            type = vo.Type;
            if (type <= BuildingType.Starport)
            {
                if (type != BuildingType.ChampionPlatform)
                {
                    if (type == BuildingType.Starport)
                    {
                        projectorConfig.Metered    = true;
                        projectorConfig.MeterValue = 1f;
                    }
                }
                else
                {
                    projectorConfig.AttachmentAssets = new string[]
                    {
                        vo.AssetName
                    };
                }
            }
            else if (type != BuildingType.Turret)
            {
                if (type == BuildingType.Trap)
                {
                    projectorConfig.SnapshotFrameDelay = 4;
                }
            }
            else if (!string.IsNullOrEmpty(vo.TurretUid))
            {
                TurretTypeVO turretTypeVO = Service.Get <IDataController>().Get <TurretTypeVO>(vo.TurretUid);
                projectorConfig.TrackerName = turretTypeVO.TrackerName;
            }
            return(projectorConfig);
        }
コード例 #7
0
 public unsafe static long $Invoke7(long instance, long *args)
 {
     return(GCHandledObjects.ObjectToGCHandle(ProjectorUtils.GenerateGeometryConfig((IGeometryVO)GCHandledObjects.GCHandleToObject(*args), (Action <RenderTexture, ProjectorConfig>)GCHandledObjects.GCHandleToObject(args[1]), *(float *)(args + 2), *(float *)(args + 3))));
 }
コード例 #8
0
 public unsafe static long $Invoke6(long instance, long *args)
 {
     return(GCHandledObjects.ObjectToGCHandle(ProjectorUtils.GenerateGeometryConfig((IGeometryVO)GCHandledObjects.GCHandleToObject(*args), (UXSprite)GCHandledObjects.GCHandleToObject(args[1]), *(sbyte *)(args + 2) != 0)));
 }