description Takes a floating-point number - one that can, but doesn't have to, include a decimal point - and converts it to a floating-point number with only a certain number of digits left. For example, say you want to display a variable from your script to the user and it comes out to something like 45.366666666666666666666667 or whatever. That looks awful when you, for example, print it in a label. Now you could round it up to the nearest integer easily using a built-in function, or even to a certain number of decimal places using a reasonably simple custom function. But that's a bit arbitrary. Suppose you don't know what asset the script will be used on, and so you can't predict what the price is, and what the value will turn out to be. It could be 0.00045366666666666666666666667 instead. Now if you round it up to 3 decimal places it comes out as 0.000, which is useless. My function will round that number to 0.0004536 instead, if told to do it to 4 significant digits. I think this is more friendly.
Function Converts float with arbitrary number of digits to one with a specified number of significant figures. param float _float is the floating-point number to manipulate. param int _figures is the number of significant figures you want. Returns Returns a float with the specified number of significant figures
發行說明
Update: Adjusted to cope with an arbitrary number of significant figures instead of hardcoded 10.
發行說明
v3 is completely rewritten to use the new string manipulation functions instead of arrays. This makes it much shorter and easier to understand. It also fixed a horrendous bug with the previous versions. EVERYONE SHOULD UPGRADE to v3 for this reason.
發行說明
v4 Completely new logic, using maths to do maths instead of messing around with strings. Credit to tepmoc for supplying the function that showed me how to do it.