]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - prvm_execprogram.h
disable depthfirst rendering on animated models since it doesn't work and should...
[xonotic/darkplaces.git] / prvm_execprogram.h
index ca550df781c3a6ebb11bd915b9bb6cacfee620b4..8c6b0e47eb3e66b9c6bb183073f6c8c53717845b 100644 (file)
@@ -22,7 +22,7 @@
                        }
                        if (prog->watch_field_type != ev_void && prog->watch_edict < prog->max_edicts)
                        {
-                               prvm_vec_t *f = PRVM_EDICTFIELDVALUE(prog->edicts + prog->watch_edict, prog->watch_field);
+                               prvm_eval_t *f = PRVM_EDICTFIELDVALUE(prog->edicts + prog->watch_edict, prog->watch_field);
                                prog->xstatement = st + 1 - prog->statements;
                                PRVM_Watchpoint(prog, 1, "Entityfield watchpoint hit by engine", prog->watch_field_type, &prog->watch_edictfield_value, f);
                        }
                                OPC->_float = OPA->vector[0]*OPB->vector[0] + OPA->vector[1]*OPB->vector[1] + OPA->vector[2]*OPB->vector[2];
                                break;
                        case OP_MUL_FV:
-                               OPC->vector[0] = OPA->_float * OPB->vector[0];
-                               OPC->vector[1] = OPA->_float * OPB->vector[1];
-                               OPC->vector[2] = OPA->_float * OPB->vector[2];
+                               tempfloat = OPA->_float;
+                               OPC->vector[0] = tempfloat * OPB->vector[0];
+                               OPC->vector[1] = tempfloat * OPB->vector[1];
+                               OPC->vector[2] = tempfloat * OPB->vector[2];
                                break;
                        case OP_MUL_VF:
-                               OPC->vector[0] = OPB->_float * OPA->vector[0];
-                               OPC->vector[1] = OPB->_float * OPA->vector[1];
-                               OPC->vector[2] = OPB->_float * OPA->vector[2];
+                               tempfloat = OPB->_float;
+                               OPC->vector[0] = tempfloat * OPA->vector[0];
+                               OPC->vector[1] = tempfloat * OPA->vector[1];
+                               OPC->vector[2] = tempfloat * OPA->vector[2];
                                break;
                        case OP_DIV_F:
                                if( OPB->_float != 0.0f )
                                        goto cleanup;
                                }
                                ed = PRVM_PROG_TO_EDICT(OPA->edict);
-                               OPC->ivector[0] = ((prvm_eval_t *)(ed->fields.ip + OPB->_int))->ivector[0];
-                               OPC->ivector[1] = ((prvm_eval_t *)(ed->fields.ip + OPB->_int))->ivector[1];
-                               OPC->ivector[2] = ((prvm_eval_t *)(ed->fields.ip + OPB->_int))->ivector[2];
+                               ptr = (prvm_eval_t *)(ed->fields.ip + OPB->_int);
+                               OPC->ivector[0] = ptr->ivector[0];
+                               OPC->ivector[1] = ptr->ivector[1];
+                               OPC->ivector[2] = ptr->ivector[2];
                                break;
 
                //==================
                                }
                                if (prog->watch_field_type != ev_void && prog->watch_edict < prog->max_edicts)
                                {
-                                       prvm_vec_t *f = PRVM_EDICTFIELDVALUE(prog->edicts + prog->watch_edict, prog->watch_field);
+                                       prvm_eval_t *f = PRVM_EDICTFIELDVALUE(prog->edicts + prog->watch_edict, prog->watch_field);
                                        prog->xstatement = st - prog->statements;
                                        PRVM_Watchpoint(prog, 0, "Entityfield watchpoint hit", prog->watch_field_type, &prog->watch_edictfield_value, f);
                                }