mob
verb/Private()
set src = usr
var/list/Menu = list()
for(var/mob/T in world)if(T.name!=usr.name && T.client) Menu.Add(T)
var/M = input("Who would you wish to whisper to?","Whisper to whom?") in Menu + list("Cancel")
if(M == "Cancel")return
var/mob/recip = M
var/msg=input("What do you wish to whisper to [M]?")as text
if(!recip || !msg) return // do nothing
msg = html_encode(msg) // strip out HTML
recip << "<B>\[From <A HREF='?private&src=\ref[usr]'>[name]</A>\]</B> [msg]"
usr << "<B>\[To <A HREF='?private&src=\ref[recip]'>[recip]</A>\]</B> [msg]"
client/Topic(href, list/href_list, hsrc)
if("private" in href_list)
if(!hsrc) return
usr = mob
var/msg = input("Send private message to [hsrc]:", "Message") as null|text
if(msg) mob.Private(hsrc,msg)
return
..()
Problem description: My problem is that when a player clicks on the link to reply, it brings up three input boxes. The first input asks the recipient what they wish to respond to sender. Right after the first input box, the second input box brings up the list of online players and asks the recipient who they wish to respond to. finally, the third one asks the recipient what they want to say to person chosen from the list. I just want the first box input box to appear and thats it.
-Thanks in advance.
I'd do something like mob.Private(hsrc,msg,reply = 1) and have it pass to Private() as Private(recip,msg,reply). Then have and if() statement check if it's a reply, if it is send the message, else ask to input a recip and message.
Not sure if I explained that right, or if it's correct. That would be my work-around though. Hope it helps.