| | Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) | |
| | Auteur | Message |
---|
Adamo Utilisateur confirmé: Rang ***
Messages : 681 Localisation : Quebec
| Sujet: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Lun 27 Oct 2008 - 23:14 | |
| [pas encore fini] http://www.zshare.net/download/50569115aa2a16a7/exemplegm6.gm6 - 0.02MBA mettre dans levent draw d'un objet et on obtient une editbox ! les 1iere lignes sont pour configurer la box, apres pour recuprer le texte plus qu'a prendre la variable : texte exemple : global.nom = object1.texte - Code:
-
if !variable_local_exists("create") // EVENT Create du script { /*A CONFIGURER ICI*/ //////////////////// //////////////////// longeur = 100 hauteur = 20 couleurfond = c_white couleurcontour = make_color_rgb(165,172,178) couleurtexte = c_black couleurtextedescription = c_black textedescription = 'Edtibox1 :' texte = 'TestBox !' textecrypter = false textecrypterlettre = '*' modifiable = true ecriturebold = false ecritureitalic = false fontsize = 11 font = 'Comic Sans MS' maxchar = 10 //////////////////// //POUR RECUPERER LE TEXTE ENTRER VARIABLE : texte //////////////////// //////////////////// /*A CONFIGURER ICI*/ myfont = font_add(font,fontsize,ecriturebold,ecritureitalic,0,255) draw_set_font(myfont) cursor = 0 cursortimer = 0 selectedbox = 'noone' textecrypted = '' create = true } cursortimer+=1 if cursortimer > 15 { cursor +=1 if cursor = 2 { cursor = 0 } cursortimer = 0 }
draw_set_color(couleurfond) draw_rectangle(x,y,x+longeur,y+hauteur,false) draw_set_color(couleurcontour) draw_rectangle(x,y,x+longeur,y+hauteur,true) draw_set_halign(fa_right) draw_set_color(couleurtextedescription) draw_text(x,y,textedescription+' ') draw_set_halign(fa_left)
if selectedbox = object_get_name(object_index) { if string_length(keyboard_string) < maxchar+1 { texte = keyboard_string } else { keyboard_string = texte } }
if textecrypter = false { if selectedbox = object_get_name(object_index) { if cursor = 0 { draw_set_color(couleurtexte) draw_text(x+2,y,texte+'|') } if cursor = 1 { draw_set_color(couleurtexte) draw_text(x+2,y,texte) } } draw_set_color(couleurtexte) draw_text(x+2,y,texte) } else { if selectedbox = object_get_name(object_index) { if cursor = 0 { for(i=0;i<string_length(texte)+1;i+=1) { if string_length(texte) = i{textecrypted = i*textecrypterlettre} } draw_set_color(couleurtexte) draw_text(x+2,y,textecrypted+'|') } if cursor = 1 { draw_set_color(couleurtexte) draw_text(x+2,y,textecrypted) } } draw_set_color(couleurtexte) draw_text(x+2,y,textecrypted) }
if mouse_x > x&&mouse_x < x+longeur&&mouse_y > y&&mouse_y < y+hauteur { window_set_cursor(cr_beam) if mouse_check_button_released(mb_left) { all.selectedbox = 'noone' selectedbox = object_get_name(object_index) keyboard_string = texte } } else { if window_get_cursor() = cr_beam { window_set_cursor(cr_arrow) } }
Edit1 . : petit bug trouver si on met plusieur objet avec ce script le cursor change pour le curseur du texte que sur le dernier objet
Dernière édition par Adamo le Mar 28 Oct 2008 - 14:36, édité 3 fois |
| | | nicoulas *Excellent utilisateur*
Messages : 6030 Localisation : Dordogne Projet Actuel : Croustaface Tower Defense
| Sujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Mar 28 Oct 2008 - 0:17 | |
| Ça c'est utile comme script ! Dès que je peux je le teste et je te dis ce que je pense |
| | | Adamo Utilisateur confirmé: Rang ***
Messages : 681 Localisation : Quebec
| Sujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Mar 28 Oct 2008 - 11:21 | |
| Scrollbar Horizontale : - Code:
-
if !variable_local_exists("create") // EVENT Create du script { /*A CONFIGURER ICI*/ //////////////////// //////////////////// longeur = 100 nombredeposition = 100 position = 0 couleurfond = c_white couleurcontour = make_color_rgb(165,172,178) couleurcef = c_black //couleur contour de boutton et fleches couleurbouton = c_ltgray //////////////////// //POUR RECUPERER LA POSITION ACTUEL VARIABLE : position //////////////////// //////////////////// /*A CONFIGURER ICI*/ clicked = false create = true drawrect = false drawrectchange = false leftclick = false rightclick = false midlehold = false dist = (longeur-56)/nombredeposition xpos = 28+dist*position mousepos = 0 timer = 0 } /////////////////////////////////////////////// /////////////////////////////////////////////// /////////////Scrollbar Horizontale///////////// /////////////////////////////////////////////// /////////////////////////////////////////////// //barre fond draw_set_alpha(1) draw_set_color(couleurfond) draw_rectangle(x,y,x+longeur,y+19,false) draw_set_color(couleurcontour) draw_rectangle(x,y,x+longeur,y+19,true)
//boutton gauche draw_set_color(couleurbouton) draw_rectangle(x+1,y+1,x+18,y+18,false) draw_set_color(couleurcef) draw_rectangle(x+1,y+1,x+18,y+18,true) draw_point(x+7,y+9) draw_line(x+8,y+8,x+8,y+10) draw_line(x+9,y+7,x+9,y+11) draw_line(x+10,y+6,x+10,y+12)
//boutton droit draw_set_color(couleurbouton) draw_rectangle(x+longeur-18,y+1,x+longeur-1,y+18,false) draw_set_color(couleurcef) draw_rectangle(x+longeur-18,y+1,x+longeur-1,y+18,true) draw_point(x+longeur-7,y+9) draw_line(x+longeur-8,y+8,x+longeur-8,y+10) draw_line(x+longeur-9,y+7,x+longeur-9,y+11) draw_line(x+longeur-10,y+6,x+longeur-10,y+12)
//boutton centrale draw_set_color(couleurbouton) draw_rectangle(x+xpos-9,y+1,x+9+xpos,y+18,false) draw_set_color(couleurcef) draw_rectangle(x+xpos-9,y+1,x+9+xpos,y+18,true)
if mouse_x > x+xpos-9&&mouse_x < x+xpos+9&&mouse_y > y&&mouse_y < y+19 { if mouse_check_button(mb_left) { midlehold = true } } if mouse_check_button_released(mb_left) { midlehold = false }
if midlehold = true { if mouse_x > x+19&&mouse_x < x+longeur-19 {
for(i=0;i<nombredeposition+1;i+=1) {
mousepos = mouse_x-x-19 xpos = mousepos+18
if xpos-28 > i*dist { position=i }
}
}
if xpos < 28 { xpos = 28 } if xpos > longeur-28 { xpos = longeur-28 }
} else { xpos = 28+dist*position }
if mouse_x > x&&mouse_x < x+19&&mouse_y >y&&mouse_y<y+19 { if mouse_check_button_pressed(mb_left) { position-=1 } if mouse_check_button(mb_left) { timer+=1 if timer > 10 { position-=1 } } }
if mouse_x > x+longeur-19&&mouse_x < x+longeur&&mouse_y >y&&mouse_y<y+19 { if mouse_check_button_pressed(mb_left) { position+=1 } if mouse_check_button(mb_left) { timer+=1 if timer > 10 { position+=1 } } }
if mouse_check_button_released(mb_left) { timer = 0 }
if position < 0 { position = 0 } if position > nombredeposition { position = nombredeposition } /////////////////////////////////////////////// /////////////////////////////////////////////// /////////////Scrollbar Horizontale///////////// /////////////////////////////////////////////// ///////////////////////////////////////////////
draw_text(x+(longeur/2),y+25,position) //A SUPPRIMER POUR ENLEVER LE TEXTE
ScrollBar Verticale : - Code:
-
if !variable_local_exists("create") // EVENT Create du script { /*A CONFIGURER ICI*/ //////////////////// //////////////////// hauteur = 200 nombredeposition = 100 position = 0 couleurfond = c_white couleurcontour = make_color_rgb(165,172,178) couleurcef = c_black //couleur contour de boutton et fleches couleurbouton = c_ltgray //////////////////// //POUR RECUPERER LA POSITION ACTUEL VARIABLE : position //////////////////// //////////////////// /*A CONFIGURER ICI*/ clicked = false create = true drawrect = false drawrectchange = false leftclick = false rightclick = false midlehold = false dist = (hauteur-56)/nombredeposition ypos = 28+dist*position mousepos = 0 timer = 0 } /////////////////////////////////////////////// /////////////////////////////////////////////// /////////////Scrollbar Verticale/////////////// /////////////////////////////////////////////// /////////////////////////////////////////////// //barre fond draw_set_alpha(1) draw_set_color(couleurfond) draw_rectangle(x,y,x+19,y+hauteur,false) draw_set_color(couleurcontour) draw_rectangle(x,y,x+19,y+hauteur,true)
//boutton haut draw_set_color(couleurbouton) draw_rectangle(x+1,y+1,x+18,y+18,false) draw_set_color(couleurcef) draw_rectangle(x+1,y+1,x+18,y+18,true) draw_point(x+9,y+7) draw_line(x+8,y+8,x+10,y+8) draw_line(x+7,y+9,x+11,y+9) draw_line(x+6,y+10,x+12,y+10)
//boutton bas draw_set_color(couleurbouton) draw_rectangle(x+1,y+hauteur-18,x+18,y+hauteur-1,false) draw_set_color(couleurcef) draw_rectangle(x+1,y+hauteur-18,x+18,y+hauteur-1,true) draw_point(x+9,y+hauteur-7) draw_line(x+8,y+hauteur-8,x+10,y+hauteur-8) draw_line(x+7,y+hauteur-9,x+11,y+hauteur-9) draw_line(x+6,y+hauteur-10,x+12,y+hauteur-10)
//boutton centrale draw_set_color(couleurbouton) draw_rectangle(x+1,y+ypos-9,x+18,y+9+ypos,false) draw_set_color(couleurcef) draw_rectangle(x+1,y+ypos-9,x+18,y+9+ypos,true)
if mouse_x > x&&mouse_x < x+19&&mouse_y > y+ypos-9&&mouse_y < y+ypos+9 { if mouse_check_button(mb_left) { midlehold = true } } if mouse_check_button_released(mb_left) { midlehold = false }
if midlehold = true { if mouse_y > y+19&&mouse_y < y+hauteur-19 {
for(i=0;i<nombredeposition+1;i+=1) {
mousepos = mouse_y-y-19 ypos = mousepos+18
if ypos-28 > i*dist { position=i }
}
}
if ypos < 28 { ypos = 28 } if ypos > hauteur-28 { ypos = hauteur-28 }
} else { ypos = 28+dist*position }
if mouse_x > x&&mouse_x < x+19&&mouse_y >y&&mouse_y<y+19 { if mouse_check_button_pressed(mb_left) { position-=1 } if mouse_check_button(mb_left) { timer+=1 if timer > 10 { position-=1 } } }
if mouse_x > x&&mouse_x < x+19&&mouse_y > y+hauteur-19&&mouse_y<y+hauteur { if mouse_check_button_pressed(mb_left) { position+=1 } if mouse_check_button(mb_left) { timer+=1 if timer > 10 { position+=1 } } }
if mouse_check_button_released(mb_left) { timer = 0 }
if position < 0 { position = 0 } if position > nombredeposition { position = nombredeposition } /////////////////////////////////////////////// /////////////////////////////////////////////// /////////////Scrollbar Verticale/////////////// /////////////////////////////////////////////// ///////////////////////////////////////////////
draw_text(x-25,y+25,position) //A SUPPRIMER POUR ENLEVER LE TEXTE
ComboBox : - Code:
-
if !variable_local_exists("create") // EVENT Create du script { /*A CONFIGURER ICI*/ //////////////////// //////////////////// longeur = 120 hauteur = 20 couleurfond = c_white couleurcontour = make_color_rgb(165,172,178) couleurtexte = c_black couleurtextedescription = c_black textedescription = 'Combobox1 :' couleurselected = c_gray ecriturebold = false ecritureitalic = false fontsize = 11 font = 'Comic Sans MS' choix[0] = 'choix actuel' choix[1] = 'choix 1' choix[2] = 'choix 2' choix[3] = 'choix 3' choix[4] = 'choix 4' choix[5] = '' choix[6] = '' choix[7] = '' choix[8] = '' choix[9] = '' choix[10] = '' //Vous devez utiliser les choix en ordre pas le 2 et le 6 par exemple et les autres vides texte = choix[0] //////////////////// //POUR RECUPERER LE TEXTE ENTRER VARIABLE : texte //////////////////// //////////////////// /*A CONFIGURER ICI*/ myfont = font_add(font,fontsize,ecriturebold,ecritureitalic,0,255) draw_set_font(myfont) clicked = false create = true rect = hauteur drawrect = false drawrectchange = false }
draw_set_alpha(1) draw_set_color(couleurfond) draw_rectangle(x,y,x+longeur,y+hauteur,false) draw_set_color(couleurcontour) draw_rectangle(x,y,x+longeur,y+hauteur,true) draw_rectangle(x+longeur-17,y,x+longeur,y+hauteur,false) if drawrect = true { draw_set_color(couleurfond) draw_rectangle(x,y+hauteur+1,x+longeur,y+hauteur+rect,false) draw_set_color(couleurcontour) draw_rectangle(x,y+hauteur+1,x+longeur,y+hauteur+rect,true) } if clicked = false{draw_set_color(c_black)} if clicked = true{draw_set_color(c_gray)} draw_line(x+longeur-12,y+8,x+longeur-5,y+8) draw_line(x+longeur-11,y+9,x+longeur-6,y+9) draw_line(x+longeur-10,y+10,x+longeur-7,y+10) draw_line(x+longeur-9,y+11,x+longeur-8,y+11) draw_set_halign(fa_right) draw_set_color(couleurtextedescription) draw_text(x,y,textedescription+' ') draw_set_halign(fa_left) draw_set_color(couleurtexte) draw_set_font(myfont) draw_text(x+2,y,texte)
if mouse_x > x&&mouse_x < x+longeur&&mouse_y > y&&mouse_y < y+hauteur { if mouse_check_button(mb_left) { clicked = true } if mouse_check_button_released(mb_left) { if drawrect = false { drawrect = true drawrectchange = true } if drawrectchange = false { if drawrect = true { drawrect = false } } drawrectchange = false clicked = false
for(i=0;i<11;i+=1) { if choix[i] != ''{rect = i*hauteur+hauteur} }
} }
for(i=0;i<11;i+=1) { if drawrect = true { if choix[i] != '' { draw_set_color(couleurtexte) draw_text(x+2,y+hauteur*i+hauteur,choix[i]) }
if mouse_x > x&&mouse_x < x+longeur&&mouse_y > y+hauteur*i+hauteur&&mouse_y < y+hauteur*i+hauteur*2 { draw_set_alpha(0.3) draw_set_color(couleurselected) draw_rectangle(x,y+hauteur*i+hauteur,x+longeur,y+hauteur*i+hauteur*2,false) draw_set_alpha(1)
if mouse_check_button_released(mb_left) { texte = choix[i] drawrectchange = false drawrect = false }
}
} } |
| | | Chlorodatafile Utilisateur confirmé: Rang *****
Messages : 2929 Localisation : Belfort Projet Actuel :
Paralights
| Sujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Mar 28 Oct 2008 - 12:03 | |
| à quoi sert une combo box ? (je suis pas sur l'ordi avec game maker donc je peut pas voir ...)
sinon ça a l'air cool tous ça ! |
| | | Adamo Utilisateur confirmé: Rang ***
Messages : 681 Localisation : Quebec
| Sujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Mar 28 Oct 2008 - 13:31 | |
| c'est un droplist genre un quand tu poste un message pour changer la couleur |
| | | nicoulas *Excellent utilisateur*
Messages : 6030 Localisation : Dordogne Projet Actuel : Croustaface Tower Defense
| Sujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Mar 28 Oct 2008 - 13:52 | |
| Excellent tout ces scripts ! Je les ai tous essayés, ils sont vraiment bien foutus ! Juste un petit bug a signaler pour les deux scrollbars : si on prend la barre et qu'on la déplace trop rapidement, il y a de petits bugs (genre ça ne se met pas au maxi ou au mini) mais c'est ptet dû à GM ... En tout cas magnifique boulot Adamo ! |
| | | Adamo Utilisateur confirmé: Rang ***
Messages : 681 Localisation : Quebec
| Sujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Mar 28 Oct 2008 - 14:39 | |
| Merci je vais probablement corriger des bug et ajouter des fonction comme la editbox je vais essayer de la faire style window tu peut ecrire et ca ecris cachant le texte derriere et pour les scrollbar jai mis plus de 2heur avant quil sois totalement fonctionnel lol jai eu des tonnes de probleme avec pire que quand tu bouge un peu trop vite ca suis plus si tu monte le fps ca le fait plus mais pour un fps a 30 jai mis un truc de trop dans le script sinon mon preferer reste le combobox (droplist) qui est pas mal lol |
| | | Mass *Excellent utilisateur*
Messages : 3351 Localisation : Dans une canonnière wookie. Projet Actuel : Monter des trucs et des machins
| Sujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Mar 28 Oct 2008 - 15:51 | |
| ta lib est géniale, j'aurais bien voulu la tester, le seul soucis est que seul gm5 tourne sur cet ordi, et que les font n'existent pas encore dedans, c'est les data files. Et les fonctions qui s'y rapportent n'existent pas non plus, donc... |
| | | Contenu sponsorisé
| Sujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) | |
| |
| | | | Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |