2007年12月04日
libsecondlifeサンプル - 接続と切断
思うところがあって、いったんSLのアイテム収集のほうは
注力するエネルギーを減らして、
libsecondlifeのサンプルをまとめます。といっても、分かっている範囲の、
接続・切断、残高照会(他のかたのページにあったやつの劣化コピー^^;)、
テレポート、チャットの受信、統計情報の取得、新オブジェクトの情報、
指定オブジェクトの詳細取得、といったあたりです。
まずは、環境の紹介から。
WindowsXP Home Edition SP2 (たまにWindows2000SP2)
IronPython 1.1 (1.1) on .NET 2.0.50727.832 (FePy)
libsecondlife 0.3.0 (11/30に0.3.1が出ましたが、まだ移行してません^^;。)
libsecondlifeは0.2と0.3でクラス内のメンバ名とかが大きく変わっているので、
今からやるなら0.3.1がお勧めです。
まだバージョンアップで大きく変わる時期なので、適宜追随してくださいな。
では、接続と切断のサンプルです。
1-5行目:libsecondlifeを.Net経由でロードして、この言語から使えるようにします。
6-10行目:ログインに必要な最低限の情報をあらかじめ変数に入れます。
11-14行目:ライブラリを使ってSecondLifeに接続します。
16-18行目:30秒間何もしません。
19-20行目:ライブラリを使ってSecondLifeから切断します。
ポイントは、13行目の接続、20行目の切断です。
●接続は13行目です。
client.Network.Login(firstName, lastName, passWord, '', '')
第1引数:ログインするアバターのファースト・ネーム
第2引数:ログインするアバターのファミリー・ネーム
第3引数:ログインするアバターのパスワード
第4引数:プログラム名
第5引数:メールアドレス
●切断は20行目です。
client.Network.Logout()
引数はありません。
20行程度のコードで接続、切断が可能です。
実際の処理はコールバック関数を登録して非同期で行う場合が多いです。
次はコールバック関数を使った処理を書く予定です。
P.S.ソースコードを引用文(blockquote)以外で表示する方法をご存知の方がいらっしゃいましたら教えてください。
注力するエネルギーを減らして、
libsecondlifeのサンプルをまとめます。といっても、分かっている範囲の、
接続・切断、残高照会(他のかたのページにあったやつの劣化コピー^^;)、
テレポート、チャットの受信、統計情報の取得、新オブジェクトの情報、
指定オブジェクトの詳細取得、といったあたりです。
まずは、環境の紹介から。
WindowsXP Home Edition SP2 (たまにWindows2000SP2)
IronPython 1.1 (1.1) on .NET 2.0.50727.832 (FePy)
libsecondlife 0.3.0 (11/30に0.3.1が出ましたが、まだ移行してません^^;。)
libsecondlifeは0.2と0.3でクラス内のメンバ名とかが大きく変わっているので、
今からやるなら0.3.1がお勧めです。
まだバージョンアップで大きく変わる時期なので、適宜追随してくださいな。
では、接続と切断のサンプルです。
#libsecondlifeのロード
import clr
clr.AddReferenceToFile("libsecondlife.dll")
import libsecondlife
#ログイン情報の設定
firstName = 'abcd' #苗字
lastName = 'efgh' #名前
passWord = 'ijkl' #パスワード
#接続
client = libsecondlife.SecondLife()
client.Network.Login(firstName, lastName, passWord, '', '')
#実際の処理(ここでは単なるsleep)
import time
time.sleep(30)
#切断
client.Network.Logout()
1-5行目:libsecondlifeを.Net経由でロードして、この言語から使えるようにします。
6-10行目:ログインに必要な最低限の情報をあらかじめ変数に入れます。
11-14行目:ライブラリを使ってSecondLifeに接続します。
16-18行目:30秒間何もしません。
19-20行目:ライブラリを使ってSecondLifeから切断します。
ポイントは、13行目の接続、20行目の切断です。
●接続は13行目です。
client.Network.Login(firstName, lastName, passWord, '', '')
第1引数:ログインするアバターのファースト・ネーム
第2引数:ログインするアバターのファミリー・ネーム
第3引数:ログインするアバターのパスワード
第4引数:プログラム名
第5引数:メールアドレス
●切断は20行目です。
client.Network.Logout()
引数はありません。
20行程度のコードで接続、切断が可能です。
実際の処理はコールバック関数を登録して非同期で行う場合が多いです。
次はコールバック関数を使った処理を書く予定です。
P.S.ソースコードを引用文(blockquote)以外で表示する方法をご存知の方がいらっしゃいましたら教えてください。
グループを作ってばかりいると金がかかる
TestClientにvoice 関連のコマンドが追加された
CookComputing.XmlRpcV2 のエラーの時
灰色のハーレム
SLアイテム検索ページ仮実装しました
libsecondlifeサンプル - 画像の取得
TestClientにvoice 関連のコマンドが追加された
CookComputing.XmlRpcV2 のエラーの時
灰色のハーレム
SLアイテム検索ページ仮実装しました
libsecondlifeサンプル - 画像の取得
Posted by march at 21:31│Comments(3)
│libsecondlife
この記事へのコメント
marchさんこんにちはー^^いつも拝見しています。ソースコードの表示には<pre><code>・・・</pre></code>でしょうか。自動改行オンでpreタグを使うと行間が空いてしまうので、(可能であれば)自動改行はなしにしたほうがよさそうです。スタイルシートも組み合わせる方法もあるようです。
http://jmblog.jp/archives/80
ソラマメさんは使ったことがないので外しているかもしれません、ごめんなさい><
http://jmblog.jp/archives/80
ソラマメさんは使ったことがないので外しているかもしれません、ごめんなさい><
Posted by ドラ at 2007年12月05日 08:23
どらごんさんコメントありがとうございます^^
さっそく<pre><code>を試してみました。
フォントが等幅になっていい感じです。
これからはこの2つのタグを使っていきます~
さっそく<pre><code>を試してみました。
フォントが等幅になっていい感じです。
これからはこの2つのタグを使っていきます~
Posted by march
at 2007年12月05日 12:11

http://code.google.com/p/syntaxhighlighter/ にあるJava Script ベースのハイライトライブラリを使って整形してみました。
行末に<BR>って出るのが格好悪いですが、しばらくこれを使おうと思います。
行末に<BR>って出るのが格好悪いですが、しばらくこれを使おうと思います。
Posted by march
at 2007年12月11日 19:08
