差分
このページの2つのバージョン間の差分を表示します。
次のリビジョン | 前のリビジョン | ||
メイドさんを○○する方法 [2023/04/14 16:25] fumble 作成 |
メイドさんを○○する方法 [2023/04/17 15:26] (現在) fumble |
||
---|---|---|---|
行 1: | 行 1: | ||
=====メイドさんを○○する方法===== | =====メイドさんを○○する方法===== | ||
- | メイド(Maidクラス) | + | ====メイド(Maidクラス)==== |
- | メイドはID(GUID)で識別出来ます。 | + | メイドはID(GUID)で識別出来ます。\\ |
- | メイドは表示されるまでボディを持っていません。 | + | メイドは表示されるまでボディを持っていません。\\ |
- | メイドと呼ばれますが、男を含めキャラクター全般を扱います。 | + | メイドと呼ばれますが、男を含めキャラクター全般を扱います。\\ |
- | メイドさんをあれこれしたい場合はこのクラスのインスタンスをとって操作します。 | + | メイドさんをあれこれしたい場合はこのクラスのインスタンスをとって操作します。\\ |
- | 中身の代表的なもの | + | ===中身の代表的なもの=== |
+ | 詳細な中身は Maid にキャレットを当てて F12 で確認してください。\\ | ||
- | Parts(MaidPartsクラス) | + | ===Parts(MaidPartsクラス)=== |
- | メイドのパーツと思いきや、ただの色情報。 | + | メイドのパーツと思いきや、ただの色情報。\\ |
- | status(Statusクラス) | + | ===status(Statusクラス)=== |
- | ステータス情報、名前などもここにある、常に存在すると思われる。 | + | ステータス情報、名前などもここにある、常に存在すると思われる。\\ |
- | body0(TBodyクラス) | + | ===body0(TBodyクラス)=== |
- | 表示用の情報、表示中のみ存在する。 | + | 表示用の情報、表示中のみ存在する、スロットの情報などもこの中。\\ |
+ | 表示されるときに作成される、表示されるときに次項のPropに従って作成される。\\ | ||
+ | スロット情報は表示されるときにPropに従うということなので表示されていない場合はPropの変更が次回表示時に反映されるが、既に表示されている場合はPropを変更しても表示には影響しない、それを反映するのがひな形の処理で行ったAllProcPropSeqStartとうことになる。\\ | ||
+ | TBodySkinがスロット毎のデータ、ここの持ち方がCOM3D2とCOM3D2.5で異なっておりCOM3D2.5でプラグインが壊滅した原因。\\ | ||
- | Prop(MaidPropクラス) | + | ===Prop(MaidPropクラス)=== |
- | プロパティ?、ステータスではない情報、エディット内容が入っている。 | + | プロパティ?、ステータスではない情報、エディット内容が入っている。\\ |
+ | これは常に存在すると思われる。\\ | ||
+ | 取得はGetProp、設定はSetProp、他にもDelPropなどもある。 | ||
- | 全登録メイド/ | + | ====全登録メイド/ |
- | メイドさん | + | ===メイドさん=== |
- | CharacterMgr.GetStockMaidList(); | + | CharacterMgr.GetStockMaidList(); |
- | 男 | + | ===男=== |
- | CharacterMgr.GetStockMan(); | + | CharacterMgr.GetStockMan(); |
- | NPCメイドさん | + | ===NPCメイドさん=== |
- | CharacterMgr.GetStockNpcMaid(); | + | CharacterMgr.GetStockNpcMaid(); |
- | NPC男 | + | ===NPC男=== |
- | CharacterMgr.GetStockNpcMan(); | + | CharacterMgr.GetStockNpcMan(); |
- | 参考 - 全メイドのIDと名称取得 | + | 参考 - 全メイドのIDと名称取得\\ |
- | var maids = GameMain.Instance.CharacterMgr.GetStockMaidList(); | + | |
- | foreach (var maid in maids) | + | foreach (var maid in maids) |
- | { | + | { |
- | Debug.Log($" | + | Debug.Log($" |
- | } | + | } |
- | アクティブ(表示中)なメイド/ | + | ====アクティブ(表示中)なメイド/ |
- | CharacterMgr.GetMaid(番号); | + | CharacterMgr.GetMaid(番号); |
- | CharacterMgr.GetMaid(ID); | + | CharacterMgr.GetMaid(ID); |
- | CharacterMgr.GetMan(番号); | + | CharacterMgr.GetMan(番号); |
- | アクティブ(表示中)なメイド/ | + | ====アクティブ(表示中)なメイド/ |
- | CharacterMgr.GetMaidCount(); | + | CharacterMgr.GetMaidCount(); |
- | CharacterMgr.GetManCount(); | + | CharacterMgr.GetManCount(); |
- | 参考 - アクティブなメイドのIDと名称取得 | + | 参考 - アクティブなメイドのIDと名称取得\\ |
- | var characterMgr = GameMain.Instance.CharacterMgr; | + | var characterMgr = GameMain.Instance.CharacterMgr; |
- | for (var index = 0; index < characterMgr.GetMaidCount(); | + | for (var index = 0; index < characterMgr.GetMaidCount(); |
- | { | + | { |
- | var maid = characterMgr(index); | + | var maid = characterMgr(index); |
- | Debug.Log($" | + | Debug.Log($" |
- | } | + | } |
- | ※この正攻法では非正規な方法で表示されているメイドは取得できません。 | + | ※この正攻法では非正規な方法で表示されているメイドは取得できません。\\ |
- | アクティブ(表示中)なメイド/ | + | ====アクティブ(表示中)なメイド/ |
- | GetStockMaidList等ですべてとって、Maid.body0がnullでなくMaid.Visibleがtrueなものを抽出する。 | + | GetStockMaidList等ですべてとって、Maid.body0がnullでなくMaid.Visibleがtrueなものを抽出する。\\ |
- | 参考 - 全メイドのIDと名称取得 | + | 参考 - 全メイドのIDと名称取得\\ |
- | var maids = GameMain.Instance.CharacterMgr.GetStockMaidList().Where(maid=> | + | |
- | foreach (var maid in maids) | + | foreach (var maid in maids) |
- | { | + | { |
- | Debug.Log($" | + | Debug.Log($" |
- | } | + | } |
- | ステータス情報(Statusクラス) | + | ====ステータス情報(Statusクラス)==== |
- | 直接みればわかりますが、ステータス情報が入っています。 | + | 直接みればわかりますが、ステータス情報が入っています。\\ |
+ | F12で見に行けばわくわくするかも?\\ | ||
- | 名前 | + | ===名前=== |
- | 姓(lastName), | + | 姓(lastName), |
- | 呼び名(callName: | + | 呼び名(callName: |
- | など | + | など\\ |
- | 性格タイプ(Personal.Dataクラス) | + | ===性格タイプ(Personal.Dataクラス)=== |
- | personal | + | personal\\ |
- | メイドの性格(無垢とかふわ妹など) | + | メイドの性格(無垢とかふわ妹など)\\ |
- | 表示用の名前はdrawName。(例 : maid.status.personal.drawName) | + | 表示用の名前はdrawName。(例 : maid.status.personal.drawName)\\ |
- | 関係(Relationクラス) | + | ===関係(Relationクラス)=== |
- | relation | + | relation\\ |
- | 関係で表示されるもの。 | + | 関係で表示されるもの。\\ |
- | 各パラメータ | + | ===各パラメータ=== |
- | base- 基本値 | + | |base|基本値| |
- | current- 現在値 | + | |current|現在値| |
- | max- 最大値 | + | |max|最大値| |
- | baseMax- 基本最大値 | + | |baseMax|基本最大値| |
- | などが付いているものもあります。 | + | などが付いているものもあります。\\ |
- | ダンスであれば以下のような形で、danceは参照だけ出来る形です。 | + | ダンスであれば以下のような形で、danceは参照だけ出来る形です。\\ |
- | ダンスの値を書き換えたい場合はbaseDanceを変更します。 | + | ダンスの値を書き換えたい場合はbaseDanceを変更します。\\ |
- | dance 基本値+ボーナス値 | + | |dance|基本値+ボーナス値| |
- | baseDance 基本値 | + | |baseDance|基本値| |
- | 体力であれば | + | 体力であれば以下のような形で、ボーナス値が含まれるmaxHpは参照のみです。\\ |
- | maxHp 基本最大値+ボーナス値 | + | 体力が減らないようにするには、毎フレームcurrentHpにmaxHpの値を入れ続ける・・・というようなことを行います。 |
- | baseMaxHp 基本最大値 | + | |maxHp|基本最大値+ボーナス値| |
- | currentHp 現在値 | + | |baseMaxHp|基本最大値| |
+ | |currentHp|現在値| | ||