vrheights

diff src/game_var.cc @ 11:537db3079134

- setting a variable from the console now sets the same variable in libgoatvr too - set_gvar_parse now returns the inferred type
author John Tsiombikas <nuclear@member.fsf.org>
date Fri, 03 Oct 2014 23:11:23 +0300
parents 3f221bdc9bab
children cb97ea43709b
line diff
     1.1 --- a/src/game_var.cc	Fri Oct 03 21:27:58 2014 +0300
     1.2 +++ b/src/game_var.cc	Fri Oct 03 23:11:23 2014 +0300
     1.3 @@ -82,7 +82,7 @@
     1.4  	return *a == 0 ? -1 : 1;
     1.5  }
     1.6  
     1.7 -void set_gvar_parse(const char *name, const char *val)
     1.8 +int set_gvar_parse(const char *name, const char *val)
     1.9  {
    1.10  	char *endp, *valstr = (char*)alloca(strlen(val) + 1);
    1.11  	strcpy(valstr, val);
    1.12 @@ -91,18 +91,19 @@
    1.13  	float fval = strtod(valstr, &endp);
    1.14  	if(endp != valstr && *endp == 0) {
    1.15  		set_gvar_num(name, fval);
    1.16 -		return;
    1.17 +		return GameVariable::NUMBER;
    1.18  	}
    1.19  
    1.20  	if(strccmp(valstr, "true") == 0 || strccmp(valstr, "yes") == 0) {
    1.21  		set_gvar_bool(name, true);
    1.22 -		return;
    1.23 +		return GameVariable::BOOL;
    1.24  	}
    1.25  	if(strccmp(valstr, "false") == 0 || strccmp(valstr, "no") == 0) {
    1.26  		set_gvar_bool(name, false);
    1.27 -		return;
    1.28 +		return GameVariable::BOOL;
    1.29  	}
    1.30 -	return set_gvar_str(name, val);
    1.31 +	set_gvar_str(name, val);
    1.32 +	return GameVariable::STR;
    1.33  }
    1.34  
    1.35  GameVariable &get_gvar(const char *name)