Beispiel #1
0
void IN_DrawStatBack(void)
{
    DGL_SetMaterialUI(P_ToPtr(DMU_MATERIAL, Materials_ResolveUriCString("Flats:FLOOR16")), DGL_REPEAT, DGL_REPEAT);
    DGL_Enable(DGL_TEXTURE_2D);

    DGL_Color4f(1, 1, 1, 1);
    DGL_DrawRectf2Tiled(0, 0, SCREENWIDTH, SCREENHEIGHT, 64, 64);

    DGL_Disable(DGL_TEXTURE_2D);
}
void P_InitTerrainTypes(void)
{
    struct matttypedef_s {
        const char* materialUri; ///< Percent encoded.
        const char* ttName;
    } defs[] = {
#if __JDOOM__ || __JDOOM64__
        { "Flats:FWATER1",  "Water" },
        { "Flats:LAVA1",    "Lava" },
        { "Flats:BLOOD1",   "Blood" },
        { "Flats:NUKAGE1",  "Nukage" },
        { "Flats:SLIME01",  "Slime" },
#endif
#if __JHERETIC__
        { "Flats:FLTWAWA1", "Water" },
        { "Flats:FLTFLWW1", "Water" },
        { "Flats:FLTLAVA1", "Lava" },
        { "Flats:FLATHUH1", "Lava" },
        { "Flats:FLTSLUD1", "Sludge" },
#endif
#if __JHEXEN__
        { "Flats:X_005",    "Water" },
        { "Flats:X_001",    "Lava" },
        { "Flats:X_009",    "Sludge" },
        { "Flats:F_033",    "Ice" },
#endif
        { 0, 0 }
    };
    uint i;

    if(materialTTypes)
        Z_Free(materialTTypes);
    materialTTypes = 0;
    numMaterialTTypes = maxMaterialTTypes = 0;

    for(i = 0; defs[i].materialUri; ++i)
    {
        Material* mat;
        uint idx = findTerrainTypeNumForName(defs[i].ttName);
        if(!idx) continue;

        mat = P_ToPtr(DMU_MATERIAL, Materials_ResolveUriCString(defs[i].materialUri));
        if(!mat) continue;

        App_Log(DE2_DEV_RES_VERBOSE, "P_InitTerrainTypes: Material \"%s\" linked to terrain type '%s'",
                defs[i].materialUri, defs[i].ttName);

        getMaterialTerrainType(mat, idx);
    }
}