summaryrefslogtreecommitdiff
path: root/NW4RTools/Models
diff options
context:
space:
mode:
Diffstat (limited to 'NW4RTools/Models')
-rw-r--r--NW4RTools/Models/OpenGL/GLModel.cs14
1 files changed, 10 insertions, 4 deletions
diff --git a/NW4RTools/Models/OpenGL/GLModel.cs b/NW4RTools/Models/OpenGL/GLModel.cs
index 315415e..8ca3f31 100644
--- a/NW4RTools/Models/OpenGL/GLModel.cs
+++ b/NW4RTools/Models/OpenGL/GLModel.cs
@@ -17,7 +17,11 @@ namespace NW4RTools.Models.OpenGL {
SourceModel = rf.GetGroup<Model>("3DModels(NW4R)")[modelName];
// cache some stuff
- m_textureGroup = rf.GetGroup<Texture>("Textures(NW4R)");
+ try {
+ m_textureGroup = rf.GetGroup<Texture>("Textures(NW4R)");
+ } catch (KeyNotFoundException) {
+ // boo
+ }
}
@@ -162,9 +166,11 @@ namespace NW4RTools.Models.OpenGL {
//CalculateNodes();
- foreach (var insn in SourceModel.Bytecode["DrawOpa"].Instructions) {
- if (insn is ByteCode.DrawShapeInstruction) {
- DrawShape(insn as ByteCode.DrawShapeInstruction);
+ if (SourceModel.Bytecode.ContainsKey("DrawOpa")) {
+ foreach (var insn in SourceModel.Bytecode["DrawOpa"].Instructions) {
+ if (insn is ByteCode.DrawShapeInstruction) {
+ DrawShape(insn as ByteCode.DrawShapeInstruction);
+ }
}
}