From df56df55eac647f7e6c5c84095621a50d46cc18e Mon Sep 17 00:00:00 2001 From: flowtron Date: Mon, 5 Jul 2010 18:40:17 +0000 Subject: [PATCH] more scope/unscope information git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5285 e016b1c5-ed68-44aa-a2f7-31cac88cffde --- source/src/serverevents.h | 9 +++++++++ source/src/weapon.cpp | 8 ++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/source/src/serverevents.h b/source/src/serverevents.h index a2e1fa3c..6837b19c 100644 --- a/source/src/serverevents.h +++ b/source/src/serverevents.h @@ -114,6 +114,15 @@ void processevent(client *c, reloadevent &e) gs.ammo[e.gun] -= numbullets; int wait = e.millis - gs.lastshot; + /* + // actually the clients sends this by itself, but sanity checks should be made!! + // does this state get reset on spawn etc? + if(gs.scoped) // the state of this needs to be verified in a number of places! (flowtron:2010jul05) + { + gs.scoped = false; + sendf(-1, 1, "ri3", SV_SCOPE, c->clientnum, gs.scoped); + } + */ sendf(-1, 1, "ri3", SV_RELOAD, c->clientnum, e.gun); if(gs.gunwait[e.gun] && wait SCOPESETTLETIME ? info.recoil / 3 : info.recoil; } bool sniperrifle::selectable() { return weapon::selectable() && !m_noprimary && this == owner->primweap; } -void sniperrifle::onselecting() { weapon::onselecting(); scoped = false; } -void sniperrifle::ondeselecting() { scoped = false; } -void sniperrifle::onownerdies() { scoped = false; } +void sniperrifle::onselecting() { weapon::onselecting(); scoped = false; addmsg(SV_SCOPE, "ri2", lastmillis, 0); } +void sniperrifle::ondeselecting() { scoped = false; addmsg(SV_SCOPE, "ri2", lastmillis, 0); } +void sniperrifle::onownerdies() { scoped = false; addmsg(SV_SCOPE, "ri2", lastmillis, 0); } void sniperrifle::renderhudmodel() { if(!scoped) weapon::renderhudmodel(); } void sniperrifle::renderaimhelp(bool teamwarning)