public static int NewRangedWeapon(Mod mod, Vector2 position, int npcLevel, int playerLevel, float dps, int enemyDef) { int combined = npcLevel + playerLevel; int ammo; string weapon; if (combined >= 35) { switch (Main.rand.Next(5)) { default: weapon = "AngelBow"; ammo = ItemID.WoodenArrow; break; case 1: weapon = "DemonBow"; ammo = ItemID.WoodenArrow; break; case 2: weapon = "Kalashnikov"; ammo = ItemID.MusketBall; break; case 3: weapon = "M16"; ammo = ItemID.MusketBall; break; case 4: weapon = "Microgun"; ammo = ItemID.MusketBall; break; } } else { switch (Main.rand.Next(4)) { default: weapon = "Longbow"; ammo = ItemID.WoodenArrow; break; case 1: weapon = "GoldenPistol"; ammo = ItemID.MusketBall; break; case 2: weapon = "WoodenBow"; ammo = ItemID.WoodenArrow; break; case 3: weapon = "NambuPistol"; ammo = ItemID.MusketBall; break; } } RangedWeapon item = (RangedWeapon)Main.item[Item.NewItem(position, mod.ItemType(weapon))].modItem; item.dps = dps; item.enemyDef = enemyDef; item.Initialize(); BowInitPacket.Write(item.item.whoAmI, item.dps, item.enemyDef); return(ammo); }