2009-08-17 3 views
2

私は泥のようなものを作ることに決めました。私は他の場所でも使うことができますが、私には1つの問題があります。 私はそれをどこのユーザーにするかわかりません代わりに、テキストフィールドJavaでのマッドプログラミングの助け

の実際のボックスに入力することができます私はより良い説明したいと思いますが、あなたはMUDクライアントの話と同じウィンドウにテキストを入力している場合、私は本当にどのように

+0

さて、私はこれで刺すだろう...'telnet'や他のMUDクライアントと接続できるサーバを作る方法がわからないということですか? – erickson

+0

私はユーザー入力を意味する、私はどのようにユーザーが出力セクションで入力することができますそれを作る方法がわからない、それはカスタムGUIです。 –

+0

ああ - どんなMUDの関心を持っている私たちもそれに集中することを熱望していました;-)。私の答えに追加したものを見てください。うまくいけば助けになります。 – Anon

答えて

1

考えることはできません出力としては、ターミナルの裸のtelnetを使ってMUDを再生したときと同じ問題に遭遇するように聞こえるでしょう。つまり、入力しているテキストが表示されていないようにスクロールしていきます私はあなたができるところで別のフィールドを持っていると思うそれを入力する前に必要ならば編集するのが良いことです。

代わりにサーバーに集中して、ユーザー(管理者も)がmUDクライアントの1つを経由してzMUDのように接続できるようにすることができます。私はあなたの質問を間違って解釈しているかもしれません。 MUDの作成には数多くのものが含まれているので、ほとんどの人は最初から起動すると実行可能なゲームを立ち上げたり実行したりすることはありません。私は自分でやったが、サーバだけだった。クライアントプログラムやGUIインターフェースでは何もしなかった。

OPさんのコメント応答の後に、追加するための編集:

を、それが助けかどうかを確認するために、この日のチュートリアルを見てみましょう:

http://java.sun.com/docs/books/tutorial/uiswing/components/textarea.html

最初の例では、入力のために別のフィールドを使用しています必要なものが表示される "TextAreaDemo"の例にスクロールします。

+0

ああ、あなたは私の質問が正しいのですが、私はまた、自分のコマンドプロンプトで私が作っているプロンプトのタイプのものを作ってみたいと思っていたのですが、私は問題をスクロールしているテキストを知っています。それをやる。 –

+0

私はそれらのサンプルコードをすべてうまく理解していませんが、正しいものが得られれば、文書をキャレットの位置から単語の最後まで逆向きに読み込むことになります。 –

+0

いいえ - 私があなたが見ていると思う部分では、プログラムは自動完成する単語をチェックしています。基本的には、フィールド内のテキストに0から始まるインデックスを使用します。この例では、プログラムが検出しているユーザーからの挿入イベントの場合、そのインデックスはev.getOffset()で取得され、プログラム自体がtextArea.insertでフィールドにテキストを挿入しています。ある場所では、それはオフセットと呼ばれ、別の位置にありますが、どちらの場合も、アクションが発生するゼロベースのインデックスです。 – Anon

1

泥はそれほど複雑ではありません。あなたが求めていることに対する答えは、TCP/IP telnetポートを使う必要があるということです。

Telnetはかなり簡単です。ポートを開いてデータを読み始めるだけです。そこにはたくさんの情報があり、さらに役立つライブラリもあります。 (Telnetはちょうど標準的なポートですが、この小さな例外が1つあります。最初に続く "Negotiation"です。数バイトを前後に送信していますが、実行しないと何も起こりません) 。

あなたはコードを書いて、ポートを聴き始めます(4444は一般的なMUDポートiircでした)。次に、telnetクライアントを実行し、そのポートに接続します。あなたが入力したものを監視し、バックスペースを処理し、完了したコマンドをメインのマッドシステムに送ることができるスレッドを各ポートで待ち受けているかもしれません(多くのポートが一度にコマンドを送信する)。

実際はかなり簡単です。 Java用のtelnetライブラリを探してください。

クイック検索では、telnetも処理するJavaSSHが見つかりました。

編集:どちらかを作るのは簡単ではないことを指摘しておきます。マップ、装備、モンスターをすべてのデータで動かすようにして、すべてのモンスターを再構築する必要はありません。いくつかの前向きな考え方があります。それは、おそらく最初のものを書いて、一から書き直す必要があります。

私はすでにそこにある泥水を調べたいと思うかもしれないと指摘しています。私はかなり小さいと理解しやすいdikuを見つけました。

関連する問題