Example #1
0
        public static void Init(AssetBundle expandSharedAssets1)
        {
            m_BlinkPassive = PickupObjectDatabase.GetById(436).GetComponent <BlinkPassiveItem>();

            if (!m_BlinkPassive)
            {
                return;
            }

            EXRedScarfObject = expandSharedAssets1.LoadAsset <GameObject>("Bloodied Scarf");
            EXRedScarfObject.AddComponent <ExpandRedScarf>();
            EXRedScarfObject.AddComponent <tk2dSprite>();
            ExpandUtility.DuplicateSprite(EXRedScarfObject.GetComponent <tk2dSprite>(), m_BlinkPassive.GetComponent <tk2dSprite>());

            ExpandRedScarf redScarf = EXRedScarfObject.GetComponent <ExpandRedScarf>();

            ItemBuilder.SetupItem(redScarf, "Blink Away", "Dodge roll is augmented with a blink\n\nThis simple scarf was once worn by a skilled assassin. Betrayed by his brothers and assumed dead...", "ex");
            ItemBuilder.AddPassiveStatModifier(redScarf, PlayerStats.StatType.ReloadSpeed, 1.3f, StatModifier.ModifyMethod.MULTIPLICATIVE);
            // redScarf.PickupObjectId = m_BlinkPassive.PickupObjectId;
            redScarf.itemName       = "Red Bandana";
            redScarf.PickupObjectId = 436;
            redScarf.quality        = m_BlinkPassive.quality;
            if (!ExpandSettings.EnableEXItems)
            {
                redScarf.quality = ItemQuality.EXCLUDED;
            }
            redScarf.additionalMagnificenceModifier = m_BlinkPassive.additionalMagnificenceModifier;
            redScarf.ItemSpansBaseQualityTiers      = m_BlinkPassive.ItemSpansBaseQualityTiers;
            redScarf.ItemRespectsHeartMagnificence  = m_BlinkPassive.ItemRespectsHeartMagnificence;
            redScarf.associatedItemChanceMods       = m_BlinkPassive.associatedItemChanceMods;
            redScarf.contentSource             = m_BlinkPassive.contentSource;
            redScarf.ShouldBeExcludedFromShops = m_BlinkPassive.ShouldBeExcludedFromShops;
            redScarf.CanBeDropped = m_BlinkPassive.CanBeDropped;
            redScarf.PreventStartingOwnerFromDropping = m_BlinkPassive.PreventStartingOwnerFromDropping;
            redScarf.PersistsOnDeath   = m_BlinkPassive.PersistsOnDeath;
            redScarf.RespawnsIfPitfall = m_BlinkPassive.RespawnsIfPitfall;
            redScarf.PreventStartingOwnerFromDropping = m_BlinkPassive.PreventStartingOwnerFromDropping;
            redScarf.IgnoredByRat = m_BlinkPassive.IgnoredByRat;
            redScarf.SaveFlagToSetOnAcquisition  = m_BlinkPassive.SaveFlagToSetOnAcquisition;
            redScarf.ForcedPositionInAmmonomicon = m_BlinkPassive.ForcedPositionInAmmonomicon;
            redScarf.UsesCustomCost                  = m_BlinkPassive.UsesCustomCost;
            redScarf.CustomCost                      = m_BlinkPassive.CustomCost;
            redScarf.PersistsOnPurchase              = m_BlinkPassive.PersistsOnPurchase;
            redScarf.CanBeSold                       = m_BlinkPassive.CanBeSold;
            redScarf.passiveStatModifiers            = m_BlinkPassive.passiveStatModifiers;
            redScarf.ArmorToGainOnInitialPickup      = m_BlinkPassive.ArmorToGainOnInitialPickup;
            redScarf.minimapIcon                     = m_BlinkPassive.minimapIcon;
            redScarf.DodgeRollTimeMultiplier         = m_BlinkPassive.DodgeRollTimeMultiplier;
            redScarf.DodgeRollDistanceMultiplier     = m_BlinkPassive.DodgeRollDistanceMultiplier;
            redScarf.AdditionalInvulnerabilityFrames = m_BlinkPassive.AdditionalInvulnerabilityFrames;
            redScarf.ScarfPrefab                     = m_BlinkPassive.ScarfPrefab;
            redScarf.BlinkpoofVfx                    = m_BlinkPassive.BlinkpoofVfx;

            // Try to prevent original item from showing up. (can still be accessed via MTG console's give command however)
            if (ExpandSettings.EnableEXItems)
            {
                m_BlinkPassive.quality = ItemQuality.EXCLUDED;
            }
        }