Text im Text einfärben?
-
-
Geht einfach nicht, die einzige Möglichkeit ist die bereits von dir erwähnte."Die Erde ist ein Irrenhaus. Dabei könnte das bis heute erreichte Wissen der Menschheit aus ihr ein Paradies machen. Dafür müsste die weltweite Gesellschaft allerdings zur Vernunft kommen."
- Joseph Weizenbaum -
-
ich mach meine texte jetz auch immer mit sprites... als sprite kann man den text einfach besser gestalten.. und so groß sind die sprites auch nicht.Dieser Beitrag wurde bereits 1909 mal editiert, zuletzt von »Sharivari« (Morgen, 19:89)
-
also wenn man viel text benutzt, sollte man sich die zeit schon nehmen und es einzeln einfärben, da das game sonst einfach eine überdimensionale grösse annimmt.█████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
█████ ███████ ███ your █████ ████ government. -
es gibt ein script, ich weiß nur gerade nicht wie es heißt, man ruft dann das script draw_text_parsed auf. dort kann man dann mit /c(R,G,B) direkt die farbe ändern, aber auch mit /f(font) die schriftart und ein zeileunbruch kann dann mit /n statt mit # gemacht werden.
//Irgednwie funzt der Link net wo ich es her hab. Gebt einfach mal in der GMC-Suche "draw_text_parsed" ein, wenn ihr den ganzen Beitrag sehen wollt.
Hier also der Code:
GML-Quellcode
- /*
- *argument0: x
- *argument1: y
- *argument2: text
- */
- var text,_x,_y,sprite,ntxt,col,alpha;
- _x=argument0;
- _y=argument1;
- text=argument2;
- sprite=argument3;
- ntxt="";
- col=c_white;
- alpha=1;
- while(true)
- {
- if(string_length(text)==0)
- exit;
- if(string_copy(text,1,1)!="/")
- {
- //DRAW TEXT//
- if(string_count('/',text)!=0)
- ntxt=string_copy(text,1,string_pos("/",text)-1);
- else
- ntxt=text;
- text=string_delete(text,1,string_length(ntxt));
- draw_text_color(_x,_y,ntxt,col,col,col,col,alpha);
- _x+=string_width(ntxt);
- }
- else
- {
- //PARSING//
- text=string_delete(text,1,1);
- switch(string_copy(text,1,1))
- {
- case "#":
- case "n": { //NEW LINE//
- text=string_delete(text,1,1);
- _y+=string_height("A");
- _x=argument0;
- } break;
- case "c": { //COLOR CHANGE//
- text=string_delete(text,1,2);
- var r,g,b;
- r=string_copy(text,1,string_pos(',',text)-1);
- text=string_delete(text,1,string_length(r)+1);
- g=string_copy(text,1,string_pos(',',text)-1);
- text=string_delete(text,1,string_length(g)+1);
- b=string_copy(text,1,string_pos(')',text)-1);
- text=string_delete(text,1,string_length(b)+1);
- col=make_color_rgb(real(r),real(g),real(b));
- } break;
- case "f": { //FONT CHANGE//
- text=string_delete(text,1,2);
- var font;
- font=string_copy(text,1,string_pos(')',text)-1);
- text=string_delete(text,1,string_length(font)+1);
- execute_string("draw_set_font(" + font +");");
- } break;
- case "a": { //ALPHA CHANGE//
- text=string_delete(text,1,2);
- var talpha;
- talpha=string_copy(text,1,string_pos(')',text)-1);
- text=string_delete(text,1,string_length(talpha)+1);
- alpha=real(talpha);
- } break;
- //ADD OWN CODE HERE//
- }
- }
- }
“Computers are good at following instructions, but not at reading your mind.” (Donald Knuth)
Ich schreibe mit Neo.Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Bottleneck ()