public void LoadModel(QuakeBlock block) { Renderable gem = new GemGenerator(Color4.Red).Generate(); gem.Position = block.KeyVals["origin"].Value.ToVector3(); gem.Transformability = Definition.RenderableTransformability; Renderables.Add(gem); }
public void BasicParsing() { var raw = new List <string>() { "{", "( -256 512 512 ) ( -256 512 0 ) ( -256 0 512 ) TRIGGER [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1" + "( -768 0 512 ) ( -768 0 0 ) ( -768 512 512 ) TRIGGER [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1" + "( -256 0 512 ) ( -256 0 0 ) ( -768 0 512 ) TRIGGER [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1" + "( -768 512 512 ) ( -768 512 0 ) ( -256 512 512 ) TRIGGER [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1" + "( -768 512 0 ) ( -768 0 0 ) ( -256 512 0 ) TRIGGER [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1" + "( -256 0 512 ) ( -768 0 512 ) ( -256 512 512 ) TRIGGER [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1", "}" }; var block = new QuakeBlock(raw, 0, new DefinitionDictionary()); }
public void ParseSingleBlock() { // Test block lifted from ad_sepulcher. List <string> raw = new List <string>() { "{", "\"_minlight\" \"25\"" + "\"classname\" \"func_detail_illusionary\"" + "\"_phong\" \"1\"" + "\"spawnflags\" \"32\"" + "\"_shadow\" \"1\"", "{", "( -1232 -1076 32 ) ( -1232 -1074 32 ) ( -1232 -1074 -104 ) skip 0 0 0 1.000000 1.000000" + "( -1280 -1084 -104 ) ( -1280 -1082 -104 ) ( -1280 -1082 32 ) skip 0 0 0 1.000000 1.000000" + "( -1280 -1082 0 ) ( -1280 -1082 -136 ) ( -1232 -1074 -136 ) {vinehang2b -104 64 0 1.000000 1.000000" + "( -1280 -1084 -136 ) ( -1280 -1084 0 ) ( -1232 -1076 0 ) {vinehang2b -104 64 0 1.000000 1.000000" + "( -1280 -1084 0 ) ( -1280 -1082 0 ) ( -1232 -1074 0 ) skip 0 0 0 1.000000 1.000000" + "( -1280 -1082 -136 ) ( -1280 -1084 -136 ) ( -1232 -1076 -136 ) skip 0 0 0 1.000000 1.000000", "}", "{", "( -1184 -1088 -136 ) ( -1184 -1086 -136 ) ( -1232 -1074 -136 ) skip 0 0 0 1.000000 1.000000" + "( -1184 -1086 0 ) ( -1184 -1088 0 ) ( -1232 -1076 0 ) skip 0 0 0 1.000000 1.000000" + "( -1184 -1088 0 ) ( -1184 -1088 -136 ) ( -1232 -1076 -136 ) {vinehang2b -104 64 0 1.000000 1.000000" + "( -1184 -1086 -136 ) ( -1184 -1086 0 ) ( -1232 -1074 0 ) {vinehang2b -104 64 0 1.000000 1.000000" + "( -1232 -1076 -104 ) ( -1232 -1074 -104 ) ( -1232 -1074 32 ) skip 0 0 0 1.000000 1.000000" + "( -1184 -1088 32 ) ( -1184 -1086 32 ) ( -1184 -1086 -104 ) skip 0 0 0 1.000000 1.000000", "}", "}" }; var block = new QuakeBlock(raw, 1, new DefinitionDictionary()); Assert.That(block.KeyVals.Count, Is.EqualTo(5)); var child = block.Children[0] as QuakeBlock; Assert.That(child.Solids[0].Sides[2].TextureName, Is.EqualTo("{vinehang2b")); Assert.That(child.Solids[0].Sides[3].TextureName, Is.EqualTo("{vinehang2b")); }