X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fweapons%2Fhitplot.qc;h=ec1fd089b1abd6cfeaf7fae56bf9d7546e975b0e;hb=17308b9ad60c2f773be0de39b811a9752e3037af;hp=76e159738fbfc02d9f900bf2dd2c5d93714cc192;hpb=0ae1f40f1237c4888d08cc716287a277f4472d9f;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/weapons/hitplot.qc b/qcsrc/server/weapons/hitplot.qc index 76e159738..ec1fd089b 100644 --- a/qcsrc/server/weapons/hitplot.qc +++ b/qcsrc/server/weapons/hitplot.qc @@ -1,9 +1,9 @@ #include "hitplot.qh" -#include "../_all.qh" #include "../antilag.qh" #include "../g_subs.qh" -#include "../../common/weapons/all.qh" +#include +#include vector W_HitPlotUnnormalizedUntransform(vector screenforward, vector screenright, vector screenup, vector v) { @@ -67,12 +67,13 @@ void W_HitPlotAnalysis(entity player, vector screenforward, vector screenright, org = player.origin + player.view_ofs; traceline_antilag_force(player, org, org + screenforward * MAX_SHOT_DISTANCE, MOVE_NORMAL, player, lag); - if(IS_CLIENT(trace_ent) || (trace_ent.flags & FL_MONSTER)) + if(IS_CLIENT(trace_ent) || IS_MONSTER(trace_ent)) { - antilag_takeback(trace_ent, time - lag); + entity store = IS_CLIENT(trace_ent) ? CS(trace_ent) : trace_ent; + antilag_takeback(trace_ent, store, time - lag); hitplot = W_HitPlotNormalizedUntransform(org, trace_ent, screenforward, screenright, screenup, trace_endpos); - antilag_restore(trace_ent); - fputs(player.hitplotfh, strcat(ftos(hitplot.x), " ", ftos(hitplot.y), " ", ftos(hitplot.z), " ", ftos(player.switchweapon), "\n")); + antilag_restore(trace_ent, store); + fputs(player.hitplotfh, strcat(ftos(hitplot.x), " ", ftos(hitplot.y), " ", ftos(hitplot.z), " ", ftos(PS(player).m_switchweapon.m_id), "\n")); //print(strcat(ftos(hitplot_x), " ", ftos(hitplot_y), " ", ftos(hitplot_z), "\n")); } } @@ -80,7 +81,7 @@ void W_HitPlotAnalysis(entity player, vector screenforward, vector screenright, void W_HitPlotOpen(entity player) { - if(autocvar_g_hitplots || strstrofs(strcat(" ", autocvar_g_hitplots_individuals, " "), strcat(" ", player.netaddress, " "), 0) >= 0) + if(autocvar_g_hitplots || strhasword(autocvar_g_hitplots_individuals, player.netaddress)) { player.hitplotfh = fopen(strcat("hits-", matchid, "-", player.netaddress, "-", ftos(player.playerid), ".plot"), FILE_WRITE); fputs(player.hitplotfh, strcat("#name ", player.netname, "\n"));