如何编码度量前缀(千,兆,千兆等)并对其进行计算?

问题描述 投票:0回答:2

我正在尝试使用untyy和c#编写与数字有关的游戏。

但是我需要用于大数字(千,兆,千兆等)的度量前缀”>

直到现在我还是这样:

normal += 9;
  if(normal >= 999)
  {
    normal = 0;
    kilo += 1;
  }
  if(kilo >= 999)
  {
    kilo = 0;
    mega += 1;
  }

但是我遇到一个问题,当数字达到981990999时,正常数字将重置而不是1008

我也该如何计算前缀?

编辑#1:

当我单击对象“ ASDASD”时,我就得到了钱(当我单击对象“ QQQ”时,我要买东西]

此代码用于ASDASD

public float normal;
    public float kilo;
    public float mega;
    public float x;

    public GUIText Displayer;



    void Start () 
    {



    }

    void OnMouseDown ()
    {

        if (gameObject.name=="ASDASD")
        {
        normal =normal + 90000;

        if(normal > 99999)
        {

           x=normal-100000;

           normal = 0;

           kilo = kilo + 1 + x/100000f;


        }
        }
    }


    void Update ()

    {

        if (kilo==0)

           Displayer.text = "" + normal.ToString("n0");

        else if (kilo >=1)

            Displayer.text="" + (kilo*100+normal/1000).ToString("n0") + "K";




    }
}

现在我该怎么做第二个目标代码? (买东西)

我正在尝试用不整洁的C#制作与数字有关的游戏。但是,我需要大量的度量前缀(千,兆,千兆等),直到现在我还是这样做:正常+ = 9; if(...

c# unity3d prefix
2个回答
1
投票

我认为您选择了错误的方式。您应该有一个价格变量和一个将其转换为文本表示形式的函数。 Answer for that


0
投票

我最近创建了此功能:

© www.soinside.com 2019 - 2024. All rights reserved.