Dawn/assets/games/liminal/prefabs/EthPrefab.xml
2023-06-20 23:57:22 -07:00

65 lines
2.6 KiB
XML

<prefab name="EthPrefab" extend="prefabs/EthPrefabBase" type="">
<item>
<MeshRenderer />
<QuadMeshHost xy0="-0.78236397748, 1" xy1="0.78236397748, -1" />
<SimpleTexturedMaterial ref="faceMaterial" />
</item>
<item>
<MeshRenderer />
<QuadMeshHost xy0="-0.78236397748, 1" xy1="0.78236397748, -1" />
<SimpleTexturedMaterial ref="bodyMaterial" />
</item>
<asset type="texture" name="texture_eth_face_day_anger" ref="faceDayAnger" />
<asset type="texture" name="texture_eth_face_day_confused" ref="faceDayConfused" />
<asset type="texture" name="texture_eth_face_day_eyeroll" ref="faceDayEyeroll" />
<asset type="texture" name="texture_eth_face_day_fear" ref="faceDayFear" />
<asset type="texture" name="texture_eth_face_day_happy" ref="faceDayHappy" />
<asset type="texture" name="texture_eth_face_day_haughty" ref="faceDayHaughty" />
<asset type="texture" name="texture_eth_face_day_neutral" ref="faceDayNeutral" />
<asset type="texture" name="texture_eth_face_day_sad" ref="faceDaySad" />
<asset type="texture" name="texture_eth_face_day_surprised" ref="faceDaySurprised" />
<asset type="texture" name="texture_eth_pose_day_back" ref="poseDayBack" />
<asset type="texture" name="texture_eth_pose_day_cross" ref="poseDayCross" />
<asset type="texture" name="texture_eth_pose_day_front" ref="poseDayFront" />
<asset type="texture" name="texture_eth_pose_day_hips" ref="poseDayHips" />
<asset type="texture" name="texture_eth_pose_day_neutral" ref="poseDayNeutral" />
<code type="properties">
StateProperty&lt;int32_t&gt; faceTile;
StateProperty&lt;int32_t&gt; poseTile;
</code>
<code type="init">
faceTile = 0;
poseTile = 0;
useEffect([&amp;]{
faceMaterial->texture = &amp;(
faceTile == 0 ? faceDayHappy->texture :
faceTile == 1 ? faceDayAnger->texture :
faceTile == 2 ? faceDayConfused->texture :
faceTile == 3 ? faceDayEyeroll->texture :
faceTile == 4 ? faceDayFear->texture :
faceTile == 5 ? faceDayHaughty->texture :
faceTile == 6 ? faceDayNeutral->texture :
faceTile == 7 ? faceDaySad->texture :
faceTile == 8 ? faceDaySurprised->texture :
faceDayHappy->texture
);
}, faceTile)();
useEffect([&amp;]{
bodyMaterial->texture = &amp;(
poseTile == 0 ? poseDayBack->texture :
poseTile == 1 ? poseDayCross->texture :
poseTile == 2 ? poseDayFront->texture :
poseTile == 3 ? poseDayHips->texture :
poseTile == 4 ? poseDayNeutral->texture :
poseDayBack->texture
);
}, poseTile)();
</code>
</prefab>