ライト・ハック・チュートリアル

SSOWカウンタトップディスプレイベースで
       オリジナル商品が買えるディスプレイを作ろう!

その4-メイン・イベント-


11
 GUIDの変更

ところでGUIDって何??

オブジェクトをクローンすると、トラモグはマジッククッキーを使ってオブジェクトのOBJDにあるGlobal Unique IDを重複しないように振り分けます。
これがObjectIDと呼ばれるもので、オブジェクトをゲームのシステムが特定するためのID、つまりゲームを地図とすると住所のようなものです。 Sims objects IDで調べるのはこのGlobal Unique IDです。
まったく同じ住所が違う場所で使われていたら、様々な不都合があるのは想像できると思います。
ですからこれが重複すると、当該オブの選択や設置で強制終了が起きたり、ID重複オブ2つの画像が合成される、設置までは出来るがそのロットに入ると強制終了するなど、マシン環境によって様々な症状の不具合が発生します。
ゲームが同じIDが2個ある、今あるものがどっちか判断できないよ、と混乱して処理がおかしくなってしまうわけです。

OBJDのGUID=Global Unique IDは、ゲームがそのオブジェクトを区別できるように、トラモグで何かをクローンするときに、マジッククッキーを使ってIDを自動的に割り当ててくれます。しかし、これも完全ではなく、あまり高い確率ではありませんが、重複が起きます。現にいくつか重複が起きています。

元に戻りましょう。
さて、クローンしたときに、BHAV内部で呼び出し指定されているGUIDについては書き換えてくれません。
例えばデフォルトのキャンディのgift内部では、自分のIDをBHAV内で何箇所かで呼び出して、買ったり、誰かに上げたりといった処理をしています。
デフォルトのキャンディがBHAVから参照しているGUIDにしたがって、キャンディ(gift_lolipop.iff)やチョコレート(gift_Chocolates.iff)内部の処理が呼び出されることになるので、普通にキャンディディスプレイをクローンするとこれらが自動的に買えます。

今作成している水饅頭の2つのファイルのうち、enc_wg_mizuman_gift.iffも、購入するところからの動作部分で、ディスプレイのiffから、処理はそっちでしてね、と動作を引き継ぎます。

処理を引き継いだenc_wg_mizuman_giftファイルが、「買う>水饅頭」とか、「あげる>水饅頭」・・・といったアクションを起こし、しかるべき文字や選択肢が出るようにするためには、自分=enc_wg_mizuman_giftを自分のBHAVで読み込めるように、手動でGUID=Global Unique IDを書き換えてやらねばなりません。
ここを書き換えないと、クローンベースが処理しているものしか買えません。
それではオリジナル商品の意味がありませんからね。

と、いうわけでこれから、gift.iffのBHAVを書き換えてやります。

まず、gift.iffのOBJDを開きます。
そして、GUID=Global Unique IDをメモしてください。



この赤枠で囲った部分です。くれぐれも下のOriginal GUIDと間違えないで。
Global Unique IDのほうですよ。

11-1 

gift.iffのBHAV#4096 Get outcome(商品を入手-多分持ち物リストに入っている状態)を開きます。
開いたところの#0、Manege Inventory(直訳すると在庫処理)とあるところを選択します。持ち物になるような購入関連の動作にはこのManege Inventoryというのが入っています。行をクリックすればいいです。



そして画面の右下、HEX parameterという8個の窓、ここの後ろ4つの窓に、
今メモしたGlobal Unique IDを、後ろから2個ずつ1組みで入れていきます。
例えばIDが12345678だと、78 56 34 12となるわけです。
2個ペアは頭からですが、入力は後ろから。ここは非常に間違えやすいので気をつけて。
水饅頭の場合、2D5C3CAEですから、5つ目の窓から順にAE 3C 5C 2D
と入ります。


書き換えるのはここだけではありません。
あと4箇所を同じように書き換える必要があります。

何れも赤で囲んだところを選択すると、Manege Inventoryとあり、GUID:8桁の英数字の記述があります。
画面の右下、HEX parameterの8個中5つ目の窓から4個の窓に最初と同じ手順で2桁ずつメモしたGlobal Unique IDを、同じように入れていきます。

11-2
次は#4097のLine21 CT-Person A Goodにあります。プレゼントしたあとの相手の反応1−喜ぶ>相手がプレゼントをしまった動作後giftが消滅まで。



11-3
#4099のLine19 CT-CT-Person A Badにも。プレゼントしたあとの相手の反応2−嫌がる>捨てた動作後giftが消滅し、デフォルトの踏まれるギフトが出現まで。(あげたものと違う緑の箱が踏み潰されます)



11-4
そして#4101のLine1 CT-Offer on menu(プレゼントを「渡す」などの持ち物メニュー処理)



11-5
#4103のLine4 CT-Buyも。(購入してレジで支払い、giftが自分の持ち物になるまでの処理)



この11-1〜11-5までの、計5箇所を同じ手順で書き換えます。
入力ミスが無いか、しっかり確認して!OK?!
これで、GUID書き換えは終了です!

その5-設置オブの方は?へ
その3-消えたデータ?へ
EnchantedSimsへ戻る