X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fmiscfunctions.qc;h=cbf296f84bc72bb5fec71a8657d2bab8e112a206;hb=18e2cd311a581f77ba8eb9c5421dd219ff5d760d;hp=c864373ad8c6d17cd3320b6f2d061ee180ff43aa;hpb=437d67dbc7631d6c49e922990d96461d3ff4b7b2;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/miscfunctions.qc b/qcsrc/server/miscfunctions.qc index c864373ad..cbf296f84 100644 --- a/qcsrc/server/miscfunctions.qc +++ b/qcsrc/server/miscfunctions.qc @@ -967,6 +967,18 @@ void precache_all_playermodels(string pattern) search_end(globhandle); } +void precache_playermodels(string s) +{ + if(s != "") + { + int n = tokenize_console(s); + precache_playermodel(argv(0)); + + for (int i = 1; i < n; ++i) + precache_model(argv(i)); + } +} + void precache() {SELFPARAM(); // gamemode related things @@ -984,22 +996,11 @@ void precache() if (autocvar_sv_defaultcharacter) { - string s; - s = autocvar_sv_defaultplayermodel_red; - if (s != "") - precache_playermodel(s); - s = autocvar_sv_defaultplayermodel_blue; - if (s != "") - precache_playermodel(s); - s = autocvar_sv_defaultplayermodel_yellow; - if (s != "") - precache_playermodel(s); - s = autocvar_sv_defaultplayermodel_pink; - if (s != "") - precache_playermodel(s); - s = autocvar_sv_defaultplayermodel; - if (s != "") - precache_playermodel(s); + precache_playermodels(autocvar_sv_defaultplayermodel_red); + precache_playermodels(autocvar_sv_defaultplayermodel_blue); + precache_playermodels(autocvar_sv_defaultplayermodel_yellow); + precache_playermodels(autocvar_sv_defaultplayermodel_pink); + precache_playermodels(autocvar_sv_defaultplayermodel); } if (g_footsteps) @@ -1520,94 +1521,6 @@ void write_recordmarker(entity pl, float tstart, float dt) " ", ftos(tstart), " ", ftos(dt), "\n")); } -vector shotorg_adjustfromclient(vector vecs, float y_is_right, float allowcenter, float algn) -{ - switch(algn) - { - default: - case 3: // right - break; - - case 4: // left - vecs.y = -vecs.y; - break; - - case 1: - if(allowcenter) // 2: allow center handedness - { - // center - vecs.y = 0; - vecs.z -= 2; - } - else - { - // right - } - break; - - case 2: - if(allowcenter) // 2: allow center handedness - { - // center - vecs.y = 0; - vecs.z -= 2; - } - else - { - // left - vecs.y = -vecs.y; - } - break; - } - return vecs; -} - -vector shotorg_adjust_values(vector vecs, float y_is_right, float visual, float algn) -{ - string s; - vector v; - - if (autocvar_g_shootfromeye) - { - if (visual) - { - if (autocvar_g_shootfromclient) { vecs = shotorg_adjustfromclient(vecs, y_is_right, (autocvar_g_shootfromclient >= 2), algn); } - else { vecs.y = 0; vecs.z -= 2; } - } - else - { - vecs.y = 0; - vecs.z = 0; - } - } - else if (autocvar_g_shootfromcenter) - { - vecs.y = 0; - vecs.z -= 2; - } - else if ((s = autocvar_g_shootfromfixedorigin) != "") - { - v = stov(s); - if (y_is_right) - v.y = -v.y; - if (v.x != 0) - vecs.x = v.x; - vecs.y = v.y; - vecs.z = v.z; - } - else if (autocvar_g_shootfromclient) - { - vecs = shotorg_adjustfromclient(vecs, y_is_right, (autocvar_g_shootfromclient >= 2), algn); - } - return vecs; -} - -vector shotorg_adjust(vector vecs, float y_is_right, float visual) -{SELFPARAM(); - return shotorg_adjust_values(vecs, y_is_right, visual, self.owner.cvar_cl_gunalign); -} - - void attach_sameorigin(entity e, entity to, string tag) { vector org, t_forward, t_left, t_up, e_forward, e_up;