3 float m_BaseProbability;
8 m_BaseProbability = value;
13class CatchingContextBase
84 for (
int i = 0; i < count; i++)
106 for (
int i = 0; i < count; i++)
112 for (
int j = 0; j < weight; j++)
176 float highestSensitivity = 0.0;
177 float sensitivity = 0.0;
179 ECatchingBaitCategories baitCategoryType;
181 for (
int i = 0; i < count; i++)
184 if (excludedTypes && excludedTypes.Find(baitCategoryType) != -1)
195 highestSensitivity =
Math.Max(highestSensitivity,sensitivity);
202 Print(
"dbgTrapz | " + yItem +
" compatible due to unspecified bait compatibility!");
203 else if (highestSensitivity > 0.0)
204 Print(
"dbgTrapz | " + yItem +
" compatible with highestSensitivity: " + highestSensitivity);
208 return count == 0 || highestSensitivity > 0.0;
221 ErrorEx(
"No item defined for 'InitCatchingItemData'. Skipping.");
void InitBaitCompatibilityMap()
void ClearCatchingItemData()
called before actual item data initialization
ref array< YieldItemBase > m_ExcludedItems
void UpdateCatchingItemData()
void ParseYieldItemsForCompatibility(array< ECatchingBaitCategories > excludedTypes=null)
void InitCatchMethodMask()
void DeserializeData(Param par)
ref map< int, ref BaitData > m_BaitCompatibilityMap
class BaitData m_MainItem
ref CatchingResultBasic m_Result
void InitItemValues(EntityAI item)
override to init context-specific values
int GetCatchMethodMask()
override using 'ECatchMethodMask'
bool ModifySignalProbability(inout float probability)
void SetResultQualityOverride(bool ovrd, float val=0.0)
float m_QualityDispersionMinMod
ref array< YieldItemBase > m_CompatibleItems
ref array< int > m_ProbabilityArray
void CreateResultDataStructure()
override if using another result
void InitCatchingItemData()
EntityAI SpawnAndSetupCatch(out int yItemIdx, vector v=vector.Zero)
void CatchingContextBase(Param par)
float m_QualityDispersionMaxMod
void SetResultChanceOverride(bool ovrd, float val=0.0)
float GetQualityModifier()
void InitCatchEnviroMask()
bool CheckBaitCompatibility(YieldItemBase yItem, array< ECatchingBaitCategories > excludedTypes=null)
bool CheckMaskCompatibility(YieldItemBase yItem)
void RecalculateProcessingData()
Calculates and sets all data used in ongoing calculations.
void UpdateBaseProbability(YieldItemBase yItem)
updates base probability when catching the specific item (some context subclasses only)
void SetupProbabilityArray()
map< int, ref YieldItemBase > YieldsMap
void UpdateCatchQuality(CatchingContextBase ctx)
void UpdateCatchChance(CatchingContextBase ctx)
void SetCatchChanceOverride(bool ovrd, float val=0.0)
EntityAI SpawnAndSetup(out int yItemIdx, vector v=vector.Zero)
void SetQualityOverride(bool ovrd, float val=0.0)
void SetYieldItem(YieldItemBase yItem)
Super root of all classes in Enforce script.
Base Param Class with no parameters. Used as general purpose parameter overloaded with Param1 to Para...
CatchYieldBank GetCatchYieldBank()
int GetYieldWeight(CatchingContextBase ctx)
float GetBaitTypeSensitivity(ECatchingBaitCategories type)
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
InventoryTraversalType
tree traversal type, for more see http://en.wikipedia.org/wiki/Tree_traversal
proto native CGame GetGame()
proto void Print(void var)
Prints content of variable to console/log.
proto native bool IsCLIParam(string param)
Returns if command line argument is present.
enum ProcessDirectDamageFlags m_Owner