String

Wax_Banana

New Member
Reaction score
2
Hello, I have a little problem. I would like to set a real variable acording to the entered string of the player.
For example, the player says 10, and then the real variable must be set to 10... I have no idea how to do it help plz!


Thanks!
 

Grags_1977

Ultra Cool Member
Reaction score
32
This is the easiest way I know of without having a for to loop search through the entire entered chat string for integer values.

Trigger:
  • Melee Initialization
    • Events
      • Map initialization
    • Conditions
    • Actions
      • For each (Integer A) from 1 to 10, do (Actions)
        • Loop - Actions
          • Trigger - Add to (Some Trigger) the event (Player - Player 1 (Red) types a chat message containing (String((Integer A))) as A substring)



I'm not sure if there is an easier way. I can build you a system that manipulates the entered chat string and seaches for integer values.


EDIT: I can't write you the system, I tried and failed.


Trigger:
  • Some Trigger
    • Events
    • Conditions
    • Actions
      • Set s = (Entered chat string)
      • Set s2 = <Empty String>
      • For each (Integer A) from 1 to (Length of s), do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Or - Any (Conditions) are true
                • Conditions
                  • (Integer((Substring(s, (Integer A), 1)))) Equal to 0
                  • (Integer((Substring(s, (Integer A), 1)))) Equal to 1
                  • (Integer((Substring(s, (Integer A), 1)))) Equal to 2
                  • (Integer((Substring(s, (Integer A), 1)))) Equal to 3
                  • (Integer((Substring(s, (Integer A), 1)))) Equal to 4
                  • (Integer((Substring(s, (Integer A), 1)))) Equal to 5
                  • (Integer((Substring(s, (Integer A), 1)))) Equal to 6
                  • (Integer((Substring(s, (Integer A), 1)))) Equal to 7
                  • (Integer((Substring(s, (Integer A), 1)))) Equal to 8
                  • (Integer((Substring(s, (Integer A), 1)))) Equal to 9
            • Then - Actions
              • Set s2 = (s2 + (Substring(s, (Integer A), 1)))
            • Else - Actions
      • Game - Display to (All players) the text: s2


This SHOULD work, but it doesn't and I have no idea why. The Function "Substring" seems a little screwy
 

Dirac

22710180
Reaction score
147
Woah that's one huge missfire! Don't ever code like that.

use this:

StringToReal(Substring(1,Lenght of entered chant string))
 

Grags_1977

Ultra Cool Member
Reaction score
32
I'm not sure what you mean by "StringToReal(Substring(1,Lenght of entered chant string))" Seems Jassy?
 

Dirac

22710180
Reaction score
147
I really have put every single thing on plain sight, you people should research some more before asking...

set real = Conversion Real to String -> Substring(entered chat string) -> 1,Lenght of string(entered chat string)

the 1 means it start at the first letter, change it to 2 if you wish to add "-" before the number
 

Grags_1977

Ultra Cool Member
Reaction score
32
You people?

Why do you have to be rude? Just answer the question without adding a sarcastic "I'm sooo better than you" touch to everything you type. ffs.

If people don't understand something. They ask. Thats what this site is for.
 

GFreak45

I didnt slap you, i high 5'd your face.
Reaction score
130
dirac patience! lol
not everyone is versed with jass, a lot of people have trouble with just gui and for basic things it is much simpler, simply because it spells it out for you...

even if someone researches something they wont always get it
 

Dirac

22710180
Reaction score
147
There's nothing sarcastic or condescending on my response, neither JASS or vJass. This is the GUI user section, my answer applies for GUI triggers.
"you people should research some more before asking..." means that what i posted in fact exists and you should open the editor and look for it before asking "i'm not sure what you mean".
I was being kind on your response which was truly terrible, let's not take it any further.
 

GFreak45

I didnt slap you, i high 5'd your face.
Reaction score
130
it wasnt me that said it i just thought u were getting mad, maybe it came across wrong...

and conversions a lot of times are somewhat past peoples gui reading capabilities, easy to implement confusing to read for some...
i got it when i actually read the post after a few seconds, but i could see how a beginner would get confused is all im saying

for those who dont know conversions well

ie:
Integer to string
string to real
cowfarts to fuel (lol)

basically:
1 (integer) ->1 string
1 (real) -> 1.00 string
etc

lets leave it at that :/
 

Grags_1977

Ultra Cool Member
Reaction score
32
It's the way you word it Dirac. It truly feals like your replies are a put down, rather than help.

Being refered to as a "you people" is very condescending...
 

KaerfNomekop

Swim, fishies. Swim through the veil of steel.
Reaction score
613
In GUI, I believe you mean this:

Trigger:
  • Reveal Shop
    • Events
      • Player - Player 1 (Red) types a chat message containing - as A substring
    • Conditions
    • Actions
      • Set Real = (Real((Substring((Entered chat string), 2, (Length of (Entered chat string))))))


Set Variable > Convert String to Real > Substring > Event Response - Entered Chat String, 2, String Length > Event Response - Entered Chat String
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top