@verb #4980:"hannounce_all hannounce_all_but" any any any rxd #9223 @program #4980:"hannounce_all hannounce_all_but" any any any "also called announce_all_but" "here we go" "objectives..." "2. Telnet text to all room telnetters [location:announce_all/but]" "5. Telnet text to all room hyperlisted [location:announce_all/but]" "8. unstyled hypertext to all room hyperlisted [1883:hannounce_all/but]" " 8a. Notify room telnetters of hyperspew." "11. styled hypertext to all room hyperlisted [1883:hannounce_all/but]" " 11a. Notify room telnetters of hyperspew." "NEW01: If styleref, but not '<' first, tell both moozers and telnetters!" this.owner:tell(verb, " args -> ", toliteral(args)) {styleref, text} = args actives = {} roomhypers = {} roomtelies = {} actives = roomtelies = $set_utils:intersection(connected_players(), player.location.contents) "anyone to talk to in room?" if (!actives) player:tell(verb, " reports no connected players in room! (args[1]) ") this.owner:tell(verb, " no connected players in room!", toliteral(args[1])) return endif "separate in-room moozillites from telnetters" for active in (roomtelies) if (this:is_hyper(active)) roomhypers = listappend(roomhypers, active) roomtelies = setremove(roomtelies, active) endif endfor "Here's some weirdness for us." itsHTML = 0 itsBOTH = 0 this.owner:tell(verb, " text->", text) "moo canada, here we go!" text = $html_utils:de_literal_text(text) if (index(text, "<") == 1) this.owner:tell(verb, " index to LT found!") itsHTML = 1 itsBOTH = 0 elseif (styleref) this.owner:tell(verb, " styleref found!") itsHTML = 1 itsBOTH = 1 else this.owner:tell(verb, " index to LT NOT found! Not hypertext!") endif "if no moozilla users in room - reject" if (itsHTML && !roomhypers) player:tell(verb, " reports no hyperfolk in room! (args[1]) ") this.owner:tell(verb, " no hyperfolk in room! ", toliteral(args[1])) return endif "If we're here, there must be moozers in room, listed in roomhypers" "remove the caller from roomhypers list IF verbname has a 'but'. :)" if (verb == "hannounce_all_but") `roomhypers = setremove(roomhypers, player) ! ANY' endif if (itsHTML) "objectives 8, 8a, 11, 11a, NEW01" this.owner:tell(verb, " - itshtml!") if (styleref) this.owner:tell(verb, " - stylereffed!") "objective 11" if (typeof(styleref) == $INT) style = this.stylesystem:get_style_by_id(styleref)[2] elseif (typeof(styleref) == $STR) style = this.stylesystem:get_style_by_class(styleref)[2] else player:tell(verb, " reports no such style found! (args[1]) ") this.owner:tell(verb, " style lookup failure! ", toliteral(args[1])) return endif "objective 11" "set wrapper element" opencontainer = $html_utils:de_literal_text("") closecontainer = $html_utils:de_literal_text("") for target in (roomhypers) target:tell(opencontainer + text + closecontainer) endfor "objective 11a and NEW01 objective" if (itsBOTH) this.owner:tell(verb, " - itsboth!") for target in (roomtelies) target:tell(text) endfor else this.owner:tell(verb, " - NOTboth!") for target in (roomtelies) target:tell($string_utils:nn(player), " just spewed ", length(text), " bytes of hyperpuke. (Not shown. You're not in hyper mode.)") endfor endif else "objective 8" this.owner:tell(verb, " obj 8 .. no styleref!") "set wrapper element" for target in (roomhypers) target:tell(text) endfor "objective 8a" for target in (roomtelies) target:tell($string_utils:nn(player), " just spewed ", length(text), " bytes of hyperpuke. (Not shown. You're not in hyper mode.)") endfor endif else this.owner:tell(verb, " - NOThtml!") "NOT HTML!!!" "objectives..." "2. Telnet text to all room telnetters [location:announce_all/but]" "5. Telnet text to all room hyperlisted [location:announce_all/but]" for target in (actives) target:tell(text) endfor endif "Last modified by Dax (#789) on Tue May 3 13:43:10 2005 MDT." .