Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ changes
*.rsc
*.int
*.lk
Chatters.zip
data/saves/logs
data/saves/channels
packet
Expand Down
120 changes: 120 additions & 0 deletions Chatters.dme
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,126 @@
// END_INTERNALS
// BEGIN_FILE_DIR
#define FILE_DIR .
#define FILE_DIR ".git"
#define FILE_DIR ".git/hooks"
#define FILE_DIR ".git/info"
#define FILE_DIR ".git/logs"
#define FILE_DIR ".git/logs/refs"
#define FILE_DIR ".git/logs/refs/heads"
#define FILE_DIR ".git/logs/refs/remotes"
#define FILE_DIR ".git/logs/refs/remotes/origin"
#define FILE_DIR ".git/objects"
#define FILE_DIR ".git/objects/02"
#define FILE_DIR ".git/objects/05"
#define FILE_DIR ".git/objects/08"
#define FILE_DIR ".git/objects/10"
#define FILE_DIR ".git/objects/12"
#define FILE_DIR ".git/objects/14"
#define FILE_DIR ".git/objects/17"
#define FILE_DIR ".git/objects/18"
#define FILE_DIR ".git/objects/1b"
#define FILE_DIR ".git/objects/1c"
#define FILE_DIR ".git/objects/1f"
#define FILE_DIR ".git/objects/25"
#define FILE_DIR ".git/objects/28"
#define FILE_DIR ".git/objects/29"
#define FILE_DIR ".git/objects/38"
#define FILE_DIR ".git/objects/3a"
#define FILE_DIR ".git/objects/3b"
#define FILE_DIR ".git/objects/40"
#define FILE_DIR ".git/objects/46"
#define FILE_DIR ".git/objects/4a"
#define FILE_DIR ".git/objects/4c"
#define FILE_DIR ".git/objects/50"
#define FILE_DIR ".git/objects/56"
#define FILE_DIR ".git/objects/5c"
#define FILE_DIR ".git/objects/5d"
#define FILE_DIR ".git/objects/5e"
#define FILE_DIR ".git/objects/65"
#define FILE_DIR ".git/objects/6b"
#define FILE_DIR ".git/objects/6f"
#define FILE_DIR ".git/objects/76"
#define FILE_DIR ".git/objects/78"
#define FILE_DIR ".git/objects/79"
#define FILE_DIR ".git/objects/80"
#define FILE_DIR ".git/objects/88"
#define FILE_DIR ".git/objects/92"
#define FILE_DIR ".git/objects/9d"
#define FILE_DIR ".git/objects/a2"
#define FILE_DIR ".git/objects/ac"
#define FILE_DIR ".git/objects/b2"
#define FILE_DIR ".git/objects/b7"
#define FILE_DIR ".git/objects/c1"
#define FILE_DIR ".git/objects/ce"
#define FILE_DIR ".git/objects/db"
#define FILE_DIR ".git/objects/de"
#define FILE_DIR ".git/objects/e1"
#define FILE_DIR ".git/objects/e9"
#define FILE_DIR ".git/objects/ea"
#define FILE_DIR ".git/objects/f0"
#define FILE_DIR ".git/objects/pack"
#define FILE_DIR ".git/refs"
#define FILE_DIR ".git/refs/heads"
#define FILE_DIR "code"
#define FILE_DIR "code/controllers"
#define FILE_DIR "code/controllers/managers"
#define FILE_DIR "code/libraries"
#define FILE_DIR "code/libraries/rc5"
#define FILE_DIR "code/libraries/s_smiley"
#define FILE_DIR "code/libraries/swapmaps"
#define FILE_DIR "code/libraries/syntaxhighlighter"
#define FILE_DIR "code/libraries/test"
#define FILE_DIR "code/libraries/texthandling"
#define FILE_DIR "code/libraries/xml"
#define FILE_DIR "code/libraries/zipfile"
#define FILE_DIR "code/models"
#define FILE_DIR "code/models/chatter"
#define FILE_DIR "code/models/painter"
#define FILE_DIR "code/views"
#define FILE_DIR "code/views/color"
#define FILE_DIR "code/views/games"
#define FILE_DIR "code/views/help"
#define FILE_DIR "code/views/open_chan"
#define FILE_DIR "code/views/ops"
#define FILE_DIR "code/views/paint"
#define FILE_DIR "code/views/set"
#define FILE_DIR "code/views/set/style"
#define FILE_DIR "data"
#define FILE_DIR "data/saves"
#define FILE_DIR "data/saves/channels"
#define FILE_DIR "data/saves/logs"
#define FILE_DIR "data/sndfx"
#define FILE_DIR "data/xml"
#define FILE_DIR "data/xml/help"
#define FILE_DIR "data/xml/help/topics"
#define FILE_DIR "data/xml/help/topics/1"
#define FILE_DIR "data/xml/help/topics/1/1"
#define FILE_DIR "data/xml/help/topics/1/2"
#define FILE_DIR "data/xml/help/topics/4"
#define FILE_DIR "data/xml/help/topics/4/2"
#define FILE_DIR "data/xml/help/topics/4/3"
#define FILE_DIR "data/xml/help/topics/4/3/1"
#define FILE_DIR "data/xml/help/topics/4/3/4"
#define FILE_DIR "data/xml/help/topics/4/8"
#define FILE_DIR "data/xml/help/topics/5"
#define FILE_DIR "data/xml/ops"
#define FILE_DIR "data/xml/ops/privileges"
#define FILE_DIR "data/xml/ops/ranks"
#define FILE_DIR "data/xml/quotes"
#define FILE_DIR "resources"
#define FILE_DIR "resources/icons"
#define FILE_DIR "resources/icons/atoms"
#define FILE_DIR "resources/icons/paint"
#define FILE_DIR "resources/icons/smileys"
#define FILE_DIR "resources/images"
#define FILE_DIR "resources/images/hangman"
#define FILE_DIR "resources/images/interface"
#define FILE_DIR "resources/images/interface/arrows"
#define FILE_DIR "resources/images/interface/locks"
#define FILE_DIR "resources/images/menu"
#define FILE_DIR "resources/images/smileys"
#define FILE_DIR "resources/maps"
#define FILE_DIR "resources/notes"
// END_FILE_DIR
#define FILE_DIR "resources"

