AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez
 

 Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)

Aller en bas 
AuteurMessage
Adamo
Utilisateur confirmé: Rang ***
Adamo

Messages : 681
Localisation : Quebec

Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Empty
MessageSujet: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)   Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) EmptyLun 27 Oct 2008 - 22:14

[pas encore fini]

http://www.zshare.net/download/50569115aa2a16a7/

exemplegm6.gm6 - 0.02MB

A mettre dans levent draw d'un objet et on obtient une editbox ! Very Happy
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 - 13:36, édité 3 fois
Revenir en haut Aller en bas
nicoulas
*Excellent utilisateur*
nicoulas

Messages : 6030
Localisation : Dordogne
Projet Actuel : Croustaface Tower Defense Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Panicpr9

Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Empty
MessageSujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)   Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) EmptyLun 27 Oct 2008 - 23:17

Ça c'est utile comme script !

Dès que je peux je le teste et je te dis ce que je pense super

_________________
Blithe ND Blog

Blithe ND Free Textures

Blithe ND Website
Revenir en haut Aller en bas
http://blithe.nd.free.fr/
Adamo
Utilisateur confirmé: Rang ***
Adamo

Messages : 681
Localisation : Quebec

Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Empty
MessageSujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)   Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) EmptyMar 28 Oct 2008 - 10: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
}

}

}
}
Revenir en haut Aller en bas
Chlorodatafile
Utilisateur confirmé: Rang *****
Chlorodatafile

Messages : 2929
Localisation : Belfort
Projet Actuel :
Paralights

Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Empty
MessageSujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)   Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) EmptyMar 28 Oct 2008 - 11: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 !

_________________
Le CBNA

Paralights ← Projet Actuel
Concepteur de jeu fondateur du Black Owl Studio, mâchouilleur de code.
Revenir en haut Aller en bas
http://chlorodatafile.tumblr.com/
Adamo
Utilisateur confirmé: Rang ***
Adamo

Messages : 681
Localisation : Quebec

Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Empty
MessageSujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)   Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) EmptyMar 28 Oct 2008 - 12:31

c'est un droplist genre un quand tu poste un message pour changer la couleur
Revenir en haut Aller en bas
nicoulas
*Excellent utilisateur*
nicoulas

Messages : 6030
Localisation : Dordogne
Projet Actuel : Croustaface Tower Defense Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Panicpr9

Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Empty
MessageSujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)   Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) EmptyMar 28 Oct 2008 - 12: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 ! super

_________________
Blithe ND Blog

Blithe ND Free Textures

Blithe ND Website
Revenir en haut Aller en bas
http://blithe.nd.free.fr/
Adamo
Utilisateur confirmé: Rang ***
Adamo

Messages : 681
Localisation : Quebec

Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Empty
MessageSujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)   Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) EmptyMar 28 Oct 2008 - 13:39

Merci Smile 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
Revenir en haut Aller en bas
Mass
*Excellent utilisateur*
Mass

Messages : 3338
Localisation : Dans une canonnière wookie.
Projet Actuel : Living the life
Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Void

Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Empty
MessageSujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)   Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) EmptyMar 28 Oct 2008 - 14: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...

_________________
Wyvup
Revenir en haut Aller en bas
http://madmass.mype.fr/CBNA/
Contenu sponsorisé




Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Empty
MessageSujet: Re: Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)   Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post) Empty

Revenir en haut Aller en bas
 
Editbox,ScrollBoxH&V,ComboBox + Lib + GM6 (1ier post)
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Congés Fériés du 24 juin et du 1ier juillet
» rubrique spéciale Fond de teint ?
» En attente du résultat du tec 2...
» Les complétement psychoteuses / Tome 2
» Photos - Mini SWAP des étoiles plein les yeux [5/5 photos postées]

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Scripts GML-
Sauter vers: