Ejemplo n.º 1
0
 public static void SetDefaults(Item item)
 {
     if (Consolaria.exists)
     {
         ItemEdits modItem = item.GetGlobalItem <ItemEdits>();
         if (item.type == consolaria.ItemType("AncientDragonMask") || item.type == consolaria.ItemType("AncientDragonBreastplate") ||
             item.type == consolaria.ItemType("AncientDragonGreaves") || item.type == consolaria.ItemType("DragonMask") ||
             item.type == consolaria.ItemType("DragonGreaves") || item.type == consolaria.ItemType("DragonBreastplate")
             )
         {
             modItem.knightItem = true;
         }
         if (item.type == consolaria.ItemType("AncientTitanHelmet") || item.type == consolaria.ItemType("AncientTitanLeggings") ||
             item.type == consolaria.ItemType("AncientTitanMail") || item.type == consolaria.ItemType("TitanHelmet") ||
             item.type == consolaria.ItemType("TitanLeggings") || item.type == consolaria.ItemType("TitanMail")
             )
         {
             modItem.rangerItem = true;
         }
         if (item.type == consolaria.ItemType("AncientSpectralArmor") || item.type == consolaria.ItemType("AncientSpectralHeadgear") ||
             item.type == consolaria.ItemType("AncientSpectralSubligar") || item.type == consolaria.ItemType("SpectralArmor") ||
             item.type == consolaria.ItemType("SpectralHeadgear") || item.type == consolaria.ItemType("SpectralSubligar")
             )
         {
             modItem.mageItem = true;
         }
         if (item.type == consolaria.ItemType("AncientWarlockHood") || item.type == consolaria.ItemType("AncientWarlockLeggings") ||
             item.type == consolaria.ItemType("AncientWarlockRobe") || item.type == consolaria.ItemType("WarlockHood") ||
             item.type == consolaria.ItemType("WarlockLeggings") || item.type == consolaria.ItemType("WarlockRobe")
             )
         {
             modItem.summonerItem = true;
         }
         if (item.type == consolaria.ItemType("AlbinoMandible"))
         {
             item.ranged = false;
             item.thrown = true;
         }
         if (ItemEdits.IsModItem(item) && item.modItem != null && item.type == consolaria.ItemType(item.modItem.Name))
         {
             JobHooks.ApplyClassAssigns(item);
         }
         if (item.type == consolaria.ItemType("AncientDragonBreastplate") || item.type == consolaria.ItemType("DragonBreastplate")
             )
         {
             item.defense += 20;
         }
         if (item.type == consolaria.ItemType("SpectralArrow"))
         {
             item.alpha = 127;
         }
     }
 }
