private static void BuildPrefab()
        {
            GameObject        gameObject = new GameObject("Mahoguny");
            tk2dSprite        tk2dSprite = gameObject.AddComponent <tk2dSprite>();
            MahogunyBehaviour behaviour  = gameObject.AddComponent <MahogunyBehaviour>();

            if (behaviour.spriteAnimator == null)
            {
                behaviour.spriteAnimator = behaviour.gameObject.AddComponent <tk2dSpriteAnimator>();
            }
            behaviour.spriteAnimator.Library = Toolbox.GetGunById(339).GetComponent <tk2dSpriteAnimator>().Library;
            behaviour.idleAnimation          = Toolbox.GetGunById(339).idleAnimation;
            behaviour.shootAnimation         = Toolbox.GetGunById(339).shootAnimation;
            behaviour.reloadAnimation        = Toolbox.GetGunById(339).reloadAnimation;
            behaviour.GunSwitchGroup         = Toolbox.GetGunById(339).gunSwitchGroup;
            behaviour.CooldownTime           = Toolbox.GetGunById(339).DefaultModule.cooldownTime * 2;
            behaviour.ReloadTime             = Toolbox.GetGunById(339).reloadTime;
            behaviour.NumberOfShotsInClip    = Toolbox.GetGunById(339).DefaultModule.numberOfShotsInClip;
            behaviour.leafObj = Toolbox.GetGunById(339).shellCasing;
            foreach (ProjectileModule mod in Toolbox.GetGunById(339).Volley.projectiles)
            {
                if (mod.GetCurrentProjectile() != null)
                {
                    behaviour.ProjectilesToShoot.Add(mod.GetCurrentProjectile());
                    behaviour.AngleVariances.Add(mod.angleVariance);
                }
            }
            tk2dSprite.SetSprite(Toolbox.GetGunById(339).sprite.Collection, Toolbox.GetGunById(339).sprite.spriteId);
            gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(gameObject);
            UnityEngine.GameObject.DontDestroyOnLoad(gameObject);
            MahogunyPrefab = gameObject;
        }
        protected override void DoEffect(PlayerController user)
        {
            base.DoEffect(user);
            GameObject        obj       = UnityEngine.Object.Instantiate(MahogunyPrefab, user.sprite.WorldCenter, Quaternion.identity);
            MahogunyBehaviour behaviour = obj.GetComponent <MahogunyBehaviour>();

            behaviour.Owner    = user;
            behaviour.lifespan = user.PlayerHasActiveSynergy("#TWO_TREES_ARE_BETTER_THAN_ONE") ? 17.5f : 10f;
            behaviour.DelayedInitialization();
            base.StartCoroutine(ItemBuilder.HandleDuration(this, user.PlayerHasActiveSynergy("#TWO_TREES_ARE_BETTER_THAN_ONE") ? 17.5f : 10f, user, null));
        }