Invité Invité
| Sujet: draw_spiral() [MAJ] Jeu 7 Mai 2009 - 22:39 | |
| Cette fonction vous permettra de dessiner des spirales complétement personnalisables. En espérant que ça vous sera utile. Liste d'arguments :x : position X y : position Y radius : rayon initial du point central spacing : espacement qui sépare chaque "tour" de la spiral turns : nombre de tours steps : nombre d'itérations width : épaisseur de la spirale angle : angle de rotation direction : 1 = sens inverse des aiguilles d'une montre c1,c2,c3,c4 : couleurs a1,a2 : alpha (transparence) - Spoiler:
//draw_spiral(x,y,radius,spacing,turns,steps,width,angle,direction,c1,c2,c3,c4,a1,a2)
var xx,yy, rad,space,turn,step,width,angle,dir,cs,ce,cu,cd,alu,ald; var vx,vy,length, vc1, vc2;
xx=argument0 yy=argument1 rad=argument2 space=argument3 turn=argument4 step=max(3,argument5) width=argument6 angle=argument7 dir=1*sign(argument8)
c1=argument9 c2=argument10 c3=argument11 c4=argument12 a1=argument13 a2=argument14
vx=0 vy=0 vc1=0 vc2=0 length=0
{ for (i=1; i<=(360*turn)+(360/step); i+=360/step) { draw_primitive_begin(pr_trianglestrip) length+=(space/step)
vc1=merge_color(c1,c2,max(0,((i/(360/step))*(1/(step*turn)))-(1/(step*turn)))) vx=xx+lengthdir_x((rad+length)-(width/2),angle+(i-(360/step)))*dir vy=yy+lengthdir_y((rad+length)-(width/2),angle+(i-(360/step)))*dir draw_vertex_color(vx,vy,vc1,a1)
vc2=merge_color(c3,c4,max(0,((i/(360/step))*(1/(step*turn)))-(1/(step*turn)))) vx=xx+lengthdir_x((rad+length)+(width/2),angle+(i-(360/step)))*dir vy=yy+lengthdir_y((rad+length)+(width/2),angle+(i-(360/step)))*dir draw_vertex_color(vx,vy,vc2,a2)
vc1=merge_color(c1,c2,(i/(360/step))*(1/(step*turn))) vx=xx+lengthdir_x(((rad+length)+(space/step))-(width/2),angle+i)*dir vy=yy+lengthdir_y(((rad+length)+(space/step))-(width/2),angle+i)*dir draw_vertex_color(vx,vy,vc1,a1)
vc2=merge_color(c3,c4,(i/(360/step))*(1/(step*turn))) vx=xx+lengthdir_x(((rad+length)+(space/step))+(width/2),angle+i)*dir vy=yy+lengthdir_y(((rad+length)+(space/step))+(width/2),angle+i)*dir draw_vertex_color(vx,vy,vc2,a2) draw_primitive_end() } } Aperçu :
Dernière édition par shm3A012B42FE3 le Ven 29 Avr 2011 - 14:49, édité 5 fois |
|
nicoulas *Excellent utilisateur*
Messages : 6030 Localisation : Dordogne Projet Actuel : Croustaface Tower Defense
| Sujet: Re: draw_spiral() [MAJ] Jeu 7 Mai 2009 - 22:43 | |
| Woaw sympatoche, encore une fois, beau boulot shm Juste un truc, le script dans ton exemple s'appelle draw_spiral au lieu de draw_spirale donc ça affiche une erreur unknow script or function. Faudrait que tu fixe ça pour les prochains qui downloaderons |
|
Invité Invité
| Sujet: Re: draw_spiral() [MAJ] Jeu 7 Mai 2009 - 22:45 | |
| c'est fixé |
|
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: draw_spiral() [MAJ] Jeu 7 Mai 2009 - 23:14 | |
| ca c'est vraiment du bon boulot, tu as du galérer pour terminer a ca franchement, bravo |
|
Invité Invité
| Sujet: Re: draw_spiral() [MAJ] Jeu 28 Avr 2011 - 15:13 | |
| |
|
Invité Invité
| Sujet: Re: draw_spiral() [MAJ] Jeu 28 Avr 2011 - 15:26 | |
| Y a pas mal d'arguments, c'est personnalisable. J'aime bien. C'est parfait pour un screamer, un p'tit message "Fixer le centre" et c'est bon. |
|
Contenu sponsorisé
| Sujet: Re: draw_spiral() [MAJ] | |
| |
|