Ejemplo n.º 1
0
 private function bonifAnimo($equipo, $bonus)
 {
     /*$bonifParticipante = 3;
       $bonifNoParticipante = 1*/
     try {
         $participantes = AccionesTurno::model()->findAllByAttributes(array('equipos_id_equipo' => $equipo, 'partidos_id_partido' => $this->id_partido));
         $usuarios = Usuarios::model()->findAllByAttributes(array('equipos_id_equipo' => $equipo));
         $bonusAmbiente = $bonus * (pow(1.5, $this->ambiente + 1) / (4 + 0.7 * $this->ambiente));
         //(1.5^(a+1))/(4+.7*a)
         foreach ($usuarios as $user) {
             //Esta bonificacion se le da a todos
             $rec = $user->recursos;
             $rec['animo'] = min(round($bonusAmbiente + $rec['animo']), $rec['animo_max']);
             $rec->save();
         }
         foreach ($participantes as $participante) {
             //Esta se le da solo a los participantes
             $user = $participante->usuarios;
             $rec = $user->recursos;
             $rec['animo'] = min(round(3 * $bonusAmbiente + $rec['animo']), $rec['animo_max']);
             $rec->save();
         }
     } catch (Exception $exc) {
         throw new Exception("Error al generar la bonificacion al animo de final de partido", 1);
     }
 }
Ejemplo n.º 2
0
 /**
  * Busca participacion en la tabla acciones turno
  * 
  * @param int $id_usuario   id del usuario
  * @param int $id_partido   id del partido
  * @param int $id_equipo    id del equipo
  * @return $participacion
  */
 public static function buscarParticipacion($id_usuario, $id_partido, $id_equipo)
 {
     $participacion = AccionesTurno::model()->findByAttributes(array('usuarios_id_usuario' => $id_usuario, 'partidos_id_partido' => $id_partido, 'equipos_id_equipo' => $id_equipo));
     return $participacion;
 }