Ejemplo n.º 1
0
 public function ejecutar($id_usuario, $id_partido, $id_equipo)
 {
     $ret = 0;
     //Traer el array de efectos
     parent::ejecutar($id_usuario, $id_partido, $id_equipo);
     //Validar usuario
     $us = Usuarios::model()->findByPk($id_usuario);
     if ($us === null) {
         throw new Exception("Usuario incorrecto.", 404);
     }
     // Cojo el equipo del usuario
     $equipo = $us->equipos;
     // Modifico Los factores de ese partido
     $ret = min($ret, Partidos::aumentar_factores($id_partido, $equipo->id_equipo, "defensivo", Efectos::$datos_acciones['RetransmitirRRSS']['defensivo']));
     //Modifico los recursos Del usuario
     if (Recursos::aumentar_recursos($id_usuario, "animo", Efectos::$datos_acciones['RetransmitirRRSS']['animo']) == 0) {
         $ret = min($ret, 0);
     } else {
         $ret = -1;
     }
     // Incorporo un registro a la tabla acciones turno si el usuario aun no esta en ella
     AccionesTurno::incorporarAccion($id_usuario, $id_partido, $id_equipo);
     //Finalizar función
     return $ret;
 }
Ejemplo n.º 2
0
 /**
  * Ejecutar la accion
  *
  * @param int $id_usuario id del usuario que realiza la accion
  * @throws \Exception usuario no encontrado
  * @return int 0 si completada con exito ; -1 en caso contrario
  */
 public function ejecutar($id_usuario, $id_partido, $id_equipo)
 {
     $ret = 0;
     //Traer el array de efectos
     parent::ejecutar($id_usuario, $id_partido, $id_equipo);
     //Validar usuario
     $us = Usuarios::model()->findByPk($id_usuario);
     if ($us === null) {
         throw new Exception("Usuario incorrecto.", 404);
     }
     // Modifico el animo del usuario
     $ret = min($ret, Recursos::aumentar_recursos($id_usuario, "animo", Efectos::$datos_acciones['DoblarApuesta']['animo']));
     // Incorporo un registro a la tabla acciones turno si el usuario aun no esta en ella
     AccionesTurno::incorporarAccion($id_usuario, $id_partido, $id_equipo);
     //Finalizar función
     return $ret;
 }
Ejemplo n.º 3
0
 public function ejecutar($id_usuario, $id_partido, $id_equipo)
 {
     $ret = 0;
     //Traer el array de efectos
     parent::ejecutar($id_usuario, $id_partido, $id_equipo);
     //Validar usuario
     $us = Usuarios::model()->findByPk($id_usuario);
     if ($us === null) {
         throw new Exception("Usuario incorrecto.", 404);
     }
     // Cojo el equipo del usuario
     $equipo = $us->equipos;
     // Modifico Los factores de ese partido
     $ret = min($ret, Partidos::aumentar_factores($id_partido, $equipo->id_equipo, "moral", Efectos::$datos_acciones['CorearEstadio']['moral']));
     // Incorporo un registro a la tabla acciones turno si el usuario aun no esta en ella
     AccionesTurno::incorporarAccion($id_usuario, $id_partido, $id_equipo);
     //Finalizar función
     return $ret;
 }
Ejemplo n.º 4
0
 /**
  * Usar accion en el partido
  *
  * Incorpora la accion, busca la participacion y suma influencia a la accion y
  * 
  * @param $participacion
  * @param int $cantidad
  * @return void
  */
 public static function usarPartido($id_usuario, $id_equipo, $id_partido, $habilidad, $res)
 {
     // Importar acciones
     Yii::import('application.components.Acciones.*');
     // Restar recursos
     $res['dinero'] -= $habilidad['dinero'];
     $res['animo'] -= $habilidad['animo'];
     $res['influencias'] -= $habilidad['influencias'];
     $res['influencias_partido_bloqueadas'] += $habilidad['influencias'];
     $res->save();
     //Incorporo la accion si ese usuario aun no ha participado
     AccionesTurno::incorporarAccion($id_usuario, $id_partido, $id_equipo);
     $participacion = AccionesTurno::buscarParticipacion($id_usuario, $id_partido, $id_equipo);
     //Sumo la influencia de esta accion a la que tenga acumulada
     AccionesTurno::sumarInfluencia($participacion, $habilidad->influencias);
     //Tomar nombre de habilidad para instanciación dinámica
     $nombreHabilidad = $habilidad->codigo;
     //echo '<pre>'.die(var_dump($id_partido)).'</pre>' ;
     //Llamar al singleton correspondiente y ejecutar dicha acción
     $nombreHabilidad::getInstance()->ejecutar($id_usuario, $id_partido, $id_equipo);
 }