Esempio n. 1
0
 /**
  * Fija los atributos de un nuevo personaje y lo guarda en la base de datos
  *
  * Para un personaje fija:
  *
  * - Recursos iniciales en funcion del personaje escogido
  * - nivel inicial (12)
  * - experencia inicial (7500)
  * - puntos de desbloqueo de habilidades (7)
  *
  * @return void
  */
 public function crearPersonaje()
 {
     /* Nivel y Exp */
     $this->setAttributes(array('nivel' => 1, 'exp' => 0, 'puntos_desbloqueo' => 3));
     $this->setAttributes(array('exp_necesaria' => Usuarios::expNecesaria(1)));
     /* Recursos */
     $rec = new Recursos();
     $rec->setAttributes(array('usuarios_id_usuario' => $this->id_usuario));
     switch ($this->personaje) {
         case self::PERSONAJE_ULTRA:
             $rec->setAttributes(array('dinero' => self::ULTRA_DINERO_INICIO, 'dinero_gen' => self::ULTRA_DINERO_GEN_INICIO, 'influencias' => self::ULTRA_INFLUENCIAS_MAX_INICIO, 'influencias_max' => self::ULTRA_INFLUENCIAS_MAX_INICIO, 'influencias_gen' => self::ULTRA_INFLUENCIAS_GEN_INICIO, 'influencias_bloqueadas' => 0, 'animo' => self::ULTRA_ANIMO_MAX_INICIO, 'animo_max' => self::ULTRA_ANIMO_MAX_INICIO, 'animo_gen' => self::ULTRA_ANIMO_GEN_INICIO));
             break;
         case self::PERSONAJE_MOVEDORA:
             $rec->setAttributes(array('dinero' => self::ANIMADORA_DINERO_INICIO, 'dinero_gen' => self::ANIMADORA_DINERO_GEN_INICIO, 'influencias' => self::ANIMADORA_INFLUENCIAS_MAX_INICIO, 'influencias_max' => self::ANIMADORA_INFLUENCIAS_MAX_INICIO, 'influencias_gen' => self::ANIMADORA_INFLUENCIAS_GEN_INICIO, 'influencias_bloqueadas' => 0, 'animo' => self::ANIMADORA_ANIMO_MAX_INICIO, 'animo_max' => self::ANIMADORA_ANIMO_MAX_INICIO, 'animo_gen' => self::ANIMADORA_ANIMO_GEN_INICIO));
             break;
         case self::PERSONAJE_EMPRESARIO:
             $rec->setAttributes(array('dinero' => self::EMPRESARIO_DINERO_INICIO, 'dinero_gen' => self::EMPRESARIO_DINERO_GEN_INICIO, 'influencias' => self::EMPRESARIO_INFLUENCIAS_MAX_INICIO, 'influencias_max' => self::EMPRESARIO_INFLUENCIAS_MAX_INICIO, 'influencias_gen' => self::EMPRESARIO_INFLUENCIAS_GEN_INICIO, 'influencias_bloqueadas' => 0, 'animo' => self::EMPRESARIO_ANIMO_MAX_INICIO, 'animo_max' => self::EMPRESARIO_ANIMO_MAX_INICIO, 'animo_gen' => self::EMPRESARIO_ANIMO_GEN_INICIO));
             break;
         default:
             break;
     }
     $rec->setAttributes(array('ultima_act' => time()));
     $rec->save();
     $this->save();
     // EXTRA
     $this->sumarExp(7500);
     $this->setAttributes(array('puntos_desbloqueo' => 7));
     $recy = $this->recursos;
     $a = $recy['animo_max'];
     $i = $recy['influencias_max'];
     $d = $recy['dinero'] * 5;
     $recy->setAttributes(array('dinero' => $d, 'animo' => $a, 'influencias' => $i));
     $recy->save();
     //----
 }