mirror of
				https://github.com/TES3MP/openmw-tes3mp.git
				synced 2025-10-26 14:56:43 +00:00 
			
		
		
		
	Merge branch 'master' of https://github.com/zinnschlag/openmw into graphics
This commit is contained in:
		
						commit
						a3afb91485
					
				
					 7 changed files with 109 additions and 70 deletions
				
			
		|  | @ -140,25 +140,42 @@ namespace MWScript | |||
| 
 | ||||
|     Compiler::Locals& ScriptManager::getLocals (const std::string& name) | ||||
|     { | ||||
|         ScriptCollection::iterator iter = mScripts.find (name); | ||||
| 
 | ||||
|         if (iter==mScripts.end()) | ||||
|         { | ||||
|             if (!compile (name)) | ||||
|             { | ||||
|                 /// \todo Handle case of cyclic member variable access. Currently this could look up
 | ||||
|                 /// the whole application in an endless recursion.
 | ||||
|             ScriptCollection::iterator iter = mScripts.find (name); | ||||
| 
 | ||||
|                 // failed -> ignore script from now on.
 | ||||
|                 std::vector<Interpreter::Type_Code> empty; | ||||
|                 mScripts.insert (std::make_pair (name, std::make_pair (empty, Compiler::Locals()))); | ||||
|                 throw std::runtime_error ("failed to compile script " + name); | ||||
|             } | ||||
| 
 | ||||
|             iter = mScripts.find (name); | ||||
|             if (iter!=mScripts.end()) | ||||
|                 return iter->second.second; | ||||
|         } | ||||
| 
 | ||||
|         return iter->second.second; | ||||
|         { | ||||
|             std::map<std::string, Compiler::Locals>::iterator iter = mOtherLocals.find (name); | ||||
| 
 | ||||
|             if (iter!=mOtherLocals.end()) | ||||
|                 return iter->second; | ||||
|         } | ||||
| 
 | ||||
|         Compiler::Locals locals; | ||||
| 
 | ||||
|         if (const ESM::Script *script = mStore.get<ESM::Script>().find (name)) | ||||
|         { | ||||
|             int index = 0; | ||||
| 
 | ||||
|             for (int i=0; i<script->mData.mNumShorts; ++i) | ||||
|                 locals.declare ('s', script->mVarNames[index++]); | ||||
| 
 | ||||
|             for (int i=0; i<script->mData.mNumLongs; ++i) | ||||
|                 locals.declare ('l', script->mVarNames[index++]); | ||||
| 
 | ||||
|             for (int i=0; i<script->mData.mNumFloats; ++i) | ||||
|                 locals.declare ('f', script->mVarNames[index++]); | ||||
| 
 | ||||
|             std::map<std::string, Compiler::Locals>::iterator iter = | ||||
|                 mOtherLocals.insert (std::make_pair (name, locals)).first; | ||||
| 
 | ||||
|             return iter->second; | ||||
|         } | ||||
| 
 | ||||
|         throw std::logic_error ("script " + name + " does not exist"); | ||||
|     } | ||||
| 
 | ||||
|     GlobalScripts& ScriptManager::getGlobalScripts() | ||||
|  |  | |||
|  | @ -47,6 +47,7 @@ namespace MWScript | |||
| 
 | ||||
|             ScriptCollection mScripts; | ||||
|             GlobalScripts mGlobalScripts; | ||||
|             std::map<std::string, Compiler::Locals> mOtherLocals; | ||||
| 
 | ||||
|         public: | ||||
| 
 | ||||
|  |  | |||
|  | @ -220,9 +220,15 @@ namespace MWWorld | |||
|     template <> | ||||
|     inline void Store<ESM::Dialogue>::load(ESM::ESMReader &esm, const std::string &id) { | ||||
|         std::string idLower = Misc::StringUtils::lowerCase(id); | ||||
|         mStatic[idLower] = ESM::Dialogue(); | ||||
|         mStatic[idLower].mId = id; // don't smash case here, as this line is printed... I think
 | ||||
|         mStatic[idLower].load(esm); | ||||
| 
 | ||||
|         std::map<std::string, ESM::Dialogue>::iterator it = mStatic.find(idLower); | ||||
|         if (it == mStatic.end()) { | ||||
|             it = mStatic.insert( std::make_pair( idLower, ESM::Dialogue() ) ).first; | ||||
|             it->second.mId = id; // don't smash case here, as this line is printed... I think
 | ||||
|         } | ||||
| 
 | ||||
|         //I am not sure is it need to load the dialog from a plugin if it was already loaded from prevois plugins
 | ||||
|         it->second.load(esm); | ||||
|     } | ||||
| 
 | ||||
