protected override void Initialize(SeedOptions options) { if (ItemInfo == null) { return; } if (IsPickedUp) { Dynamic.Kill(); } Dynamic.ChangeAnimation(ItemInfo.AnimationIndex); hasCardC = Level.GameSave.Inventory.RelicInventory.Inventory.ContainsKey((int)EInventoryRelicType.ScienceKeycardC); }
protected override void Initialize(SeedOptions options) { if (ItemInfo == null) { return; } if (IsPickedUp) { Dynamic.Kill(); } else { Dynamic.IsFound = false; hasDroppedLoot = false; } Dynamic._itemData = ItemInfo.BestiaryItemDropSpecification; Dynamic._category = ItemInfo.Identifier.LootType.ToEInventoryCategoryType(); switch (ItemInfo.Identifier.LootType) { case LootType.ConstRelic: Dynamic._relicType = ItemInfo.Identifier.Relic; break; case LootType.ConstUseItem: Dynamic._useItemType = ItemInfo.Identifier.UseItem; break; case LootType.ConstEquipment: Dynamic._equipmentType = ItemInfo.Identifier.Equipment; break; case LootType.ConstStat: case LootType.ConstOrb: case LootType.ConstFamiliar: Dynamic._category = EInventoryCategoryType.Equipment; Dynamic._equipmentType = EInventoryEquipmentType.None; break; default: throw new NotImplementedException($"LoottType {ItemInfo.Identifier.LootType} is not supported by ItemDropPickup"); } Dynamic.ChangeAnimation(ItemInfo.AnimationIndex); }
void RebuildScreen() { Dynamic.ChangeAnimation(23); var particles = new PassiveBuffSparkleParticleSystem(Level.GCM.TxParticleEnergy, 10); Dynamic._sparkleParticles = particles; ((List <ParticleSystem>)Dynamic._particleSystems).Add(particles); var appendage = new Appendage((Animate)TypedObject, new Point(10, 17), Point.Zero, Level, Dynamic._sprite) { FollowType = EAppendageFollowType.AnchorLocked, AnchorOffset = new Point(0, -25), DrawPriority = 1, IsGlowing = true, GlowBase = 3.5f, }; appendage.AsDynamic().GlowColor = new Color(0.8f, 0.85f, 0.9f, 0.6f); appendage.ChangeAnimation(24); Dynamic._screenAppendage = appendage; ((List <Appendage>)Dynamic._appendages).Add(appendage); var glowTexture = GlowTextureType.CreateInstance(true, Level); var dynamicGlowTexture = glowTexture.AsDynamic(); dynamicGlowTexture.GlowSpriteSheet = Dynamic._sprite; dynamicGlowTexture.FrameIndex = 24; dynamicGlowTexture.GlowCircleCount = 6; dynamicGlowTexture.Center = new Point(TypedObject.Position.X, TypedObject.Position.Y - 36); dynamicGlowTexture.GlowCircleWidth = 32; dynamicGlowTexture.GlowCircleHeight = 32; Dynamic._glowTexture = glowTexture; Dynamic._isUsable = true; }