OBLIVION MOD作成支援/相談スレPart5

このエントリーをはてなブックマークに追加
638名無しさんの野望
お知恵を拝借

建物の中に複数の風呂セルを持っている状況で、スクリプト内でセルを決め撃ちせずに
風呂セルを判定する方法はないでしょうか。(スクリプトに手を加えずに後から誰でも風呂を
追加できるような運用を想定しています)

最初は if actorRef.GetInCell bath のセルID前方一致で引っ掛けようと思っていたのですが、
どうもCS wikiの記述とはうらはらに完全一致でしか動作してくれないようです。

MarkerRatもuniqueリファレンスでしか判定できないようですし、何かいい知恵はないでしょうか。
639名無しさんの野望:2010/01/11(月) 17:02:51 ID:36PRMiMP
>>638
同一esp内にある風呂セルって解釈でいい?
セル名の変更はあり?(以下のように設定するのはありか否か?)
風呂セル1 aaaBathXXX001
風呂セル2 aaaBathXXX002
風呂セル3 aaaBathXXX003…
それからダミーでaaaBathセルを作る(IDのみで可)
これならGetInCell aaaBath == 1が使えると思うけどこういう意味じゃないかな?
風呂を追加する場合はセル名をaaaBathで始めることというお約束をReadmeに明記するとか?
640名無しさんの野望:2010/01/11(月) 17:37:25 ID:zqjI4EJX
>>639
レスどうもです。
ご推察のとおり、同一esp内、セル名変更あり、お約束あり、script変更不可能です。

CS wikiの説明に従い、そのようなGetInCellでの前方一致の判定を想定していたのですが、
CS上では完全一致でないとコンパイルしてもらえませんでした。
当方の環境はwin7/obsev18beta4です。といってもobse関数じゃないし・・・なんでらほい

has water/player owner cellでの判定も考えたんですが、ちと煩雑かな、と。(readme的に)