|     template <> | ||||
|  |  | |||
|  | @ -2,76 +2,78 @@ | |||
| 
 | ||||
| <MyGUI type="Skin"> | ||||
|     <!-- The 'box' frame that surrounds various HUD items and other elements --> | ||||
|     <Skin name="HUD_Box" size="40 40" texture="textures\menu_icon_equip.dds"> | ||||
|         <BasisSkin type="TileRect" offset="0 0 40 2" align="ALIGN_TOP ALIGN_HSTRETCH"> | ||||
|             <State name="normal" offset="2 2 40 2"> | ||||
|     <Skin name="HUD_Box" size="40 40" texture="mwgui.png"> | ||||
| 
 | ||||
|         <BasisSkin type="TileRect" offset="0 0 39 2" align="ALIGN_TOP ALIGN_HSTRETCH"> | ||||
|             <State name="normal" offset="4 2 38 2"> | ||||
|                 <Property key="TileSize" value="40 2"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
| 
 | ||||
|         <BasisSkin type="TileRect" offset="0 38 40 2" align="ALIGN_BOTTOM ALIGN_HSTRETCH"> | ||||
|             <State name="normal" offset="2 40 40 2"> | ||||
|         <BasisSkin type="TileRect" offset="0 1 2 37" align="ALIGN_LEFT ALIGN_VSTRETCH"> | ||||
|             <State name="normal" offset="2 26 2 36"> | ||||
|                 <Property key="TileSize" value="2 40"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
| 
 | ||||
|         <BasisSkin type="TileRect" offset="38 0 2 40" align="ALIGN_RIGHT ALIGN_VSTRETCH"> | ||||
|             <State name="normal" offset="16 26 2 38"> | ||||
|                 <Property key="TileSize" value="2 40"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
|          | ||||
|         <BasisSkin type="TileRect" offset="0 38 39 2" align="ALIGN_BOTTOM ALIGN_HSTRETCH"> | ||||
|             <State name="normal" offset="4 20 40 2"> | ||||
|                 <Property key="TileSize" value="40 2"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
|          | ||||
|         <BasisSkin type="TileRect" offset="0 2 2 36" align="ALIGN_LEFT ALIGN_VSTRETCH"> | ||||
|             <State name="normal" offset="2 4 2 36"> | ||||
|                 <Property key="TileSize" value="2 36"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
| 
 | ||||
|         <BasisSkin type="TileRect" offset="38 2 2 36" align="ALIGN_RIGHT ALIGN_VSTRETCH"> | ||||
|             <State name="normal" offset="40 4 2 36"> | ||||
|                 <Property key="TileSize" value="2 36"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
| 
 | ||||
|         <!-- The interior of the box --> | ||||
|         <Child type="Widget" skin="BlackBG" offset="2 2 36 36" align="ALIGN_STRETCH" name="Client"/> | ||||
|     </Skin> | ||||
| 
 | ||||
|     <Skin name="HUD_Box_NoTransp" size="40 40" texture="textures\menu_icon_equip.dds"> | ||||
|         <BasisSkin type="TileRect" offset="0 0 40 2" align="ALIGN_TOP ALIGN_HSTRETCH"> | ||||
|             <State name="normal" offset="2 2 40 2"> | ||||
|     <Skin name="HUD_Box_NoTransp" size="40 40" texture="mwgui.png"> | ||||
|      | ||||
|         <BasisSkin type="TileRect" offset="0 0 39 2" align="ALIGN_TOP ALIGN_HSTRETCH"> | ||||
|             <State name="normal" offset="4 2 38 2"> | ||||
|                 <Property key="TileSize" value="40 2"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
| 
 | ||||
|         <BasisSkin type="TileRect" offset="0 38 40 2" align="ALIGN_BOTTOM ALIGN_HSTRETCH"> | ||||
|             <State name="normal" offset="2 40 40 2"> | ||||
|         <BasisSkin type="TileRect" offset="0 1 2 37" align="ALIGN_LEFT ALIGN_VSTRETCH"> | ||||
|             <State name="normal" offset="2 26 2 36"> | ||||
|                 <Property key="TileSize" value="2 40"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
| 
 | ||||
