コード例 #1
0
 public static function inserir($feed)
 {
     $query = "\n            INSERT INTO feed (\n                id_jogador,\n                cod_tipo,\n                id_pai,\n                id_arte,\n                id_campanha,\n                id_mapa,\n                id_personagem,\n                data_inclusao,\n                ultima_alteracao,\n                id_sessao,\n                url,\n                comentario\n            ) VALUES (\n                '" . do_escape(ID_JOGADOR) . "',\n                '" . do_escape($feed->cod_tipo) . "',\n                " . do_full_escape($feed->id_pai) . ",\n                " . do_full_escape($feed->id_arte) . ",\n                " . do_full_escape($feed->id_campanha) . ",\n                " . do_full_escape($feed->id_mapa) . ",\n                " . do_full_escape($feed->id_personagem) . ",\n                NOW(),\n                NOW(),\n                " . do_full_escape($feed->id_sessao) . ",\n                " . do_full_escape($feed->url) . ",\n                " . do_full_escape($feed->comentario) . "\n            )\n        ";
     $id_feed = do_insert($query);
     if (!is_null($feed->id_pai) && $feed->id_pai > 0) {
         $query = "\n                UPDATE feed SET \n                    ultima_alteracao = NOW()\n                WHERE id_feed = " . do_escape($feed->id_pai) . "\n            ";
         do_update($query);
     }
     return $id_feed;
 }
コード例 #2
0
 public function alterar()
 {
     if (is_null($this->slug) || trim($this->slug) == '') {
         $this->slug = sanitize_slug($this->nome);
     }
     if (is_numeric($this->slug)) {
         $this->slug = sanitize_slug($this->nome);
     }
     $this->slug = $this->validarSlug($this->id_personagem, $this->slug);
     $data = serialize($this);
     $query = "\n            UPDATE personagem SET \n                data_inclusao = NOW(),\n                ultima_alteracao = NOW(),\n                id_campanha = " . do_full_escape($this->id_campanha) . ",\n                slug = '" . do_escape($this->slug) . "',\n                nome = '" . do_escape($this->nome) . "',\n                data = '" . do_escape($data) . "',\n                cod_situacao = '" . do_escape($this->cod_situacao) . "'\n            WHERE id_personagem = '" . do_escape($this->id_personagem) . "'\n        ";
     do_update($query);
     $this->gravarImagem();
 }
コード例 #3
0
 public static function novaSessao($id_mapa, $id_campanha = null, $id_personagem = null, $cod_tipo = SESSAO_MESTRE, $tempo_turno = 0, $limite_personagem = 1)
 {
     if ($id_mapa <= 0) {
         throw new Exception('Nenhum mapa selecionado!');
     }
     $id_sessao = md5(uniqid());
     if (in_array($cod_tipo, array(SESSAO_MESTRE, SESSAO_GRUPO))) {
         $id_mestre = ID_JOGADOR;
     } else {
         $id_mestre = null;
     }
     $cod_situacao = SESSAO_ATIVA;
     if ($cod_tipo == SESSAO_GRUPO) {
         $cod_situacao = SESSAO_AGUARDANDO;
     }
     Mapa::carregarEstrutura($id_mapa);
     foreach (Mapa::listarPessoa() as $npc) {
         $area = Mapa::getArea($npc->getX(), $npc->getY());
         if (is_null($area)) {
             throw new Exception("O npc se encontra em uma area invalida. Posição " . $npc->getX() . "." . $npc->getY() . ".");
         }
         $id_instancia = $npc->getId();
         $sentido = $npc->getSentido();
         $npc = Personagem::pegar($npc->getIdOriginal());
         $npc->estruturarCorpo();
         $npc->setIdOriginal($npc->getId());
         $npc->setIdGrupo(2);
         $npc->setId($id_instancia);
         $npc->setPV($npc->getMaxPV());
         $npc->setX($area->getX());
         $npc->setY($area->getY());
         $npc->setPosicao(POSICAO_EM_PE);
         $npc->setSentido($sentido);
         if ($cod_tipo == SESSAO_SOLO) {
             $npc->setAutomatico(true);
             $npc->desativarTurno();
         }
         $area->setPersonagem($npc);
         //echo $npc->getNome()."<br />";
     }
     if (!is_null($id_personagem)) {
         $personagem = Personagem::pegar($id_personagem);
         Mapa::entrar($personagem);
     }
     $data = serialize(Mapa::getMapa());
     $query = "\n            INSERT INTO sessao (\n                id_sessao,\n                id_mestre,\n                id_campanha,\n                id_mapa,\n                cod_tipo,\n                cod_situacao,\n                tempo_turno,\n                limite_personagem,\n                ultimo_turno,\n                data_inclusao,\n                data\n            ) VALUES (\n                '" . do_escape($id_sessao) . "',\n                " . do_full_escape($id_mestre) . ",\n                " . do_full_escape($id_campanha) . ",\n                '" . do_escape($id_mapa) . "',\n                '" . do_escape($cod_tipo) . "',\n                '" . do_escape($cod_situacao) . "',\n                '" . do_escape($tempo_turno) . "',\n                '" . do_escape($limite_personagem) . "',\n                NOW(),\n                NOW(),\n                '" . do_escape($data) . "'\n            )\n        ";
     do_query($query);
     if (!is_null($personagem)) {
         $personagem->setSessao($id_sessao);
     }
     return $id_sessao;
 }
コード例 #4
0
 public static function escreverlog($texto, $id_personagem = null, $cod_tipo = LOG_NORMAL)
 {
     if (array_key_exists('s', $_GET)) {
         $id_sessao = Sessao::idSessao();
     }
     $query = "\n            INSERT INTO noticia (\n                id_campanha,\n                id_personagem,\n                cod_tipo,\n                id_sessao,\n                data_inclusao,\n                texto\n            ) VALUES (\n                " . do_full_escape(static::$id_campanha) . ",\n                " . do_full_escape($id_personagem) . ",\n                '" . do_escape($cod_tipo) . "',\n                '" . do_escape($id_sessao) . "',\n                NOW(),\n                '" . do_escape($texto) . "'\n            )\n        ";
     do_insert($query);
 }