public static string GetItemName(GameItem item)
        {
            GameItemRarity rarity = item.Rarity;
            GameItemTypes  type   = item.ItemType;

            string typeString = type.ToString().ToCamelCase();

            switch (rarity)
            {
            default:
            case GameItemRarity.COMMON:
                return("Trainee's " + typeString);

            case GameItemRarity.UNCOMMON:
                return("Steel " + typeString);

            case GameItemRarity.RARE:
                return("Enchanted " + typeString);

            case GameItemRarity.EPIC:
                return("Masterwork " + typeString);

            case GameItemRarity.LEGENDARY:
                bool   useAdjective = Random.Range(0, 2) == 0;
                string adjective    = useAdjective ? GetAdjective() + " " : "";

                return(GetCompoundName() + ", " + adjective + typeString + " of " + GetTerritoryName());
            }
        }
Beispiel #2
0
        public GameItem(GameItemTypes type, GameItemRarity rarity)
        {
            ItemType = type;
            Rarity   = rarity;

            DisplayName = NameDatabase.GetItemName(this);
            BasePower   = Random.Range(12f, 15f);
        }
        public static GameItem GenerateItem(
            GameItemTypes type    = GameItemTypes.UNKNOWN,
            GameItemRarity rarity = GameItemRarity.UNKNOWN)
        {
            if (type == GameItemTypes.UNKNOWN)
            {
                type = EnumUtility.GetRandomEnumValue <GameItemTypes>(1);
            }
            if (rarity == GameItemRarity.UNKNOWN)
            {
                rarity = EnumUtility.GetRandomEnumValue <GameItemRarity>(1);
            }

            GameItem newItem = new GameItem(type, rarity);

            return(newItem);
        }
Beispiel #4
0
        public Sprite GetSpriteForType(GameItemTypes state)
        {
            switch (state)
            {
            case GameItemTypes.SWORD:
                return(swordIcon);

            case GameItemTypes.HAMMER:
                return(hammerIcon);

            case GameItemTypes.DAGGER:
                return(daggerIcon);

            case GameItemTypes.SHIELD:
                return(shieldIcon);

            case GameItemTypes.STAFF:
                return(staffIcon);

            case GameItemTypes.AXE:
                return(axeIcon);

            case GameItemTypes.CHESTPIECE:
                return(chestIcon);

            case GameItemTypes.HELMET:
                return(helmetIcon);

            case GameItemTypes.GAUNTLETS:
                return(gauntletIcon);

            case GameItemTypes.GREAVES:
                return(greavesIcon);

            case GameItemTypes.LEGGINGS:
                return(leggingsIcon);

            case GameItemTypes.SPAULDERS:
                return(spauldersIcon);

            default:
                return(null);
            }
        }
        public static GameItem GenerateItem(
            GameItemTypes type    = GameItemTypes.UNKNOWN,
            GameItemRarity rarity = GameItemRarity.UNKNOWN,
            float quality         = 0.5f)
        {
            if (type == GameItemTypes.UNKNOWN)
            {
                type = EnumUtility.GetRandomEnumValue <GameItemTypes>(1);
            }
            if (rarity == GameItemRarity.UNKNOWN)
            {
                rarity = EnumUtility.GetRandomEnumValue <GameItemRarity>(1);
            }

            GameItem newItem = new GameItem(type, rarity, quality);

            newItem.DisplayName      = NameDatabase.GetItemName(newItem);
            newItem.BaseAttackPower  = Random.Range(1f, 3f);
            newItem.BaseDefencePower = Random.Range(1f, 3f);
            return(newItem);
        }
Beispiel #6
0
 public GameItem(GameItemTypes type, GameItemRarity rarity, float quality)
 {
     ItemType    = type;
     Rarity      = rarity;
     BaseQuality = quality.Map(0, 1, 0.4f, 0.8f);
 }