|         <BasisSkin type="TileRect" offset="38 0 2 40" align="ALIGN_RIGHT ALIGN_VSTRETCH"> | ||||
|             <State name="normal" offset="16 26 2 38"> | ||||
|                 <Property key="TileSize" value="2 40"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
|          | ||||
|         <BasisSkin type="TileRect" offset="0 38 39 2" align="ALIGN_BOTTOM ALIGN_HSTRETCH"> | ||||
|             <State name="normal" offset="4 20 40 2"> | ||||
|                 <Property key="TileSize" value="40 2"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
| 
 | ||||
|         <BasisSkin type="TileRect" offset="0 2 2 36" align="ALIGN_LEFT ALIGN_VSTRETCH"> | ||||
|             <State name="normal" offset="2 4 2 36"> | ||||
|                 <Property key="TileSize" value="2 36"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
| 
 | ||||
|         <BasisSkin type="TileRect" offset="38 2 2 36" align="ALIGN_RIGHT ALIGN_VSTRETCH"> | ||||
|             <State name="normal" offset="40 4 2 36"> | ||||
|                 <Property key="TileSize" value="2 36"/> | ||||
|                 <Property key="TileH" value="true"/> | ||||
|                 <Property key="TileV" value="true"/> | ||||
|             </State> | ||||
|         </BasisSkin> | ||||
| 
 | ||||
|         <!-- The interior of the box --> | ||||
|         <Child type="Widget" skin="DialogBG" offset="2 2 36 36" align="ALIGN_STRETCH" name="Client"/> | ||||
|     </Skin> | ||||
|  |  | |||
|  | @ -6,12 +6,12 @@ | |||
| 
 | ||||
|         <Widget type="ImageBox" skin="ImageBox" position="0 0 300 300" align="Stretch" name="BackgroundImage"> | ||||
| 
 | ||||
|             <Widget type="Widget" skin="HUD_Box" position="0 200 300 70" align="Bottom HCenter"> | ||||
|             <Widget type="Widget" skin="HUD_Box" position="0 200 300 60" align="Bottom HCenter"> | ||||
| 
 | ||||
|                 <Widget type="AutoSizedTextBox" skin="SandText" position="20 12 260 24" name="LoadingText"> | ||||
|                 </Widget> | ||||
| 
 | ||||
|                 <Widget type="ProgressBar" skin="MW_Progress_Blue" position="20 38 260 24" name="ProgressBar"> | ||||
|                 <Widget type="ProgressBar" skin="MW_Progress_Loading" position="20 36 260 8" name="ProgressBar"> | ||||
|                     <Property key="Range" value="1000"/> | ||||
|                 </Widget> | ||||
| 
 | ||||
|  |  | |||
|  | @ -17,6 +17,11 @@ | |||
|             <State name="normal" offset = "0 28 2 14"/> | ||||
|         </BasisSkin> | ||||
|     </Skin> | ||||
| 	<Skin name = "MW_BigTrack_Progress_Blue_Small" size = "2 6" texture = "smallbars.png" > | ||||
|         <BasisSkin type="MainSkin" offset = "0 0 2 6" align = "ALIGN_STRETCH"> | ||||
|             <State name="normal" offset = "0 26 2 6"/> | ||||
|         </BasisSkin> | ||||
|     </Skin> | ||||
| 
 | ||||
|     <Skin name = "ProgressText" size = "16 16"> | ||||
|         <Property key="FontName" value = "Default"/> | ||||
|  | @ -51,4 +56,12 @@ | |||
|         <Child type="Widget" skin="MW_Box" offset="0 0 64 12" align="ALIGN_STRETCH"/> | ||||
|         <Child type="Widget" skin="BlackBG" offset = "2 2 60 8" align = "ALIGN_STRETCH" name="Client"/> | ||||
|     </Skin> | ||||
| 	 | ||||
| 	<Skin name="MW_Progress_Loading" size="64 6"> | ||||
|         <Property key="TrackSkin" value = "MW_BigTrack_Progress_Blue_Small" /> | ||||
|         <Property key="TrackWidth" value = "1" /> | ||||
| 
 | ||||
|         <Child type="Widget" skin="MW_Box" offset="0 0 64 6" align="ALIGN_STRETCH"/> | ||||
|         <Child type="Widget" skin="BlackBG" offset = "2 2 60 2" align = "ALIGN_STRETCH" name="Client"/> | ||||
|     </Skin> | ||||
| </MyGUI> | ||||
|  |  | |||
										
											Binary file not shown.
										
									
								
							| Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 3.1 KiB | 
		Loading…
	
		Reference in a new issue