Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.

erique

Membros Plenos
  • Total de itens

    350
  • Registro em

  • Última visita

  • Qualificações

    0%

Reputação

67

Sobre erique

  • Data de Nascimento 11-06-1998

Informações gerais

  • Cidade e Estado
    Minas Gerais
  • Sexo
    Masculino
  1. C Fundo para menu - Allegro 4

    Bem, continuando a saga do Maze Escape @Benjamin Breeg @TYSQUARE89 Dessa vez, vamos melhorar esse menu, estou fazendo algo parecido com o que fiz nesse tópico Que ficou Mas nesse aí, o objetivo era aparecer as mensagens quando clicasse. Agora, meu objetivo é fazer um menu parecido no maze escape. Seguindo esse vídeo Do Anderson Urbano, fiz algumas alterações e consegui implementar, para testar. Porém agora estou com uma dificuldade na hora de colocar o fundo nesse menu. Tentei mexer com o buffer2, colocando uma imagem bmp nela, mas não deu certo. Muito provavelmente vai ser aqui que vou mexer para resolver isso while(!exit_program) { //INPUT if(key[KEY_ESC]) fecha_programa(); button_input(b_ok); button_input(b_agua); draw_sprite(screen, fundo,0,0); //DRAW if(b_ok->ativado){ jogar(); } button_draw(b_ok, buffer2); button_draw(b_agua, buffer2); draw_sprite(buffer2, mouse_sprite, mouse_x, mouse_y); draw_sprite(screen, buffer2, 0, 0); clear(buffer2); } Essa do Coloquei só para testar mesmo, se eu desenhar o fundo antes do while, ele não aparece, se for depois também não. Durante o while, ele fica se repetindo. Essa é a grande questão, que estou tendo dificuldade, fazer o fundo ficar aparecendo atrás dos menus (que estou criando ainda), estaticamente. Maze Escape - Projeto.zip
  2. C Como fechar somente a janela do allegro 4

    Resolução definitiva: Váriavel global, como estava fazendo volatile int exit_program; void fecha_programa() { exit_program = TRUE; } END_OF_FUNCTION(fecha_programa) e, esse código onde quer que habilite para fechar. exit_program = FALSE; LOCK_FUNCTION(fecha_programa); LOCK_VARIABLE(exit_program); set_close_button_callback(fecha_programa); Falto só trancar a variável, @Benjamin Breeg Deu tudo certo, obrigado pelo help
  3. C Como fechar somente a janela do allegro 4

    Dei certo, porém apenas habilitou o botão também, e não fecha apertando, somente com o ESQ
  4. C Como fechar somente a janela do allegro 4

    Entendi, o meu não roda somente com isso, um inteiro que definiu pra saiu, ele não reconhece o false, a menos que essa volatile antes do int, modifique para um tipo boolean, que tentei tmb, mas não deu muito certo. O meu allegro é 4.2 não o 5 (não sei qual é a sua)
  5. C Como usar o goto entre funções

    Eu entendi o que você quis dizer, mais eu sei usar o comando em si. Porém não era isso que perguntei inicialmente. Eu perguntei se tinha como usar o goto entre funções, por causa desse erro aqui, ele fala que não foi definida. Em todo caso eu já achei uma alternativa, para isso, era um final de um switch case, ele resolveu, mas queria mesmo o goto, por causa de umas condições que define em um código que ficam em funções separadas.
  6. C Como fechar somente a janela do allegro 4

    Sem sucesso, continua bugado :/
  7. Tenho um cenário atualmente, onde eu abro um programa em C, é dentro dele tem uma função que chama o allegro para abrir em determinado momento, porém não estou conseguindo fechar corretamente o allegro. O que eu fiz foi criar essa função chamada de fechar void fechar(){ allegro_exit(); } é chamei essa função, habilitando o botão de fechar do allegro pelo comando set_close_button_callback(fechar); Porém, creio que deveria fazer algo a mais, pois a janela do allegro "finge" que fecha, mas continua bugada na barra de ferramentas do windows, só fecha mesmo quando eu fecho o cmd. Alguma sugestão pra melhorar isso?, resolveria também com um ESQ, mas queria habilitar o botão de fechar para ficar mais fácil.
  8. C Como usar o goto entre funções

    Dei uma pesquisada, mas estou com um dilema, como posso usar o comando goto, entre funções?, exemplo tem um inicio: no main, e tenho uma função chamada menu, que precisa voltar caso uma variável seja verdadeira, para uma parte especifica do main, mas não executar tudo novamente, como proceder?
  9. C Clique em BITMAP para mostrar uma mensagem

    Realmente, adicionando um rest(20), após apresentar a mensagem resolveu o problema pelo que parece. adicionado 0 minutos depois Já terminei a versão final dele, com a última alteração adicionado 5 minutos depois Inclusive fiz um vídeo zoado pra ele Segue também o executável, é o código para fins de consulta, e ajuda para quem precisar Meu objetivo agora é fazer algo parecido, melhor, e somente na janela do CMD, sem utilizar o allegro, ou qualquer biblioteca gráfica. Executavel.zip Pacote_de_Viagens_-_Com_Allegro.zip
  10. C Clique em BITMAP para mostrar uma mensagem

    Dei uma organizada, e repliquei as alterações pros 9 até o momento. Projeto_sem_nome_-_Cópia.zip
  11. C Clique em BITMAP para mostrar uma mensagem

    @TYSQUARE89 Entendi, muito legal, diminui o rest pra 70, pra ele ficar redondo. while(1){ if(mouse_b & 1){ tmp = mouse_pos; x = tmp >> 16; y = tmp & 0x0000ffff; //1 if(x < 30 + produto1->w && x + 5 > 30 && y < 30 + produto1->h && y + 5 > 30) allegro_message("Sorry, missing game data! PRODUTO 1\n"); //2 if(x < 390 + produto2->w && x + 5 > 390 && y < 30 + produto2->h && y + 5 > 30) allegro_message("Sorry, missing game data! PRODUTO 2\n"); //3 if(x < 750 + produto2->w && x + 5 > 750 && y < 30 + produto2->h && y + 5 > 30) allegro_message("Sorry, missing game data! PRODUTO 3\n"); x = -1; y = -1; tmp = 0; } rest(70); adicionado 40 minutos depois Fiz uns testes tmb, quando clica uma vez, com o rest 70, a mensagem aparece muitas vezes seguidas, parece meio aleatório, as vezes são 2 vezes, outras 3, outras 5... Mas ta legalzin, curti.
  12. C Movimentação de personagem - Bitmap com Allegro

    @TYSQUARE89 Tava sim, enfim. No meu windows 7 pelo menos, ele trava, tentando executar normalmente. Porém, testei com o modo de compatibilidade, com o windows 7 ou windows xp, e deu certo :/ Já eu testo pegando o código do menu e tentando implementar no código que roda aqui, e posto o resultado. adicionado 0 minutos depois Executavel menu.zip
  13. Como posso fazer para cada BITMAP, quando clicar com o mouse, no caso em anexo produto1 até produto9, abrir uma mensagem na tela, contendo informações com o comando abaixo, como posso proceder? allegro_message("Sorry, missing game data!\n teste \n teste"); Projeto_sem_nome.zip adicionado 6 minutos depois @tysquare89 adicionado 7 minutos depois @Benjamin Breeg
  14. C Movimentação de personagem - Bitmap com Allegro

    ok, é porque no meu codeblocks ele não reconhece os comandos de "private:" e "public:". e como fazem parte do menu pelo que percebi, sem eles atualmente ele não reconhece os comandos posteriores.
  15. C Movimentação de personagem - Bitmap com Allegro

    @TYSQUARE89 Não consegui de forma alguma fazer o seu código rodar. Não encontrei como posso transformar essa parte aqui para rodar no windows. struct MenuObject{ private: //Váriaveis principais mItem **items; // itens do menu int count; // contagem de itens //Selector de item BITMAP *sel_buffer; // buffer da imagem char *selector_img; // imagem do seletor int selector_id; // para onde o seletor esta apontando int dist_sel_x; // distancia da imagem do item, use 0 para ficar ao lado public: MenuObject() { count = 0; items = NULL; sel_buffer = NULL; selector_img = NULL; selector_id = 0; dist_sel_x = 0; } Alguém conseguiu?, consegue mandar o código pra ver como fica. Menu - error.zip adicionado 4 minutos depois @Benjamin Breeg @TYSQUARE89 Consegui limpar o código mais um pouco, porque a coisa tava ficando desorganizada já dnv kk. O main está clear agora. O mapa foi reduzido à somente o que ele vai mostrar. Testando - Forum.zip adicionado 5 minutos depois Sobre separar em arquivos, acho interessante a ideia. Seria um arquivo próprio pro mapa exemplo?, assim ele nem fica aparecendo no principal. Sou iniciante em C, nunca mexi com arquivos próprios ainda. adicionado 12 minutos depois Agora explicando o vislumbre da versão final até agora pensado. O personagem inicia exatamente onde ele está agora. O objetivo dele é atravessar o mapa é chegar a saída, onde está indicando abaixo. Porém terá alguns obstáculos, como outros digamos "monstros" andando no mapa aleatoriamente. 2 ou 3 (igual pacman se for para comparar). Porém também terá um tempo para chegar nessa saída, sendo que terá também itens no mapa que servirão para aumentar o tempo restante para sair. Sendo também imprecisável que pegue pelo menos uns 2 itens, pra sair, ele pode desbloquear a porta, ou algo do gênero. é também ele não conseguirá chegar na saída com o tempo inicial que ainda não está definido, por isso a importância de pegar os itens. Também terá 2 sistema de rankings, sendo um deles por menor tempo terminado a fase, é o outro pela quantidade de pontos feitos. Na saída, dará uma opção para continuar em um novo mapa, com os pontos atuais, ou finalizar o game. Isso é o que temos até agora, ideias são bem vindas, mas claro, um passo de cada vez. adicionado 14 minutos depois -------- Agora que temos um mapa construído, seria interessante focar na parte do menu, o fechar que ainda ta bugando (já eu falo mais pra baixo), dividir em arquivos o game (sugestão acho), usar a função time do allegro pra ser o sistema de tempo que descrevi a cima. adicionado 15 minutos depois -------------------------- 2 bugs que notei. O botão de fechar a jenela está acionando somente quando abre o menu jogar, e também não fecha, só habilita mesmo. Outro bug que encontrei é que, o jogo não fecha mesmo com o esq, ele meio que esconde a janela, o processo dele ainda continua rodando em segundo plano, tanto com que no gerenciador de tarefas (windows), ele está aberto. adicionado 16 minutos depois @TYSQUARE89 @Benjamin Breeg Desculpa se ficou muito grande, gostaria de detalhar no máximo possível, sempre que posso.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×