Example #1
0
    $GLOBALS['_personagem'] = $regraPersonagem->pegar(ID_PERSONAGEM);
} elseif (array_key_exists('equip', $_GET)) {
    $id_item = intval($_GET['equip']);
    if (array_key_exists('mao', $_GET)) {
        $regraItem->equipar(ID_PERSONAGEM, $id_item, $_GET['mao']);
    } else {
        $regraItem->equipar(ID_PERSONAGEM, $id_item);
    }
    $GLOBALS['_personagem'] = $regraPersonagem->pegar(ID_PERSONAGEM);
} elseif (array_key_exists('unequip', $_GET)) {
    $local = intval($_GET['unequip']);
    $regraItem->desequipar(ID_PERSONAGEM, $local);
    $GLOBALS['_personagem'] = $regraPersonagem->pegar(ID_PERSONAGEM);
} elseif (array_key_exists('drop', $_GET)) {
    $id_item = intval($_GET['drop']);
    $regraItem->excluir($id_item);
    $GLOBALS['_personagem'] = $regraPersonagem->pegar(ID_PERSONAGEM);
}
if (count($_POST) > 0) {
    if (array_key_exists('acao', $_POST) && $_POST['acao'] == 'personagem-novo') {
        $personagem = $regraPersonagem->pegarDoPost();
        $id_personagem = $regraPersonagem->inserir($personagem);
        $url = strtolower(sanitize_slug($personagem->nome)) . '_' . $id_personagem . '/upgrade';
        header('Location: ' . $url);
        exit;
    }
}
require 'header.inc.php';
require 'menu-principal.inc.php';
require 'personagem-modal.inc.php';
?>
 public function usarMaterial($id_construcao, $material_slug, $quantidade)
 {
     $construcao = $this->pegar($id_construcao);
     $query = "\n            SELECT\n                id_item,\n                quantidade\n            FROM item\n            WHERE id_personagem IN (\n                SELECT id_personagem\n                FROM construcao\n                WHERE id_construcao = '" . do_escape($id_construcao) . "'\n            )\n            AND slug = '" . do_escape($material_slug) . "'\n        ";
     $dados = get_first_result($query);
     $id_item = $dados->id_item;
     $quantidadeMaxima = $dados->quantidade;
     $maximoAbsoluto = $construcao->material[$material_slug]->maximo;
     $maximoAbsoluto -= $construcao->material[$material_slug]->quantidade;
     if ($quantidadeMaxima > $maximoAbsoluto) {
         $quantidadeMaxima = $maximoAbsoluto;
     }
     //var_dump($maximoAbsoluto, $quantidadeMaxima);
     //exit();
     //$construcao = $this->pegar($id_construcao);
     //$quantidadeMaxima = $construcao->material[$material_slug]->maximo - $construcao->material[$material_slug]->quantidade;
     if (!($quantidadeMaxima > 0)) {
         throw new Exception(sprintf('%s is not necessary on this construction.', $material_slug));
     }
     //var_dump($quantidade, $quantidadeMaxima);
     //exit();
     if ($quantidade > $quantidadeMaxima) {
         $quantidade = $quantidadeMaxima;
     }
     $query = "\n            SELECT COUNT(*) AS 'total'\n            FROM construcao_material\n            WHERE id_construcao = '" . do_escape($id_construcao) . "'\n            AND slug = '" . do_escape($material_slug) . "'\n        ";
     $total = get_value($query, 'total');
     if ($total > 0) {
         $query = "\n                UPDATE construcao_material SET \n                    quantidade = quantidade + '" . do_escape($quantidade) . "'\n                WHERE id_construcao = '" . do_escape($id_construcao) . "'\n                AND slug = '" . do_escape($material_slug) . "'\n            ";
         do_update($query);
     } else {
         $query = "\n                INSERT INTO construcao_material (\n                    id_construcao,\n                    slug,\n                    quantidade\n                ) VALUES (\n                    '" . do_escape($id_construcao) . "',\n                    '" . do_escape($material_slug) . "',\n                    '" . do_escape($quantidade) . "'\n                )\n            ";
         do_insert($query);
     }
     $regraItem = new Item();
     $regraItem->excluir($id_item, $quantidade);
     $this->verificar($id_construcao);
 }