mirror of
				https://github.com/OTCv8/otclientv8.git
				synced 2025-10-31 10:56:24 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			55 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
| filename =  nil
 | |
| loaded = false
 | |
| 
 | |
| function setFileName(name)
 | |
|   filename = name
 | |
| end
 | |
| 
 | |
| function isLoaded()
 | |
|   return loaded
 | |
| end
 | |
| 
 | |
| function load()
 | |
|   local version = g_game.getClientVersion()
 | |
|   local things = g_settings.getNode('things')
 | |
|   
 | |
|   local datPath, sprPath
 | |
|   if things and things["data"] ~= nil and things["sprites"] ~= nil then
 | |
|     datPath = resolvepath('/things/' .. things["data"])
 | |
|     sprPath = resolvepath('/things/' .. things["sprites"])
 | |
|   else
 | |
|     if filename then
 | |
|       datPath = resolvepath('/things/' .. filename)
 | |
|       sprPath = resolvepath('/things/' .. filename)
 | |
|     else
 | |
|       datPath = resolvepath('/things/' .. version .. '/Tibia')
 | |
|       sprPath = resolvepath('/things/' .. version .. '/Tibia')
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   local errorMessage = ''
 | |
|   if not g_things.loadDat(datPath) then
 | |
|     if not g_game.getFeature(GameSpritesU32) then
 | |
|       g_game.enableFeature(GameSpritesU32)
 | |
|       if not g_things.loadDat(datPath) then
 | |
|         errorMessage = errorMessage .. tr("Unable to load dat file, please place a valid dat in '%s'", datPath) .. '\n'
 | |
|       end
 | |
|     else
 | |
|       errorMessage = errorMessage .. tr("Unable to load dat file, please place a valid dat in '%s'", datPath) .. '\n'
 | |
|     end
 | |
|   end
 | |
|   if not g_sprites.loadSpr(sprPath) then
 | |
|     errorMessage = errorMessage .. tr("Unable to load spr file, please place a valid spr in '%s'", sprPath)
 | |
|   end
 | |
| 
 | |
|   loaded = (errorMessage:len() == 0)
 | |
| 
 | |
|   if errorMessage:len() > 0 then
 | |
|     local messageBox = displayErrorBox(tr('Error'), errorMessage)
 | |
|     addEvent(function() messageBox:raise() messageBox:focus() end)
 | |
| 
 | |
|     g_game.setClientVersion(0)
 | |
|     g_game.setProtocolVersion(0)
 | |
|   end
 | |
| end
 | 
