Exemplo n.º 1
0
        private static void FlyGraphics_ctor(On.FlyGraphics.orig_ctor orig, FlyGraphics self, PhysicalObject ow)
        {
            orig(self, ow);

            customColor = null;
            World world = ow.abstractPhysicalObject.world;

            if (world != null && !world.singleRoomWorld && world.region != null)
            {
                foreach (KeyValuePair <string, string> keyValues in CustomWorldMod.activatedPacks)
                {
                    if (CustomWorldMod.installedPacks[keyValues.Key].regionConfig.TryGetValue(world.region.name,
                                                                                              out CustomWorldStructs.RegionConfiguration config))
                    {
                        if (!config.batVanilla)
                        {
                            CustomWorldMod.Log($"Glowing batfly in [{world.region.name}] from [{CustomWorldMod.installedPacks[keyValues.Key].name}]",
                                               false, CustomWorldMod.DebugLevel.FULL);
                            customColor = config.batFlyColor;
                            break;
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
        private static void FlyGraphics_InitiateSprites(On.FlyGraphics.orig_InitiateSprites orig, FlyGraphics self, RoomCamera.SpriteLeaser sLeaser,
                                                        RoomCamera rCam)
        {
            orig(self, sLeaser, rCam);
            if (customColor == null)
            {
                return;
            }

            FlyFields.GetField(self.owner as Fly).numberOfOrigSprites = sLeaser.sprites.Count();

            // scrapped
            return;

            try
            {
                Fly fly = self.owner as Fly;
                Array.Resize(ref sLeaser.sprites, FlyFields.GetField(fly).numberOfOrigSprites + 1);

                //LizardJaw3.0
                int extra = 0;
                FlyFields.GetField(fly).bodySprite = FlyFields.GetField(self.owner as Fly).numberOfOrigSprites + extra;
                sLeaser.sprites[FlyFields.GetField(fly).bodySprite] = new FSprite("LizardJaw3.2", true);

                sLeaser.sprites[FlyFields.GetField(fly).bodySprite].anchorX = 0.5f;
                sLeaser.sprites[FlyFields.GetField(fly).bodySprite].anchorY = 0.5f;
                sLeaser.sprites[FlyFields.GetField(fly).bodySprite].scaleX *= 0.25f;
                sLeaser.sprites[FlyFields.GetField(fly).bodySprite].scaleY *= -0.3f;
                extra++;

                /* Cant be bothered
                 * //LizardBubble6
                 * FlyFields.GetField(fly).wingEyeL = FlyFields.GetField(self.owner as Fly).numberOfOrigSprites + extra;
                 * sLeaser.sprites[FlyFields.GetField(fly).wingEyeL] = new FSprite("LizardBubble6", true);
                 * sLeaser.sprites[FlyFields.GetField(fly).wingEyeL].scaleX *= 0.25f;
                 * sLeaser.sprites[FlyFields.GetField(fly).wingEyeL].scaleY *= 0.25f;
                 * sLeaser.sprites[FlyFields.GetField(fly).wingEyeL].anchorX -= 0.5f;
                 * sLeaser.sprites[FlyFields.GetField(fly).wingEyeL].anchorY -= 0.5f;
                 * extra++;
                 *
                 * FlyFields.GetField(fly).wingEyeR = FlyFields.GetField(self.owner as Fly).numberOfOrigSprites + extra;
                 * sLeaser.sprites[FlyFields.GetField(fly).wingEyeR] = new FSprite("LizardBubble6", true);
                 * sLeaser.sprites[FlyFields.GetField(fly).wingEyeR].scaleX *= 0.25f;
                 * sLeaser.sprites[FlyFields.GetField(fly).wingEyeR].scaleY *= 0.25f;
                 * sLeaser.sprites[FlyFields.GetField(fly).wingEyeR].anchorX -= 0.5f;
                 * sLeaser.sprites[FlyFields.GetField(fly).wingEyeR].anchorY -= 0.5f;
                 * extra++;
                 */
                self.AddToContainer(sLeaser, rCam, null);
            }
            catch (Exception e)
            {
                CustomWorldMod.Log("Batfly crash " + e, true);
            }
        }
Exemplo n.º 3
0
        // scrapped
        private static void FlyGraphics_DrawSprites(On.FlyGraphics.orig_DrawSprites orig, FlyGraphics self, RoomCamera.SpriteLeaser sLeaser,
                                                    RoomCamera rCam, float timeStacker, Vector2 camPos)
        {
            orig(self, sLeaser, rCam, timeStacker, camPos);
            Fly fly = self.owner as Fly;

            sLeaser.sprites[FlyFields.GetField(fly).bodySprite].x        = sLeaser.sprites[0].x;
            sLeaser.sprites[FlyFields.GetField(fly).bodySprite].y        = sLeaser.sprites[0].y;
            sLeaser.sprites[FlyFields.GetField(fly).bodySprite].rotation = sLeaser.sprites[0].rotation;

            sLeaser.sprites[FlyFields.GetField(fly).wingEyeL].x        = sLeaser.sprites[1].x;
            sLeaser.sprites[FlyFields.GetField(fly).wingEyeL].y        = sLeaser.sprites[1].y;
            sLeaser.sprites[FlyFields.GetField(fly).wingEyeL].rotation = sLeaser.sprites[1].rotation;

            sLeaser.sprites[FlyFields.GetField(fly).wingEyeR].x        = sLeaser.sprites[2].x;
            sLeaser.sprites[FlyFields.GetField(fly).wingEyeR].y        = sLeaser.sprites[2].y;
            sLeaser.sprites[FlyFields.GetField(fly).wingEyeR].rotation = sLeaser.sprites[2].rotation;
        }
Exemplo n.º 4
0
        private static void FlyGraphics_ApplyPalette(On.FlyGraphics.orig_ApplyPalette orig, FlyGraphics self, RoomCamera.SpriteLeaser sLeaser,
                                                     RoomCamera rCam, RoomPalette palette)
        {
            orig(self, sLeaser, rCam, palette);

            if ((self.owner as Creature).dead || customColor == null)
            {
                return;
            }

            // Eye color
            sLeaser.sprites[3].color = customColor ?? palette.blackColor;

            // Scrapped
            for (int i = FlyFields.GetField(self.owner as Fly).numberOfOrigSprites - 1; i < sLeaser.sprites.Count(); i++)
            {
                sLeaser.sprites[i].color = customColor ?? palette.blackColor;
            }
        }