本文整理汇总了C#中Critter.GetClimateFocus方法的典型用法代码示例。如果您正苦于以下问题:C# Critter.GetClimateFocus方法的具体用法?C# Critter.GetClimateFocus怎么用?C# Critter.GetClimateFocus使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Critter
的用法示例。
在下文中一共展示了Critter.GetClimateFocus方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CalculateHabEffect
public int CalculateHabEffect(Hex habitat, Critter critter)
{
float climate = habitat.GetClimateVal();
float temp = habitat.GetTempVal();
float critterClimateFocus = critter.GetClimateFocus();
float critterClimatePref = critter.GetClimatePref();
float critterClimateRange = critter.GetClimateRange();
float critterTempFocus = critter.GetTempFocus();
float critterTempPref = critter.GetTempPref();
float critterTempRange = critter.GetTempRange();
Hex.BiomeType biome = habitat.GetBiomeType();
Hex.Geography geo = habitat.GetGeography();
int score = 0;
//Calculates for all boon fields to create a positive score for a good habitat fit.
foreach(BiomeAdaptition item in BiomeBoons){
if((Hex.BiomeType)(item) == biome){
score++;
}
}
foreach(statSliderChange item in ClimateBoons){
score += CheckStatSliderVal(item, critterClimatePref, critterClimateRange, critterClimateFocus, climate, 1);
if (item == statSliderChange.FOCUS) { critterClimateFocus++; }
else if (item == statSliderChange.PREF) { critterClimatePref++; }
else if (item == statSliderChange.RANGE) { critterClimateRange++; }
}
foreach(GeoAdaptation item in GeoBoons){
if((Hex.Geography)(item) == geo){
score++;
}
}
foreach(statSliderChange item in TempBoons){
score += CheckStatSliderVal(item, critterTempPref, critterTempRange, critterTempFocus, temp, 1);
if (item == statSliderChange.FOCUS) { critterTempFocus++; }
else if (item == statSliderChange.PREF) { critterTempPref++; }
else if (item == statSliderChange.RANGE) { critterTempRange++; }
}
//Calculates for all bane fields to create a negative score for a bad habitat fit.
foreach(BiomeAdaptition item in BiomeBanes){
if((Hex.BiomeType)(item) == biome){
score--;
}
}
foreach(statSliderChange item in ClimateBanes){
score += CheckStatSliderVal(item, critterClimatePref, critterClimateRange, critterClimateFocus, climate, -1);
if (item == statSliderChange.FOCUS) { critterClimateFocus--; }
else if (item == statSliderChange.PREF) { critterClimatePref--; }
else if (item == statSliderChange.RANGE) { critterClimateRange--; }
}
foreach(GeoAdaptation item in GeoBanes){
if((Hex.Geography)(item) == geo){
score--;
}
}
foreach(statSliderChange item in TempBanes){
score += CheckStatSliderVal(item, critterTempPref, critterTempRange, critterTempFocus, temp, -1);
if (item == statSliderChange.FOCUS) { critterTempFocus--; }
else if (item == statSliderChange.PREF) { critterTempPref--; }
else if (item == statSliderChange.RANGE) { critterTempRange--; }
}
return score;
}
示例2: CloneStats
public void CloneStats(Critter critter)
{
offense = critter.GetOffense();
defense = critter.GetDefense();
baseSpeed = critter.GetBaseSpeed();
sense = critter.GetSense();
sneak = critter.GetSneak();
size = critter.GetSize();
breedRate = critter.GetBreedRate();
metabolism = critter.GetMetabolism();
biomePref = critter.GetBiomePrefs();
climateFocus = critter.GetClimateFocus();
climatePref = critter.GetClimatePref();
climateRange = critter.GetClimateRange();
geoPref = critter.GetGeoPrefs();
tempFocus = critter.GetTempFocus();
tempPref = critter.GetTempPref();
tempRange = critter.GetTempRange();
evoMod = critter.GetEvoMod();
migrateMod = critter.GetMigrateMod();
}