M@d_Doc Modérateur 'Programmation'

Age : 18 Inscrit le : 12 Fév 2005 Messages : 4086 Localisation : 47°44'8.04 : ────────── : Projet Actuel : trouver un contrat Avancement :
  (100/100)
| Sujet: import/export de tiles Lun 4 Fév - 12:34 | |
| Voilà, (encore re-re-re-merci CoDEAVE ^^ ) Je vais encore un peu bidouiller le tout , mais je viens de finir unscript permettant d'exportant dans un fichier toutes les données des tiles d'une room, et donc de les ré-importés plus tard. L'import dans une room est assez rapide. Ca permet par exemple, de rester dans une room et de changer de décors : pour cela, faut faire :
| Code: | tile_layer_delete(1000000) import_tile("tile2.tf") |
Juste avec ces deux lignes votre map change totalement. Utile par exemple pour simuler d'un coup de la neige, juste rajouter un bout de tiles, etc,etc. L'export par contre se fait uniquement par le dévelopeur (logique) Et se fait comme ça :
| Code: | export_tile("tile2.tf") |
Il suffit de placer se code à un moment dans la room.
Un exemple : http://www.zshare.net/download/7147375f4e4827/
Les scripts :
| Spoiler: | | | **-------------------------------------------** //export_tile(fname) i=10000000 dim=1 tile_list[0]=-1
//O : -1 //1 : NA //2 : debut while (not tile_exists(i)){i+=1}
for (k=i;k<i+1000000;k+=1) {if tile_exists(k){dim+=1; tile_list[dim]=k}}
f=file_text_open_write(argument0) file_text_write_string(f,"alpha background blend depth height left top visible width x xscale y yscale") file_text_writeln(f) file_text_write_string(f,"dim:"+string(dim)) file_text_writeln(f) show_message(string(dim-2)) for(a=2;a<=dim;a+=1) {i=tile_list[a] text=string(tile_get_alpha(i))+"/"+string(tile_get_background(i))+"/"+string(tile_get_blend(i))+"/"+string(tile_get_depth(i))+"/"+string(tile_get_height(i))+"/"+string(tile_get_left(i))+"/"+string(tile_get_top(i))+"/"+string(tile_get_visible(i))+"/"+string(tile_get_width(i))+"/"+string(tile_get_x(i))+"/"+string(tile_get_xscale(i))+"/"+string(tile_get_y(i))+"/"+string(tile_get_yscale(i))+"/" file_text_write_string(f,text) file_text_writeln(f)} file_text_close(f)
**-----------------------------------** //import_tile(fname) var f,a,dim,i,t,_; f=file_text_open_read(argument0) file_text_readln(f) a=file_text_read_string(f) dim=real(string_copy(a,5,string_length(a)-4)) file_text_readln(f) for(i=1;i<=dim;i+=1) //pour chaque ligne-tile {a=file_text_read_string(f) file_text_readln(f) for(t=1;t<=13;t+=1)//pour chaque valeur a prendre { /////////////////// var sep_pos; var sep_pos_end; var str; str=a sep_pos=0;
repeat t-1 { sep_pos=string_pos('/',str) str=string_copy(str,sep_pos+1,string_length(str)-(sep_pos)) } sep_pos_end=string_pos('/',str) __= real(string_copy(str,0,sep_pos_end-1))
/////////////////// temp[t]=__//real(string_copy(a,index,index+length-1))
//dans temp[]il y a toutes les valeurs l'une après l'autre }//fin d'une ligne _=tile_add(temp[2],temp[6],temp[7],temp[9],temp[5],temp[10],temp[12],temp[4]) tile_set_alpha(_,temp[1]) tile_set_blend(_,temp[3]) tile_set_scale(_,temp[11],temp[13]) }//fin de chaque ligne file_text_close(f)
|
_________________ Click for a free cookie |
|
Topaze22 *Excellent utilisateur*

Age : 22 Inscrit le : 22 Déc 2006 Messages : 4029 Localisation : Pas loin de Playboy et Bubu : ────────── : Projet Actuel : Paper Mario (intermédiaire) Avancement :
  (100/100)
| Sujet: Re: import/export de tiles Mer 19 Mar - 15:52 | |
| Si le temps d'importe+exporte<0.1 seconde, alors je suis preneur. Meme si ce n'est pas le cas, je suis preneur.
Avec ça, je pourrais faire un énorme gain de performance. et en plus, room de taille gigantesque. _________________ Merci à la communauté du CBNA pour son soutient Mon unique projet depuis bientôt 3 ans :
 |
|
M@d_Doc Modérateur 'Programmation'

Age : 18 Inscrit le : 12 Fév 2005 Messages : 4086 Localisation : 47°44'8.04 : ────────── : Projet Actuel : trouver un contrat Avancement :
  (100/100)
| Sujet: Re: import/export de tiles Mer 19 Mar - 16:07 | |
| et ben sert toit alors :p _________________ Click for a free cookie |
|