GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Conectar-se

Esqueci minha senha

Últimos assuntos
» Problema no contato
por NPH Ontem à(s) 17:22

» iniciar audio/musica junto com a sala
por NPH Qua 12 Maio 2021, 17:09

» mudar de room(cena) quando fosse colidido
por NPH Ter 11 Maio 2021, 22:15

» criar obj aonde o mouse foi clicado
por Felipe_Cardoso Ter 11 Maio 2021, 11:36

» Contrato freelancer Android
por TS Seg 10 Maio 2021, 00:57

» sprite sumir quando ele fosse colidido
por Felipe_Cardoso Dom 09 Maio 2021, 20:00

» bug limite de objetos na room
por Raffxz Dom 09 Maio 2021, 15:54

» sprite aparecer e sumir quando clicado mouse
por Felipe_Cardoso Sex 07 Maio 2021, 22:15

» troca de armas
por Raffxz Sex 07 Maio 2021, 20:55

» olá,me chamo Eliane
por TRFN Qui 06 Maio 2021, 15:19

» [update 03] Triangle Fly 2: Infinity
por NPH Ter 04 Maio 2021, 18:37

» pulo como flappy bird
por TRFN Seg 03 Maio 2021, 14:46

» Game Maker 1.4 criar arquivo .zip
por TRFN Seg 03 Maio 2021, 14:36

» imagem do grupo nao carrega
por TRFN Seg 03 Maio 2021, 14:32

» [Resolvido]sistema de trocar de arma
por Raffxz Dom 02 Maio 2021, 18:41

» como posso fazer uma seleção de personagens?
por RoGamenatico Qui 29 Abr 2021, 12:53

» Como que eu faço para fazer o tempo parar no gamemaker?
por RoGamenatico Qui 29 Abr 2021, 12:02

» Village Builder
por DJM_JM Qui 29 Abr 2021, 06:12

» Player "entrando" dentro de Bloco sólido!
por bhreno Qua 28 Abr 2021, 10:23

» Inimigo Seguir o Player e Uma coisa a mais...
por makgamer Ter 27 Abr 2021, 22:39

» Engine gmk Donkey Kong Country.
por Roberto M F Ter 20 Abr 2021, 02:36

» Ponto de origem da bala
por DJM_JM Qua 14 Abr 2021, 14:34

» como fazer o player atacar e depois voltar para o sprite parado.
por makgamer Sex 09 Abr 2021, 11:00

» [Resolvido]Alterar o ponto de origem da bala na sprite.
por Capote Ter 06 Abr 2021, 07:36

» Tiro não sai pelo cano da arma
por Capote Seg 05 Abr 2021, 07:30


Simple Menu System (SMS, by CPinheiro)

Ir em baixo

Simple Menu System (SMS, by CPinheiro) Empty Simple Menu System (SMS, by CPinheiro)

Mensagem por CPinheiro Seg 20 Abr 2009, 02:03

Simple Menu System

.: Descrição
Um script de menu voltado para os iniciantes que querem ter menus bonitos em seus jogos, mas não tem recursos gráficos para isso. Este apresenta um belo botão, completamente funcional, textos com bordas, possibilidade de multiplas opções, etc...

.: Script


Código:

//SMS(posição x, posição y, tamanho do botão (por enquanto somente o tamanho "1" está disponível), total de botões (max. 3 botões),texto do botão 1, código do botão 1, texto do botão 2, código do botão 2, texto do botão 3, código do botão 3, cor (1=vermelho, 2=verde, 3=azul),fonte);

posicaox=argument0
posicaoy=argument1
tambut=argument2
totalbut=argument3
txtopcao1=argument4
codeopcao1=argument5
txtopcao2=argument6
codeopcao2=argument7
txtopcao3=argument8
codeopcao3=argument9
cor=argument10
fnt=argument11

draw_set_font(fnt);
for(i=0;i<10;i+=1;){idbut[i]=0}
if (cor==1) //Vermelho
{
        cor1_bt1=make_color_rgb(186,12,12);
        cor2_bt1=make_color_rgb(240,28,28);
        cor3_bt1=make_color_rgb(245,101,101);
        cor4_bt1=make_color_rgb(249,157,157);
}


if (cor==2) //Verde
{
        cor1_bt1=make_color_rgb(12,186,12);
        cor2_bt1=make_color_rgb(28,240,28);
        cor3_bt1=make_color_rgb(101,245,101);
        cor4_bt1=make_color_rgb(157,249,157);
}


if (cor==3) //Azul
{
        cor1_bt1=make_color_rgb(12,12,186);
        cor2_bt1=make_color_rgb(28,28,240);
        cor3_bt1=make_color_rgb(101,101,245);
        cor4_bt1=make_color_rgb(157,157,249);
}

