Toggle navigation
編集
差分
バックアップ
添付
名前変更
リロード
新規
一覧
単語検索
最終更新
ヘルプ
開発メモ
綾織メモ
開発メモ/綾織メモ の編集
-- 雛形とするページ --
Template/Stub
BracketName
Help
InterWikiName
InterWikiSandBox
InterWikiテクニカル
itemid=1575
log/2014/0328
MenuBar
PHP
PukiWiki
PukiWiki/1.4/Manual/Plugin
PukiWiki/1.4/Manual/Plugin/A-D
PukiWiki/1.4/Manual/Plugin/E-G
PukiWiki/1.4/Manual/Plugin/H-K
PukiWiki/1.4/Manual/Plugin/L-N
PukiWiki/1.4/Manual/Plugin/O-R
PukiWiki/1.4/Manual/Plugin/S-U
PukiWiki/1.4/Manual/Plugin/V-Z
RecentDeleted
SandBox
test
WikiEngines
WikiName
WikiWikiWeb
YukiWiki
カウンタ一覧
ヘルプ
公開物/mxEyes
公開物/Server Side FindF
公開物/形態素解析プラグイン
公開物/愛佳
公開物/愛佳_Version2
整形ルール
開発メモ
開発メモ/0.93e互換モード
開発メモ/ACID
開発メモ/Blenderメモ
開発メモ/Chararina on Wine
開発メモ/Chararinaキャラクタ開発ことはじめ
開発メモ/Chararinaプラグイン開発/MinGWで作る
開発メモ/GIMP2メモ
開発メモ/index.fetの仕様
開発メモ/MX kernel 6
開発メモ/MX kernel 6/CharaDeli
開発メモ/MX kernel 6/ICComm
開発メモ/MX kernel 6/MordsMorth
開発メモ/MX kernel 6/SPRICT
開発メモ/MX kernel 6/SPRICT/組み込みコマンド
開発メモ/MX kernel 6/SPRICT/綾織インターフェース
開発メモ/NH-EX-SCHEDULER
開発メモ/NH-EX-WEATHER
開発メモ/NH-MXPJ-01R
開発メモ/NH-MXPJ-01S
開発メモ/NH-MXPJ-01S/ICU
開発メモ/NH-MXPJ-01S/キャラデリ
開発メモ/NH-MXPJ-01S/グラフィックス廻り
開発メモ/NH-MXPJ-01S/ネタ帳
開発メモ/NH-MXPJ-01S/メニュー構成
開発メモ/NH-MXPJ-01S/設定項目
開発メモ/NH-MXPJ-01T
開発メモ/NH-X-MEMO
開発メモ/NH-X-WEATHERCLIENT
開発メモ/pwsconst
開発メモ/Server Side FindF
開発メモ/SQLiteメモ
開発メモ/Web配布形式(.pwsz)ファイル
開発メモ/XML パーサ
開発メモ/えとせとら
開発メモ/ひとりごと
開発メモ/まなかさんバージョンアップ計画
開発メモ/ウィンドウクラス・タイトルバー
開発メモ/キャラクタと何らかのデータをやりとりする方法
開発メモ/キャラクタのUIとしてのブラウザ連携プラグインの利用
開発メモ/キャラクターメーカー
開発メモ/ディレクトリ構成
開発メモ/デリちゃっと
開発メモ/ライセンス関係まとめ
開発メモ/人工無能
開発メモ/何故デスクトップにキャラクタを置くか
開発メモ/作業ログ
開発メモ/作業ログ/2006-11-16
開発メモ/形態素解析プラグイン
開発メモ/手書きノート
開発メモ/掲示板
開発メモ/日本語
開発メモ/綾織ソースコードを公開されている方々
開発メモ/綾織メモ
開発メモ/綾織メモ/Chararina開発スタッフBlogより
開発メモ/綾織メモ/defineとかifdefとか使いたい
開発メモ/綾織メモ/PrototypeXXX.ayaの誤植
開発メモ/綾織メモ/バージョン毎の差異
開発メモ/綾織メモ/ビットマップハンドル関数
開発メモ/綾織メモ/プラグイン
開発メモ/綾織メモ/プラグイン/RSSリーダ
開発メモ/綾織メモ/プラグイン/データベース
開発メモ/綾織メモ/プラグイン/プログラムランチャー
開発メモ/綾織メモ/プラグイン/メールチェッカ
開発メモ/綾織メモ/綾織でできること・できないこと
開発メモ/綾織メモ/逆引き綾織リファレンス
開発メモ/開発ツール
...
** キャラクタの再起動 [#x9e5524b] - exapack.lst を用意しておき、SwitchPackage で起動時と同じパッケージに切り替える
タイムスタンプを変更しない
#title(綾織メモ) Q. SHIORI みたいなものはありませんか。~ A. SHIORI を使って下さい。 //面接官「特技は綾織プログラミングとありますが?」~ //学生 「はい。綾織プログラミングです。」~ // (中略)~ //面接官「帰れよ。」 //---- //#ls #lsx(prefix=開発メモ/綾織メモ/) ---- #contents * 文法 [#f512b3ae] ** AddItem ブロック内での break はダメゼッタイ [#e00b8ca3] - http://www.praesens.co.jp/file/pdk/manual/index_c1.html#doc2_sect:mark7 > AddItemのブロック内({}内)で,そのAddItem-Choiceを含む制御構造から脱出するためにbreakを使用しないでください.ブロック外の不定の位置にジャンプすることになります. < ** ランタイムエラー [#m46eee3d] コンパイル時にはエラーにならないが実行時にエラーとなるもの *** 配列を参照渡し [#qf6e2cf8] - #highlight(ayaori:nogutter:nocontrols){{ void foo(string &attr[][]) { // hogehoge } }} - もともと参照渡しなので & は不要。 -- エラーは関数を呼んだ時点か attr にアクセスした時点か要チェック -- デリファレンスは可能か? *** 引数として NULL を渡す [#f88cb83b] - 2006/10/08 - 内部エラー:(1689) - モジュールを越えるのが問題か? *** NULL の比較でエラー? [#l8261871] - 2006/10/16 - 内部エラー:(3709) - #highlight(ayaori:nogutter:nocontrols){{ if((entry = script_getEntry(section, opt)) == NULL) { return "[" + section + "." + opt + "]"; } }} - ここで script_getEntry が NULL を返したときに発生か - とりあえず返り値として NULL を返すユーザ関数を作るのはやめたほうがよさげ - ↓だとエラーにならない?(2006/11/25) -- #highlight(ayaori:nogutter:nocontrols){{ entry = script_getEntry(section, opt) if(entry == NULL) { return "[" + section + "." + opt + "]"; } }} *** LoadBitmapW でファイルが見つからない? [#kf247559] - 2006/10/26 - 内部エラー:Stack under flow(-1) - これは意外とクリティカルかもしれんね *** 不正な代入式:UNKNOWN = string(-1) [#ifa51ddd] - #highlight(ayaori:nogutter:nocontrols){{ string hoge[]; hoge = "mogemoge"; }} *** 引数の型が宣言と一致しない:$1(-1) [#q0bb7363] - 2006/12/02 - #highlight(ayaori:nogutter:nocontrols){{ void hoge(int i); hoge(Pow(2.0, 4.0)); }} - リファレンス及び Prototype150.aya には int Pow(double x, double y) とあるが、これって返り値 double でない? - とりあえずキャストしてみる: hoge( (int)Pow(2.0, 4.0)); *** BREGMatch()の引数でパターン末尾の/を忘れる [#w67ff7f0] - 2014/04/18 - EAccessViolation(-1) ** ayac が落ちる [#c7178d05] - 2006/10/01 - #highlight(ayaori:nogutter:nocontrols){{ max_pages = ((lengthof pref) / items_per_page) + 1; }} *** action 内で関数リファレンスを呼ぼうとする [#kde6d79b] - 2006/11/25 - #highlight(ayaori:nogutter:nocontrols){{ action MouseUpL@(false) { void &ref_func(int a) = dummy_func; ref_func(12); } }} ** while/for ループでの注意 [#z9ba8aa4] - continue は使用できない。 ** 引数として関数をとる関数 [#td4111e7] - #highlight(ayaori:nogutter:nocontrols){{ int TimerCreate( int interval, int callstyle, void &func( int handle , string param ), string param ) }} - 引数 void &func(int handle, string param) には void hoge(int handle, string param) { ... } で定義した関数名 (この場合は hoge) を渡す - see also: [[綾織メモ/リファレンス (参照)>開発メモ/綾織メモ/リファレンス (参照)]] ** グローバル変数名はモジュール間で重複してはならない [#se815b13] - from http://www.din.or.jp/~hirak/persona/pt020914_halca2002.html > グローバル変数は、extern する/しないに関わらず重複してはいけないみたいだ。 < - とりあえずグローバル変数にはモジュール毎にプレフィックス付けるなどして回避 ** 可変長配列の初期値は不定ではない [#c5e5c6b8] - http://www.praesens.co.jp/file/pdk/manual/index_c1.html#doc2_sect:vararray // ---------------------------------------------------------------------------- * 関数 [#oa7c29b8] ** StrEncodeURL()の特性 [#mbedcca5] - 変換前 !"#$%&'()+,/:;<=>?@[\]^`{|}~*-.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz - 変換後 +%21%22%23%24%25%26%27%28%29%2B%2C%2F%3A%3B%3C%3D%3E%3F%40%5B%5C%5D%5E%60%7B%7C%7D%7E*-.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz - つまり、StrEncodeURL() によって変換される文字は !"#$%&'()+,/:;<=>?@[\]^`{|}~ ** インフォデリで cBeforeNewsPlay() に渡される文字列 [#r8ef3c54] - 実際には改行なし AID=1& Title=%94z%90M%83e%83X%83g& StartHour=_& EndHour=_& Day=1111111& PlayCount=1& StartDate=2005-04-10& EndDate=2005-04-11& Gender=_& Address=_& Delimiter=dabad686a866c3f04f438174a7bf4104& genre=STDMGR_NH_79& Command=normal& PlayCounter=1& Author=mxproject& Author_e_mail=& Priority= ** TimerCreate() のタイマーは作成した時点で動き出す [#c24c71c7] - TimerStart しなくても動いてる様子 (2006/10/16) - 最初から呼ばれるとマズイ場合はすぐに TimerStop しておくべきか ** [[GetBitmapIndex():http://www.praesens.co.jp/file/pdk/manual/func/input_func.html#GetBitmapIndex]] の返り値 [#y52f61b4] - リファレンスだとインデックスなしのときは空文字列とあるが実際は NULL が返ってくるっぽい (2006/11/09) ** GetHTTP() / ThrowHTTP() の結果 [#rc0dc348] - ..\System\HttpResult - エラーでないときは 0 みたい (2006/11/16) - 権限なしの場合 -1 ** プロパティに NULL を書き込もうとしても何も起こらない [#k99eafd2] - プロパティの値は以前のまま (2006/12/03) // ---------------------------------------------------------------------------- * その他 [#aafbf123] ** コンテキストメニューからそれっぽくウィンドウ位置固定/解除 [#l8c91081] - #highlight(ayaori:nogutter:nocontrols){{ action StartUp@(false) { MenuItemAdd("ウィンドウ位置固定(&F)", 0, 100, 1, toggleFixWindow, ""); MenuItemSetState("ウィンドウ位置固定(&F)", (GetProperty("VdConfig\\MainWin\\DraggableRect") == "0,0,0,0")); } void toggleFixWindow(string item, string param) { if(GetProperty("VdConfig\\MainWin\\DraggableRect") == "0,0,0,0") { PutProperty("VdConfig\\MainWin\\DraggableRect", ""); MenuItemSetState(item, false); } else { PutProperty("VdConfig\\MainWin\\DraggableRect", "0,0,0,0"); MenuItemSetState(item, true); } ReflectConfig(); } }} - VdConfig\MainWin\Fixed を使った方がどう考えても良い (2006-09-26) - #highlight(ayaori:nogutter:nocontrols){{ action StartUp@(false) { MenuItemAdd("ウィンドウ位置固定(&F)", 0, 100, 1, toggleFixWindow, ""); MenuItemSetState("ウィンドウ位置固定(&F)", (GetProperty("VdConfig\\MainWin\\Fixed") == "1")); } void toggleFixWindow(string item, string param) { if(GetProperty("VdConfig\\MainWin\\Fixed") == "1") { PutProperty("VdConfig\\MainWin\\Fixed", "0"); MenuItemSetState(item, false); } else { PutProperty("VdConfig\\MainWin\\Fixed", "1"); MenuItemSetState(item, true); } ReflectConfig(); } }} ** 起動している他のキャラの検出 [#hba3f3b3] - [[キャラクター制作掲示板 - 他のキャラを知る方法:http://www.praesens.co.jp/pws/develop/pdkbbs/wforum.cgi?mode=allread&no=1742&page=45]] - 1. [1743] Re: 他のキャラを知る方法 - 投稿者:中西@プラエセンス 投稿日:03/11/18(Tue) 17:37 <URL> > 自分のデスクトップで既に起動している他キャラを知る方法はありませんか? > L11系を使うのが本当なんでしょうが、サインインせずに知る方法はありませんか? int L11GetPersonas( int& handle, string PID ) を使うわけですが,自分のPCについてであれば,PIDに"own"を指定します. こうすることで自分自身を指定できますが,この場合は特別処理で, サインインしていなくてもL11系関数が利用できます. -- ローカルのキャラに関してはサインイン不要らしい。 ** 全キャラクターの型番を得る [#r412781a] - [[キャラクター制作掲示板 - GetProperty関数によるプロパティ値の読み可能領域に関しまして:http://www.praesens.co.jp/pws/develop/pdkbbs/wforum.cgi?mode=allread&no=1845&page=15]] -- タイヤネコの Test.aya を参照とのこと。プロパティからベンダーコードリストを取得、同名のフォルダに対して EnumFile し、フォルダが存在すればその中の .psn ファイルを調べる。 -- [[MXCL>開発メモ/MXCL]] に実装。 - system.db にアクセスできるなら psntable テーブルを読むのも手か ** キャラクタの再起動 [#x9e5524b] - exapack.lst を用意しておき、SwitchPackage で起動時と同じパッケージに切り替える ** 吹き出しにαチャンネルを持つ画像を用いた場合 [#ne7bba6c] - ブレンディングはできないみたい - TransparentBorder プロパティは MsgBox にも適用可能みたい ** 更新完了時の挙動 [#lde65f23] - 処理系が一旦リセットされるのでグローバル変数などは必要に応じて再度初期化 or プロパティから復帰などの処理が必要 - see also: [[タイヤネコ:http://www.praesens.co.jp/pws/develop/download_pdk.phtml]]の Event.aya -- 基底状態でなくても再起動するのか要調査 (2006/09/26) --- 基底状態になるまで再起動されないみたい (2006/10/27) - 右クリックメニューはリセットされる (2008/03/11) - RegisterMouseUpFunction のコールバックは更新後も効いてる (2008/03/11) -- でもまあちゃんと初期化しなおしたほうがいいよね ** exa バイナリの互換性 [#f46c35ab] - PWS2002 向けの ayac でコンパイルした exa ファイルは PWS1.x では実行できない ** index.fet が 301/302 の場合、リダイレクト先を追わずにエラーとなる [#k98cb9d7] - 無限ループするよりはマシってことかしら? -- http://www.praesens.co.jp/file/pdk/manual/index_c3.html#doc3_1440 > なお,ファイル中に, #Reference www.personaware.gr.jp/~haruna/ と記述する事で,"一回だけ"他のURLのindex.fetを参照し,その飛んだ先で通常通りの処理を行います.サイト移転などの際に,一時的に使用することを推奨します. ** キャラクタデータのアップロードは全て (テキストファイルであっても) BINARY モードで [#wc94b04e] - ローカルで index.fet を生成した場合、アップロード時に文字コードや改行コードが変換されるとハッシュが一致しなくなる ** exapack.lst にコメントは書けない [#f9665941] - 起動時にアドレス違反 (?) とかが発生 ** SwitchPackage でキャラクタ再起動 [#i73f80a5] - exapack.lst がないと SwitchPackage できない -- 空の exapack.lst を置いておくと SwitchPackage できる (Chararina 3.32β3, 2007/11/02) ** キャラデリ先でDBプラグインがロードできない? [#c2fb6c55] - 2014/03/30 #highlight(end) ---- [[FrontPage]]
テキスト整形のルールを表示する