console_error now optional for console_parse_type
Prevents lua step functions from clearing console_error in calls to console_parse_type, hence preventing luacon_eval errors from being shown
This commit is contained in:
parent
b3e0085606
commit
b5856bfa47
@ -13,7 +13,7 @@ int console_parse_type(char *txt, int *element, char *err)
|
|||||||
int i = -1;
|
int i = -1;
|
||||||
if (strcasecmp(txt,"WIND")==0)
|
if (strcasecmp(txt,"WIND")==0)
|
||||||
{
|
{
|
||||||
strcpy(err, "Particle type not recognised");
|
if (err) strcpy(err, "Particle type not recognised");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
// alternative names for some elements
|
// alternative names for some elements
|
||||||
@ -23,18 +23,18 @@ int console_parse_type(char *txt, int *element, char *err)
|
|||||||
if (i>=0)
|
if (i>=0)
|
||||||
{
|
{
|
||||||
*element = i;
|
*element = i;
|
||||||
strcpy(err,"");
|
if (err) strcpy(err,"");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
for (i=1; i<PT_NUM; i++) {
|
for (i=1; i<PT_NUM; i++) {
|
||||||
if (strcasecmp(txt,ptypes[i].name)==0)
|
if (strcasecmp(txt,ptypes[i].name)==0)
|
||||||
{
|
{
|
||||||
*element = i;
|
*element = i;
|
||||||
strcpy(err,"");
|
if (err) strcpy(err,"");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
strcpy(err, "Particle type not recognised");
|
if (err) strcpy(err, "Particle type not recognised");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
//takes a string of coords "x,y" and puts the values into x and y.
|
//takes a string of coords "x,y" and puts the values into x and y.
|
||||||
@ -43,7 +43,7 @@ int console_parse_coords(char *txt, int *x, int *y, char *err)
|
|||||||
int nx = -1, ny = -1;
|
int nx = -1, ny = -1;
|
||||||
if (sscanf(txt,"%d,%d",&nx,&ny)!=2 || nx<0 || nx>=XRES || ny<0 || ny>=YRES)
|
if (sscanf(txt,"%d,%d",&nx,&ny)!=2 || nx<0 || nx>=XRES || ny<0 || ny>=YRES)
|
||||||
{
|
{
|
||||||
strcpy(err,"Invalid coordinates");
|
if (err) strcpy(err,"Invalid coordinates");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
*x = nx;
|
*x = nx;
|
||||||
@ -54,7 +54,7 @@ int console_parse_coords(char *txt, int *x, int *y, char *err)
|
|||||||
int console_parse_partref(char *txt, int *which, char *err)
|
int console_parse_partref(char *txt, int *which, char *err)
|
||||||
{
|
{
|
||||||
int i = -1, nx, ny;
|
int i = -1, nx, ny;
|
||||||
strcpy(err,"");
|
if (err) strcpy(err,"");
|
||||||
if (strchr(txt,',') && console_parse_coords(txt, &nx, &ny, err))
|
if (strchr(txt,',') && console_parse_coords(txt, &nx, &ny, err))
|
||||||
{
|
{
|
||||||
i = pmap[ny][nx];
|
i = pmap[ny][nx];
|
||||||
@ -75,10 +75,10 @@ int console_parse_partref(char *txt, int *which, char *err)
|
|||||||
if (i>=0 && i<NPART && parts[i].type)
|
if (i>=0 && i<NPART && parts[i].type)
|
||||||
{
|
{
|
||||||
*which = i;
|
*which = i;
|
||||||
strcpy(err,"");
|
if (err) strcpy(err,"");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
if (strcmp(err,"")==0) strcpy(err,"Particle does not exist");
|
if (err && strcmp(err,"")==0) strcpy(err,"Particle does not exist");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -169,7 +169,7 @@ int luatpt_create(lua_State* l)
|
|||||||
return luaL_error(l, "Unrecognised element number '%d'", t);
|
return luaL_error(l, "Unrecognised element number '%d'", t);
|
||||||
} else {
|
} else {
|
||||||
name = luaL_optstring(l, 3, "dust");
|
name = luaL_optstring(l, 3, "dust");
|
||||||
if (!console_parse_type(name, &t, console_error))
|
if (!console_parse_type(name, &t, NULL))
|
||||||
return luaL_error(l,"Unrecognised element '%s'", name);
|
return luaL_error(l,"Unrecognised element '%s'", name);
|
||||||
}
|
}
|
||||||
retid = create_part(-1, x, y, t);
|
retid = create_part(-1, x, y, t);
|
||||||
@ -393,7 +393,7 @@ int luatpt_set_property(lua_State* l)
|
|||||||
if(acount>2){
|
if(acount>2){
|
||||||
if(!lua_isnumber(l, acount) && lua_isstring(l, acount)){
|
if(!lua_isnumber(l, acount) && lua_isstring(l, acount)){
|
||||||
name = luaL_optstring(l, acount, "none");
|
name = luaL_optstring(l, acount, "none");
|
||||||
if (!console_parse_type(name, &partsel, console_error))
|
if (!console_parse_type(name, &partsel, NULL))
|
||||||
return luaL_error(l, "Unrecognised element '%s'", name);
|
return luaL_error(l, "Unrecognised element '%s'", name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -409,7 +409,7 @@ int luatpt_set_property(lua_State* l)
|
|||||||
return luaL_error(l, "Unrecognised element number '%d'", t);
|
return luaL_error(l, "Unrecognised element number '%d'", t);
|
||||||
} else {
|
} else {
|
||||||
name = luaL_optstring(l, 2, "dust");
|
name = luaL_optstring(l, 2, "dust");
|
||||||
if (!console_parse_type(name, &t, console_error))
|
if (!console_parse_type(name, &t, NULL))
|
||||||
return luaL_error(l, "Unrecognised element '%s'", name);
|
return luaL_error(l, "Unrecognised element '%s'", name);
|
||||||
}
|
}
|
||||||
if(i == -1 || (w != -1 && h != -1)){
|
if(i == -1 || (w != -1 && h != -1)){
|
||||||
|
Loading…
Reference in New Issue
Block a user