mirror of
				https://github.com/TES3MP/openmw-tes3mp.git
				synced 2025-10-31 21:26:48 +00:00 
			
		
		
		
	Remove redundant Services enum
This commit is contained in:
		
							parent
							
								
									f8ffd85146
								
							
						
					
					
						commit
						19e07fad30
					
				
					 4 changed files with 14 additions and 63 deletions
				
			
		|  | @ -360,47 +360,8 @@ namespace MWDialogue | |||
|             } | ||||
|         } | ||||
| 
 | ||||
|         // check the available services of this actor
 | ||||
|         int services = mActor.getClass().getServices(mActor); | ||||
| 
 | ||||
|         int windowServices = 0; | ||||
| 
 | ||||
|         if (services & ESM::NPC::Weapon | ||||
|             || services & ESM::NPC::Armor | ||||
|             || services & ESM::NPC::Clothing | ||||
|             || services & ESM::NPC::Books | ||||
|             || services & ESM::NPC::Ingredients | ||||
|             || services & ESM::NPC::Picks | ||||
|             || services & ESM::NPC::Probes | ||||
|             || services & ESM::NPC::Lights | ||||
|             || services & ESM::NPC::Apparatus | ||||
|             || services & ESM::NPC::RepairItem | ||||
|             || services & ESM::NPC::Misc) | ||||
|             windowServices |= MWGui::DialogueWindow::Service_Trade; | ||||
| 
 | ||||
|         if((mActor.getTypeName() == typeid(ESM::NPC).name() && !mActor.get<ESM::NPC>()->mBase->getTransport().empty()) | ||||
|                 || (mActor.getTypeName() == typeid(ESM::Creature).name() && !mActor.get<ESM::Creature>()->mBase->getTransport().empty())) | ||||
|             windowServices |= MWGui::DialogueWindow::Service_Travel; | ||||
| 
 | ||||
|         if (services & ESM::NPC::Spells) | ||||
|             windowServices |= MWGui::DialogueWindow::Service_BuySpells; | ||||
| 
 | ||||
|         if (services & ESM::NPC::Spellmaking) | ||||
|             windowServices |= MWGui::DialogueWindow::Service_CreateSpells; | ||||
| 
 | ||||
|         if (services & ESM::NPC::Training) | ||||
|             windowServices |= MWGui::DialogueWindow::Service_Training; | ||||
| 
 | ||||
|         if (services & ESM::NPC::Enchanting) | ||||
|             windowServices |= MWGui::DialogueWindow::Service_Enchant; | ||||
| 
 | ||||
|         if (services & ESM::NPC::Repair) | ||||
|             windowServices |= MWGui::DialogueWindow::Service_Repair; | ||||
| 
 | ||||
|         MWGui::DialogueWindow* win = MWBase::Environment::get().getWindowManager()->getDialogueWindow(); | ||||
| 
 | ||||
|         win->setServices (windowServices); | ||||
| 
 | ||||
|         // sort again, because the previous sort was case-sensitive
 | ||||
|         keywordList.sort(Misc::StringUtils::ciLess); | ||||
|         win->setKeywords(keywordList); | ||||
|  |  | |||
|  | @ -237,7 +237,6 @@ namespace MWGui | |||
| 
 | ||||
|     DialogueWindow::DialogueWindow() | ||||
|         : WindowBase("openmw_dialogue_window.layout") | ||||
|         , mServices(0) | ||||
|         , mEnabled(false) | ||||
|         , mGoodbye(false) | ||||
|         , mPersuasionDialog() | ||||
|  | @ -411,6 +410,11 @@ namespace MWGui | |||
|         mTopicLinks.clear(); | ||||
|         mKeywordSearch.clear(); | ||||
| 
 | ||||
|         int services = mPtr.getClass().getServices(mPtr); | ||||
| 
 | ||||
|         bool travel = (mPtr.getTypeName() == typeid(ESM::NPC).name() && !mPtr.get<ESM::NPC>()->mBase->getTransport().empty()) | ||||
|                 || (mPtr.getTypeName() == typeid(ESM::Creature).name() && !mPtr.get<ESM::Creature>()->mBase->getTransport().empty()); | ||||
| 
 | ||||
