aboutsummaryrefslogtreecommitdiff
path: root/brlyt.c
diff options
context:
space:
mode:
authorNorm MacDownlad <megazig@megazig-desktop.(none)>2009-10-12 05:40:24 -0500
committerNorm MacDownlad <megazig@megazig-desktop.(none)>2009-10-12 05:40:24 -0500
commit86ecc2004c83ec6d178fc004d8b7fe0a1f557862 (patch)
tree7fbcfc6a3f824f904fdd1b927bb87847a0934e26 /brlyt.c
parentdb098418c2f99b5a34553364bdd978e8b37b2874 (diff)
fixed material handling for frames
Diffstat (limited to 'brlyt.c')
-rw-r--r--brlyt.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/brlyt.c b/brlyt.c
index 1e8b3f6..2d777e5 100644
--- a/brlyt.c
+++ b/brlyt.c
@@ -656,7 +656,7 @@ void PrintBRLYTEntry_wnd1(brlyt_entry entry, u8* brlyt_file, mxml_node_t *tag)
{
BRLYT_ReadDataFromMemory(&wndy4mat, brlyt_file, sizeof(brlyt_wnd4_mat));
wndmat = mxmlNewElement(tag, "wnd4mat");
- matrl = mxmlNewElement(wndmat, "material"); mxmlNewTextf(matrl, 0, "%04x", be16(wndy4mat.material));
+ matrl = mxmlNewElement(wndmat, "material"); mxmlElementSetAttrf(matrl, "name", "%s", getMaterial(short_swap_bytes(wndy4mat.material)));
matrl = mxmlNewElement(wndmat, "index"); mxmlNewTextf(matrl, 0, "%02x", wndy4mat.index);
matrl = mxmlNewElement(wndmat, "padding"); mxmlNewTextf(matrl, 0, "%02x", wndy4mat.padding);
}
@@ -2963,12 +2963,16 @@ void WriteBRLYTEntry( mxml_node_t * tree , mxml_node_t * node , u8** tagblob , u
i=0;
mxml_node_t *subsubnode;
subsubnode = mxmlFindElement(subnode, subnode, "material", NULL, NULL, MXML_DESCEND);
- if (subsubnode != NULL)
+ if (subnode != NULL)
{
- char tempCoord[256];
- get_value(subsubnode, tempCoord, 256);
- wndy4mat.material = be16(strtoul(tempCoord, NULL, 16));
- i++;
+ char temp[256];
+ if(mxmlElementGetAttr(subsubnode, "name") != NULL)
+ strcpy(temp, mxmlElementGetAttr(subsubnode, "name"));
+ else{
+ printf("No name attribute found!\nQuitting!\n");
+ exit(1);
+ }
+ wndy4mat.material = short_swap_bytes(findMatOffset(temp));
}
subsubnode = mxmlFindElement(subnode, subnode, "index", NULL, NULL, MXML_DESCEND);
if (subsubnode != NULL)