Ok, der Code is nun getestet und sollte funzen. Versuch es mal bitte^^
Code:
function clamp_new(var variable, var minimum, var maximum)
{
 var temp_max;
 var temp;
 var temp_var;
 
 temp_max = maximum - minimum;//erechne das maximum vom Nullpunkt aus
 if(variable <= minimum || variable <= maximum){return(variable);}
 if (variable < minimum){variable = minimum;}
 temp_var = (variable-minimum) / temp_max;
 
 if (integer(temp_var) < 1){ variable = temp_var;}
 
 if (fraction(integer(temp_var)/2) == 0.5)
 {
  if( fraction(temp_var) > 5 ){temp = fraction(temp_var);}//Falls Nachkommastelle unter 5 ist bekommt b einfach den wert
  if( fraction(temp_var) <= 5 ){temp = 1 - fraction(temp_var);}//andernfalls wird 1 von der nachkommastelle abgezogen
 }
 if (fraction(integer(temp_var)/2) == 0)
 {
  if( fraction(temp_var) < 5 ){temp = fraction(temp_var);}//Falls Nachkommastelle unter 5 ist bekommt b einfach den wert
  if( fraction(temp_var) >= 5 ){temp = 1 - fraction(temp_var);}//andernfalls wird 1 von der nachkommastelle abgezogen
 }
	
	
 
 temp *= temp_max;//Rechne die Variable wieder hoch
 temp += minimum;
 variable = temp;
 return(variable);
}