Ejemplo n.º 2
0
        public static bool CanEquip(Item item, Player player)
        {
            ItemEdits   modItem   = item.GetGlobalItem <ItemEdits>();
            PlayerEdits modPlayer = player.GetModPlayer <PlayerEdits>();

            if (modItem.blocked == true)
            {
                return(false);
            }
            if (modItem.isBasic == true)
            {
                return(true);
            }
            if (modPlayer.choseJob == true)
            {
                if (modItem.knightItem || modItem.rogueItem || modItem.rangerItem || modItem.mageItem || modItem.summonerItem || modItem.alchemistItem)
                {
                    switch (modPlayer.job)
                    {
                    case JobID.knight:
                        switch (modPlayer.armorJob)
                        {
                        case 0:
                            if (modItem.knightItem)
                            {
                                return(true);
                            }
                            break;

                        case JobID.summoner:
                            if (modItem.knightItem || modItem.summonerItem)
                            {
                                return(true);
                            }
                            break;

                        case JobID.ranger:
                            if (modItem.knightItem || modItem.rangerItem)
                            {
                                return(true);
                            }
                            break;
                        }
                        break;

                    case JobID.rogue:
                        if (modPlayer.armorJob == JobID.summoner)
                        {
                            if (modItem.rogueItem || modItem.summonerItem)
                            {
                                return(true);
                            }
                        }
                        else
                        {
                            if (modItem.rogueItem)
                            {
                                return(true);
                            }
                        }
                        break;

                    case JobID.ranger:
                        switch (modPlayer.armorJob)
                        {
                        case 0:
                            if (modItem.rangerItem)
                            {
                                return(true);
                            }
                            break;

                        case JobID.summoner:
                            if (modItem.rangerItem || modItem.summonerItem)
                            {
                                return(true);
                            }
                            break;

                        case JobID.knight:
                            if (modItem.rangerItem || modItem.knightItem)
                            {
                                return(true);
                            }
                            break;
                        }
                        break;

                    case JobID.mage:
                        switch (modPlayer.armorJob)
                        {
                        case 0:
                            if (modItem.mageItem)
                            {
                                return(true);
                            }
                            break;

                        case JobID.summoner:
                            if (modItem.mageItem || modItem.summonerItem)
                            {
                                return(true);
                            }
                            break;
                        }
                        break;

                    case JobID.summoner:
                        switch (modPlayer.armorJob)
                        {
                        case 0:
                            if (modItem.summonerItem)
                            {
                                return(true);
                            }
                            break;

                        case JobID.knight:
                            if (modItem.summonerItem || modItem.knightItem)
                            {
                                return(true);
                            }
                            break;

                        case JobID.rogue:
                            if (modItem.summonerItem || modItem.rogueItem)
                            {
                                return(true);
                            }
                            break;

                        case JobID.ranger:
                            if (modItem.summonerItem || modItem.rangerItem)
                            {
                                return(true);
                            }
                            break;

                        case JobID.mage:
                            if (modItem.summonerItem || modItem.mageItem)
                            {
                                return(true);
                            }
                            break;

                        case JobID.alchemist:
                            if (modItem.summonerItem || modItem.alchemistItem)
                            {
                                return(true);
                            }
                            break;
                        }
                        if (modItem.alchemistItem)
                        {
                            return(true);
                        }
                        break;

                    case JobID.alchemist:
                        if (modPlayer.armorJob == JobID.summoner)
                        {
                            if (modItem.alchemistItem || modItem.summonerItem)
                            {
                                return(true);
                            }
                        }
                        else
                        {
                            if (modItem.alchemistItem)
                            {
                                return(true);
                            }
                        }
                        break;
                    }
                }
                else
                {
                    if (item.melee == false && item.thrown == false && item.ranged == false && item.magic == false && item.summon == false && modItem.chemical == false && item.accessory == false && ItemEdits.IsModItem(item) == true && ItemEdits.IsCOItem(item) == false && item.defense > 0)
                    {
                        return(true);
                    }
                    switch (modPlayer.job)
                    {
                    case JobID.knight:
                        switch (modPlayer.armorJob)
                        {
                        case 0:
                            if (item.melee)
                            {
                                return(true);
                            }
                            break;

                        case JobID.summoner:
                            if (item.melee || item.summon)
                            {
                                return(true);
                            }
                            break;

                        case JobID.ranger:
                            if (item.melee || item.ranged)
                            {
                                return(true);
                            }
                            break;
                        }
                        break;

                    case JobID.rogue:
                        if (modPlayer.armorJob == JobID.summoner)
                        {
                            if (item.thrown || item.melee || item.summon)
                            {
                                return(true);
                            }
                        }
                        else
                        {
                            if (item.thrown || item.melee)
                            {
                                return(true);
                            }
                        }
                        break;

                    case JobID.ranger:
                        switch (modPlayer.armorJob)
                        {
                        case 0:
                            if (item.ranged)
                            {
                                return(true);
                            }
                            break;

                        case JobID.summoner:
                            if (item.ranged || item.summon)
                            {
                                return(true);
                            }
                            break;

                        case JobID.knight:
                            if (item.ranged || item.melee)
                            {
                                return(true);
                            }
                            break;
                        }
                        break;

                    case JobID.mage:
                        switch (modPlayer.armorJob)
                        {
                        case 0:
                            if (item.magic)
                            {
                                return(true);
                            }
                            break;

                        case JobID.summoner:
                            if (item.magic || item.summon)
                            {
                                return(true);
                            }
                            break;
                        }
                        break;

                    case JobID.summoner:
                        switch (modPlayer.armorJob)
                        {
                        case 0:
                            if (item.summon)
                            {
                                return(true);
                            }
                            break;

                        case JobID.knight:
                            if (item.summon || item.melee)
                            {
                                return(true);
                            }
                            break;

                        case JobID.rogue:
                            if (item.summon || item.thrown || item.melee)
                            {
                                return(true);
                            }
                            break;

                        case JobID.ranger:
                            if (item.summon || item.ranged)
                            {
                                return(true);
                            }
                            break;

                        case JobID.mage:
                            if (item.summon || item.magic)
                            {
                                return(true);
                            }
                            break;

                        case JobID.alchemist:
                            if (item.summon || modItem.chemical)
                            {
                                return(true);
                            }
                            break;
                        }
                        if (item.summon)
                        {
                            return(true);
                        }
                        break;

                    case JobID.alchemist:
                        if (modPlayer.armorJob == JobID.summoner)
                        {
                            if (item.thrown || modItem.chemical || item.summon)
                            {
                                return(true);
                            }
                        }
                        else
                        {
                            if (item.thrown || modItem.chemical)
                            {
                                return(true);
                            }
                        }
                        break;
                    }
                }
            }
            return(modItem.preHardmode);
        }