12:30

Posted by s on Nov. 11, 2007, 11:36 p.m.

Note to self if I forget…

Submit the Tbox example of GMsex

NOW WITH WORDWRAP THAT WORKS(almost)

…now to just fill out that form

8

Comments

FireflyX 17 years, 10 months ago

GMsex? That doesn't sound right..

PY 17 years, 10 months ago

Textbox? GMSex?

Is this your porn simulator?

s 17 years, 10 months ago

No, Obel wanted a Tbox engine that had markup and the like and so called it sex

Thus, it I named it GMsex

FireflyX 17 years, 10 months ago

I guess me and phazon just have dirty minds XD

PY 17 years, 10 months ago

Yeah, we must…

I've never managed a textbox w/ tags and leter-by-letter typing,how are you doing it?Or should I shut up and look at the damn example?

s 17 years, 10 months ago

Just read the messy 28line code

PY 17 years, 10 months ago

28 lines?

I'm missing something that's blatently obvious here, arn't I?

Or are you using sufaces? My old one did that, but broked itself, and isn't 3D friendly…

s 17 years, 10 months ago

psst

//<=bold {=ulne }=strk [=color
var _x,_y,_c,_i,_v,_b,_u,_s;_x=0;_y=0;_c=-1;_i=0;_v=0;_b=0;_u=0;_s=0//Don't ask?
if keyboard_check(vk_space)||mouse_check_button(mb_left){fout=1}//local variable,skips smoothly
if fout{alpha=max(alpha-0.08,0)}else{alpha=min(alpha+0.04,1)}
draw_sprite_ext(tbox,0,view_xview+32,view_yview+32,1,1,0,-1,alpha)
if alpha<.8{exit}
siz=min(siz+2,string_length(argument0))//how fast it scrolls through the text
repeat(siz){
if string_char_at(argument0,_i)=" "{_v=0;do{_v+=1}until string_char_at(argument0,_i+_v)=" "||_i+_v=string_length(argument0)}
if _x+string_width(string_copy(argument0,_i,_v))>432||string_char_at(argument0,_i)="#"{
_x=0;_y+=string_height(" ")
if!(_y mod(string_height(" ")*6)){
if _y>page*100{page+=1;do{io_handle()}until mouse_check_button(mb_any)||keyboard_check(vk_anykey)}
draw_sprite(tbox,0,view_xview+32,view_yview+32)
}}
_v=0
_x+=string_width(string_char_at(argument0,_i-1))
switch string_char_at(argument0,_i){
case"[":_c=make_color_rgb(real(string_copy(argument0,_i+1,3)),real(string_copy(argument0,_i+4,3)),real(string_copy(argument0,_i+7,3)));_i+=10;break//ColoringRRRGGGBBB
case"<":_b=!_b;_i+=1;break//bold
case"{":_u=!_u;_i+=1;break//underline
case"}":_s=!_s;_i+=1}//strikethrough
draw_set_color(_c);draw_text(_x+40,_y mod 100+48,string_char_at(argument0,_i))
if _b{draw_text(_x+41,_y mod 100+49,string_char_at(argument0,_i))}
if _u{draw_line(_x+40,_y mod 100+string_height(" ")+46,_x+string_width(string_char_at(argument0,_i))+40,_y mod 100+string_height(" ")+46)}
if _s{draw_line(_x+40,_y mod 100+string_height(" ")/2+48,_x+string_width(string_char_at(argument0,_i))+40,_y mod 100+string_height(" ")/2+48)}
_i+=1}
return!alpha[/code]And of course,my classic ini[code]alpha=.03
siz=0
fout=0
draw=0
page=1[/code]I should comment those, but I think they explain themselves well enough. But anyways, have the draw code[code]if!draw{draw=txt("SKEWER YAY!!!!!!!This the <text box< thing in fin }VeRsIoN!!!} erg...{what to fill it up with{....?[180120053uhh hhhhhhhh hhhhhh hhhh hhhhhhh hhhhhhhh hhhhhhh h h h h[255255255 YA!!!11!11 !!!11!!!!!#NO WAI!!!!!! !!!!!ZOMG AUTO WORD WRAP#Ha,so ya you CAN make the stuff go down low with Shift+3,but.....#Well,seems I have to add <MORE< TEXT!!!Geez...how often is scrolling REALLY gna be used???#NVR!!!!!!!!!!! ya,so anyways...#{o ye}s,<be[123456789 jolly!!!!11!1!11!!1#I like this tone of greenishly yellowed green#DONT YOU?YOU BETTER FOR I SAY YOU DO!1111!11Yes,LOWER CASE WILL PWN JOR ASS#Yes,I'm ranting.Yes,this WordWrap makes you see EVERY DANG LETTER THAT I DON'T NLINE MESELF.Yes,this hashle dabble would be better off explaining the system but oh how I tire of fiddling in there#FINE!!![128255255##{ } <First I initilize local variables which are later to be slowly altered throughout the script.Using a siz variable,I loop that amount to jump characters by.From there I increase the page variable as the _y goes beyond 100#(rounded around with the PageID so to increase the value each page)#For the MarkUp,I just use a case statement before drawing on a similar effect#The <bold< effect looks cool so stfu or gtfo#Anyways,I just go through the string recursively until I reach the end#The shifty wordwrap does a _v+=1 loop to find the next space#It checks the string width and if it was above the boundary,acts as if there is a Shift+3#(You can make the parser detect the  thing by having it do an && check for  on the shift3 check)#So yes,WordWrap is buggy#You can remove it by taking out the ' ' loop check and width check[")}//The final [ is to stop a color stretch.Take it out to see what I mean
Now go have fun with using ini however you do feel

Also, if you get past the Tcan in Kibosh, PM me

Bryan 17 years, 9 months ago

Does the wrapping work with bold texts?

PY 17 years, 9 months ago

Holy wow. Longeh! ish. not really.

Still, I'll cheque it out.

(I'm a bit crap at Kibosh, really, but I'm getting better!)