Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- r3dTerrain2::LoadLayerFromScript( Script_c *script, r3dTerrainLayer *layer )
- {
- #if !R3D_TERRAIN_V2_GRAPHICS
- return 0;
- #endif
- // fixed buffer steepsounds
- char buffer[ MAX_PATH ];
- char szName[ MAX_PATH ];
- int hasTextures = 0;
- int DownScale = GetTerraTexDownScale();
- layer->MaterialTypeName = "";
- script->SkipToken( "{" );
- while ( ! script->EndOfFile() )
- {
- script->GetToken( buffer );
- if ( *buffer == '}' )
- break;
- if( ! strcmp( buffer, "name:" ) )
- {
- script->GetString( szName, sizeof( szName ) );
- layer->Name = szName;
- }
- else if ( ! strcmp( buffer, "map_diffuse:" ) )
- {
- hasTextures = 1;
- script->GetString( szName, sizeof( szName ) );
- layer->DiffuseTex = r3dRenderer->LoadTexture( szName, D3DFMT_UNKNOWN, false, DownScale );
- }
- else if ( ! strcmp( buffer, "map_normal:" ) )
- {
- hasTextures = 1;
- script->GetString( szName, sizeof( szName ) );
- layer->NormalTex = r3dRenderer->LoadTexture( szName, D3DFMT_UNKNOWN, false, DownScale );
- }
- else if ( ! strcmp( buffer, "scale_u:" ) )
- {
- layer->ScaleU = script->GetFloat();
- }
- else if ( ! strcmp( buffer, "scale_v:" ) )
- {
- layer->ScaleV = script->GetFloat();
- }
- else if ( ! strcmp( buffer, "specular:" ) )
- {
- layer->SpecularPow = script->GetFloat();
- }
- else if( ! strcmp( buffer, "mat_type:" ) )
- {
- char buff[ 512 ];
- buff[ sizeof buff - 1 ] = 0;
- script->GetLine( buff, sizeof buff - 1 );
- if(strstr(strupr(buff), "CONCRETE"))
- strcpy(buff,"Concrete");
- else if(strstr(strupr(buff), "DIRT"))
- strcpy(buff,"Dirt");
- else if(strstr(strupr(buff), "SAND"))
- strcpy(buff,"Sand");
- else if(strstr(strupr(buff), "SNOW"))
- strcpy(buff,"Snow");
- else if(strstr(strupr(buff), "GRASS"))
- strcpy(buff,"Grass");
- else if(strstr(strupr(buff), "FOREST"))
- strcpy(buff,"Forest");
- else if(strstr(strupr(buff), "WOOD"))
- strcpy(buff,"Wood");
- else if(strstr(strupr(buff), "METAL_RESOURCES"))
- strcpy(buff,"Metal_Resources");
- else if(strstr(strupr(buff), "WOOD_RESOURCES"))
- strcpy(buff,"Wood_Resources");
- else if(strstr(strupr(buff), "WATER"))
- strcpy(buff,"Water");
- else if(strstr(strupr(buff), "METAL"))
- strcpy(buff,"Metal");
- layer->MaterialTypeName = buff;
- }
- }
- return hasTextures;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement