+ clay and associated items
This commit is contained in:
		
							parent
							
								
									d7b768dc4b
								
							
						
					
					
						commit
						ba1460a582
					
				
							
								
								
									
										
											BIN
										
									
								
								data/clay.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								data/clay.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 613 B | 
							
								
								
									
										
											BIN
										
									
								
								data/clay_brick.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								data/clay_brick.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 249 B | 
							
								
								
									
										
											BIN
										
									
								
								data/lump_of_clay.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								data/lump_of_clay.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 210 B | 
| @ -160,8 +160,12 @@ video::ITexture * CraftItem::getImage() | ||||
| 		name = "lump_of_coal.png"; | ||||
| 	else if(m_subname == "lump_of_iron") | ||||
| 		name = "lump_of_iron.png"; | ||||
| 	else if(m_subname == "lump_of_clay") | ||||
| 		name = "lump_of_clay.png"; | ||||
| 	else if(m_subname == "steel_ingot") | ||||
| 		name = "steel_ingot.png"; | ||||
| 	else if(m_subname == "clay_brick") | ||||
| 		name = "clay_brick.png"; | ||||
| 	else if(m_subname == "rat") | ||||
| 		name = "rat.png"; | ||||
| 	else | ||||
| @ -199,7 +203,7 @@ u16 CraftItem::getDropCount() | ||||
| 
 | ||||
| bool CraftItem::isCookable() | ||||
| { | ||||
| 	if(m_subname == "lump_of_iron") | ||||
| 	if(m_subname == "lump_of_iron" || m_subname == "lump_of_clay") | ||||
| 	{ | ||||
| 		return true; | ||||
| 	} | ||||
| @ -212,6 +216,8 @@ InventoryItem *CraftItem::createCookResult() | ||||
| 	{ | ||||
| 		return new CraftItem("steel_ingot", 1); | ||||
| 	} | ||||
| 	else if(m_subname == "lump_of_clay") | ||||
| 		return new CraftItem("clay_brick", 1); | ||||
| 	return NULL; | ||||
| } | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										12
									
								
								src/map.cpp
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								src/map.cpp
									
									
									
									
									
								
							| @ -3141,6 +3141,13 @@ void makeChunk(ChunkMakeData *data) | ||||
| 		if(have_sand == false) | ||||
| 			continue; | ||||
| 
 | ||||
| 		// Determine whether to have clay in the sand here
 | ||||
| 		double claynoise = noise2d_perlin( | ||||
| 				0.5+(float)p2d.X/500, 0.5+(float)p2d.Y/500, | ||||
| 				data->seed+4321, 8, 0.95); | ||||
| 
 | ||||
| 		bool have_clay = have_sand && (claynoise > 0.95); | ||||
| 
 | ||||
| 		// Find ground level
 | ||||
