mirror of
				https://github.com/zenorogue/hyperrogue.git
				synced 2025-10-31 22:12:59 +00:00 
			
		
		
		
	ru:: NPCs
This commit is contained in:
		| @@ -177,11 +177,14 @@ struct man : public entity { | ||||
|  | ||||
| extern man m; | ||||
|  | ||||
| struct sage : public entity { | ||||
| struct npc : public entity { | ||||
|   string sglyph, name; | ||||
|   color_t col; | ||||
|   string text; | ||||
|   double sx() override { return 12; } | ||||
|   double sy() override { return 12; } | ||||
|   string glyph() override { return hallucinating ? "D" : "A"; } | ||||
|   color_t color() override { return hallucinating ? 0xFF0000FF : 0x90FF90FF; } | ||||
|   string glyph() override { return sglyph; } | ||||
|   color_t color() override { return col; } | ||||
|   }; | ||||
|  | ||||
| struct item : public entity { | ||||
|   | ||||
| @@ -118,6 +118,15 @@ void load_room(fhstream& f, cell *c) { | ||||
|         b->pickup_message = scanline_noblank(f); | ||||
|         r.entities.emplace_back(std::move(b));  | ||||
|         } | ||||
|       else if(cap == "NPC") { | ||||
|         auto b = std::make_unique<npc>(); | ||||
|         sscanf(param.c_str(), "%lf%lf%08x", &b->where_x, &b->where_y, &b->col); | ||||
|         s = scanline_noblank(f); | ||||
|         b->sglyph = s[0]; | ||||
|         b->name = s.substr(1); | ||||
|         b->text = scanline_noblank(f); | ||||
|         r.entities.emplace_back(std::move(b)); | ||||
|         } | ||||
|       else println(hlog, "unknown mapline ", s); | ||||
|       } | ||||
|     else println(hlog, "unknown mapline ", s); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Zeno Rogue
					Zeno Rogue