]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - pr_execprogram.h
added invpow (arbitrary logarithm, finds a power that the base number would need...
[xonotic/darkplaces.git] / pr_execprogram.h
index be8468bcfccbde1adc3f10a2ad396e71ab92faa8..aef70e8428fe8da82965c288cd19382013ed1e92 100644 (file)
@@ -82,7 +82,7 @@
                                OPC->_float = !OPA->vector[0] && !OPA->vector[1] && !OPA->vector[2];
                                break;
                        case OP_NOT_S:
-                               OPC->_float = !OPA->string || !pr_strings[OPA->string];
+                               OPC->_float = !OPA->string || !*PR_GetString(OPA->string);
                                break;
                        case OP_NOT_FNC:
                                OPC->_float = !OPA->function;
@@ -97,7 +97,7 @@
                                OPC->_float = (OPA->vector[0] == OPB->vector[0]) && (OPA->vector[1] == OPB->vector[1]) && (OPA->vector[2] == OPB->vector[2]);
                                break;
                        case OP_EQ_S:
-                               OPC->_float = !strcmp(pr_strings+OPA->string,pr_strings+OPB->string);
+                               OPC->_float = !strcmp(PR_GetString(OPA->string),PR_GetString(OPB->string));
                                break;
                        case OP_EQ_E:
                                OPC->_float = OPA->_int == OPB->_int;
                                OPC->_float = (OPA->vector[0] != OPB->vector[0]) || (OPA->vector[1] != OPB->vector[1]) || (OPA->vector[2] != OPB->vector[2]);
                                break;
                        case OP_NE_S:
-                               OPC->_float = strcmp(pr_strings+OPA->string,pr_strings+OPB->string);
+                               OPC->_float = strcmp(PR_GetString(OPA->string),PR_GetString(OPB->string));
                                break;
                        case OP_NE_E:
                                OPC->_float = OPA->_int != OPB->_int;
                                OPB->_int = OPA->_int;
                                break;
                        case OP_STORE_V:
-                               OPB->vector[0] = OPA->vector[0];
-                               OPB->vector[1] = OPA->vector[1];
-                               OPB->vector[2] = OPA->vector[2];
+                               OPB->ivector[0] = OPA->ivector[0];
+                               OPB->ivector[1] = OPA->ivector[1];
+                               OPB->ivector[2] = OPA->ivector[2];
                                break;
 
                        case OP_STOREP_F:
                                        // negative statements are built in functions
                                        if ((-newf->first_statement) >= pr_numbuiltins)
                                                Host_Error ("Bad builtin call number");
+                                       pr_xfunction->builtinsprofile++;
                                        pr_builtins[-newf->first_statement] ();
                                }
                                else