<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Module: Cmd</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
<script type="text/javascript">
// <![CDATA[
function popupCode( url ) {
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
}
function toggleCode( id ) {
if ( document.getElementById )
elem = document.getElementById( id );
else if ( document.all )
elem = eval( "document.all." + id );
else
return false;
elemStyle = elem.style;
if ( elemStyle.display != "block" ) {
elemStyle.display = "block"
} else {
elemStyle.display = "none"
}
return true;
}
// Make codeblocks hidden by default
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
// ]]>
</script>
</head>
<body>
<div id="classHeader">
<table class="header-table">
<tr class="top-aligned-row">
<td><strong>Module</strong></td>
<td class="class-name-in-header">Cmd</td>
</tr>
<tr class="top-aligned-row">
<td><strong>In:</strong></td>
<td>
<a href="../files/cmd/teensy/cmd_chat_rb.html">
cmd/teensy/cmd_chat.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_color_rb.html">
cmd/teensy/cmd_color.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_drop_rb.html">
cmd/teensy/cmd_drop.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_dumpcache_rb.html">
cmd/teensy/cmd_dumpcache.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_edit_rb.html">
cmd/teensy/cmd_edit.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_emote_rb.html">
cmd/teensy/cmd_emote.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_gc_rb.html">
cmd/teensy/cmd_gc.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_get_rb.html">
cmd/teensy/cmd_get.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_go_rb.html">
cmd/teensy/cmd_go.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_hello_rb.html">
cmd/teensy/cmd_hello.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_help_rb.html">
cmd/teensy/cmd_help.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_inv_rb.html">
cmd/teensy/cmd_inv.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_kill_rb.html">
cmd/teensy/cmd_kill.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_look_rb.html">
cmd/teensy/cmd_look.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_memstats_rb.html">
cmd/teensy/cmd_memstats.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_object_rb.html">
cmd/teensy/cmd_object.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_quit_rb.html">
cmd/teensy/cmd_quit.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_reload_rb.html">
cmd/teensy/cmd_reload.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_room_rb.html">
cmd/teensy/cmd_room.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_say_rb.html">
cmd/teensy/cmd_say.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_script_rb.html">
cmd/teensy/cmd_script.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_set_rb.html">
cmd/teensy/cmd_set.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_show_rb.html">
cmd/teensy/cmd_show.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_shutdown_rb.html">
cmd/teensy/cmd_shutdown.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_stats_rb.html">
cmd/teensy/cmd_stats.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_status_rb.html">
cmd/teensy/cmd_status.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_trigger_rb.html">
cmd/teensy/cmd_trigger.rb
</a>
<br />
<a href="../files/cmd/teensy/cmd_who_rb.html">
cmd/teensy/cmd_who.rb
</a>
<br />
<a href="../files/cmd/tiny/cmd_get_rb.html">
cmd/tiny/cmd_get.rb
</a>
<br />
<a href="../files/cmd/tiny/cmd_shutdown_rb.html">
cmd/tiny/cmd_shutdown.rb
</a>
<br />
</td>
</tr>
</table>
</div>
<!-- banner header -->
<div id="bodyContent">
<div id="contextContent">
<div id="diagram">
<map id="map" name="map">
<area shape="rect" coords="16,16,109,65" href="Cmd.html" alt="Cmd
" />
</map>
<img src="../dot/f_62.png" usemap="#map" border="0" alt="dot/f_62.png">
</div>
<div id="description">
<table>
<tr><td valign="top">file:</td><td>cmd_shutdown.rb
</td></tr>
<tr><td valign="top">author:</td><td>Jon A. Lambert
</td></tr>
<tr><td valign="top">version:</td><td>2.9.0
</td></tr>
<tr><td valign="top">date:</td><td>01/19/2006
</td></tr>
</table>
<p>
This source code copyright (C) 2005, 2006 by Jon A. Lambert All rights
reserved.
</p>
<p>
Released under the terms of the TeensyMUD Public License See LICENSE file
for additional information.
</p>
</div>
</div>
<div id="method-list">
<h3 class="section-bar">Methods</h3>
<div class="name-list">
<a href="#M000360">cmd_chat</a>
<a href="#M000361">cmd_color</a>
<a href="#M000362">cmd_drop</a>
<a href="#M000363">cmd_dumpcache</a>
<a href="#M000364">cmd_edit</a>
<a href="#M000368">cmd_emote</a>
<a href="#M000369">cmd_gc</a>
<a href="#M000391">cmd_get</a>
<a href="#M000370">cmd_get</a>
<a href="#M000371">cmd_go</a>
<a href="#M000372">cmd_hello</a>
<a href="#M000373">cmd_help</a>
<a href="#M000374">cmd_inv</a>
<a href="#M000375">cmd_kill</a>
<a href="#M000376">cmd_look</a>
<a href="#M000377">cmd_memstats</a>
<a href="#M000378">cmd_object</a>
<a href="#M000379">cmd_quit</a>
<a href="#M000380">cmd_reload</a>
<a href="#M000381">cmd_room</a>
<a href="#M000382">cmd_say</a>
<a href="#M000383">cmd_script</a>
<a href="#M000384">cmd_set</a>
<a href="#M000385">cmd_show</a>
<a href="#M000386">cmd_shutdown</a>
<a href="#M000392">cmd_shutdown</a>
<a href="#M000387">cmd_stats</a>
<a href="#M000388">cmd_status</a>
<a href="#M000389">cmd_trigger</a>
<a href="#M000390">cmd_who</a>
<a href="#M000365">edit_display</a>
<a href="#M000367">edit_parser</a>
<a href="#M000366">word_wrap</a>
</div>
</div>
</div>
<!-- if includes -->
<div id="section">
<!-- if method_list -->
<div id="methods">
<h3 class="section-bar">Public Instance methods</h3>
<div id="method-M000360" class="method-detail">
<a name="M000360"></a>
<div class="method-heading">
<a href="#M000360" class="method-signature">
<span class="method-name">cmd_chat</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
sends <message> to all characters in the game
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000360-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000360-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_chat.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_chat</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">""</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What are you trying to tell everyone?"</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-node">"[COLOR Magenta]You chat, \"#{args}\".[/COLOR]"</span>)
<span class="ruby-identifier">world</span>.<span class="ruby-identifier">connected_characters</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">pid</span><span class="ruby-operator">|</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">id</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">pid</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">pid</span>,<span class="ruby-identifier">:show</span>,
<span class="ruby-node">"[COLOR Magenta]#{name} chats, \"#{args}\".[/COLOR]"</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000361" class="method-detail">
<a name="M000361"></a>
<div class="method-heading">
<a href="#M000361" class="method-signature">
<span class="method-name">cmd_color</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
toggles colors on or off
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000361-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000361-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_color.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_color</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">sendto</span> <span class="ruby-ivar">@account</span>.<span class="ruby-identifier">toggle_color</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000362" class="method-detail">
<a name="M000362"></a>
<div class="method-heading">
<a href="#M000362" class="method-signature">
<span class="method-name">cmd_drop</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
drops all objects in your inventory into the room
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000362-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000362-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_drop.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_drop</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">objects</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">q</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">q</span>.<span class="ruby-identifier">id</span>,<span class="ruby-identifier">:drop</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000363" class="method-detail">
<a name="M000363"></a>
<div class="method-heading">
<a href="#M000363" class="method-signature">
<span class="method-name">cmd_dumpcache</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
Look command displays the contents of a room
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000363-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000363-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_dumpcache.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_dumpcache</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-constant">Engine</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">db</span>.<span class="ruby-identifier">inspect</span>)
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000364" class="method-detail">
<a name="M000364"></a>
<div class="method-heading">
<a href="#M000364" class="method-signature">
<span class="method-name">cmd_edit</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
@edits a string field on an object Syntax:
</p>
<pre>
@edit #<id> <field>
@edit sysmsg <field>
</pre>
<p>
(ex. @edit 1 desc
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000364-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000364-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_edit.rb, line 20</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_edit</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">""</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What??"</span>)
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/sysmsg\s+(\w+)/</span>
<span class="ruby-ivar">@mode</span> = <span class="ruby-identifier">:edit</span>
<span class="ruby-ivar">@editobj</span> = <span class="ruby-identifier">world</span>.<span class="ruby-identifier">msgs</span>
<span class="ruby-ivar">@editfield</span> = <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">intern</span>
<span class="ruby-ivar">@editstr</span> = <span class="ruby-identifier">world</span>.<span class="ruby-identifier">msgs</span>[<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">intern</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">edit_display</span>(<span class="ruby-ivar">@editstr</span>))
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/#(\d+)\s+(\w+)/</span>
<span class="ruby-identifier">o</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">o</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-constant">GameObject</span>, <span class="ruby-constant">Room</span>, <span class="ruby-constant">Character</span>, <span class="ruby-constant">Script</span>, <span class="ruby-constant">Exit</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">o</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">$2</span>) <span class="ruby-operator">&&</span>
<span class="ruby-identifier">o</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value str">"#$2="</span>) <span class="ruby-operator">&&</span>
<span class="ruby-identifier">o</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">$2</span>).<span class="ruby-identifier">class</span> <span class="ruby-operator">==</span> <span class="ruby-constant">String</span>
<span class="ruby-ivar">@mode</span> = <span class="ruby-identifier">:edit</span>
<span class="ruby-ivar">@editobj</span> = <span class="ruby-identifier">o</span>
<span class="ruby-ivar">@editfield</span> = <span class="ruby-identifier">$2</span>
<span class="ruby-ivar">@editstr</span> = <span class="ruby-identifier">o</span>.<span class="ruby-identifier">send</span> <span class="ruby-identifier">$2</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">edit_display</span>(<span class="ruby-ivar">@editstr</span>))
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Field #$2 not found on object."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No object."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What??"</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000368" class="method-detail">
<a name="M000368"></a>
<div class="method-heading">
<a href="#M000368" class="method-signature">
<span class="method-name">cmd_emote</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
sends <message> to all characters in the room
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000368-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000368-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_emote.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_emote</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">""</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What are you trying to emote?"</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-node">"You #{args}."</span>)
<span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">location</span>).<span class="ruby-identifier">characters</span>(<span class="ruby-identifier">id</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">p</span>.<span class="ruby-identifier">id</span>,<span class="ruby-identifier">:show</span>,<span class="ruby-node">"#{name} #{args}."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000369" class="method-detail">
<a name="M000369"></a>
<div class="method-heading">
<a href="#M000369" class="method-signature">
<span class="method-name">cmd_gc</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
This command runs garbage collection
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000369-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000369-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_gc.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_gc</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-constant">GC</span>.<span class="ruby-identifier">start</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Garbage collector run"</span>)
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000391" class="method-detail">
<a name="M000391"></a>
<div class="method-heading">
<a href="#M000391" class="method-signature">
<span class="method-name">cmd_get</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
gets all objects in the room into your inventory
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000391-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000391-source">
<pre>
<span class="ruby-comment cmt"># File cmd/tiny/cmd_get.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_get</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">location</span>).<span class="ruby-identifier">objects</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">q</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">q</span>.<span class="ruby-identifier">id</span>,<span class="ruby-identifier">:get</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000370" class="method-detail">
<a name="M000370"></a>
<div class="method-heading">
<a href="#M000370" class="method-signature">
<span class="method-name">cmd_get</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
gets all objects in the room into your inventory
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000370-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000370-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_get.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_get</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">location</span>).<span class="ruby-identifier">objects</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">q</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">q</span>.<span class="ruby-identifier">id</span>,<span class="ruby-identifier">:get</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000371" class="method-detail">
<a name="M000371"></a>
<div class="method-heading">
<a href="#M000371" class="method-signature">
<span class="method-name">cmd_go</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
sends <message> to all characters in the room
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000371-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000371-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_go.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_go</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">""</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Where do you want to go?"</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">ex</span> = []
<span class="ruby-identifier">ext</span> = <span class="ruby-keyword kw">nil</span>
<span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">location</span>).<span class="ruby-identifier">exits</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">exid</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">ext</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">exid</span>)
<span class="ruby-identifier">ex</span> = <span class="ruby-identifier">ext</span>.<span class="ruby-identifier">name</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">/;/</span>).<span class="ruby-identifier">grep</span>(<span class="ruby-node">/^#{args}/</span>)
<span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">ex</span>.<span class="ruby-identifier">empty?</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">ex</span>.<span class="ruby-identifier">empty?</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Can't find that place"</span>)
<span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">ex</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">1</span>
<span class="ruby-identifier">ln</span> = <span class="ruby-value str">"Which did you mean, "</span>
<span class="ruby-identifier">ex</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span> <span class="ruby-identifier">ln</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\'"</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">x</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\' "</span>}
<span class="ruby-identifier">ln</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"?"</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">ln</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">ext</span>.<span class="ruby-identifier">id</span>,<span class="ruby-identifier">:leave</span>, <span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000372" class="method-detail">
<a name="M000372"></a>
<div class="method-heading">
<a href="#M000372" class="method-signature">
<span class="method-name">cmd_hello</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
The hello social command
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000372-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000372-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_hello.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_hello</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">parse</span>(<span class="ruby-value str">"say hello"</span>)
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000373" class="method-detail">
<a name="M000373"></a>
<div class="method-heading">
<a href="#M000373" class="method-signature">
<span class="method-name">cmd_help</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
The help command
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000373-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000373-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_help.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_help</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">""</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"====================HELP======================="</span>)
<span class="ruby-identifier">world</span>.<span class="ruby-identifier">cmds</span>.<span class="ruby-identifier">to_hash</span>.<span class="ruby-identifier">values</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">h</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">"%-10s - %s"</span>, <span class="ruby-identifier">h</span>.<span class="ruby-identifier">name</span>, <span class="ruby-identifier">h</span>.<span class="ruby-identifier">help</span>))
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">q</span> = <span class="ruby-identifier">world</span>.<span class="ruby-identifier">cmds</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">q</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"====================HELP======================="</span>)
<span class="ruby-identifier">q</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">h</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">"%-10s - %s"</span>, <span class="ruby-identifier">h</span>.<span class="ruby-identifier">name</span>, <span class="ruby-identifier">h</span>.<span class="ruby-identifier">help</span>))
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span> <span class="ruby-value str">"No help on that."</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000374" class="method-detail">
<a name="M000374"></a>
<div class="method-heading">
<a href="#M000374" class="method-signature">
<span class="method-name">cmd_inv</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
The inventory command
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000374-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000374-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_inv.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_inv</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"=== Inventory ==="</span>)
<span class="ruby-identifier">objects</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">x</span>.<span class="ruby-identifier">id</span>,<span class="ruby-identifier">:describe</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000375" class="method-detail">
<a name="M000375"></a>
<div class="method-heading">
<a href="#M000375" class="method-signature">
<span class="method-name">cmd_kill</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
This kills a character anywhere - it‘s link death (30% chance)
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000375-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000375-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_kill.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_kill</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">""</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Who do you want to kill?"</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">d</span> = <span class="ruby-identifier">world</span>.<span class="ruby-identifier">all_characters</span>.<span class="ruby-identifier">find</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">pid</span><span class="ruby-operator">|</span> <span class="ruby-identifier">args</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">pid</span>).<span class="ruby-identifier">name</span> }
<span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">d</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Can't find them."</span>)
<span class="ruby-keyword kw">return</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-identifier">d</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">d</span>) <span class="ruby-comment cmt"># get object</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">rand</span> <span class="ruby-operator"><</span> <span class="ruby-value">0</span><span class="ruby-value">.3</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-node">"You kill #{d.name}."</span>)
<span class="ruby-identifier">world</span>.<span class="ruby-identifier">connected_characters</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">pid</span><span class="ruby-operator">|</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">pid</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">id</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">pid</span>,<span class="ruby-identifier">:show</span>,<span class="ruby-node">"#{name} kills #{d.name}."</span>)
<span class="ruby-keyword kw">end</span>
}
<span class="ruby-identifier">d</span>.<span class="ruby-identifier">account</span>.<span class="ruby-identifier">disconnect</span>(<span class="ruby-value str">"You have been pwn3d!"</span>)
<span class="ruby-comment cmt"># delete_object(d) Dont delete character, it's annoying</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-node">"You attacks and misses #{d.name}."</span>)
<span class="ruby-identifier">world</span>.<span class="ruby-identifier">connected_characters</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">pid</span><span class="ruby-operator">|</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">pid</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">id</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">pid</span>,<span class="ruby-identifier">:show</span>,<span class="ruby-node">"#{name} attacks and misses #{d.name}."</span>)
<span class="ruby-keyword kw">end</span>
}
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000376" class="method-detail">
<a name="M000376"></a>
<div class="method-heading">
<a href="#M000376" class="method-signature">
<span class="method-name">cmd_look</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
Look command displays the contents of a room
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000376-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000376-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_look.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_look</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">place</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">location</span>)
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">location</span>,<span class="ruby-identifier">:describe</span>)
<span class="ruby-identifier">place</span>.<span class="ruby-identifier">objects</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">x</span>.<span class="ruby-identifier">id</span>,<span class="ruby-identifier">:describe</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-identifier">place</span>.<span class="ruby-identifier">characters</span>(<span class="ruby-identifier">id</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">x</span>.<span class="ruby-identifier">id</span>,<span class="ruby-identifier">:describe</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">location</span>,<span class="ruby-identifier">:describe_exits</span>)
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000377" class="method-detail">
<a name="M000377"></a>
<div class="method-heading">
<a href="#M000377" class="method-signature">
<span class="method-name">cmd_memstats</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
The memory stats command
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000377-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000377-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_memstats.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_memstats</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">world</span>.<span class="ruby-identifier">memstats</span>)
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000378" class="method-detail">
<a name="M000378"></a>
<div class="method-heading">
<a href="#M000378" class="method-signature">
<span class="method-name">cmd_object</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
sets the description for an object (ex. @set 1 A beautiful rose.)
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000378-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000378-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_object.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_object</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/(.*)/</span>
<span class="ruby-identifier">newobj</span> = <span class="ruby-constant">GameObject</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">$1</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">location</span>)
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">newobj</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-identifier">log</span>.<span class="ruby-identifier">error</span> <span class="ruby-value str">"Unable to create object."</span>
<span class="ruby-identifier">sendto</span> <span class="ruby-value str">"System error: unable to create object."</span>
<span class="ruby-keyword kw">return</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-identifier">put_object</span>(<span class="ruby-identifier">newobj</span>)
<span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">location</span>).<span class="ruby-identifier">add_contents</span>(<span class="ruby-identifier">newobj</span>.<span class="ruby-identifier">id</span>)
<span class="ruby-identifier">sendto</span> <span class="ruby-value str">"Ok."</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What!!?"</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000379" class="method-detail">
<a name="M000379"></a>
<div class="method-heading">
<a href="#M000379" class="method-signature">
<span class="method-name">cmd_quit</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
The quit command
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000379-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000379-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_quit.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_quit</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-ivar">@account</span>.<span class="ruby-identifier">disconnect</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000380" class="method-detail">
<a name="M000380"></a>
<div class="method-heading">
<a href="#M000380" class="method-signature">
<span class="method-name">cmd_reload</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
This reloads the commands
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000380-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000380-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_reload.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_reload</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">world</span>.<span class="ruby-identifier">cmds</span>, <span class="ruby-identifier">world</span>.<span class="ruby-identifier">ocmds</span> = <span class="ruby-constant">Command</span>.<span class="ruby-identifier">load</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Command table reloaded."</span>)
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000381" class="method-detail">
<a name="M000381"></a>
<div class="method-heading">
<a href="#M000381" class="method-signature">
<span class="method-name">cmd_room</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
creates a new room and autolinks the exits using the exit names provided.
(ex. @room My <a href="Room.html">Room</a> north south)
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000381-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000381-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_room.rb, line 17</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_room</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/(.*) (.*) (.*)/</span>
<span class="ruby-identifier">d</span>=<span class="ruby-constant">Room</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">$1</span>, <span class="ruby-identifier">id</span>)
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">d</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-identifier">log</span>.<span class="ruby-identifier">error</span> <span class="ruby-value str">"Unable to create room."</span>
<span class="ruby-identifier">sendto</span> <span class="ruby-value str">"System error: unable to create room."</span>
<span class="ruby-keyword kw">return</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-identifier">put_object</span>(<span class="ruby-identifier">d</span>)
<span class="ruby-identifier">curr</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">location</span>)
<span class="ruby-identifier">e1</span> = <span class="ruby-constant">Exit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">$2</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">curr</span>.<span class="ruby-identifier">id</span>, <span class="ruby-identifier">d</span>.<span class="ruby-identifier">id</span>)
<span class="ruby-identifier">curr</span>.<span class="ruby-identifier">exits</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">e1</span>.<span class="ruby-identifier">id</span>
<span class="ruby-identifier">put_object</span>(<span class="ruby-identifier">e1</span>)
<span class="ruby-identifier">e2</span> = <span class="ruby-constant">Exit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">$3</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">d</span>.<span class="ruby-identifier">id</span>, <span class="ruby-identifier">curr</span>.<span class="ruby-identifier">id</span>)
<span class="ruby-identifier">d</span>.<span class="ruby-identifier">exits</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">e2</span>.<span class="ruby-identifier">id</span>
<span class="ruby-identifier">put_object</span>(<span class="ruby-identifier">e2</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Ok."</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"say what??"</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000382" class="method-detail">
<a name="M000382"></a>
<div class="method-heading">
<a href="#M000382" class="method-signature">
<span class="method-name">cmd_say</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
sends <message> to all characters in the room
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000382-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000382-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_say.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_say</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">""</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What are you trying to say?"</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-node">"You say, \"#{args}\"."</span>)
<span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">location</span>).<span class="ruby-identifier">characters</span>(<span class="ruby-identifier">id</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">add_event</span>(<span class="ruby-identifier">id</span>,<span class="ruby-identifier">p</span>.<span class="ruby-identifier">id</span>,<span class="ruby-identifier">:show</span>,<span class="ruby-node">"#{name} says, \"#{args}\"."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000383" class="method-detail">
<a name="M000383"></a>
<div class="method-heading">
<a href="#M000383" class="method-signature">
<span class="method-name">cmd_script</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
adds, deletes, lists, or a script Syntax:
</p>
<pre>
@script add <lang> <progname>|<code>
@script del #<scriptid>
@script show #<scriptid>
</pre>
<p>
(ex. @script add fart myprog) (ex. @script add boolexp 234|42&34 )
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000383-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000383-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_script.rb, line 22</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_script</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/del\s+#(\d+)/</span>
<span class="ruby-identifier">s</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">s</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-constant">Script</span>
<span class="ruby-identifier">delete_object</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">id</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Script #$1 deleted."</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No script."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/add\s+(\w+)\s+(.*)/</span>
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">intern</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:fart</span>
<span class="ruby-identifier">s</span> = <span class="ruby-constant">Script</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">$2</span>.<span class="ruby-identifier">strip</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">intern</span>)
<span class="ruby-identifier">put_object</span>(<span class="ruby-identifier">s</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-node">"Script #{s.id} added."</span>)
<span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:boolexp</span>
<span class="ruby-identifier">s</span> = <span class="ruby-constant">Script</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">intern</span>)
<span class="ruby-identifier">s</span>.<span class="ruby-identifier">load</span>(<span class="ruby-identifier">$2</span>.<span class="ruby-identifier">strip</span>)
<span class="ruby-identifier">put_object</span>(<span class="ruby-identifier">s</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-node">"Script #{s.id} added."</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No language."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/show\s+#(\d+)/</span>
<span class="ruby-identifier">s</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">s</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-constant">Script</span>
<span class="ruby-identifier">s</span>.<span class="ruby-identifier">load</span> <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">s</span>.<span class="ruby-identifier">src</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">s</span>.<span class="ruby-identifier">src</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No script."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What??"</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000384" class="method-detail">
<a name="M000384"></a>
<div class="method-heading">
<a href="#M000384" class="method-signature">
<span class="method-name">cmd_set</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
sets the description or timer for an object Syntax:
</p>
<pre>
@set desc #<id> <description>
@set key #<id> <description>
@set timer #<id> <on|off>
</pre>
<p>
(ex. @set desc 1 A beautiful rose.)
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000384-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000384-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_set.rb, line 21</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_set</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">""</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What??"</span>)
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/desc\s+#(\d+)\s+(.*)/</span>
<span class="ruby-identifier">o</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">o</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value">0</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No object."</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">o</span>.<span class="ruby-identifier">desc</span> = <span class="ruby-identifier">$2</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Object #"</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">$1</span> <span class="ruby-operator">+</span> <span class="ruby-value str">" description set."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/key\s+#(\d+)\s+(.*)/</span>
<span class="ruby-identifier">o</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">o</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value">0</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No object."</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">o</span>.<span class="ruby-identifier">key</span> = <span class="ruby-identifier">$2</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Object #"</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">$1</span> <span class="ruby-operator">+</span> <span class="ruby-value str">" key set."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/timer\s+#(\d+)\s+(on|off)\s+(.*)/</span>
<span class="ruby-identifier">o</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">o</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No object."</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$2</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'on'</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$3</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/(\w+)\s+(\d+)/</span>
<span class="ruby-identifier">world</span>.<span class="ruby-identifier">set_timer</span>(<span class="ruby-identifier">o</span>.<span class="ruby-identifier">id</span>, <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">$2</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-node">"Object ##{o.id} registered with timer."</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Bad symbol or missing time"</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">$3</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/(\w+)/</span>
<span class="ruby-identifier">world</span>.<span class="ruby-identifier">unset_timer</span>(<span class="ruby-identifier">o</span>.<span class="ruby-identifier">id</span>, <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_sym</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-node">"Object ##{o.id} unregistered with timer."</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Bad symbol"</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What??"</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000385" class="method-detail">
<a name="M000385"></a>
<div class="method-heading">
<a href="#M000385" class="method-signature">
<span class="method-name">cmd_show</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
displays object Syntax:
</p>
<pre>
@show #<oid>|me
</pre>
<p>
(ex. @show me)
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000385-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000385-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_show.rb, line 19</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_show</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/#(\d+)/</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>).<span class="ruby-identifier">inspect</span>)
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/me/</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">id</span>).<span class="ruby-identifier">inspect</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What??"</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000386" class="method-detail">
<a name="M000386"></a>
<div class="method-heading">
<a href="#M000386" class="method-signature">
<span class="method-name">cmd_shutdown</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
The shutdown command
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000386-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000386-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_shutdown.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_shutdown</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-constant">Engine</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">shutdown</span> = <span class="ruby-keyword kw">true</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000392" class="method-detail">
<a name="M000392"></a>
<div class="method-heading">
<a href="#M000392" class="method-signature">
<span class="method-name">cmd_shutdown</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
The shutdown command
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000392-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000392-source">
<pre>
<span class="ruby-comment cmt"># File cmd/tiny/cmd_shutdown.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_shutdown</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">world</span>.<span class="ruby-identifier">is_admin?</span> <span class="ruby-identifier">id</span>
<span class="ruby-identifier">log</span>.<span class="ruby-identifier">info</span> <span class="ruby-node">"Shutdown by '#{name}'"</span>
<span class="ruby-constant">Engine</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">shutdown</span> = <span class="ruby-keyword kw">true</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span> <span class="ruby-value str">"You do not have the authority to shutdown the server."</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000387" class="method-detail">
<a name="M000387"></a>
<div class="method-heading">
<a href="#M000387" class="method-signature">
<span class="method-name">cmd_stats</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
The database stats command
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000387-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000387-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_stats.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_stats</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-constant">Engine</span>.<span class="ruby-identifier">instance</span>.<span class="ruby-identifier">db</span>.<span class="ruby-identifier">stats</span>)
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000388" class="method-detail">
<a name="M000388"></a>
<div class="method-heading">
<a href="#M000388" class="method-signature">
<span class="method-name">cmd_status</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
displays session information
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000388-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000388-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_status.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_status</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">sendto</span> <span class="ruby-ivar">@account</span>.<span class="ruby-identifier">status_rept</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000389" class="method-detail">
<a name="M000389"></a>
<div class="method-heading">
<a href="#M000389" class="method-signature">
<span class="method-name">cmd_trigger</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
adds, deletes, or shows triggers on an object Syntax:
</p>
<pre>
@trigger add #<id> #<scriptid> <eventtype>
@trigger del #<id> <eventtype>
@trigger show #<id>
</pre>
<p>
(ex. @trigger add 1 myprog arrive)
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000389-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000389-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_trigger.rb, line 21</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_trigger</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">""</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What??"</span>)
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/del\s+#(\d+)\s+(\w+)/</span>
<span class="ruby-identifier">o</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">o</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-constant">GameObject</span>, <span class="ruby-constant">Room</span>, <span class="ruby-constant">Character</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-identifier">o</span>.<span class="ruby-identifier">get_trigger</span>(<span class="ruby-identifier">$2</span>)
<span class="ruby-identifier">o</span>.<span class="ruby-identifier">delete_trigger</span>(<span class="ruby-identifier">$2</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Object ##$1 trigger deleted."</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Trigger ##$2 not found on object."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No object."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/add\s+#(\d+)\s+#(\d+)\s+(\w+)/i</span>
<span class="ruby-identifier">o</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">o</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-constant">GameObject</span>, <span class="ruby-constant">Room</span>, <span class="ruby-constant">Character</span>
<span class="ruby-identifier">s</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$2</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">s</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-constant">Script</span>
<span class="ruby-identifier">o</span>.<span class="ruby-identifier">add_trigger</span>(<span class="ruby-identifier">$3</span>, <span class="ruby-identifier">s</span>.<span class="ruby-identifier">id</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"Object ##$1 trigger added."</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No script."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No object."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/show\s+#(\d+)/</span>
<span class="ruby-identifier">o</span> = <span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">o</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-constant">GameObject</span>, <span class="ruby-constant">Room</span>, <span class="ruby-constant">Character</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"===========TRIGGERS============"</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">"%-15s %-15s"</span>, <span class="ruby-value str">"Event"</span>, <span class="ruby-value str">"Program"</span>))
<span class="ruby-identifier">o</span>.<span class="ruby-identifier">triggers</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">e</span>, <span class="ruby-identifier">t</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">"%-15s #%d"</span>, <span class="ruby-identifier">e</span>.<span class="ruby-identifier">id2name</span>, <span class="ruby-identifier">t</span>))
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"No object."</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What??"</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000390" class="method-detail">
<a name="M000390"></a>
<div class="method-heading">
<a href="#M000390" class="method-signature">
<span class="method-name">cmd_who</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p>
shows a list of all connected characters
</p>
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000390-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000390-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_who.rb, line 16</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cmd_who</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"=== Who List ==="</span>)
<span class="ruby-identifier">world</span>.<span class="ruby-identifier">connected_characters</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">pid</span><span class="ruby-operator">|</span> <span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">get_object</span>(<span class="ruby-identifier">pid</span>).<span class="ruby-identifier">name</span>)}
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000365" class="method-detail">
<a name="M000365"></a>
<div class="method-heading">
<a href="#M000365" class="method-signature">
<span class="method-name">edit_display</span><span class="method-args">(str)</span>
</a>
</div>
<div class="method-description">
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000365-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000365-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_edit.rb, line 55</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">edit_display</span>(<span class="ruby-identifier">str</span>)
<span class="ruby-identifier">header</span> =<span class="ruby-value str">"======== Teensy String Editor ========\n Type .h on a new line for help\n Terminate with a @ on a blank line.\n======================================\n"</span>
<span class="ruby-identifier">i</span> = <span class="ruby-value">0</span>
<span class="ruby-identifier">header</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">str</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp re">/^/</span>){<span class="ruby-node">"#{i+=1}: "</span>}
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000367" class="method-detail">
<a name="M000367"></a>
<div class="method-heading">
<a href="#M000367" class="method-signature">
<span class="method-name">edit_parser</span><span class="method-args">(args)</span>
</a>
</div>
<div class="method-description">
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000367-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000367-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_edit.rb, line 74</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">edit_parser</span>(<span class="ruby-identifier">args</span>)
<span class="ruby-keyword kw">case</span> <span class="ruby-identifier">args</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-keyword kw">nil</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-value str">"What??"</span>)
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/^\.h/</span>
<span class="ruby-identifier">sendto</span> <span class="ruby-value str">"@edit help (commands on blank line):\n.r /old/new/ - replace a substring\n.h - get help (this info)\n.s - show string so far\n.ww [width] - word wrap string (width optional)\n defaults to 76\n.c - clear string so far\n.ld <num> - delete line <num>\n.li <num> <txt> - insert <txt> before line <num>\n.lr <num> <txt> - replace line <num> with <txt>\n@ - end string\n"</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/^\.c/</span>
<span class="ruby-ivar">@editstr</span> = <span class="ruby-value str">""</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/^\.s/</span>
<span class="ruby-identifier">sendto</span>(<span class="ruby-identifier">edit_display</span>(<span class="ruby-ivar">@editstr</span>))
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/^\.r\s+\/(.+)?\/(.+)?\//</span>
<span class="ruby-ivar">@editstr</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-identifier">$1</span>, <span class="ruby-value str">'\2'</span>)
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/^\.ww\s+(\d+)/</span>, <span class="ruby-regexp re">/^\.ww/</span>
<span class="ruby-ivar">@editstr</span> = <span class="ruby-identifier">word_wrap</span>(<span class="ruby-ivar">@editstr</span>, <span class="ruby-identifier">$1</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">></span> <span class="ruby-value">2</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span> <span class="ruby-operator">:</span> <span class="ruby-value">76</span> )
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/^\.ld\s+(\d+)/</span>
<span class="ruby-identifier">idx</span> = <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">idx</span> <span class="ruby-operator"><</span> <span class="ruby-value">1</span>
<span class="ruby-identifier">idx</span> <span class="ruby-operator">-=</span> <span class="ruby-value">1</span>
<span class="ruby-identifier">lines</span> = <span class="ruby-ivar">@editstr</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">"\n"</span>)
<span class="ruby-identifier">lines</span>.<span class="ruby-identifier">delete_at</span>(<span class="ruby-identifier">idx</span>)
<span class="ruby-ivar">@editstr</span> = <span class="ruby-identifier">lines</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">"\n"</span>)
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/^\.li\s+(\d+)\s+(.*)?$/</span>
<span class="ruby-identifier">idx</span> = <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">idx</span> <span class="ruby-operator"><</span> <span class="ruby-value">1</span>
<span class="ruby-identifier">idx</span> <span class="ruby-operator">-=</span> <span class="ruby-value">1</span>
<span class="ruby-identifier">nl</span> = <span class="ruby-identifier">$2</span>
<span class="ruby-identifier">lines</span> = <span class="ruby-ivar">@editstr</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">"\n"</span>)
<span class="ruby-identifier">lines</span>.<span class="ruby-identifier">insert</span>(<span class="ruby-identifier">idx</span>, <span class="ruby-identifier">nl</span> <span class="ruby-operator">+</span> <span class="ruby-value str">"\n"</span>)
<span class="ruby-ivar">@editstr</span> = <span class="ruby-identifier">lines</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">"\n"</span>)
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/^\.lr\s+(\d+)\s+(.*)?$/</span>
<span class="ruby-identifier">idx</span> = <span class="ruby-identifier">$1</span>.<span class="ruby-identifier">to_i</span>
<span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">idx</span> <span class="ruby-operator"><</span> <span class="ruby-value">1</span>
<span class="ruby-identifier">idx</span> <span class="ruby-operator">-=</span> <span class="ruby-value">1</span>
<span class="ruby-identifier">nl</span> = <span class="ruby-identifier">$2</span>
<span class="ruby-identifier">lines</span> = <span class="ruby-ivar">@editstr</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">"\n"</span>)
<span class="ruby-identifier">lines</span>[<span class="ruby-identifier">idx</span>] = <span class="ruby-identifier">nl</span> <span class="ruby-operator">+</span> <span class="ruby-value str">"\n"</span>
<span class="ruby-ivar">@editstr</span> = <span class="ruby-identifier">lines</span>.<span class="ruby-identifier">compact</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">"\n"</span>)
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/^@/</span>
<span class="ruby-ivar">@mode</span> = <span class="ruby-keyword kw">nil</span>
<span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@editobj</span>.<span class="ruby-identifier">object_id</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">world</span>.<span class="ruby-identifier">msgs</span>.<span class="ruby-identifier">object_id</span> <span class="ruby-comment cmt"># detect sysmsgs</span>
<span class="ruby-ivar">@editobj</span>.<span class="ruby-identifier">send</span>(<span class="ruby-value str">"[]="</span>, <span class="ruby-ivar">@editfield</span>, <span class="ruby-ivar">@editstr</span>)
<span class="ruby-keyword kw">else</span>
<span class="ruby-ivar">@editobj</span>.<span class="ruby-identifier">send</span>(<span class="ruby-ivar">@editfield</span><span class="ruby-operator">+</span><span class="ruby-value str">"="</span>, <span class="ruby-ivar">@editstr</span>)
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">when</span> <span class="ruby-regexp re">/^\./</span>
<span class="ruby-identifier">sendto</span> <span class="ruby-value str">"Invalid command."</span>
<span class="ruby-keyword kw">else</span>
<span class="ruby-ivar">@editstr</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">args</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</span>
<span class="ruby-keyword kw">end</span>
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
<div id="method-M000366" class="method-detail">
<a name="M000366"></a>
<div class="method-heading">
<a href="#M000366" class="method-signature">
<span class="method-name">word_wrap</span><span class="method-args">(s, len)</span>
</a>
</div>
<div class="method-description">
<p><a class="source-toggle" href="#"
onclick="toggleCode('M000366-source');return false;">[Source]</a></p>
<div class="method-source-code" id="M000366-source">
<pre>
<span class="ruby-comment cmt"># File cmd/teensy/cmd_edit.rb, line 67</span>
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">word_wrap</span>(<span class="ruby-identifier">s</span>, <span class="ruby-identifier">len</span>)
<span class="ruby-identifier">str</span> = <span class="ruby-identifier">s</span>
<span class="ruby-identifier">str</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp re">/\n/</span>,<span class="ruby-value str">' '</span>);<span class="ruby-identifier">str</span>.<span class="ruby-identifier">squeeze!</span>(<span class="ruby-value str">' '</span>)
<span class="ruby-identifier">str</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-node">/(\S{#{len}})(?=\S)/</span>,<span class="ruby-value str">'\1 '</span>)
<span class="ruby-identifier">str</span>.<span class="ruby-identifier">scan</span>(<span class="ruby-node">/(.{1,#{len}})(?:\s+|$)/</span>).<span class="ruby-identifier">flatten</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">"\n"</span>)
<span class="ruby-keyword kw">end</span>
</pre>
</div>
</div>
</div>
</div>
</div>
<div id="validator-badges">
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
</div>
</body>
</html>