mirror of
https://github.com/UberGames/ioef.git
synced 2024-11-24 13:11:30 +00:00
Revert partially incorrect fix and add a few more float casts.
This commit is contained in:
parent
2977d001e4
commit
a88611d34e
1 changed files with 3 additions and 3 deletions
|
@ -595,7 +595,7 @@ float FuzzyWeight_r(int *inventory, fuzzyseperator_t *fs)
|
||||||
//the scale factor
|
//the scale factor
|
||||||
scale = (float) (inventory[fs->index] - fs->value) / (fs->next->value - fs->value);
|
scale = (float) (inventory[fs->index] - fs->value) / (fs->next->value - fs->value);
|
||||||
//scale between the two weights
|
//scale between the two weights
|
||||||
return (1 - scale) * w1 + scale * w2;;
|
return scale * w1 + (1 - scale) * w2;
|
||||||
} //end if
|
} //end if
|
||||||
return FuzzyWeight_r(inventory, fs->next);
|
return FuzzyWeight_r(inventory, fs->next);
|
||||||
} //end else if
|
} //end else if
|
||||||
|
@ -627,7 +627,7 @@ float FuzzyWeightUndecided_r(int *inventory, fuzzyseperator_t *fs)
|
||||||
if (fs->next->child) w2 = FuzzyWeight_r(inventory, fs->next->child);
|
if (fs->next->child) w2 = FuzzyWeight_r(inventory, fs->next->child);
|
||||||
else w2 = fs->next->minweight + random() * (fs->next->maxweight - fs->next->minweight);
|
else w2 = fs->next->minweight + random() * (fs->next->maxweight - fs->next->minweight);
|
||||||
//the scale factor
|
//the scale factor
|
||||||
scale = (inventory[fs->index] - fs->value) / (fs->next->value - fs->value);
|
scale = (float) (inventory[fs->index] - fs->value) / (fs->next->value - fs->value);
|
||||||
//scale between the two weights
|
//scale between the two weights
|
||||||
return scale * w1 + (1 - scale) * w2;
|
return scale * w1 + (1 - scale) * w2;
|
||||||
} //end if
|
} //end if
|
||||||
|
@ -750,7 +750,7 @@ void ScaleFuzzySeperator_r(fuzzyseperator_t *fs, float scale)
|
||||||
else if (fs->type == WT_BALANCE)
|
else if (fs->type == WT_BALANCE)
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
fs->weight = (fs->maxweight + fs->minweight) * scale;
|
fs->weight = (float) (fs->maxweight + fs->minweight) * scale;
|
||||||
//get the weight between bounds
|
//get the weight between bounds
|
||||||
if (fs->weight < fs->minweight) fs->weight = fs->minweight;
|
if (fs->weight < fs->minweight) fs->weight = fs->minweight;
|
||||||
else if (fs->weight > fs->maxweight) fs->weight = fs->maxweight;
|
else if (fs->weight > fs->maxweight) fs->weight = fs->maxweight;
|
||||||
|
|
Loading…
Reference in a new issue