ID:147271
 
after reading a very useful post by loduwijk, i was able to write this code for my on screen texts:
obj/window/text
icon='text.dmi'
layer=MOB_LAYER+2
mob/proc/textonscreen(var/Tloc,yloc)
var
T=src.Txt
xloc=1
Tlen=length(T)
do
var/obj/window/text/F=new(src.client)
F.screen_loc="[xloc+Tloc],[yloc]"
F.icon_state=copytext(T,xloc,xloc+1)
client.screen+=F
xloc++
while(xloc<=Tlen)

the only thing is.. i cant think of a way to make the letters close together. i tried:
obj/window/text
icon='text.dmi'
layer=MOB_LAYER+2
mob/proc/textonscreen(var/Tloc,yloc)
var
T=src.Txt
xloc=1
Tlen=length(T)
do
var/obj/window/text/F=new(src.client)
F.screen_loc="[xloc+Tloc],[yloc]"
F.icon_state=copytext(T,xloc,xloc+1)
client.screen+=F
if(xloc>1)
F.screen_loc="[xloc+Tloc]:-[16*(xloc-1)],[yloc]"
xloc++
while(xloc<=Tlen)

but when xloc=ten there was a huge gap in the words.. so anyway if anyone can help me i would really appreciate it.
Hmm. This is a wild guess, and probably isn't right at all, but it *might* have something to do with the fact that pixel_x is limited to values of -127 to 128. I'm not sure whether or not the screen_loc pixel offsets are bound by the same restriction. Try adjusting it so that you get a similar result but your offset is never less than -16, perhaps something like this (untested): "[xloc+round(Tloc/2,1)]:[-16*(xloc%2)],[yloc]"

Hmm... thinking about it again, I'm probably wrong about that. Sorry. =P Worth a try though, and I can't think of anything else at the moment.
In response to Crispy
aha. i fixed it. what i did was i made the var/offset that would decrease by 16 every time the proc looped around.. when it got to -128 i made it to where the offset=0 and just subtracted 4 from Tloc. that works really well for the part about making the letters drop to the next line because all i had to do was make a variable to count the times i had to reset the offset and after it did it three times i subtracted 12 from the Tloc and 1 from the yloc and reset everything else. thanks for making me realise the problem crispy.

(i know TMI lol..)