Example #1
0
        public static void BuffGuns()
        {
            Gun GildedHydra = PickupObjectDatabase.GetById(231) as Gun;

            GildedHydra.SetBaseMaxAmmo(120);
            GildedHydra.reloadTime = 1.6f;
            GildedHydra.ammo       = 120;
            GildedHydra.DefaultModule.numberOfShotsInClip = 3;
        }
Example #2
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Psi Scale", "psi_scale");

            Game.Items.Rename("outdated_gun_mods:psi_scale", "cel:psi_scale");
            gun.gameObject.AddComponent <PsiScales>();
            gun.SetShortDescription("With Power, Comes Greed");
            gun.SetLongDescription("Summons homing bolts of psychic energy to attack the nearest enemy in range. The energy will fizzle if there isn't a valid target in range.\n\n");
            gun.SetupSprite(null, "psi_scale_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 9);
            gun.SetAnimationFPS(gun.reloadAnimation, 10);
            gun.AddProjectileModuleFrom("ak-47", true, false);
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.SMALL_BULLET;
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1.1f;
            gun.DefaultModule.angleVariance       = 0;
            gun.DefaultModule.cooldownTime        = .35f;
            gun.DefaultModule.numberOfShotsInClip = 10;
            gun.gunSwitchGroup          = (PickupObjectDatabase.GetById(145) as Gun).gunSwitchGroup;
            gun.muzzleFlashEffects.type = VFXPoolType.None;
            gun.SetBaseMaxAmmo(350);
            gun.quality = PickupObject.ItemQuality.C;
            gun.encounterTrackable.EncounterGuid     = "skiddly biddly boo bop im going f*****g insane send help please i am losing my mind i mean uh haha funny guid";
            gun.sprite.IsPerpendicular               = true;
            gun.barrelOffset.transform.localPosition = new Vector3(2.25f, 0.3125f, 0f);
            gun.gunClass = GunClass.NONE;

            psi_projectile = UnityEngine.Object.Instantiate <Projectile>((PickupObjectDatabase.GetById(15) as Gun).DefaultModule.projectiles[0]);
            FakePrefab.MarkAsFakePrefab(psi_projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(psi_projectile);
            psi_projectile.baseData.damage *= 1.45f;
            psi_projectile.baseData.speed  *= 1f;
            psi_projectile.SetProjectileSpriteRight("psi_scale_projectile", 12, 7);

            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0]             = projectile;
            projectile.transform.parent                  = gun.barrelOffset;
            projectile.baseData.damage                  *= 0f;
            projectile.baseData.speed                   *= 1f;
            projectile.baseData.force                   *= 0f;
            projectile.sprite.renderer.enabled           = false;
            projectile.baseData.range                    = .0001f;
            projectile.hitEffects.suppressMidairDeathVfx = true;
            projectile.collidesWithEnemies               = false;
            projectile.UpdateCollisionMask();



            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #3
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Nine-Barreled Shotgun", "nine-barreled_shotgun");

            Game.Items.Rename("outdated_gun_mods:nine-barreled_shotgun", "cel:nine-barreled_shotgun");
            gun.gameObject.AddComponent <NineBarreledGun>();
            gun.SetShortDescription("Slightly Overkill");
            gun.SetLongDescription("Do I even need to say what it does?");
            gun.SetupSprite(null, "nine-barreled_shotgun_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 7);
            gun.SetAnimationFPS(gun.reloadAnimation, 5);
            for (int i = 0; i < 36; i++)
            {
                GunExt.AddProjectileModuleFrom(gun, (PickupObjectDatabase.GetById(82) as Gun), true, false);
            }
            foreach (ProjectileModule projectileModule in gun.Volley.projectiles)
            {
                projectileModule.shootStyle = ProjectileModule.ShootStyle.SemiAutomatic;
                Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(projectileModule.projectiles[0]);
                projectile.gameObject.SetActive(false);
                FakePrefab.MarkAsFakePrefab(projectile.gameObject);
                UnityEngine.Object.DontDestroyOnLoad(projectile);
                projectileModule.projectiles[0]      = projectile;
                projectileModule.angleVariance       = 50;
                projectile.transform.parent          = gun.barrelOffset;
                projectile.baseData.damage          *= .5f;
                projectile.baseData.speed           *= 1f;
                projectileModule.numberOfShotsInClip = 1;
                projectileModule.cooldownTime        = .4f;
                projectile.baseData.range           *= 1f;
                projectileModule.ammoType            = GameUIAmmoType.AmmoType.SHOTGUN;

                bool flag = projectileModule == gun.DefaultModule;
                if (flag)
                {
                    projectileModule.ammoCost = 9;
                }
                else
                {
                    projectileModule.ammoCost = 0;
                }
            }
            gun.reloadTime = 2.8f;

            gun.gunSwitchGroup     = (PickupObjectDatabase.GetById(82) as Gun).gunSwitchGroup;
            gun.muzzleFlashEffects = (PickupObjectDatabase.GetById(84) as Gun).muzzleFlashEffects;
            gun.SetBaseMaxAmmo(540);

            gun.quality = PickupObject.ItemQuality.B;
            gun.encounterTrackable.EncounterGuid     = "oh lord o f**k what have i f*****g done shit o f**k";
            gun.sprite.IsPerpendicular               = true;
            gun.barrelOffset.transform.localPosition = new Vector3(2.1875f, 1.4375f, 0f);
            gun.gunClass = GunClass.SHOTGUN;

            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #4
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Auto Shotgun", "auto_shotgun");

            Game.Items.Rename("outdated_gun_mods:auto_shotgun", "cel:auto_shotgun");
            gun.gameObject.AddComponent <AutoShotgun>();
            gun.SetShortDescription("Become Decease");
            gun.SetLongDescription("An automatic shotgun. Prefered by those who want the coverage of a shotgun paired with the speed of an assault rifle.");
            gun.SetupSprite(null, "auto_shotgun_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 10);
            gun.SetAnimationFPS(gun.reloadAnimation, 5);
            for (int i = 0; i < 4; i++)
            {
                GunExt.AddProjectileModuleFrom(gun, "38_special", true, false);
            }
            foreach (ProjectileModule projectileModule in gun.Volley.projectiles)
            {
                projectileModule.shootStyle = ProjectileModule.ShootStyle.Automatic;
                Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(projectileModule.projectiles[0]);
                projectile.gameObject.SetActive(false);
                FakePrefab.MarkAsFakePrefab(projectile.gameObject);
                UnityEngine.Object.DontDestroyOnLoad(projectile);
                projectileModule.projectiles[0]      = projectile;
                projectileModule.angleVariance       = 6;
                projectile.transform.parent          = gun.barrelOffset;
                projectile.baseData.damage          *= .72f;
                projectile.baseData.speed           *= 1f;
                projectileModule.numberOfShotsInClip = 8;
                projectileModule.cooldownTime        = .4f;
                projectile.baseData.range            = 35f;
                projectileModule.ammoType            = GameUIAmmoType.AmmoType.SHOTGUN;
                bool flag = projectileModule == gun.DefaultModule;
                if (flag)
                {
                    projectileModule.ammoCost = 1;
                }
                else
                {
                    projectileModule.ammoCost = 0;
                }
            }
            gun.gunSwitchGroup     = (PickupObjectDatabase.GetById(51) as Gun).gunSwitchGroup;
            gun.muzzleFlashEffects = (PickupObjectDatabase.GetById(51) as Gun).muzzleFlashEffects;
            gun.Volley.UsesShotgunStyleVelocityRandomizer = true;
            gun.Volley.DecreaseFinalSpeedPercentMin       = -10f;
            gun.Volley.IncreaseFinalSpeedPercentMax       = 10f;
            gun.SetBaseMaxAmmo(360);

            gun.quality = PickupObject.ItemQuality.C;
            gun.encounterTrackable.EncounterGuid = "fricc u spapi imma use guids all i want >:c";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass   = GunClass.FULLAUTO;
            gun.reloadTime = 2.2f;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("The Last Chamber", "the_last_chamber");

            Game.Items.Rename("outdated_gun_mods:the_last_chamber", "cel:the_last_chamber");
            gun.gameObject.AddComponent <TheLastChamber>();
            gun.SetShortDescription("One More In The Chamber");
            gun.SetLongDescription("Kills anything in a single shot. Breaks after one shot. There is no way to prevent it breaking.\n\nA gun that once heavily-wounded Kaliber, destroying her seventh arm. In anger, she cursed the gun and its wielder, " +
                                   "trapping their soul inside of it. Kaliber's vehement hatred imbues it with great power, but ensures it will break once fired.");
            gun.SetupSprite(null, "the_last_chamber_idle_001", 10);
            gun.SetAnimationFPS(gun.shootAnimation, 18);
            gun.SetAnimationFPS(gun.reloadAnimation, 6);
            gun.AddProjectileModuleFrom("38_special", true, false);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 0f;
            gun.DefaultModule.angleVariance       = 0f;
            gun.DefaultModule.cooldownTime        = 100f;
            gun.DefaultModule.numberOfShotsInClip = 1;
            gun.DefaultModule.ammoType            = GameUIAmmoType.AmmoType.MEDIUM_BULLET;
            Gun gun2 = PickupObjectDatabase.GetById(32) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(1);
            gun.barrelOffset.transform.localPosition = new Vector3(1.2f, .3f);
            gun.quality = PickupObject.ItemQuality.S;
            gun.encounterTrackable.EncounterGuid = "One More In The Chamber";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass     = GunClass.PISTOL;
            gun.InfiniteAmmo = true;
            //this doesnt do anything as it breaks after firing, but it prevents it being duct taped
            Gun gun3 = PickupObjectDatabase.GetById(32) as Gun;

            gun.gunSwitchGroup = gun3.gunSwitchGroup;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.speed       *= 2.5f;
            //projectile.baseData.damage = 10000000f;
            projectile.baseData.damage  = 0;
            projectile.ignoreDamageCaps = true;
            PierceProjModifier orAddComponent = projectile.gameObject.AddComponent <PierceProjModifier>();

            orAddComponent.penetratesBreakables = true;
            orAddComponent.penetration          = 100;
            projectile.shouldRotate             = true;
            projectile.SetProjectileSpriteRight("the_last_bullet", 10, 6, null, null);
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #6
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Time Keeper's Pistol", "time_keeper's_pistol");

            Game.Items.Rename("outdated_gun_mods:time_keeper's_pistol", "cel:time_keeper's_pistol");
            gun.gameObject.AddComponent <TimeKeepersPistol>();

            gun.SetShortDescription("His Last Gift");
            gun.SetLongDescription("A basic pistol. Damage scales with the current loop.\n\nA gun given to you by Grandfather Tick, it will at least keep you safe until you get something better.");

            gun.SetupSprite(null, "time_keeper's_pistol_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 16);
            gun.SetAnimationFPS(gun.reloadAnimation, 2);
            gun.AddProjectileModuleFrom("magnum", true, false);

            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1.2f;
            gun.DefaultModule.angleVariance       = 7f;
            gun.DefaultModule.cooldownTime        = .2f;
            gun.DefaultModule.numberOfShotsInClip = 6;
            Gun gun2 = PickupObjectDatabase.GetById(38) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(1);
            gun.InfiniteAmmo = true;
            gun.quality      = PickupObject.ItemQuality.EXCLUDED;
            gun.encounterTrackable.EncounterGuid = "Time Keeper's Pistol.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass     = GunClass.PISTOL;
            gun.CanBeDropped = false;
            gun.CanBeSold    = false;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            float Cal1 = LoopManager.LoopAMT * .15f;
            float Cal2 = Cal1 + 1f;
            float Cal3 = 6 * Cal2;
            float Cal4 = Cal3 / 13;

            projectile.transform.parent = gun.barrelOffset;
            projectile.baseData.damage *= Cal4;
            projectile.baseData.speed  *= 1f;
            projectile.baseData.force  *= .33f;
            projectile.baseData.range  *= 0.266f;


            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Bashellisk Rifle", "bashellisk_rifle");

            Game.Items.Rename("outdated_gun_mods:bashellisk_rifle", "cel:bashellisk_rifle");
            gun.gameObject.AddComponent <BashelliskRifle>();
            gun.SetShortDescription("Deadly Deadly Gun");
            gun.SetLongDescription("Shoots toxic shots which can somtimes afflict enemies with a powerful venom.\n\nInfused with the fang of a Bashellisk, this gun's bullets are empowered with an even deadlier power.");

            gun.SetupSprite(null, "bashellisk_rifle_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 24);
            gun.SetAnimationFPS(gun.reloadAnimation, 10);
            gun.AddProjectileModuleFrom("future_assault_rifle", true, false);
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.CUSTOM;
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = .6f;
            gun.DefaultModule.customAmmoType      = "poison_blob";
            gun.DefaultModule.angleVariance       = 4f;
            gun.DefaultModule.cooldownTime        = .11f;
            gun.DefaultModule.numberOfShotsInClip = 25;
            gun.gunSwitchGroup = (PickupObjectDatabase.GetById(229) as Gun).gunSwitchGroup;
            Gun gun2 = PickupObjectDatabase.GetById(334) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(500);
            gun.barrelOffset.transform.localPosition = new Vector3(1.4f, .4f, 0f);
            gun.quality = PickupObject.ItemQuality.S;
            gun.encounterTrackable.EncounterGuid = "Venom Rifle.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass = GunClass.FULLAUTO;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= 1;
            projectile.baseData.speed       *= 1f;
            projectile.baseData.force       *= 1f;
            projectile.PoisonApplyChance     = .25f;
            projectile.AppliesPoison         = true;
            projectile.healthEffect          = Library.Venom;
            projectile.DefaultTintColor      = new Color(78 / 90f, 5 / 90f, 120 / 90f);
            projectile.HasDefaultTint        = true;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
            gun.AddToSubShop(ItemBuilder.ShopType.Goopton);
        }
Example #8
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Spirit Of The Dragun", "spirit_of_the_dragun");

            Game.Items.Rename("outdated_gun_mods:spirit_of_the_dragun", "cel:spirit_of_the_dragun");
            gun.gameObject.AddComponent <SpiritOfTheDragun>();
            gun.SetShortDescription("Ego Sum Aeternae");
            gun.SetLongDescription("Shoots powerful, molten, armor-piercing shots shots.\n\n\"Perhaps you will succeed where I have failed.\"");
            gun.SetupSprite(null, "spirit_of_the_dragun_idle_001", 13);
            gun.SetAnimationFPS(gun.shootAnimation, 10);
            gun.SetAnimationFPS(gun.reloadAnimation, 10);
            gun.AddProjectileModuleFrom("ak-47", true, false);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Burst;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 2f;
            gun.DefaultModule.angleVariance     = 4f;
            gun.DefaultModule.cooldownTime      = .3f;
            gun.DefaultModule.burstShotCount    = 3;
            gun.DefaultModule.burstCooldownTime = .1f;
            gun.SetBaseMaxAmmo(213);
            gun.gunClass = GunClass.FULLAUTO;
            gun.DefaultModule.numberOfShotsInClip = 45;
            gun.quality = PickupObject.ItemQuality.EXCLUDED;
            Gun gun2 = PickupObjectDatabase.GetById(15) as Gun;
            Gun gun3 = PickupObjectDatabase.GetById(705) as Gun;

            gun.InfiniteAmmo = true;
            gun.barrelOffset.transform.localPosition = new Vector3(2.5f, .5f, 0f);
            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.encounterTrackable.EncounterGuid = "Easily the strongest gun ive made.";
            Projectile originalProjectile = (PickupObjectDatabase.GetById(370) as Gun).DefaultModule.chargeProjectiles[1].Projectile;
            Projectile projectile         = UnityEngine.Object.Instantiate(originalProjectile);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.baseData.damage      *= 0.15f;
            projectile.baseData.speed       *= .25f;
            PierceProjModifier orAddComponent = projectile.gameObject.GetOrAddComponent <PierceProjModifier>();

            orAddComponent.penetration -= 50;
            projectile.GetComponent <TrailController>();
            projectile.transform.parent = gun.barrelOffset;
            projectile.ignoreDamageCaps = true;
            gun.sprite.IsPerpendicular  = true;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #9
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Fallout", "fallout");

            Game.Items.Rename("outdated_gun_mods:fallout", "cel:fallout");
            gun.gameObject.AddComponent <Fallout>();
            gun.SetShortDescription("Keep Out Of Reach Of Children");
            gun.SetLongDescription("Shoots powerful blasts of nuclear energy.\n\n This gun is powered by pure poisonium (not to be confused with the harmless substance, toxicium) which is lethal to any creature in the known universe.");

            gun.SetupSprite(null, "fallout_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 4);
            gun.SetAnimationFPS(gun.reloadAnimation, 2);
            gun.AddProjectileModuleFrom("38_special", true, false);
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.CUSTOM;
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1.4f;
            gun.DefaultModule.customAmmoType      = "poison_blob";
            gun.DefaultModule.angleVariance       = 0f;
            gun.DefaultModule.cooldownTime        = .75f;
            gun.DefaultModule.numberOfShotsInClip = 1;
            Gun gun2 = PickupObjectDatabase.GetById(151) as Gun;
            Gun gun3 = PickupObjectDatabase.GetById(32) as Gun;

            gun.gunSwitchGroup     = gun3.gunSwitchGroup;
            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(150);
            gun.barrelOffset.transform.localPosition = new Vector3(3.5f, 0f, 0f);
            gun.quality = PickupObject.ItemQuality.A;
            gun.encounterTrackable.EncounterGuid = "For his nuetral special, gun wields a Joker.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass = GunClass.RIFLE;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= 16;
            projectile.baseData.speed       *= 2f;
            projectile.baseData.force       *= 4f;
            projectile.baseData.range       *= 1000;
            projectile.SetProjectileSpriteRight("fallout_smol_projectile_001", 31, 8, null, null);
            ETGMod.Databases.Items.Add(gun, null, "ANY");
            gun.AddToSubShop(ItemBuilder.ShopType.Goopton);
            gun.AddToSubShop(ItemBuilder.ShopType.Trorc);
        }
Example #10
0
        public static void Add()
        {
            int LimitGunId = 98;
            Gun limitGun   = PickupObjectDatabase.GetById(LimitGunId) as Gun;



            Gun gun = ETGMod.Databases.Items.NewGun("Phazor", "phazor");

            Game.Items.Rename("outdated_gun_mods:phazor", "cel:phazor");
            gun.gameObject.AddComponent <Phazor>();
            gun.SetShortDescription("Shiny");
            gun.SetLongDescription("Fires faster the longer the fire button is held down.\n\nA gun made from pure rainbows, imagination, hours of slavery, and fantasy.");
            gun.SetupSprite(null, "phazor_idle_001", 13);

            gun.SetAnimationFPS(gun.shootAnimation, 24);
            gun.AddProjectileModuleFrom("future_assault_rifle", true, false);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 0f;
            gun.DefaultModule.angleVariance           = 4f;
            gun.GainsRateOfFireAsContinueAttack       = true;
            gun.RateOfFireMultiplierAdditionPerSecond = .5f;
            gun.DefaultModule.cooldownTime            = 0.2f;
            gun.SetBaseMaxAmmo(300);
            Gun gun2 = PickupObjectDatabase.GetById(32) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.gunClass           = GunClass.PISTOL;
            gun.DefaultModule.numberOfShotsInClip = gun.GetBaseMaxAmmo();
            gun.quality = PickupObject.ItemQuality.A;
            gun.encounterTrackable.EncounterGuid = "zip zoop zappity do";

            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.baseData.damage      *= 2.28571428571f;
            projectile.baseData.speed       *= 1f;
            projectile.SetProjectileSpriteRight("phazor_projectile_002", 21, 3, null, null);
            gun.sprite.IsPerpendicular = true;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
            projectile.transform.parent = gun.barrelOffset;
        }
Example #11
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Assault Fleet", "assault_fleet");

            this_gun = gun;
            Game.Items.Rename("outdated_gun_mods:assault_fleet", "cel:assault_fleet");
            gun.gameObject.AddComponent <AssaultFleet>();
            gun.SetShortDescription("Vola! Vola! Vola! Volare Via!");
            gun.SetLongDescription("Shoots small, remote-control aircrafts which fire upon nearby enemies.\n\nThe Gungeon has often been known to imbue innocent objects with lethal firepower and this children's toy turned deadly weapon is no exception.");
            gun.SetupSprite(null, "assault_fleet_idle_001", 13);
            gun.SetAnimationFPS(gun.shootAnimation, 12);
            gun.AddProjectileModuleFrom("38_special", true, false);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime     = 0f;
            gun.gunSwitchGroup = (PickupObjectDatabase.GetById(97) as Gun).gunSwitchGroup;
            gun.DefaultModule.angleVariance = 5f;
            gun.DefaultModule.cooldownTime  = 0.10f;
            gun.SetBaseMaxAmmo(100);
            gun.gunClass = GunClass.FULLAUTO;
            gun.DefaultModule.numberOfShotsInClip = 1;
            gun.muzzleFlashEffects.type           = VFXPoolType.None;
            gun.quality = PickupObject.ItemQuality.C;
            gun.encounterTrackable.EncounterGuid = "Assault Fleet Gun";
            gun.gunHandedness = GunHandedness.HiddenOneHanded;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.shouldRotate          = true;
            projectile.baseData.damage      *= 2f;
            projectile.baseData.speed       *= .75f;
            projectile.PreMoveModifiers      = (Action <Projectile>)Delegate.Combine(projectile.PreMoveModifiers, new Action <Projectile>(PreMoveProjectileModifier));
            FleetController fleetController = projectile.gameObject.AddComponent <FleetController>();

            fleetController.projectileToSpawn = ((Gun)ETGMod.Databases.Items["makarov"]).DefaultModule.projectiles[0];
            Projectile proj2 = fleetController.projectileToSpawn;

            proj2.AdditionalScaleMultiplier = .5f;
            gun.sprite.IsPerpendicular      = true;
            gun.CanBeDropped = false;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Russian Revolver", "russian_revolver");

            RussianRevolv = gun;
            Game.Items.Rename("outdated_gun_mods:russian_revolver", "cel:russian_revolver");

            //WORK ON RISK MECHANIC IDEA DUMBASS

            gun.SetShortDescription("You See Ivan...");
            gun.SetLongDescription("Shoots powerful shots, but only one shot in each clip deals damage.\n\nWhen you hold peestol like me, you shall never shoot the inacurrate, because of fear of shooting fingers.");
            gun.SetupSprite(null, "russian_revolver_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 16);
            gun.SetAnimationFPS(gun.reloadAnimation, 2);
            gun.AddProjectileModuleFrom("38_special", true, false);
            gun.gameObject.AddComponent <RussianRevolver>();
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.MEDIUM_BULLET;
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1.2f;
            gun.DefaultModule.angleVariance       = 0f;
            gun.DefaultModule.cooldownTime        = .15f;
            gun.DefaultModule.numberOfShotsInClip = 6;
            Gun gun2 = PickupObjectDatabase.GetById(56) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(480);
            gun.gunSwitchGroup = gun2.gunSwitchGroup;
            gun.quality        = PickupObject.ItemQuality.D;
            gun.encounterTrackable.EncounterGuid = "The Soviet Union, officially the Union of Soviet Socialist Republics (USSR), was a federal socialist state in Northern Eurasia that existed from 1922 to 1991. Nominally a union of multiple national Soviet republics, in practice its government and economy were highly centralized until its final years. It was a one-party state governed by the Communist Party, with Moscow as its capital in its largest republic, the Russian SFSR. Other major urban centers were Leningrad, Kiev, Minsk, Tashkent, Alma-Ata and Novosibirsk. It was the largest country in the world by surface area, spanning over 10,000 kilometers (6,200 mi) east to west across 11 time zones and over 7,200 kilometers (4,500 mi) north to south. Its territory included much of Eastern Europe as well as part of Northern Europe and all of Northern and Central Asia. It had five climate zones such as tundra, taiga, steppes, desert, and mountains. Its diverse population was collectively known as Soviet people.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass = GunClass.PISTOL;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0]   = projectile;
            projectile.transform.parent        = gun.barrelOffset;
            projectile.baseData.damage        *= 0;
            projectile.sprite.renderer.enabled = false;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
            gun.AddToSubShop(ItemBuilder.ShopType.Goopton);
            gun.AddToSubShop(ItemBuilder.ShopType.Trorc);
        }
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Sticky Launcher", "sticky_launcher");

            Game.Items.Rename("outdated_gun_mods:sticky_launcher", "cel:sticky_launcher");
            gun.SetShortDescription("KA-BLOOIE!");
            gun.SetLongDescription("Shoots sticky bombs that detonate on reloading.\n\nA weather sticky bomb launcher with the words \"Mann Co. Property\" written on the side.");
            gun.SetupSprite(null, "sticky_launcher_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 16);
            gun.SetAnimationFPS(gun.reloadAnimation, 2);
            gun.AddProjectileModuleFrom("38_special", true, false);
            gun.gameObject.AddComponent <StickyLauncher>();
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.MEDIUM_BULLET;
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1.2f;
            gun.DefaultModule.angleVariance       = 4f;
            gun.DefaultModule.cooldownTime        = .45f;
            gun.DefaultModule.numberOfShotsInClip = 8;
            Gun gun2 = PickupObjectDatabase.GetById(56) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(320);
            gun.quality = PickupObject.ItemQuality.C;
            gun.encounterTrackable.EncounterGuid = "What makes me a good demoman? If I were a bad demoman, I wouldn't be sittin' here discussin' it with you, now would I?! LET'S DO IT! Not one of you's gonna survive this! One crossed wire, one wayward pinch of potassium chlorate, one errant twitch, and KA-BLOOIE! nd I got a manky eye. I'm a black Scottish cyclops. They got more fecking sea monsters in the great Lochett Ness than they got the likes of me. So! T'all you fine dandies, so proud, so cocksure, prancin' about with your heads full of eyeballs... come and get me, I say! I'll be waitin' on you with a whiff of the old brimstone! I'm a Grimm bloody fable with an unhappy bloody end! Oh, they're going to have to glue you back together...IN HELL!";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass = GunClass.PISTOL;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= 0;
            projectile.SetProjectileSpriteRight("sticky_bomb", 11, 11);
            StickyProjectile sticky = projectile.gameObject.AddComponent <StickyProjectile>();

            sticky.explosionData = GameManager.Instance.Dungeon.sharedSettingsPrefab.DefaultSmallExplosionData;
            sticky.explosionData.damageToPlayer = 0;
            sticky.explosionData.damage         = 7.5f;
            sticky.destroyOnGunChanged          = true;
            sticky.shouldExplodeOnReload        = true;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #14
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("D.E.A.T.H.", "d.e.a.t.h.");

            Game.Items.Rename("outdated_gun_mods:d.e.a.t.h.", "cel:d.e.a.t.h.");
            gun.gameObject.AddComponent <DEATHGun>();
            gun.SetShortDescription("This Army");
            gun.SetLongDescription("While held, summons three drones. Projectiles of the gun ignore the boss damage cap, but no those of the drones.\n\nDestructive Energized Automated Targeted Hellfire.");
            gun.SetupSprite(null, "d.e.a.t.h._idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 16);
            gun.SetAnimationFPS(gun.reloadAnimation, 10);
            gun.AddProjectileModuleFrom("electric_rifle", true, false);
            gun.DefaultModule.ammoCost      = 1;
            gun.gunHandedness               = GunHandedness.HiddenOneHanded;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Burst;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1.2f;
            gun.DefaultModule.angleVariance     = 4f;
            gun.DefaultModule.burstShotCount    = 5;
            gun.DefaultModule.burstCooldownTime = .1f;
            gun.DefaultModule.cooldownTime      = .8f;
            gun.DefaultModule.cooldownTime      = .11f;
            gun.InfiniteAmmo = true;
            gun.DefaultModule.numberOfShotsInClip = 25;
            gun.gunSwitchGroup = (PickupObjectDatabase.GetById(153) as Gun).gunSwitchGroup;
            Gun gun2 = PickupObjectDatabase.GetById(153) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(500);
            gun.quality = PickupObject.ItemQuality.EXCLUDED;
            gun.encounterTrackable.EncounterGuid = "If you are not Cel, reading this has permanently cursed you forever. Unless you are looking for the code about the drones. That's in HoveringGunsAdder.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass = GunClass.FULLAUTO;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0]   = projectile;
            projectile.transform.parent        = gun.barrelOffset;
            projectile.baseData.damage        *= .75f;
            projectile.baseData.speed         *= 1f;
            projectile.baseData.force         *= .25f;
            projectile.sprite.renderer.enabled = false;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #15
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("venom_spit_drone_gun", "venom_spit_drone_gun");

            Game.Items.Rename("outdated_gun_mods:venom_spit_drone_gun", "cel:venom_spit_drone_gun");
            VenomSpitDGun @object = gun.gameObject.AddComponent <VenomSpitDGun>();

            gun.SetShortDescription("fswwawdw");
            gun.SetLongDescription("wsdfeesadwdasdwda.");
            gun.SetupSprite(null, "venom_spit_drone_gun_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 24);
            gun.SetAnimationFPS(gun.reloadAnimation, 10);
            gun.AddProjectileModuleFrom("future_assault_rifle", true, false);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = .6f;
            gun.DefaultModule.angleVariance       = 4f;
            gun.DefaultModule.cooldownTime        = .11f;
            gun.DefaultModule.numberOfShotsInClip = 25;
            gun.gunSwitchGroup = (PickupObjectDatabase.GetById(229) as Gun).gunSwitchGroup;
            Gun gun2 = PickupObjectDatabase.GetById(151) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(500);
            gun.quality = PickupObject.ItemQuality.EXCLUDED;
            gun.encounterTrackable.EncounterGuid = "mama, uwu.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass = GunClass.FULLAUTO;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= 0;
            projectile.baseData.speed       *= 1f;
            projectile.baseData.force       *= 0f;
            projectile.HasDefaultTint        = true;
            projectile.DefaultTintColor      = new Color(78 / 90f, 5 / 90f, 120 / 90f);
            projectile.AppliesPoison         = true;
            projectile.healthEffect          = Library.Venom;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #16
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Heater Assault Rifle", "heater_assault_rifle");

            Game.Items.Rename("outdated_gun_mods:heater_assault_rifle", "cel:heater_assault_rifle");
            gun.gameObject.AddComponent <HeaterAssault>();
            gun.SetShortDescription("Children Of The Colt");
            gun.SetLongDescription("No reload time, but gains heat as it is fired. If the gun overheats, it is put on a cooldown before it can start shooting again. Heat decreases while not firing. All heat dissapates while not in combat.");
            gun.SetupSprite(null, "heater_assault_rifle_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 9);
            gun.SetAnimationFPS(gun.reloadAnimation, 10);
            gun.AddProjectileModuleFrom("ak-47", true, false);
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.SMALL_BULLET;
            gun.DefaultModule.ammoCost      = 2;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1f;
            gun.DefaultModule.angleVariance       = 4;
            gun.DefaultModule.cooldownTime        = .11f;
            gun.DefaultModule.numberOfShotsInClip = 1;
            gun.gunSwitchGroup     = (PickupObjectDatabase.GetById(15) as Gun).gunSwitchGroup;
            gun.muzzleFlashEffects = (PickupObjectDatabase.GetById(15) as Gun).muzzleFlashEffects;
            gun.SetBaseMaxAmmo(600);
            gun.quality = PickupObject.ItemQuality.B;
            gun.encounterTrackable.EncounterGuid     = "I am going to say a F**k Word";
            gun.sprite.IsPerpendicular               = true;
            gun.barrelOffset.transform.localPosition = new Vector3(2.25f, 0.3125f, 0f);
            gun.gunClass = GunClass.FULLAUTO;
            HeatGaugeController heat = gun.gameObject.AddComponent <HeatGaugeController>();

            heat.m_cooldownTime = 3f;
            heat.m_burnCapTime  = 4f;

            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= 1f;
            projectile.baseData.speed       *= 1f;
            projectile.baseData.force       *= 1f;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #17
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("A Rock", "a_literal_rock");

            Game.Items.Rename("outdated_gun_mods:a_rock", "cel:a_rock");
            gun.gameObject.AddComponent <ALiteralRock>();

            gun.SetShortDescription("Ooga Booga");
            gun.SetLongDescription("It's just a rock. That's it. Nothing special.\n\nJust a rock someone picked up and put in a chest.");

            gun.SetupSprite(null, "a_literal_rock_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 16);
            gun.SetAnimationFPS(gun.reloadAnimation, 2);
            gun.AddProjectileModuleFrom("magnum", true, false);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 0;
            gun.DefaultModule.angleVariance       = 0;
            gun.DefaultModule.cooldownTime        = 0;
            gun.DefaultModule.numberOfShotsInClip = 0;
            gun.SetBaseMaxAmmo(0);
            gun.ammo         = 0;
            gun.InfiniteAmmo = false;
            gun.quality      = PickupObject.ItemQuality.D;
            gun.encounterTrackable.EncounterGuid = "Its a rock.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass     = GunClass.SILLY;
            gun.CanGainAmmo  = false;
            gun.IgnoredByRat = true;
            gun.encounterTrackable.m_doNotificationOnEncounter = false;

            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.baseData.damage      *= 0;
            projectile.baseData.speed       *= 1f;
            projectile.baseData.force       *= 0f;
            projectile.baseData.range       *= 0;

            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #18
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Magnorbs", "magnorbs");

            Game.Items.Rename("outdated_gun_mods:magnorbs", "cel:magnorbs");
            gun.gameObject.AddComponent <Magnorbs>();
            gun.SetShortDescription("Magnets Are Fun");
            gun.SetLongDescription("Shoots magnetic orbs that boomerang back to the gun. Whenever an orb returns to the player, they regain ammo. Reloading the gun with full ammo creates a temporary shield.");
            gun.SetupSprite(null, "magnorbs_idle_001", 13);
            gun.SetAnimationFPS(gun.shootAnimation, 12);
            gun.AddProjectileModuleFrom("38_special", true, false);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 0f;
            gun.DefaultModule.angleVariance = 0f;
            gun.DefaultModule.cooldownTime  = 0.25f;
            gun.SetBaseMaxAmmo(3);
            gun.gunClass = GunClass.SILLY;
            gun.DefaultModule.numberOfShotsInClip = 1;
            gun.muzzleFlashEffects.type           = VFXPoolType.None;
            gun.quality = PickupObject.ItemQuality.C;
            gun.encounterTrackable.EncounterGuid = "I stole this from starbound lol";
            gun.gunHandedness = GunHandedness.HiddenOneHanded;
            gun.barrelOffset.transform.localPosition = new Vector3(0.3125f, 0.1875f, 0f);
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.baseData.damage      *= 1f;
            projectile.baseData.speed       *= 1.5f;
            projectile.baseData.range        = float.MaxValue;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.pierceMinorBreakables = true;
            projectile.gameObject.AddComponent <MaintainDamageOnPierce>();
            PierceProjModifier pierce = projectile.gameObject.GetOrAddComponent <PierceProjModifier>();

            pierce.penetratesBreakables = true;
            projectile.ImmuneToBlanks   = true;
            projectile.SetProjectileSpriteRight("magnorb_projectile", 9, 9, null, null);
            gun.sprite.IsPerpendicular = true;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #19
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Electric Bass", "electric_bass");

            Game.Items.Rename("outdated_gun_mods:electric_bass", "cel:electric_bass");
            gun.gameObject.AddComponent <ElectricBass>();
            gun.SetShortDescription("Atom And Evil");
            gun.SetLongDescription("Creates an eletric AoE instead of shooting projectiles.\n\nA guitar imbued with the power of heavy metal music.");
            gun.SetupSprite(null, "electric_bass_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 24);
            gun.SetAnimationFPS(gun.reloadAnimation, 3);
            gun.AddProjectileModuleFrom("38_special", true, false);
            gun.sprite.IsPerpendicular      = true;
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 0;
            gun.DefaultModule.cooldownTime = .3f;
            gun.SetBaseMaxAmmo(500);
            Gun gun2 = PickupObjectDatabase.GetById(149) as Gun;

            //gun.gunSwitchGroup = gun2.gunSwitchGroup;
            gun.DefaultModule.ammoType            = GameUIAmmoType.AmmoType.MEDIUM_BLASTER;
            gun.DefaultModule.numberOfShotsInClip = gun.GetBaseMaxAmmo();
            gun.quality  = PickupObject.ItemQuality.C;
            gun.gunClass = GunClass.FULLAUTO;
            gun.encounterTrackable.EncounterGuid = "AoE Bass gun";
            gun.muzzleFlashEffects.type          = VFXPoolType.None;
            gun.AddToSubShop(ItemBuilder.ShopType.Trorc);
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0]             = projectile;
            projectile.baseData.damage                  *= 0;
            projectile.baseData.speed                   *= 1f;
            projectile.baseData.range                   *= .00001f;
            projectile.collidesWithEnemies               = false;
            projectile.collidesWithPlayer                = false;
            projectile.sprite.renderer.enabled           = false;
            projectile.hitEffects.suppressMidairDeathVfx = true;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #20
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Panic Pistol", "panic_pistol");

            Game.Items.Rename("outdated_gun_mods:panic_pistol", "cel:panic_pistol");
            gun.gameObject.AddComponent <PanicPistol>();
            gun.SetShortDescription("Random BS, Go!");
            gun.SetLongDescription("Has higher reload speed the more enemies are in a room.\n\nThe Pilot is never far from one of his sidearms as he is also never far from getting into a fight.");

            gun.SetupSprite(null, "panic_pistol_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 10);
            gun.SetAnimationFPS(gun.reloadAnimation, 2);
            gun.AddProjectileModuleFrom("38_special", true, false);
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.MEDIUM_BLASTER;
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1.5f;
            gun.DefaultModule.angleVariance       = 6f;
            gun.DefaultModule.cooldownTime        = .15f;
            gun.DefaultModule.numberOfShotsInClip = 8;
            Gun gun3 = PickupObjectDatabase.GetById(32) as Gun;

            gun.gunSwitchGroup     = gun3.gunSwitchGroup;
            gun.muzzleFlashEffects = gun3.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(480);
            gun.quality = PickupObject.ItemQuality.C;
            gun.encounterTrackable.EncounterGuid = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAaAAaaaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass = GunClass.PISTOL;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= 1;
            projectile.baseData.speed       *= 1f;
            projectile.baseData.force       *= 1f;
            projectile.baseData.range       *= .75f;
            projectile.SetProjectileSpriteRight("panic_bolt", 9, 5, null, null);
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #21
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Prime Laser", "prime_laser");

            Game.Items.Rename("outdated_gun_mods:prime_laser", "cel:prime_laser");
            gun.gameObject.AddComponent <PrimeLaser>();
            gun.SetShortDescription("Why are you reading this?");
            gun.SetLongDescription("Loser.");
            gun.SetupSprite(null, "prime_laser_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 15);
            gun.AddProjectileModuleFrom("future_assault_rifle", true, false);
            gun.SetBaseMaxAmmo(1000);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.SMALL_BULLET;
            gun.reloadTime = 0f;
            gun.DefaultModule.cooldownTime = .1f;
            gun.gunHandedness = GunHandedness.OneHanded;
            gun.DefaultModule.numberOfShotsInClip = 1000;
            gun.quality = PickupObject.ItemQuality.EXCLUDED;
            Gun gun2 = PickupObjectDatabase.GetById(32) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.barrelOffset.transform.localPosition += new Vector3(0, -.1f, 0);
            gun.DefaultModule.angleVariance           = 0f;
            gun.encounterTrackable.EncounterGuid      = "Prime Laser";
            gun.sprite.IsPerpendicular = true;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            Projectile proj2 = (PickupObjectDatabase.GetById(724) as Gun).DefaultModule.projectiles[0];

            gun.DefaultModule.projectiles[0] = proj2;
            proj2.baseData.damage           *= 1f;
            proj2.transform.parent           = gun.barrelOffset;
            proj2.AppliesFire = false;
            BounceProjModifier bounce = proj2.gameObject.GetComponent <BounceProjModifier>();

            bounce.numberOfBounces -= 1;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #22
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Pike Beam", "pike_beam");

            Game.Items.Rename("outdated_gun_mods:pike_beam", "cel:pike_beam");
            gun.gameObject.AddComponent <PikeBeam>();
            gun.SetShortDescription("Not A Glaive");
            gun.SetLongDescription("Can cut across entire rooms, as long as there are no walls in the way.");
            gun.SetupSprite(null, "pike_beam_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 4);
            gun.SetAnimationFPS(gun.reloadAnimation, 2);
            gun.AddProjectileModuleFrom(PickupObjectDatabase.GetById(121) as Gun, true, false);
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.CUSTOM;
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Beam;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 0f;
            gun.DefaultModule.customAmmoType      = "poison_blob";
            gun.DefaultModule.angleVariance       = 0f;
            gun.DefaultModule.cooldownTime        = .2f;
            gun.DefaultModule.numberOfShotsInClip = 1;
            Gun gun2 = PickupObjectDatabase.GetById(151) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(150);
            gun.barrelOffset.transform.localPosition = new Vector3(3.5f, 0f, 0f);
            gun.quality = PickupObject.ItemQuality.B;
            gun.encounterTrackable.EncounterGuid = "Hippity hoppity, your spinal cord is my property.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass = GunClass.BEAM;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            projectile.gameObject.AddComponent <MeshRenderer>();
            projectile.gameObject.AddComponent <MeshFilter>();
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            BasicBeamController BasicBitchBeam = F**K.GenerateBeamPrefab(gun.DefaultModule.projectiles[0], "");

            projectile.baseData.speed = -1;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #23
0
        public static void Add()
        {
            string shortName = "soul_forge";
            Gun    gun       = ETGMod.Databases.Items.NewGun("Soul Forge", shortName);

            Game.Items.Rename("outdated_gun_mods:" + shortName, "cel:" + shortName);
            gun.gameObject.AddComponent <SoulForge>();
            gun.SetShortDescription("Hammering Out The Kinks");
            gun.SetLongDescription("Steal the souls of killed enemies.\n\nThere is a tale of a land, long forgotten, that was destroyed in a single night. Nobody survived except for two men.");
            gun.SetupSprite(null, shortName + "_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 9);
            gun.SetAnimationFPS(gun.reloadAnimation, 10);
            gun.AddProjectileModuleFrom("38_special", true, false);
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.SMALL_BULLET;
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1.5f;
            gun.DefaultModule.angleVariance       = 0f;
            gun.DefaultModule.cooldownTime        = 1f;
            gun.DefaultModule.numberOfShotsInClip = 1;
            gun.gunSwitchGroup     = (PickupObjectDatabase.GetById(15) as Gun).gunSwitchGroup;
            gun.muzzleFlashEffects = (PickupObjectDatabase.GetById(15) as Gun).muzzleFlashEffects;
            gun.SetBaseMaxAmmo(1000);
            gun.quality = PickupObject.ItemQuality.A;
            gun.encounterTrackable.EncounterGuid     = "I would have named it a Handvil but Nevernamed held a gun to my head until I changed it.";
            gun.sprite.IsPerpendicular               = true;
            gun.barrelOffset.transform.localPosition = new Vector3(2.25f, 0.3125f, 0f);
            gun.gunClass = GunClass.EXPLOSIVE;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= 1f;
            projectile.baseData.speed       *= 1f;
            projectile.baseData.force       *= 1f;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
            gun.AddToSubShop(ItemBuilder.ShopType.Trorc);
            gun.AddToSubShop(ItemBuilder.ShopType.Cursula);
        }
Example #24
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Spellcaster", "spellcaster");

            Game.Items.Rename("outdated_gun_mods:spellcaster", "cel:spellcaster");
            gun.gameObject.AddComponent <Spellcaster>();
            gun.SetShortDescription("Fractal");
            gun.SetLongDescription("Upon entering a new floor, the gun changes between different ammo types.");
            gun.SetupSprite(null, "spellcaster_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 12);
            gun.SetAnimationFPS(gun.reloadAnimation, 9);
            gun.AddProjectileModuleFrom("38_special", true, false);
            gun.SetBaseMaxAmmo(350);
            gun.DefaultModule.ammoCost      = 1;
            gun.InfiniteAmmo                = true;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = .8f;
            gun.DefaultModule.cooldownTime = 0.1f;
            gun.gunClass = GunClass.PISTOL;
            gun.DefaultModule.numberOfShotsInClip = 6;
            gun.quality = PickupObject.ItemQuality.EXCLUDED;
            Gun gun2 = PickupObjectDatabase.GetById(12) as Gun;
            Gun gun3 = PickupObjectDatabase.GetById(128) as Gun;

            gun.muzzleFlashEffects               = gun2.muzzleFlashEffects;
            gun.gunSwitchGroup                   = gun3.gunSwitchGroup;
            gun.gunHandedness                    = GunHandedness.OneHanded;
            gun.DefaultModule.angleVariance      = 4f;
            gun.encounterTrackable.EncounterGuid = "totally not a promo for my WIP game Fractal. Nope. Not at all.";
            gun.sprite.IsPerpendicular           = true;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.baseData.damage      *= 1.5f;
            projectile.baseData.speed       *= 1f;
            projectile.baseData.force       *= 1f;
            projectile.transform.parent      = gun.barrelOffset;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #25
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Tesla", "tesla");

            Game.Items.Rename("outdated_gun_mods:tesla", "cel:tesla");
            gun.gameObject.AddComponent <Tesla>();
            gun.SetShortDescription("Static Fields");
            gun.SetLongDescription("Shoots bolts of energy\n\n Kinda tastes metallic.\n\n\n (Disclaimer: UnstableStrafe does NOT endorse licking a tesla coil or any form of electricty generators in real life.)");

            gun.SetupSprite(null, "tesla_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 24);

            gun.AddProjectileModuleFrom("electric_rifle", true, false);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Burst;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 0f;
            gun.DefaultModule.burstShotCount      = 5;
            gun.DefaultModule.burstCooldownTime   = .1f;
            gun.DefaultModule.cooldownTime        = .8f;
            gun.DefaultModule.numberOfShotsInClip = 500;
            gun.DefaultModule.angleVariance       = 5;
            gun.gunClass      = GunClass.FULLAUTO;
            gun.gunHandedness = GunHandedness.HiddenOneHanded;
            Gun gun2 = PickupObjectDatabase.GetById(153) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(500);
            gun.sprite.IsPerpendicular = true;
            gun.quality = PickupObject.ItemQuality.S;
            gun.encounterTrackable.EncounterGuid = "Please do not lick electricty. k thanks.";
            ETGMod.Databases.Items.Add(gun, null, "ANY");

            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.baseData.damage      *= 1.25f;
            projectile.baseData.speed       *= 1f;
            projectile.transform.parent      = gun.barrelOffset;
        }
Example #26
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Incremental", "incremental");

            Game.Items.Rename("outdated_gun_mods:incremental", "cel:incremental");
            gun.gameObject.AddComponent <Incremental>();
            gun.SetShortDescription("Start Again");
            gun.SetLongDescription("Damage increases the further you are into your clip.\n\nMade by an explorer who liked keeping track of his magazine capacity in style. Ticking can be heard when the gun is idle.");

            gun.SetupSprite(null, "incremental_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 24);
            gun.SetAnimationFPS(gun.reloadAnimation, 4);

            gun.AddProjectileModuleFrom("ak-47", true, false);

            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime     = 1f;
            gun.gunSwitchGroup = "Uzi";
            gun.DefaultModule.angleVariance       = 6f;
            gun.DefaultModule.cooldownTime        = .1f;
            gun.DefaultModule.numberOfShotsInClip = 30;
            Gun gun2 = PickupObjectDatabase.GetById(15) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(360);
            gun.quality = PickupObject.ItemQuality.B;
            gun.encounterTrackable.EncounterGuid = "hfhajafaassaafsjsapaspfafjadafwwdafx.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass = GunClass.FULLAUTO;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= .54545454545f;
            projectile.shouldRotate          = true;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
            gun.AddToSubShop(ItemBuilder.ShopType.Trorc);
        }
Example #27
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("d.e.a.t.h._drone", "d.e.a.t.h._drone");

            Game.Items.Rename("outdated_gun_mods:d.e.a.t.h._drone", "cel:d.e.a.t.h._drone");
            gun.gameObject.AddComponent <DEATHDrone>();
            gun.SetShortDescription("fswwawdw");
            gun.SetLongDescription("wsdfeesadwdasdwda.");
            gun.SetupSprite(null, "d.e.a.t.h._drone_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 24);
            gun.SetAnimationFPS(gun.reloadAnimation, 10);
            gun.AddProjectileModuleFrom("future_assault_rifle", true, false);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = .6f;
            gun.DefaultModule.angleVariance       = 4f;
            gun.DefaultModule.cooldownTime        = .11f;
            gun.DefaultModule.numberOfShotsInClip = 25;
            gun.gunSwitchGroup = (PickupObjectDatabase.GetById(229) as Gun).gunSwitchGroup;
            Gun gun2 = PickupObjectDatabase.GetById(151) as Gun;

            gun.muzzleFlashEffects = gun2.muzzleFlashEffects;
            gun.SetBaseMaxAmmo(500);
            gun.quality = PickupObject.ItemQuality.EXCLUDED;
            gun.encounterTrackable.EncounterGuid = "why the f**k am i even typing this shit out any more? Nobody will read this.";
            gun.sprite.IsPerpendicular           = true;
            gun.gunClass = GunClass.FULLAUTO;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= .75f;
            projectile.baseData.speed       *= 1f;
            projectile.baseData.force       *= 1f;
            projectile.HasDefaultTint        = true;
            projectile.DefaultTintColor      = new Color(10 / 150f, 152 / 150f, 216 / 150f);
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #28
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("AK-188", "ak_188");

            Game.Items.Rename("outdated_gun_mods:ak-188", "cel:ak-188");
            gun.gameObject.AddComponent <AK188>();
            gun.SetShortDescription("No God Can Help You");
            gun.SetLongDescription("Good luck, kid.");
            gun.SetupSprite(null, "ak_188_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 9);
            gun.SetAnimationFPS(gun.reloadAnimation, 10);
            gun.AddProjectileModuleFrom("ak-47", true, false);
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.SMALL_BULLET;
            gun.DefaultModule.ammoCost      = 4;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime   = 2f;
            gun.CanBeDropped = false;
            gun.CanBeSold    = false;
            gun.DefaultModule.angleVariance       = 4f;
            gun.DefaultModule.cooldownTime        = .06f;
            gun.DefaultModule.numberOfShotsInClip = 120;
            gun.gunSwitchGroup     = (PickupObjectDatabase.GetById(15) as Gun).gunSwitchGroup;
            gun.muzzleFlashEffects = (PickupObjectDatabase.GetById(15) as Gun).muzzleFlashEffects;
            gun.SetBaseMaxAmmo(2000);
            gun.quality = PickupObject.ItemQuality.EXCLUDED;
            gun.encounterTrackable.EncounterGuid     = "what the actual f**k";
            gun.sprite.IsPerpendicular               = true;
            gun.barrelOffset.transform.localPosition = new Vector3(2.25f, 0.3125f, 0f);
            gun.gunClass = GunClass.FULLAUTO;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= 1f;
            projectile.baseData.speed       *= 1f;
            projectile.baseData.force       *= 1f;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("Evil Charmed Bow", "evil_charmed_bow");

            Game.Items.Rename("outdated_gun_mods:evil_charmed_bow", "cel:evil_charmed_bow");
            gun.gameObject.AddComponent <EvilCharmedBow>();
            gun.SetShortDescription("Click");
            gun.SetLongDescription("filler text.");
            gun.SetupSprite(null, "evil_charmed_bow_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 6);
            gun.AddProjectileModuleFrom("crossbow", true, false);
            gun.SetBaseMaxAmmo(180);
            gun.DefaultModule.ammoCost      = 1;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.SemiAutomatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1.2f;
            gun.DefaultModule.cooldownTime = 0.25f;
            gun.gunClass = GunClass.RIFLE;
            gun.DefaultModule.numberOfShotsInClip = 1;
            gun.quality = PickupObject.ItemQuality.EXCLUDED;
            Gun gun2 = PickupObjectDatabase.GetById(12) as Gun;

            gun.muzzleFlashEffects               = gun2.muzzleFlashEffects;
            gun.gunHandedness                    = GunHandedness.OneHanded;
            gun.DefaultModule.angleVariance      = 0f;
            gun.encounterTrackable.EncounterGuid = "evil charmed bow";
            gun.sprite.IsPerpendicular           = true;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.baseData.damage      *= 1.10f;
            projectile.baseData.speed       *= 2f;
            projectile.baseData.force       *= 1f;
            projectile.AppliesPoison         = true;
            projectile.PoisonApplyChance     = .33f;
            projectile.healthEffect          = Library.Venom;
            projectile.transform.parent      = gun.barrelOffset;
            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }
Example #30
0
        public static void Add()
        {
            Gun gun = ETGMod.Databases.Items.NewGun("AK-94", "ak_94");

            Game.Items.Rename("outdated_gun_mods:ak-94", "cel:ak-94");
            gun.gameObject.AddComponent <AK94>();
            gun.SetShortDescription("Accept No SuuS oN tpeccA");
            gun.SetLongDescription("Some idiot decided to create this affront against God by taping two AK-47's together.");
            gun.SetupSprite(null, "ak_94_idle_001", 8);
            gun.SetAnimationFPS(gun.shootAnimation, 9);
            gun.SetAnimationFPS(gun.reloadAnimation, 10);
            gun.AddProjectileModuleFrom("ak-47", true, false);
            gun.DefaultModule.ammoType      = GameUIAmmoType.AmmoType.SMALL_BULLET;
            gun.DefaultModule.ammoCost      = 2;
            gun.DefaultModule.shootStyle    = ProjectileModule.ShootStyle.Automatic;
            gun.DefaultModule.sequenceStyle = ProjectileModule.ProjectileSequenceStyle.Random;
            gun.reloadTime = 1f;
            gun.DefaultModule.angleVariance       = 4;
            gun.DefaultModule.cooldownTime        = .11f;
            gun.DefaultModule.numberOfShotsInClip = 60;
            gun.gunSwitchGroup     = (PickupObjectDatabase.GetById(15) as Gun).gunSwitchGroup;
            gun.muzzleFlashEffects = (PickupObjectDatabase.GetById(15) as Gun).muzzleFlashEffects;
            gun.SetBaseMaxAmmo(1000);
            gun.quality = PickupObject.ItemQuality.B;
            gun.encounterTrackable.EncounterGuid     = "reverse, reverse";
            gun.sprite.IsPerpendicular               = true;
            gun.barrelOffset.transform.localPosition = new Vector3(2.25f, 0.3125f, 0f);
            gun.gunClass = GunClass.FULLAUTO;
            Projectile projectile = UnityEngine.Object.Instantiate <Projectile>(gun.DefaultModule.projectiles[0]);

            projectile.gameObject.SetActive(false);
            FakePrefab.MarkAsFakePrefab(projectile.gameObject);
            UnityEngine.Object.DontDestroyOnLoad(projectile);
            gun.DefaultModule.projectiles[0] = projectile;
            projectile.transform.parent      = gun.barrelOffset;
            projectile.baseData.damage      *= 1f;
            projectile.baseData.speed       *= 1f;
            projectile.baseData.force       *= 1f;


            ETGMod.Databases.Items.Add(gun, null, "ANY");
        }