How to check a variable's digit?

Rink27

Veteran
Veteran
Joined
Jul 18, 2014
Messages
222
Reaction score
13
First Language
English
Primarily Uses
RMMV
◆Control Variables:#0237 Delivery Time = 56789
◆Script:var x = $gameVariables.value(237);
: :var y = 3;
: :
: :if (y = 4) {
: :var z = String(x).charAt(2);
: :} else if (y = 3) {
: :var z = String(x).charAt(1);
: :} else {
: :var z = String(x).charAt(0);
: :}
: :$gameVariables.setValue(239,y);
: :$gameVariables.setValue(240,z);
◆Text:None, Window, Bottom
: :Value: \V[240]<br>
: :Length: \V[239]

On the second script line I had coding to obtain the length, but I noticed it always gave a length of 4. So I hard coded it to a length that wasn't 4 and still got 4. What am I doing wrong?

----
Also, I can't access the "Javascript that don't deserve their own thread" thread. I keep getting an Error message.
 

Shaz

Veteran
Veteran
Joined
Mar 2, 2012
Messages
39,329
Reaction score
12,812
First Language
English
Primarily Uses
RMMV
=== is used to compare. = is used to assign.

if (y = 4) is always going to evaluate to true, because it assigns the value of 4 to the variable y, then returns true to say the assignment was successful.
 

Rink27

Veteran
Veteran
Joined
Jul 18, 2014
Messages
222
Reaction score
13
First Language
English
Primarily Uses
RMMV
=== is used to compare. = is used to assign.

if (y = 4) is always going to evaluate to true, because it assigns the value of 4 to the variable y, then returns true to say the assignment was successful.
I realised my mistake soon after (but couldn't access my own thread because of that forum error). I'm embarrassed having made this thread, lol. I'd blame my sleepiness at the time. Btw...

◆Script:var x = 12345;
: :var member = x.toString().length;
: :var last = member.substring(member.length - 2, member.length)
: :$gameVariables.setValue(240, last);

What I was experimenting with was ways to do a conditional on the last two digits of any number (I was trying to work with the second to last digit). My solution was simply:


◆Script:var x = $gameVariables.value(237) % 100;
: :$gameVariables.setValue(240, x);

But I was running into errors using that substring method. I was confused between substr and substring though. I think one was jQuery, and I'm not even sure if that could work with MV.
 

Shaz

Veteran
Veteran
Joined
Mar 2, 2012
Messages
39,329
Reaction score
12,812
First Language
English
Primarily Uses
RMMV
Yeah, easiest way is just to do % 100 :)
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Profile Posts

Is it strange that dropping acid is improving my game development?
I'm starting to wonder if I should go the Half Minute Hero route with my game. The character's main weapon is logistically way too strong. So I can't really let the player continuously grow it.... But if they had to build it up each time like HMH, that could work. Also it lets me take advantage of my randomly generated maps so much more. Hmm... This could work! :LZSexcite:
std::vector, std::map and std::string. Three reasons why I'd take C++ over C. :D
Today, 1,932 RPG Maker fans died from being too wow'ed. May they rest in peace.

Forum statistics

Threads
99,199
Messages
962,940
Members
130,780
Latest member
hapotot
Top