sorry, should have been vel-=foo
downwards velocity, upwards surface.
vel -= vel * (((vel * normal) * scale) * normal);
'0 0 -1' -= (('0 0 -1' * '0 0 1') * 2) * '0 0 1'
'0 0 -1' -= ((-1) * 2) * '0 0 1'
'0 0 -1' -= (-2) * '0 0 1'
'0 0 -1' -= '0 0 -2'
'0 0 1'
velocity is now going back up again.
unfixable pitch bug is unfixable because too many qc mods depends upon the buggy behaviour, namely that makevectors(self.v_angle); MUST work as it does, and that tmp = vectoangles(v_forward); self.angles_x *= -1; makevectors(self.angles); must also work. or so. too many existing mods would break if that negation was no longer needed.
.gravitydir contains some normalized vector in a per-ent field. I took a liberty and had changeyaw update pitch+roll automatically as apropriate.
downwards velocity, upwards surface.
vel -= vel * (((vel * normal) * scale) * normal);
'0 0 -1' -= (('0 0 -1' * '0 0 1') * 2) * '0 0 1'
'0 0 -1' -= ((-1) * 2) * '0 0 1'
'0 0 -1' -= (-2) * '0 0 1'
'0 0 -1' -= '0 0 -2'
'0 0 1'
velocity is now going back up again.
unfixable pitch bug is unfixable because too many qc mods depends upon the buggy behaviour, namely that makevectors(self.v_angle); MUST work as it does, and that tmp = vectoangles(v_forward); self.angles_x *= -1; makevectors(self.angles); must also work. or so. too many existing mods would break if that negation was no longer needed.
.gravitydir contains some normalized vector in a per-ent field. I took a liberty and had changeyaw update pitch+roll automatically as apropriate.
Comment