| 		s16 surface_y = find_ground_level_clever(data->vmanip, p2d); | ||||
| 		 | ||||
| @ -3157,7 +3164,10 @@ void makeChunk(ChunkMakeData *data) | ||||
| 				MapNode *n = &data->vmanip.m_data[i]; | ||||
| 				if(n->d == CONTENT_MUD || n->d == CONTENT_GRASS) | ||||
| 				{ | ||||
| 					n->d = CONTENT_SAND; | ||||
| 					if(have_clay && (surface_y == WATER_LEVEL)) | ||||
| 						n->d = CONTENT_CLAY; | ||||
| 					else | ||||
| 						n->d = CONTENT_SAND; | ||||
| 				} | ||||
| 				else | ||||
| 				{ | ||||
|  | ||||
| @ -189,13 +189,21 @@ void init_mapnode() | ||||
| 	f->is_ground_content = true; | ||||
| 	f->dug_item = std::string("MaterialItem ")+itos(CONTENT_SAND)+" 1"; | ||||
| 	 | ||||
| 	i = CONTENT_CLAY; | ||||
| 	f = &g_content_features[i]; | ||||
| 	f->setAllTextures("clay.png"); | ||||
| 	f->setInventoryTextureCube("clay.png", "clay.png", "clay.png"); | ||||
| 	f->param_type = CPT_MINERAL; | ||||
| 	f->is_ground_content = true; | ||||
| 	f->dug_item = std::string("CraftItem lump_of_clay 4"); | ||||
| 	 | ||||
| 	i = CONTENT_BRICK; | ||||
| 	f = &g_content_features[i]; | ||||
| 	f->setAllTextures("brick.png"); | ||||
| 	f->setInventoryTextureCube("brick.png", "brick.png", "brick.png"); | ||||
| 	f->param_type = CPT_MINERAL; | ||||
| 	f->is_ground_content = true; | ||||
| 	f->dug_item = std::string("MaterialItem ")+itos(i)+" 1"; | ||||
| 	f->dug_item = std::string("CraftItem clay_brick 4"); | ||||
| 	 | ||||
| 	i = CONTENT_TREE; | ||||
| 	f = &g_content_features[i]; | ||||
|  | ||||
| @ -104,6 +104,7 @@ void init_content_inventory_texture_paths(); | ||||
| #define CONTENT_SANDSTONE 22 | ||||
| #define CONTENT_CACTUS 23 | ||||
| #define CONTENT_BRICK 24 | ||||
| #define CONTENT_CLAY 25 | ||||
| 
 | ||||
| /*
 | ||||
| 	Content feature list | ||||
|  | ||||
| @ -71,6 +71,7 @@ void initializeMaterialProperties() | ||||
| 	setDirtLikeDiggingProperties(CONTENT_GRASS, 1.0); | ||||
| 	setDirtLikeDiggingProperties(CONTENT_GRASS_FOOTSTEPS, 1.0); | ||||
| 	setDirtLikeDiggingProperties(CONTENT_SAND, 1.0); | ||||
| 	setDirtLikeDiggingProperties(CONTENT_CLAY, 1.0); | ||||
| 	 | ||||
| 	setWoodLikeDiggingProperties(CONTENT_TREE, 1.0); | ||||
| 	setWoodLikeDiggingProperties(CONTENT_LEAVES, 0.15); | ||||
|  | ||||
| @ -3987,6 +3987,36 @@ void Server::UpdateCrafting(u16 peer_id) | ||||
| 					found = true; | ||||
| 				} | ||||
| 			} | ||||
| 
 | ||||
| 			// Clay
 | ||||
| 			if(!found) | ||||
| 			{ | ||||
| 				ItemSpec specs[9]; | ||||
| 				specs[3] = ItemSpec(ITEM_CRAFT, "lump_of_clay"); | ||||
| 				specs[4] = ItemSpec(ITEM_CRAFT, "lump_of_clay"); | ||||
| 				specs[6] = ItemSpec(ITEM_CRAFT, "lump_of_clay"); | ||||
| 				specs[7] = ItemSpec(ITEM_CRAFT, "lump_of_clay"); | ||||
| 				if(checkItemCombination(items, specs)) | ||||
| 				{ | ||||
| 					rlist->addItem(new MaterialItem(CONTENT_CLAY, 1)); | ||||
| 					found = true; | ||||
| 				} | ||||
| 			} | ||||
| 
 | ||||
| 			// Brick
 | ||||
| 			if(!found) | ||||
| 			{ | ||||
| 				ItemSpec specs[9]; | ||||
| 				specs[3] = ItemSpec(ITEM_CRAFT, "clay_brick"); | ||||
| 				specs[4] = ItemSpec(ITEM_CRAFT, "clay_brick"); | ||||
| 				specs[6] = ItemSpec(ITEM_CRAFT, "clay_brick"); | ||||
| 				specs[7] = ItemSpec(ITEM_CRAFT, "clay_brick"); | ||||
| 				if(checkItemCombination(items, specs)) | ||||
| 				{ | ||||
| 					rlist->addItem(new MaterialItem(CONTENT_BRICK, 1)); | ||||
| 					found = true; | ||||
| 				} | ||||
| 			} | ||||
| 		} | ||||
| 	 | ||||
| 	} // if creative_mode == false
 | ||||
| @ -4076,6 +4106,7 @@ void setCreativeInventory(Player *player) | ||||
| 		CONTENT_STONE, | ||||
| 		CONTENT_SAND, | ||||
| 		CONTENT_SANDSTONE, | ||||
| 		CONTENT_CLAY, | ||||
| 		CONTENT_BRICK, | ||||
| 		CONTENT_TREE, | ||||
| 		CONTENT_LEAVES, | ||||
|  | ||||
| @ -507,6 +507,7 @@ void TextureSource::buildMainAtlas() | ||||
| 	sourcelist.push_back("mud.png"); | ||||
| 	sourcelist.push_back("sand.png"); | ||||
| 	sourcelist.push_back("sandstone.png"); | ||||
| 	sourcelist.push_back("clay.png"); | ||||
| 	sourcelist.push_back("brick.png"); | ||||
| 	sourcelist.push_back("grass.png"); | ||||
| 	sourcelist.push_back("grass_footsteps.png"); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user