summaryrefslogtreecommitdiff
path: root/src/map/script.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/script.c')
-rw-r--r--src/map/script.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/map/script.c b/src/map/script.c
index 263e319c1..1210507d6 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -408,7 +408,9 @@ static void add_scriptl(int l)
add_scriptb(backpatch>>16);
break;
case C_INT:
- add_scripti(str_data[l].val);
+ add_scripti(abs(str_data[l].val));
+ if(str_data[l].val < 0) //Notice that this is negative, from jA (Rayce)
+ add_scriptc(C_NEG);
break;
default:
// もう他の用途と確定してるので数字をそのまま
@@ -1499,8 +1501,8 @@ static void read_constdb(void)
if(line[0]=='/' && line[1]=='/')
continue;
type=0;
- if(sscanf(line,"%[A-Za-z0-9_],%[0-9xXA-Fa-f],%d",name,val,&type)>=2 ||
- sscanf(line,"%[A-Za-z0-9_] %[0-9xXA-Fa-f] %d",name,val,&type)>=2){
+ if(sscanf(line,"%[A-Za-z0-9_],%[-0-9xXA-Fa-f],%d",name,val,&type)>=2 ||
+ sscanf(line,"%[A-Za-z0-9_] %[-0-9xXA-Fa-f] %d",name,val,&type)>=2){
for(i=0;name[i];i++)
name[i]=tolower(name[i]);
n=add_str((const unsigned char *) name);