x


Convert Float to String? or 3D Text = Float?

(note: it may be an Integer not a float, im not quite sure) so in my "RPG game" i'm setting up a very simple click to auto attack system, so far i have this set up on my monster:

var hitPoints = 100.0;
var Player: Transform;
var Self: Transform;
var TextofMonster: Transform;

function OnMouseOver () {
if (Input.GetMouseButtonDown(1)) {
Player.GetComponent(AttackSomething).AttackMonster(Self);

}
}

function ApplyDamage(DamageofWeapon) {
print(DamageofWeapon);

hitPoints -= DamageofWeapon;
TextofMonster.GetComponent(TextMesh).text = "DamageofWeapon";
if (hitPoints {

DestroySelf();
}
}

function DestroySelf()
{
print("destroy")
}

now the DamageofWeapon is an Float sent from another script, its a random number (depending on what weapon you use). I have the TextofMonster set up as a 3d Text that is a child of the monster, and it's original text is set to a space (nothing). I want it so everytime the function is called, it shows the damage that is caused (the DamageofWeapon) but i tried just putting that in there but i get an error code. I figure this is because DamageofWeapon is an Float and not a String, so alas my question, can i turn the number from DamageofWeapon into a string, or make the 3D text display that Float?

more ▼

asked Mar 02 '10 at 03:23 AM

Adam Bruns gravatar image

Adam Bruns
274 24 27 38

(comments are locked)
10|3000 characters needed characters left

2 answers: sort newest

Use .ToString():

var someNumber = 10.5;
GetComponent(TextMesh).text = someNumber.ToString();
more ▼

answered Mar 02 '10 at 04:02 AM

Eric5h5 gravatar image

Eric5h5
80.1k 41 132 518

(comments are locked)
10|3000 characters needed characters left

all classes in .NET/MONO has a method called ToString that returns a string representing the value of that class. you can override that class for your own classes too. let's say you have a point class then you can write

class point
{
public float x;
public float y;
override string ToString ()
{
return x.ToString () + " , " + y.ToString ();
}

you can use this function to create great strings that help in debugging your game. if you don't create a function yourself it will return the class name. to convert back string to float,double, int you can use int.Parse (yourstring) or float.Parse (yourstring)

more ▼

answered Mar 02 '10 at 07:21 AM

Ashkan_gc gravatar image

Ashkan_gc
9k 33 56 117

(comments are locked)
10|3000 characters needed characters left
Your answer
toggle preview:

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Topics:

x1937
x418
x108
x19

asked: Mar 02 '10 at 03:23 AM

Seen: 10616 times

Last Updated: Mar 02 '10 at 03:23 AM