Expand Down
3 changes: 0 additions & 3 deletions code/_global.dm
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,6 @@
// File Size Limit
#define MAX_FILE_SIZE 5242880 // 5 Megabytes

// telnet echo ON
#define VERBOSE 1

// Used to enable debugging output with debug()
#define DEV_DEBUG

Expand Down
29 changes: 12 additions & 17 deletions code/client.dm
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

client
authenticate = 0
perspective = EDGE_PERSPECTIVE
Expand All @@ -13,19 +12,15 @@ client


Command(command)
if(ChatMan.istelnet(key) && VERBOSE) //verbose
src << "<font color='purple'>[command]</font>"

var pos = findtext(command, " ")
var cmd = copytext(command, 1, pos)
var params
if(pos) params = copytext(command, pos + 1)
for(var/v in mob.verbs)
if(ckey(cmd) == ckey(v:name))
call(mob, v:name)(params)
..(command)

verb
who()
var /mob/chatter/c = mob
c.Chan.UpdateWho()
var/success=0
if(findtext(command,"/",1,2))
var/pos = findtext(command, " ")
var/cmd = copytext(command, 2, pos)
var/params
if(pos) params = copytext(command, pos + 1)
for(var/v in mob.verbs)
if(ckey(cmd) == ckey(v:name))
call(mob, v:name)(params)
success=1
if(!success && telnet) call(mob, "Say")(command)
..(command)
12 changes: 1 addition & 11 deletions code/controllers/managers/gameman.dm
Original file line number Diff line number Diff line change
Expand Up @@ -23,22 +23,12 @@ GameManager

UpdateWho(Channel/Chan)
if(!Chan || !Chan.players || !Chan.players.len) return
//telnet update who
var chatter_array[] = list()
for(var/mob/chatter/C in Chan.players)
chatter_array += "[dd_replacetext(C.name, " ", "+")][C.afk ? "~" : ""]"
var display = dd_list2text(chatter_array, ",")


for(var/mob/chatter/C in Chan.players)

var/players = 0
var/idle = 0

if(ChatMan.istelnet(C.key))
C << ".who [display]"

