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