// TAMANHO 1

if (tambut==1)
{
    if (totalbut==1)
    {
        if (mouse_x>=posicaox) && (mouse_x<=posicaox+128) && (mouse_y>=posicaoy) && (mouse_y<=posicaoy+24)
        {                idbut[1]=1;
            posmou=1;
            draw_set_color(c_white)
            draw_rectangle(posicaox,posicaoy,posicaox+128,posicaoy+24,true)
            draw_set_color(c_black)
            draw_rectangle(posicaox+1,posicaoy+1,posicaox+127,posicaoy+23,true)
            draw_rectangle_color(posicaox+2,posicaoy+2,posicaox+127,posicaoy+23,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_text(posicaox+61,posicaoy+5,txtopcao1);
            draw_text(posicaox+63,posicaoy+5,txtopcao1);
            draw_text(posicaox+62,posicaoy+4,txtopcao1);
            draw_text(posicaox+62,posicaoy+6,txtopcao1);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+5,txtopcao1);
            if (mouse_check_button_pressed(mb_left))
            {
execute_string(codeopcao1);
            }
        }
        else
        {posmou=0 idbut[1]=0
            draw_set_color(c_black)
            draw_rectangle(posicaox,posicaoy,posicaox+128,posicaoy+24,true)
            draw_set_color(c_white)
            draw_rectangle(posicaox+1,posicaoy+1,posicaox+127,posicaoy+23,true)
            draw_rectangle_color(posicaox+2,posicaoy+2,posicaox+127,posicaoy+23,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_set_color(c_black);
            draw_text(posicaox+61,posicaoy+5,txtopcao1);
            draw_text(posicaox+63,posicaoy+5,txtopcao1);
            draw_text(posicaox+62,posicaoy+4,txtopcao1);
            draw_text(posicaox+62,posicaoy+6,txtopcao1);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+5,txtopcao1);
        }
    }
   
        if (totalbut==2)
    {
      if (mouse_x>=posicaox) && (mouse_x<=posicaox+128) && (mouse_y>=posicaoy) && (mouse_y<=posicaoy+24)
        {                idbut[1]=1;
            posmou=1;
            draw_set_color(c_white)
            draw_rectangle(posicaox,posicaoy,posicaox+128,posicaoy+24,true)
            draw_set_color(c_black)
            draw_rectangle(posicaox+1,posicaoy+1,posicaox+127,posicaoy+23,true)
            draw_rectangle_color(posicaox+2,posicaoy+2,posicaox+127,posicaoy+23,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_text(posicaox+61,posicaoy+5,txtopcao1);
            draw_text(posicaox+63,posicaoy+5,txtopcao1);
            draw_text(posicaox+62,posicaoy+4,txtopcao1);
            draw_text(posicaox+62,posicaoy+6,txtopcao1);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+5,txtopcao1);
            if (mouse_check_button_pressed(mb_left))
            {
execute_string(codeopcao1);
            }
        }
        else
        {posmou=0 idbut[1]=0
            draw_set_color(c_black)
            draw_rectangle(posicaox,posicaoy,posicaox+128,posicaoy+24,true)
            draw_set_color(c_white)
            draw_rectangle(posicaox+1,posicaoy+1,posicaox+127,posicaoy+23,true)
            draw_rectangle_color(posicaox+2,posicaoy+2,posicaox+127,posicaoy+23,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_set_color(c_black);
            draw_text(posicaox+61,posicaoy+5,txtopcao1);
            draw_text(posicaox+63,posicaoy+5,txtopcao1);
            draw_text(posicaox+62,posicaoy+4,txtopcao1);
            draw_text(posicaox+62,posicaoy+6,txtopcao1);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+5,txtopcao1);
        }
        if (mouse_x>=posicaox) && (mouse_x<=posicaox+128) && (mouse_y>=posicaoy+24+6) && (mouse_y<=posicaoy+24+24+6)
        {            posmou=1;
            idbut[2]=1;
            draw_set_color(c_white)
            draw_rectangle(posicaox,posicaoy+24+6,posicaox+128,posicaoy+24+24+6,true)
            draw_set_color(c_black)
            draw_rectangle(posicaox+1,posicaoy+1+24+6,posicaox+127,posicaoy+23+24+6,true)
            draw_rectangle_color(posicaox+2,posicaoy+2+24+6,posicaox+127,posicaoy+23+24+6,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_text(posicaox+61,posicaoy+2+21+12,txtopcao2);
            draw_text(posicaox+63,posicaoy+2+21+12,txtopcao2);
            draw_text(posicaox+62,posicaoy+1+21+12,txtopcao2);
            draw_text(posicaox+62,posicaoy+3+21+12,txtopcao2);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+2+21+12,txtopcao2);
            if (mouse_check_button_pressed(mb_left))
            {
execute_string(codeopcao2);
            }
        }
        else
        {posmou=0 idbut[2]=0
            draw_set_color(c_black)
            draw_rectangle(posicaox,posicaoy+24+6,posicaox+128,posicaoy+24+24+6,true)
            draw_set_color(c_white)
            draw_rectangle(posicaox+1,posicaoy+1+24+6,posicaox+127,posicaoy+23+24+6,true)
            draw_rectangle_color(posicaox+2,posicaoy+2+24+6,posicaox+127,posicaoy+23+24+6,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_set_color(c_black)
            draw_set_halign(fa_center)
            draw_text(posicaox+61,posicaoy+2+21+12,txtopcao2);
            draw_text(posicaox+63,posicaoy+2+21+12,txtopcao2);
            draw_text(posicaox+62,posicaoy+1+21+12,txtopcao2);
            draw_text(posicaox+62,posicaoy+3+21+12,txtopcao2);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+2+21+12,txtopcao2);
        }

    }
   
            if (totalbut==3)
    {
        if (mouse_x>=posicaox) && (mouse_x<=posicaox+128) && (mouse_y>=posicaoy) && (mouse_y<=posicaoy+24)
        {                idbut[1]=1;
            posmou=1;
            draw_set_color(c_white)
            draw_rectangle(posicaox,posicaoy,posicaox+128,posicaoy+24,true)
            draw_set_color(c_black)
            draw_rectangle(posicaox+1,posicaoy+1,posicaox+127,posicaoy+23,true)
            draw_rectangle_color(posicaox+2,posicaoy+2,posicaox+127,posicaoy+23,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_text(posicaox+61,posicaoy+5,txtopcao1);
            draw_text(posicaox+63,posicaoy+5,txtopcao1);
            draw_text(posicaox+62,posicaoy+4,txtopcao1);
            draw_text(posicaox+62,posicaoy+6,txtopcao1);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+5,txtopcao1);
            if (mouse_check_button_pressed(mb_left))
            {
execute_string(codeopcao1);
            }
        }
        else
        {posmou=0 idbut[1]=0
            draw_set_color(c_black)
            draw_rectangle(posicaox,posicaoy,posicaox+128,posicaoy+24,true)
            draw_set_color(c_white)
            draw_rectangle(posicaox+1,posicaoy+1,posicaox+127,posicaoy+23,true)
            draw_rectangle_color(posicaox+2,posicaoy+2,posicaox+127,posicaoy+23,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_set_color(c_black);
            draw_text(posicaox+61,posicaoy+5,txtopcao1);
            draw_text(posicaox+63,posicaoy+5,txtopcao1);
            draw_text(posicaox+62,posicaoy+4,txtopcao1);
            draw_text(posicaox+62,posicaoy+6,txtopcao1);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+5,txtopcao1);
        }
        if (mouse_x>=posicaox) && (mouse_x<=posicaox+128) && (mouse_y>=posicaoy+24+6) && (mouse_y<=posicaoy+24+24+6)
        {            posmou=1;
            idbut[2]=1;
            draw_set_color(c_white)
            draw_rectangle(posicaox,posicaoy+24+6,posicaox+128,posicaoy+24+24+6,true)
            draw_set_color(c_black)
            draw_rectangle(posicaox+1,posicaoy+1+24+6,posicaox+127,posicaoy+23+24+6,true)
            draw_rectangle_color(posicaox+2,posicaoy+2+24+6,posicaox+127,posicaoy+23+24+6,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_text(posicaox+61,posicaoy+2+21+12,txtopcao2);
            draw_text(posicaox+63,posicaoy+2+21+12,txtopcao2);
            draw_text(posicaox+62,posicaoy+1+21+12,txtopcao2);
            draw_text(posicaox+62,posicaoy+3+21+12,txtopcao2);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+2+21+12,txtopcao2);
            if (mouse_check_button_pressed(mb_left))
            {
execute_string(codeopcao2);
            }
        }
        else
        {posmou=0 idbut[2]=0
            draw_set_color(c_black)
            draw_rectangle(posicaox,posicaoy+24+6,posicaox+128,posicaoy+24+24+6,true)
            draw_set_color(c_white)
            draw_rectangle(posicaox+1,posicaoy+1+24+6,posicaox+127,posicaoy+23+24+6,true)
            draw_rectangle_color(posicaox+2,posicaoy+2+24+6,posicaox+127,posicaoy+23+24+6,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_set_color(c_black)
            draw_set_halign(fa_center)
            draw_text(posicaox+61,posicaoy+2+21+12,txtopcao2);
            draw_text(posicaox+63,posicaoy+2+21+12,txtopcao2);
            draw_text(posicaox+62,posicaoy+1+21+12,txtopcao2);
            draw_text(posicaox+62,posicaoy+3+21+12,txtopcao2);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+2+21+12,txtopcao2);
        }
        if (mouse_x>=posicaox) && (mouse_x<=posicaox+128) && (mouse_y>=posicaoy+24+12+24) && (mouse_y<=posicaoy+24+24+24+12)
        {                idbut[3]=1;
                        draw_set_color(c_white)
            draw_rectangle(posicaox,posicaoy+24+24+12,posicaox+128,posicaoy+24+24+12+24,true)
            draw_set_color(c_black)
            draw_rectangle(posicaox+1,posicaoy+1+24+24+12,posicaox+127,posicaoy+23+24+12+24,true)
            draw_rectangle_color(posicaox+2,posicaoy+2+24+12+24,posicaox+127,posicaoy+23+24+12+24,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_set_halign(fa_center)
            draw_text(posicaox+61,posicaoy+2+24+15+24,txtopcao3);
            draw_text(posicaox+63,posicaoy+2+24+15+24,txtopcao3);
            draw_text(posicaox+62,posicaoy+1+24+15+24,txtopcao3);
            draw_text(posicaox+62,posicaoy+3+24+15+24,txtopcao3);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+2+24+15+24,txtopcao3);
                    if (mouse_check_button_pressed(mb_left))
            {
execute_string(codeopcao3);
            }
        }
        else
        {  idbut[3]=0
            draw_set_color(c_black)
            draw_rectangle(posicaox,posicaoy+24+24+12,posicaox+128,posicaoy+24+24+12+24,true)
            draw_set_color(c_white)
            draw_rectangle(posicaox+1,posicaoy+1+24+24+12,posicaox+127,posicaoy+23+24+12+24,true)
            draw_rectangle_color(posicaox+2,posicaoy+2+24+12+24,posicaox+127,posicaoy+23+24+12+24,cor1_bt1,cor2_bt1,cor3_bt1,cor4_bt1,0);
            draw_set_color(c_black)
            draw_set_halign(fa_center)
            draw_text(posicaox+61,posicaoy+2+24+15+24,txtopcao3);
            draw_text(posicaox+63,posicaoy+2+24+15+24,txtopcao3);
            draw_text(posicaox+62,posicaoy+1+24+15+24,txtopcao3);
            draw_text(posicaox+62,posicaoy+3+24+15+24,txtopcao3);
            draw_set_color(c_white)
            draw_text(posicaox+62,posicaoy+2+24+15+24,txtopcao3);
        }
    }
}

