Advertisement
Guest User

Untitled

a guest
Feb 21st, 2020
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.11 KB | None | 0 0
  1.         // $this->rateChangePoints = 200
  2.         // $this->rateChangePercent = 0.05
  3.         $changed = true;
  4.         $sum = $points[self::WIN] + $points[self::LOOSE] + $points[self::DRAW];
  5.         $rateHome = $match->getRateHome();
  6.         $rateDraw = $match->getRateDraw();
  7.         $rateGuests = $match->getRateGuests();
  8.        
  9.        
  10.         while ($changed) {
  11.             $homePoints  = $rateHome * $points[self::WIN] - $sum;
  12.             $drawPoints  = $rateDraw * $points[self::DRAW] - $sum;
  13.             $guestPoints = $rateGuests * $points[self::LOOSE] - $sum;
  14.            
  15.             $changed = false;
  16.            
  17.             if ($homePoints > $this->rateChangePoints) {
  18.                 $changed = true;
  19.                 $rateHome   = 1 / ((1 / $rateHome)   + $this->rateChangePercent);
  20.                 $rateGuests = 1 / ((1 / $rateGuests) - $this->rateChangePercent);
  21.             }
  22.            
  23.             if ($guestPoints > $this->rateChangePoints) {
  24.                 $changed = true;
  25.                 $rateGuests = 1 / ((1 / $rateGuests) + $this->rateChangePercent);
  26.                 $rateHome   = 1 / ((1 / $rateHome)   - $this->rateChangePercent);
  27.             }
  28.            
  29.             if ($drawPoints > $this->rateChangePoints) {
  30.                 $changed = true;
  31.                 $rateDraw   = 1 / ((1 / $rateDraw)   +       $this->rateChangePercent);
  32.                 $rateHome   = 1 / ((1 / $rateHome)   - 0.5 * $this->rateChangePercent);
  33.                 $rateGuests = 1 / ((1 / $rateGuests) - 0.5 * $this->rateChangePercent);
  34.             }
  35.            
  36.             if ($rateHome > self::MAX_RATE) {
  37.                 $rateHome = self::MAX_RATE;
  38.             } else if ($rateHome < 1) {
  39.                 $rateHome = 1;
  40.             }
  41.             if ($rateDraw > self::MAX_RATE) {
  42.                 $rateDraw = self::MAX_RATE;
  43.             } else if ($rateDraw < 1) {
  44.                 $rateDraw = 1;
  45.             }
  46.             if ($rateGuests > self::MAX_RATE) {
  47.                 $rateGuests = self::MAX_RATE;
  48.             } else if ($rateGuests < 1) {
  49.                 $rateGuests = 1;
  50.             }
  51.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement