Terraria.ItemText.ValueToName C# (CSharp) Method

ValueToName() private static method

private static ValueToName ( int coinValue ) : string
coinValue int
return string
        private static string ValueToName(int coinValue)
        {
            int num1 = 0;
            int num2 = 0;
            int num3 = 0;
            int num4 = 0;
            int num5 = coinValue;
            while (num5 > 0)
            {
                if (num5 >= 1000000)
                {
                    num5 -= 1000000;
                    ++num1;
                }
                else if (num5 >= 10000)
                {
                    num5 -= 10000;
                    ++num2;
                }
                else if (num5 >= 100)
                {
                    num5 -= 100;
                    ++num3;
                }
                else if (num5 >= 1)
                {
                    --num5;
                    ++num4;
                }
            }
            string str = "";
            if (num1 > 0)
                str = str + (object)num1 + " Platinum ";
            if (num2 > 0)
                str = str + (object)num2 + " Gold ";
            if (num3 > 0)
                str = str + (object)num3 + " Silver ";
            if (num4 > 0)
                str = str + (object)num4 + " Copper ";
            if (str.Length > 1)
                str = str.Substring(0, str.Length - 1);
            return str;
        }

Same methods

ItemText::ValueToName ( ) : void

Usage Example

示例#1
0
        public static void NewText(Item newItem, int stack, bool noStack = false, bool longText = false)
        {
            bool flag = newItem.itemId >= 71 && newItem.itemId <= 74;

            if (!Main.showItemText || newItem.name == null || (!newItem.active || Main.netMode == 2))
            {
                return;
            }
            for (int index = 0; index < 20; ++index)
            {
                if (Main.itemText[index].active && (Main.itemText[index].name == newItem.AffixName() || flag && Main.itemText[index].coinText) && (!Main.itemText[index].NoStack && !noStack))
                {
                    string text1 = string.Concat(new object[4]
                    {
                        (object)newItem.name,
                        (object)" (",
                        (object)(Main.itemText[index].stack + stack),
                        (object)")"
                    });
                    string text2 = newItem.name;
                    if (Main.itemText[index].stack > 1)
                    {
                        text2 = string.Concat(new object[4]
                        {
                            (object)text2,
                            (object)" (",
                            (object)Main.itemText[index].stack,
                            (object)")"
                        });
                    }
                    Main.fontMouseText.MeasureString(text2);
                    Vector2 vector2 = Main.fontMouseText.MeasureString(text1);
                    if (Main.itemText[index].lifeTime < 0)
                    {
                        Main.itemText[index].scale = 1f;
                    }
                    if (Main.itemText[index].lifeTime < 60)
                    {
                        Main.itemText[index].lifeTime = 60;
                    }
                    if (flag && Main.itemText[index].coinText)
                    {
                        int num = 0;
                        if (newItem.itemId == 71)
                        {
                            num += newItem.stack;
                        }
                        else if (newItem.itemId == 72)
                        {
                            num += 100 * newItem.stack;
                        }
                        else if (newItem.itemId == 73)
                        {
                            num += 10000 * newItem.stack;
                        }
                        else if (newItem.itemId == 74)
                        {
                            num += 1000000 * newItem.stack;
                        }
                        Main.itemText[index].coinValue += num;
                        string text3 = ItemText.ValueToName(Main.itemText[index].coinValue);
                        vector2 = Main.fontMouseText.MeasureString(text3);
                        Main.itemText[index].name = text3;
                        if (Main.itemText[index].coinValue >= 1000000)
                        {
                            if (Main.itemText[index].lifeTime < 300)
                            {
                                Main.itemText[index].lifeTime = 300;
                            }
                            Main.itemText[index].color = new Color(220, 220, 198);
                        }
                        else if (Main.itemText[index].coinValue >= 10000)
                        {
                            if (Main.itemText[index].lifeTime < 240)
                            {
                                Main.itemText[index].lifeTime = 240;
                            }
                            Main.itemText[index].color = new Color(224, 201, 92);
                        }
                        else if (Main.itemText[index].coinValue >= 100)
                        {
                            if (Main.itemText[index].lifeTime < 180)
                            {
                                Main.itemText[index].lifeTime = 180;
                            }
                            Main.itemText[index].color = new Color(181, 192, 193);
                        }
                        else if (Main.itemText[index].coinValue >= 1)
                        {
                            if (Main.itemText[index].lifeTime < 120)
                            {
                                Main.itemText[index].lifeTime = 120;
                            }
                            Main.itemText[index].color = new Color(246, 138, 96);
                        }
                    }
                    Main.itemText[index].stack     += stack;
                    Main.itemText[index].scale      = 0.0f;
                    Main.itemText[index].rotation   = 0.0f;
                    Main.itemText[index].position.X = (float)((double)newItem.position.X + (double)newItem.width * 0.5 - (double)vector2.X * 0.5);
                    Main.itemText[index].position.Y = (float)((double)newItem.position.Y + (double)newItem.height * 0.25 - (double)vector2.Y * 0.5);
                    Main.itemText[index].velocity.Y = -7f;
                    if (!Main.itemText[index].coinText)
                    {
                        return;
                    }
                    Main.itemText[index].stack = 1;
                    return;
                }
            }
            int index1 = -1;

            for (int index2 = 0; index2 < 20; ++index2)
            {
                if (!Main.itemText[index2].active)
                {
                    index1 = index2;
                    break;
                }
            }
            if (index1 == -1)
            {
                double num = (double)Main.bottomWorld;
                for (int index2 = 0; index2 < 20; ++index2)
                {
                    if (num > (double)Main.itemText[index2].position.Y)
                    {
                        index1 = index2;
                        num    = (double)Main.itemText[index2].position.Y;
                    }
                }
            }
            if (index1 < 0)
            {
                return;
            }
            string text = newItem.AffixName();

            if (stack > 1)
            {
                text = string.Concat(new object[4]
                {
                    (object)text,
                    (object)" (",
                    (object)stack,
                    (object)")"
                });
            }
            Vector2 vector2_1 = Main.fontMouseText.MeasureString(text);

            Main.itemText[index1].alpha      = 1f;
            Main.itemText[index1].alphaDir   = -1;
            Main.itemText[index1].active     = true;
            Main.itemText[index1].scale      = 0.0f;
            Main.itemText[index1].NoStack    = noStack;
            Main.itemText[index1].rotation   = 0.0f;
            Main.itemText[index1].position.X = (float)((double)newItem.position.X + (double)newItem.width * 0.5 - (double)vector2_1.X * 0.5);
            Main.itemText[index1].position.Y = (float)((double)newItem.position.Y + (double)newItem.height * 0.25 - (double)vector2_1.Y * 0.5);
            Main.itemText[index1].color      = Color.White;
            if (newItem.rare == 1)
            {
                Main.itemText[index1].color = new Color(150, 150, (int)byte.MaxValue);
            }
            else if (newItem.rare == 2)
            {
                Main.itemText[index1].color = new Color(150, (int)byte.MaxValue, 150);
            }
            else if (newItem.rare == 3)
            {
                Main.itemText[index1].color = new Color((int)byte.MaxValue, 200, 150);
            }
            else if (newItem.rare == 4)
            {
                Main.itemText[index1].color = new Color((int)byte.MaxValue, 150, 150);
            }
            else if (newItem.rare == 5)
            {
                Main.itemText[index1].color = new Color((int)byte.MaxValue, 150, (int)byte.MaxValue);
            }
            else if (newItem.rare == -11)
            {
                Main.itemText[index1].color = new Color((int)byte.MaxValue, 175, 0);
            }
            else if (newItem.rare == -1)
            {
                Main.itemText[index1].color = new Color(130, 130, 130);
            }
            else if (newItem.rare == 6)
            {
                Main.itemText[index1].color = new Color(210, 160, (int)byte.MaxValue);
            }
            else if (newItem.rare == 7)
            {
                Main.itemText[index1].color = new Color(150, (int)byte.MaxValue, 10);
            }
            else if (newItem.rare == 8)
            {
                Main.itemText[index1].color = new Color((int)byte.MaxValue, (int)byte.MaxValue, 10);
            }
            else if (newItem.rare == 9)
            {
                Main.itemText[index1].color = new Color(5, 200, (int)byte.MaxValue);
            }
            else if (newItem.rare == 10)
            {
                Main.itemText[index1].color = new Color((int)byte.MaxValue, 40, 100);
            }
            else if (newItem.rare >= 11)
            {
                Main.itemText[index1].color = new Color(180, 40, (int)byte.MaxValue);
            }
            Main.itemText[index1].expert     = newItem.expert;
            Main.itemText[index1].name       = newItem.AffixName();
            Main.itemText[index1].stack      = stack;
            Main.itemText[index1].velocity.Y = -7f;
            Main.itemText[index1].lifeTime   = 60;
            if (longText)
            {
                Main.itemText[index1].lifeTime *= 5;
            }
            Main.itemText[index1].coinValue = 0;
            Main.itemText[index1].coinText  = newItem.itemId >= 71 && newItem.itemId <= 74;
            if (!Main.itemText[index1].coinText)
            {
                return;
            }
            if (newItem.itemId == 71)
            {
                Main.itemText[index1].coinValue += Main.itemText[index1].stack;
            }
            else if (newItem.itemId == 72)
            {
                Main.itemText[index1].coinValue += 100 * Main.itemText[index1].stack;
            }
            else if (newItem.itemId == 73)
            {
                Main.itemText[index1].coinValue += 10000 * Main.itemText[index1].stack;
            }
            else if (newItem.itemId == 74)
            {
                Main.itemText[index1].coinValue += 1000000 * Main.itemText[index1].stack;
            }
            Main.itemText[index1].ValueToName();
            Main.itemText[index1].stack = 1;
            int index3 = index1;

            if (Main.itemText[index3].coinValue >= 1000000)
            {
                if (Main.itemText[index3].lifeTime < 300)
                {
                    Main.itemText[index3].lifeTime = 300;
                }
                Main.itemText[index3].color = new Color(220, 220, 198);
            }
            else if (Main.itemText[index3].coinValue >= 10000)
            {
                if (Main.itemText[index3].lifeTime < 240)
                {
                    Main.itemText[index3].lifeTime = 240;
                }
                Main.itemText[index3].color = new Color(224, 201, 92);
            }
            else if (Main.itemText[index3].coinValue >= 100)
            {
                if (Main.itemText[index3].lifeTime < 180)
                {
                    Main.itemText[index3].lifeTime = 180;
                }
                Main.itemText[index3].color = new Color(181, 192, 193);
            }
            else
            {
                if (Main.itemText[index3].coinValue < 1)
                {
                    return;
                }
                if (Main.itemText[index3].lifeTime < 120)
                {
                    Main.itemText[index3].lifeTime = 120;
                }
                Main.itemText[index3].color = new Color(246, 138, 96);
            }
        }
All Usage Examples Of Terraria.ItemText::ValueToName