.: Versão
Esta é a versão 0.1a. Ela contém alguns pequenos erros de código (como algumas vars inúteis, mas NADA que atrapalhe seu projeto), que serão ajeitados na versão 0.1b. Logo depois, na versão 0.2, pretendo adicionar o Tamanho 2 e/ou novas cores para os botões.

Tentei deixar da forma mais simples possível para que qualquer iniciante entenda. Também me preocupei em que a caixa de texto ficasse bonita, e gostei bastante do resultado.


Comentem. x)
CPinheiro
CPinheiro

Data de inscrição : 01/06/2008
Reputação : 0
Número de Mensagens : 1015
Prêmios : Simple Menu System (SMS, by CPinheiro) Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ver perfil do usuário http://supermariobrasileiro.blogspot.com

Voltar ao Topo Ir em baixo

Simple Menu System (SMS, by CPinheiro) Empty Re: Simple Menu System (SMS, by CPinheiro)

Mensagem por patoki Seg 20 Abr 2009, 12:45

O script ta bem grande, mas e de facil compreensao! Irei experimentar os 3 scripts de menu(=D) aqui postados!
avatar
patoki

Data de inscrição : 19/12/2008
Reputação : 0
Número de Mensagens : 175
Prêmios : Simple Menu System (SMS, by CPinheiro) Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Simple Menu System (SMS, by CPinheiro) Empty Re: Simple Menu System (SMS, by CPinheiro)

Mensagem por Gusba Seg 20 Abr 2009, 13:49

cara, nao gostei pelo tamanho dele, axo q uma automação na posição dos draws ia diminuir o tamanho, e ajudar no processamento e memoria, mas para primeiros scripts ax oq ta bom, digo primeiro pq ainda nao domina outros loops e opções mais avançadas, se precisar de ajuda nisso pede q eu to ai, vlw!
Gusba
Gusba

Data de inscrição : 03/08/2008
Reputação : 0
Número de Mensagens : 1156
Prêmios : Simple Menu System (SMS, by CPinheiro) Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ver perfil do usuário http://www.ciganospictures.hd1.com.br

Voltar ao Topo Ir em baixo

Simple Menu System (SMS, by CPinheiro) Empty Re: Simple Menu System (SMS, by CPinheiro)

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum