Okay, seems like it broke the game because I made the assignment to a
global variable, although I still don't understand what the problem with
that is. So if I assign it to a member variable of my panel resp. my
property sheet class, at least the game remains functional. The problem
still remains though that I can't change the value of the variable.
Klaus Müller wrote:
> I'm currently rewriting the entire options dialogue of Ep2 in order to
> be able to add my own options. One of the fields I want to add is the
> number of decals. So I made a call to cvar->FindVar("r_decals") in my
> optionspanel.cpp. Since I'll be needing the ConVar multiple times, I
> assigned it to a ConVar pointer via
>
> ConVar *cvDecals = (ConVar*) cvar->FindVar("r_decals");
>
> The same is done in c_baseplayer.cpp for example, i.e. ConVar *pVar =
> (ConVar *)cvar->FindVar( "snd_soundmixer" ). The code compiles
> absolutely fine. However, if I start the mod and go to the console, it
> says "ConVarRef cl_forwardspeed doesn't point to an existing ConVar".
> Trying to open my panel I get a "unknown command modoptions". When I
> want to start a singleplayer game I get the DT_Basegrenade error
> discussed here multiple times, complaining about missing decoders.
> And, to top it all off, when I close the game via exit or quit through
> the console or the quit dialogue, the game crashes with this listed as
> faulty module: Fault Module Name: client.dll_unloaded.
>
> The strange thing is though that if I don't assign the return value of
> FindVar() and simply do a
>
> Q_strcpy( m_cDecals, cvar->FindVar("r_decals")->GetString() );
> m_pDecals->SetText( m_cDecals );
>
> everything works fine and the value of r_decals gets printed to the
> appropriate text field. However, it's not possible to change the value
> of the ConVar. For example, if I do a
> cvar->FindVar("r_decals")->SetValue(1024) before I copy the string to
> m_cDecals, the value will still be 2048 as defined in my config.cf.
>
> This is all very confusing since I can't find the striking difference
> between the example in c_baseplayer I mentioned and my panel.
_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders