ACSUtils Wiki

An ACS library for ZDoom-based ports

User Tools

Site Tools


getcvarfixed

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
getcvarfixed [2018/01/08 01:12] – created korshungetcvarfixed [2019/08/26 04:30] (current) korshun
Line 1: Line 1:
 ====== GetCVarFixed ====== ====== GetCVarFixed ======
  
-  fixed a_GetCVarFixed(str name) +ZDoom provides [[zdoom>GetCVar]] for ints and [[zdoom>GetCVarString]] for strings, but doesn't provide a way to retrieve the value of ''float'' CVars. ACSUtils implements ''GetCVarFixed'' by calling [[zdoom>GetCVarString]] to retrieve the value of the CVar as a string, and parsing it with [[number_parsing|atof]]. 
-  fixed a_GetUserCVarFixed(int player, str name)+ 
 + 
 +<note important>If the CVar's value is outside the range of fixed-point numbers, the result is clamped to ''-32768.0''..''32767.99997'' range.</note> 
 + 
 +<note important>The function names begin with ''a_'' because [[GDCC]] defines its own broken ''GetCVarFixed'', which causes a compilation error if another function named ''GetCVarFixed'' exists.</note> 
 + 
 +<note tip>If you're not using [[GDCC]], you can remove the ''a_'' prefix by adding the following to your code: 
 +<code> 
 +function GetCVarFixed(str name) 
 +
 +    return a_GetCVarFixed(name); 
 +
 + 
 +function GetUserCVarFixed(int player, str name) 
 +
 +    return a_GetUserCVarFixed(player, name); 
 +
 +</code> 
 +</note> 
 + 
 +===== Functions ===== 
 + 
 +==== GetCVarFixed ==== 
 +''fixed a_GetCVarFixed(str name)'' 
 + 
 +Analogous to [[zdoom>GetCVar]] and [[zdoom>GetCVarString]]. 
 + 
 +==== GetUserCVarFixed ==== 
 +''fixed a_GetUserCVarFixed(int player, str name)'' 
 + 
 +A version of ''GetCVarFixed'' for user CVars. Calls [[zdoom>GetCVarString]] internally instead of [[zdoom>GetCVar]]. Analogous to [[zdoom>GetUserCVar]] and [[zdoom>GetUserCVarString]]. 
  
-ZDoom doesn't provide a way to get a value of a ''float'' CVar as a fixed-point number. 
  
- ''GetCVarFixed'' and ''GetUserCVarFixed'' are implemented by using [[zdoom>GetCVarString]] and [[zdoom>GetUserCVarString]] to get the value as a string and converting it into a fixed-point number using [[number parsing]] functions. 
  
-<note important>The functions have an ''a_'' prefix, because [[GDCC]] has its own unrelated ''GetCVarFixed''.</note> 
getcvarfixed.txt · Last modified: 2019/08/26 04:30 by korshun