好吧,我有那个代码:
for (int x = 0; x<(worldWidth-1); x++) {
for (int y = 0; y<(worldHeight-1); y++) {
sf::Texture texture;
if (!texture.loadFromFile("images/blocks/" + ruta(mapa[y][x]) + ".png"))
return -1;
sf::RectangleShape rectCaja(sf::Vector2f(16, 16));
rectCaja.setPosition(sf::Vector2f(x*16, y*16));
rectCaja.setTexture(&texture);
window.draw(rectCaja);
}
}
打印盒子(16 * 16像素),这是游戏中的“块”问题是它不打印任何块,它直接崩溃我不知道为什么:/
我知道(通过控制台测试)数组“mapa”没有错......所以我唯一的解释是 ruta 函数不能正常工作......(我已经用 std::string var 对其进行了测试=“污垢”;它工作正常)...:/
std::string ruta(char id) {
if (id=='0') return "air";
if (id=='1') return "stone";
if (id=='2') return "dirt";
if (id=='3') return "grass_side";
if (id=='4') return "coal_ore";
}
如果有人想要保持代码有: http: //pastebin.com/5jvbzwkR
谢谢!:P