public void OnStart(QGetContent content) { Sprite = new QSprite(this, "cavern_wall"); Sprite.Origin = new QVec(8); Sprite.Layer = 1f; Sprite.Color *= 0.4f; Transform.Scale = new QVec(4); QRect wall = Scene.MegaTexture["cavern_biome"].Split(16, 16)[1]; using (var layer2 = content.Texture("map1_3").GetPartialTexture(new QRect(0, 0, 128, 128))) { OutsideTiles = QMapTools.CreateSpriteLayer(layer2, Transform.Position, new QVec(16, 16) * Transform.Scale, color => { if (color == new QColor(60, 45, 30)) { return(wall); } return(QRect.Empty); }); InsideTiles = QMapTools.CreateSpriteLayer(layer2, Transform.Position, new QVec(16, 16) * Transform.Scale, color => { if (color == new QColor(134, 97, 61)) { return(wall); } return(QRect.Empty); }); } }
public void OnStart(QGetContent content) { var cavernBiomes = content.TextureSource("cavern_biome").Split(16, 16); Sprite = new QSprite(this, cavernBiomes[0]); Sprite.Scale = QVec.One * 4; BackgroundTiles = QMapTools.CreateSpriteLayer(content, "biomeMapBack", QVec.Zero, QVec.One * 64, c => { if (c == new QColor(60, 45, 30)) { return(cavernBiomes[1]); } return(QRect.Empty); }); LevelTiles = QMapTools.CreateSpriteLayer(content, "biomeMapBack", QVec.Zero, QVec.One * 64, c => { if (c == new QColor(134, 97, 61)) { return(cavernBiomes[1]); } return(QRect.Empty); }); // tiles = QMapTools.CreateSpriteLayer(content, "biomeMapBack", QVec.Zero, QVec.One * 64, c => // { // if(c == new QColor(60, 45, 30)) // { // return cavernBiomes[1]; // } // if(c == new QColor(134, 97, 61)) // { // return cavernBiomes[1]; // } // return QRect.Empty; // }); // // var b = content.Texture("biomeMapBack").Bounds; // //quad = new QQuad(new QRect(0,0, b.Width * 64, b.Height * 64)); // quad = new QQuad(new QRect(0,0, b.Width * 64, b.Height * 64)); // // for(int i = 0; i < tiles.Count; i++) // { // quad.Insert(new QRect(tiles[i].Position, tiles[i].Source.Size)); // } }