Whoops. I meant to send in plain text but forgot before I pressed the
send key. I've got a bit of a problem. I'd like to add a new CVAR to
Half-Life called "mp_aquashotgun". If it's 0, you can't fire the shotgun
under water (like normal). If it's anything else (ie. 1), then you CAN shoot
the shotgun underwater. So, I define my CVAR in game.cpp like so:

cvar_t mp_aquashotgun = { "mp_aquashotgun", "0", FCVAR_SERVER };

    Then I register it later on in the file:

CVAR_REGISTER( &mp_aquashotgun );

    Now I need to actually use it somewhere, so I open up shotgun.cpp and in
the PrimaryAttack function, I add an additional check to the waterlevel
statement:

if (m_pPlayer->pev->waterlevel == 3 && CVAR_GET_FLOAT( "mp_aquashotgun") ==
0)

    Well, the problem is that the *client* can't access "mp_aquashotgun" so
if I leave this code as it is, the game will freeze as soon as you try to
fire the shotgun under water. I messed around with it for awhile and rewrote
the code to use #ifdef CLIENT_DLL and such, but the best I could do was
actually have it fire under water but none of the effects would play. Of
course... client side weapons. I think that's what's causing the problem.
    So the question is, how can I access my CVAR on the client?

- Varlock

_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to