Comparing text?

Exide

I am amazingly focused right now!
Reaction score
448
Hi.

I started playing around with the SC2 editor. It was a long time since I last used either it or the WC3 editor, so my skills are very rusty.
To the point:

I want to make a custom function that:
*Takes a random global text variable
*Works it's magic (loops it around a bit)
*Returns an Integer Value


Here's what I did so far:
Trigger:
  • InventoryItemCheckValue
    • Options: Function
    • Return Type: Integer
    • Parameters
      • CheckItem = No Text <Text>
    • Grammar Text: InventoryItemCheckValue(CheckItem)
    • Hint Text: (None)
    • Custom Script Code
    • Local Variables
      • checkname = CheckItem <Text>
      • loop = 0 <Integer>
    • Actions
      • General - If (Conditions) then do (Actions) else do (Actions)
        • If
        • Then
        • Else
      • General - Return loop


I know this does nothing so far, I haven't even begun yet.
To the problem:

The problem lies within the If/Then/Else. I want to add a compiration that compares text. To be more exact, I want to compare the parameter "CheckItem" (alternatively the local variable "checkname") with a certain text. For example: If CheckItem == "Test" Then.. *actions*


The problem is that I can't find a way to compare texts. Nothing shows up under the "Parameters" tab, and "checkname" doesn't even show up under the "Variables" tab. (I created the local variable "checkname" as a test, to see if it would show up, which it didn't.)

Now I wonder how can I compare the Parameter with a certain text?
I managed to compare text in another compiration.. It just isn't working in my Function. (I am guessing I'm doing something wrong, but I have no idea what.)

Help appriciated.
 

Siretu

Starcraft 2 Editor Moderator
Reaction score
293
Unfortunately, one of the SC2's "features" is that it can't compare text. This is extremely silly and is due to the localization "feature" which is also the reason all text in your map will be replaced with "param/value/...." if you publish it on another server than the one you created it on.

Basically, since the text is translated to different game clients, the text might not be the same for everyone and we're not allowed to compare them because of this. It's hard to explain but s3rius explains it pretty good here.

If you want to compare if CheckItem == "Test", use strings instead. Strings behave like they should without confusing you.
 

Exide

I am amazingly focused right now!
Reaction score
448
Unfortunately, one of the SC2's "features" is that it can't compare text. This is extremely silly and is due to the localization "feature" which is also the reason all text in your map will be replaced with "param/value/...." if you publish it on another server than the one you created it on.

So I should replace all my text variables with string variables, then?


If you want to compare if CheckItem == "Test", use strings instead. Strings behave like they should without confusing you.

I will try using strings, thanks.
 

Siretu

Starcraft 2 Editor Moderator
Reaction score
293
So I should replace all my text variables with string variables, then?

I personally wouldn't bother. I don't know if taking a string and converting it to a text will still cause it to cause the "param/value" problem but since EVERY text will be affected(this includes button tooltips and other texts in the data editor that you can't change to strings) I wouldn't bother. Especially since you'll have a hard time formatting your strings with colors and fonts and such.

The solution to these problems is to fix the localization. You can find a thread about it on sc2mapster here or just use the localizer found here(however some people have reported that it doesn't work properly for them. It works good for me though and it's very easy to use.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top