else
if(!ChatMan.istelnet(C.key))
for(var/i=1, i<=Chan.players.len, i++)
var/mob/chatter/c = Chan.players[i]
if(C.client) winset(C, "games_who.grid", "current-cell=1,[i]")
Expand Down
24 changes: 8 additions & 16 deletions code/models/channel.dm
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,8 @@ Channel
if(C.show_title)
if(C.show_colors)
C << output({"<span style='text-align: center;'><b>[TextMan.fadetext("##########################################",list("000000000","255000000","255255255"))]</b></span>
<span style='text-align: center;'><b><font color='#0000ff'>[world.name] - Created by Xooxer</font></b></span><span style='text-align: center;'><b><font color='#0000ff'>and the BYOND Community</font></b></span>
<span style='text-align: center;'><b><font color='#0000ff'>[world.name] - Created by Xooxer</font></b></span>
<span style='text-align: center;'><b><font color='#0000ff'>and the BYOND Community</font></b></span>
<span style='text-align: center;'><b>[TextMan.fadetext("Still the greatest chat program on BYOND!", list("102000000","255000000","102000000","000000000","000000255"))]</b></span>
<span style='text-align: center;'>Source available on the <a href='http://www.github.com/kevans91/Chatters/'>Chatters Repository</a>.</span>
<span style='text-align: center;'>Copyright � 2008 Andrew "Xooxer" Arnold</span>
Expand All @@ -196,7 +197,8 @@ Channel

else
C << output({"<span style='text-align: center;'><b>##########################################</b></span>
<span style='text-align: center;'><b>[world.name] - Created by Xooxer</b></span><span style='text-align: center;'><b>and the BYOND Community</b></span>
<span style='text-align: center;'><b>[world.name] - Created by Xooxer</b></span>
<span style='text-align: center;'><b>and the BYOND Community</b></span>
<span style='text-align: center;'><b>Still the greatest chat program on BYOND!</b></span>
<span style='text-align: center;'>Source available on the <a href='http://www.github.com/kevans91/Chatters/'>Chatters Repository</a>.</span>
<span style='text-align: center;'>Copyright � 2008 Andrew "Xooxer" Arnold</span>
Expand Down Expand Up @@ -256,21 +258,11 @@ Channel

UpdateWho()

//telnet update who
var chatter_array[] = list()
for(var/mob/chatter/C in chatters)
chatter_array += "[dd_replacetext(C.name, " ", "+")][C.afk ? "~" : ""]"
var display = dd_list2text(chatter_array, ",")


for(var/mob/chatter/C in chatters)

var/active = chatters.len

if(ChatMan.istelnet(C.key))
C << ".who [display]"

else
if(!ChatMan.istelnet(C.key))
for(var/i=1, i<=chatters.len, i++)
var/mob/chatter/c = chatters[i]
if(isnull(c))
Expand Down Expand Up @@ -478,11 +470,11 @@ Channel
for(var/mob/chatter/c in chatters)
if(!(c.ignoring(C) & CHAT_IGNORE))
if(!c.filter)
c << output("[c.ParseTime()] <font color=[C.name_color]>[C.name]</font> is now <b>AFK</b>. (Reason: [raw_msg])", "[ckey(name)].chat.default_output")
c << output("[c.ParseTime()] [c.show_colors ? "<font color=[C.name_color]>[C.name]</font>" : "[C.name]"] is now <b>AFK</b>. (Reason: [raw_msg])", "[ckey(name)].chat.default_output")
else if(c.filter == 1)
c << output("[c.ParseTime()] <font color=[C.name_color]>[C.name]</font> is now <b>AFK</b>. (Reason: [TextMan.FilterChat(raw_msg,c)])", "[ckey(name)].chat.default_output")
c << output("[c.ParseTime()] [c.show_colors ? "<font color=[C.name_color]>[C.name]</font>" : "[C.name]"] is now <b>AFK</b>. (Reason: [TextMan.FilterChat(raw_msg,c)])", "[ckey(name)].chat.default_output")
else
c << output("[c.ParseTime()] <font color=[C.name_color]>[C.name]</font> is now <b>AFK</b>. (Reason: [msg])", "[ckey(name)].chat.default_output")
c << output("[c.ParseTime()] [c.show_colors ? "<font color=[C.name_color]>[C.name]</font>" : "[C.name]"] is now <b>AFK</b>. (Reason: [msg])", "[ckey(name)].chat.default_output")
C << output("Your activity status is now set to Away From Keyboard.", "[ckey(name)].chat.default_output")


Expand Down
Loading