ID:145284
 
Code:
proc
Left(t, n) return copytext(t, length(t)-n+1, length(t)-n+2)

mob
verb
AddText(T as text, X as num, Y as num)
var/pix_offset = 0
var/piy_offset = 0
var/i
T = T + " "
var/LengthX = 0
// var/YRow = 0
for(i = length(T),i > 1, i--)
var/Char = Left(T,i)
world << Char // Testing

pix_offset += 8
if(pix_offset <= 16) {X += 1; pix_offset = 0}

if(LengthX <= 5) {Y +=1; LengthX = 0}
LengthX += 1

if(Char == " ") continue
else
var/path = text2path("/obj/OnScreen/Alphabet/[Char]")
world << path // test
src.client.screen += new path(null, src.client.screen, X, Y, pix_offset, piy_offset)


obj/OnScreen
Alphabet
icon='Text.dmi'
New(l, SRC, X, Y, Piy_Offset, Pix_Offset)
icon_state = lowertext(name)
SRC += src
world << icon_state
screen_loc = "[X]:[Pix_Offset],[Y]:[Piy_Offset]"


Problem description:

Well, everything goes through, but the letters are not placed. I've checked the icon_states and it should work. Any problems? No errors, no nothing. =\
I might be missing something, but where did you define the name?
In response to Justin B
Names for letters? they're all under obj/OnScreen/Alphabet. At first they were all lowercase aand that gave me "the [letter]" so i made it to uppercase and within New I changed its iconstate to lowercase, since i can define it right in there and save me some time.
In response to Mechanios
Oh, I missed the text2path part, sorry :-/