|         bool isCompanion = !mPtr.getClass().getScript(mPtr).empty() | ||||
|                 && mPtr.getRefData().getLocals().getIntVar(mPtr.getClass().getScript(mPtr), "companion"); | ||||
| 
 | ||||
|  | @ -420,25 +424,25 @@ namespace MWGui | |||
|         if (mPtr.getTypeName() == typeid(ESM::NPC).name()) | ||||
|             mTopicsList->addItem(gmst.find("sPersuasion")->getString()); | ||||
| 
 | ||||
|         if (mServices & Service_Trade) | ||||
|         if (services & ESM::NPC::AllItems) | ||||
|             mTopicsList->addItem(gmst.find("sBarter")->getString()); | ||||
| 
 | ||||
|         if (mServices & Service_BuySpells) | ||||
|         if (services & ESM::NPC::Spells) | ||||
|             mTopicsList->addItem(gmst.find("sSpells")->getString()); | ||||
| 
 | ||||
|         if (mServices & Service_Travel) | ||||
|         if (services & travel) | ||||
|             mTopicsList->addItem(gmst.find("sTravel")->getString()); | ||||
| 
 | ||||
|         if (mServices & Service_CreateSpells) | ||||
|         if (services & ESM::NPC::Spellmaking) | ||||
|             mTopicsList->addItem(gmst.find("sSpellmakingMenuTitle")->getString()); | ||||
| 
 | ||||
|         if (mServices & Service_Enchant) | ||||
|         if (services & ESM::NPC::Enchanting) | ||||
|             mTopicsList->addItem(gmst.find("sEnchanting")->getString()); | ||||
| 
 | ||||
|         if (mServices & Service_Training) | ||||
|         if (services & ESM::NPC::Training) | ||||
|             mTopicsList->addItem(gmst.find("sServiceTrainingTitle")->getString()); | ||||
| 
 | ||||
|         if (mServices & Service_Repair) | ||||
|         if (services & ESM::NPC::Repair) | ||||
|             mTopicsList->addItem(gmst.find("sRepair")->getString()); | ||||
| 
 | ||||
|         if (isCompanion) | ||||
|  |  | |||
|  | @ -122,20 +122,6 @@ namespace MWGui | |||
|         void onFrame(float dt); | ||||
|         void clear() { resetReference(); } | ||||
| 
 | ||||
|         // make sure to call these before setKeywords()
 | ||||
|         void setServices(int services) { mServices = services; } | ||||
| 
 | ||||
|         enum Services | ||||
|         { | ||||
|             Service_Trade = 0x01, | ||||
|             Service_BuySpells = 0x02, | ||||
|             Service_CreateSpells = 0x04, | ||||
|             Service_Enchant = 0x08, | ||||
|             Service_Training = 0x10, | ||||
|             Service_Travel = 0x20, | ||||
|             Service_Repair = 0x40 | ||||
|         }; | ||||
| 
 | ||||
|     protected: | ||||
|         void onSelectTopic(const std::string& topic, int id); | ||||
|         void onByeClicked(MyGUI::Widget* _sender); | ||||
|  | @ -152,8 +138,6 @@ namespace MWGui | |||
|         void updateOptions(); | ||||
|         void restock(); | ||||
| 
 | ||||
|         int mServices; | ||||
| 
 | ||||
|         bool mEnabled; | ||||
| 
 | ||||
|         bool mGoodbye; | ||||
|  |  | |||
|  | @ -43,6 +43,8 @@ struct NPC | |||
|       Misc          = 0x00400, | ||||
|       Potions       = 0x02000, | ||||
| 
 | ||||
|       AllItems = Weapon|Armor|Clothing|Books|Ingredients|Picks|Probes|Lights|Apparatus|RepairItem|Misc|Potions, | ||||
| 
 | ||||
|       // Other services
 | ||||
|       Spells        = 0x00800, | ||||
|       MagicItems    = 0x01000, | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue