]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/weapons/calculations.qc
Merge branch 'terencehill/menu_languages' into 'master'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / weapons / calculations.qc
index 183a5e5ed0f829e6867b23046c8514d52f046c6c..97c1999f84299fc98642f2c2597b84891f215cef 100644 (file)
@@ -55,11 +55,11 @@ vector damage_explosion_calcpush(vector explosion_f, vector target_v, float spee
        v = explosion_calcpush(explosion_f * speedfactor, m, target_v, 1, 0);
        // the factor we then get is:
        //   1
-       print(sprintf("MASS: %f\nv: %v -> %v\nENERGY BEFORE == %f + %f = %f\nENERGY AFTER >= %f\n",
+       LOG_INFOF("MASS: %f\nv: %v -> %v\nENERGY BEFORE == %f + %f = %f\nENERGY AFTER >= %f\n",
                m,
                target_v, target_v + v,
                target_v * target_v, m * explosion_f * speedfactor * explosion_f * speedfactor, target_v * target_v + m * explosion_f * speedfactor * explosion_f * speedfactor,
-               (target_v + v) * (target_v + v)));
+               (target_v + v) * (target_v + v));
        return v;
 #endif
        return explosion_f * explosion_calcpush_getmultiplier(explosion_f * speedfactor, target_v);
@@ -129,19 +129,33 @@ vector solve_cubic_abcd(float a, float b, float c, float d)
        v = solve_cubic_pq(p, q);
        v = (v -  b * '1 1 1') * (1.0 / (3.0 * a));
        if(a < 0)
-               v += '1 0 -1' * (v_z - v_x); // swap x, z
+               v += '1 0 -1' * (v.z - v.x); // swap x, z
        return v;
 }
 
 vector findperpendicular(vector v)
 {
        vector p;
-       p_x = v_z;
-       p_y = -v_x;
-       p_z = v_y;
+       p.x = v.z;
+       p.y = -v.x;
+       p.z = v.y;
        return normalize(cliptoplane(p, v));
 }
 
+int W_GetGunAlignment(entity player)
+{
+#ifdef SVQC
+       int gunalign = player.cvar_cl_gunalign;
+#else
+       int gunalign = autocvar_cl_gunalign;
+#endif
+       if(gunalign < 1 || gunalign > 4)
+               gunalign = 3; // default value
+       --gunalign;
+
+       return gunalign;
+}
+
 vector W_CalculateSpread(vector forward, float spread, float spreadfactor, float spreadstyle)
 {
        float sigma;
@@ -152,7 +166,7 @@ vector W_CalculateSpread(vector forward, float spread, float spreadfactor, float
        if(spread <= 0)
                return forward;
        sstyle = spreadstyle; //autocvar_g_projectiles_spread_style;
-       
+
        if(sstyle == 0)
        {
                // this is the baseline for the spread value!