Jump to content

Official Environment Effect Options [REVERSED]


Recommended Posts

  • Honorable Member

Reversed from 22.2.7.0 Official Binary

Client part is from 2018 Official Root

This is the hidden content, please

This is the hidden content, please

 

 

  • Metin2 Dev 145
  • Eyes 1
  • Good 31
  • Love 5
  • Love 60

 

Link to comment
Share on other sites

  • Honorable Member
47 minutes ago, BadRomani said:

The system is not working for me. It works for you, but the system does not work. Now, the systems you have started to have problems.

Sorry Mali. I had to restore backups.

no pls use my systems

  • Lmao 4
  • Good 1

 

Link to comment
Share on other sites

my syserr:

0327 13:09:21194 ::   File "uiSystemOption.py", line 217, in __Load

0327 13:09:21194 :: AttributeError
0327 13:09:21194 :: : 
0327 13:09:21194 :: 'OptionDialog' object has no attribute '_OptionDialog__OnClickNightModeOffButton'

my uisystemoption.py

Spoiler
import dbg
import ui
import snd
import systemSetting
import net
import chat
import app
import localeInfo
import constInfo
import chrmgr
import player
import musicInfo

import uiSelectMusic
import background

if app.__BL_GRAPHIC_ON_OFF__:
	import grp
    
if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
	import uiPhaseCurtain

MUSIC_FILENAME_MAX_LEN = 25

blockMode = 0

class OptionDialog(ui.ScriptWindow):

	def __init__(self):
		ui.ScriptWindow.__init__(self)
		self.__Initialize()
		self.__Load()
		if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
			self.curtain = uiPhaseCurtain.PhaseCurtain()
			self.curtain.speed = 0.03
			self.curtain.Hide()

	def __del__(self):
		ui.ScriptWindow.__del__(self)
		print " -------------------------------------- DELETE SYSTEM OPTION DIALOG"

	def __Initialize(self):
		self.tilingMode = 0
		self.titleBar = 0
		self.changeMusicButton = 0
		self.selectMusicFile = 0
		self.ctrlMusicVolume = 0
		self.ctrlSoundVolume = 0
		self.musicListDlg = 0
		self.tilingApplyButton = 0
		self.cameraModeButtonList = []
		self.fogModeButtonList = []
		self.tilingModeButtonList = []
		if app.__BL_SHADOW_RENDER_QUALITY_OPTION__:
			self.shadowTargetLevelButtonList = []
			self.shadowQualityLevelButtonList = []
		else:
			self.ctrlShadowQuality = 0
		if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
			self.nightModeButtonList		= []
			self.snowModeButtonList			= []
			self.snowTextureModeButtonList	= []
		if app.__BL_GRAPHIC_ON_OFF__:
			self.effectOnOffButtonList = []
			self.privateshopOnOffButtonList = []
			self.itemdropOnOffButtonList = []
			self.petOnOffButtonList = []
			self.npcnameOnOffButtonList = []
			self.effectApplyButton = None
			self.privateshopApplyButton = None
			self.itemdropApplyButton = None
		if app.__BL_FOG_FIX__:
			self.fogButtonList	= []
		
	def Destroy(self):
		self.ClearDictionary()

		self.__Initialize()
		print " -------------------------------------- DESTROY SYSTEM OPTION DIALOG"

	def __Load_LoadScript(self, fileName):
		try:
			pyScriptLoader = ui.PythonScriptLoader()
			pyScriptLoader.LoadScriptFile(self, fileName)
		except:
			import exception
			exception.Abort("System.OptionDialog.__Load_LoadScript")

	def __Load_BindObject(self):
		try:
			GetObject = self.GetChild
			self.titleBar = GetObject("titlebar")
			self.selectMusicFile = GetObject("bgm_file")
			self.changeMusicButton = GetObject("bgm_button")
			self.ctrlMusicVolume = GetObject("music_volume_controller")
			self.ctrlSoundVolume = GetObject("sound_volume_controller")			
			self.cameraModeButtonList.append(GetObject("camera_short"))
			self.cameraModeButtonList.append(GetObject("camera_long"))
			if app.__BL_FOG_FIX__:
				self.fogButtonList.append(GetObject("fog_off"))
				self.fogButtonList.append(GetObject("fog_on"))
			else:
				self.fogModeButtonList.append(GetObject("fog_level0"))
				self.fogModeButtonList.append(GetObject("fog_level1"))
				self.fogModeButtonList.append(GetObject("fog_level2"))
			self.tilingModeButtonList.append(GetObject("tiling_cpu"))
			self.tilingModeButtonList.append(GetObject("tiling_gpu"))
			self.tilingApplyButton=GetObject("tiling_apply")
			if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
				self.nightModeButtonList.append(GetObject("night_mode_off"))
				self.nightModeButtonList.append(GetObject("night_mode_on"))
				self.snowModeButtonList.append(GetObject("snow_mode_off"))
				self.snowModeButtonList.append(GetObject("snow_mode_on"))
				self.snowTextureModeButtonList.append(GetObject("snow_texture_mode_off"))
				self.snowTextureModeButtonList.append(GetObject("snow_texture_mode_on"))
			if app.__BL_GRAPHIC_ON_OFF__:
				for i in range(5):
					self.effectOnOffButtonList.append(GetObject("effect_level{}".format(i + 1)))
					self.privateshopOnOffButtonList.append(GetObject("privateShop_level{}".format(i + 1)))
					self.itemdropOnOffButtonList.append(GetObject("dropItem_level{}".format(i + 1)))

				self.petOnOffButtonList.append(GetObject("pet_on"))
				self.petOnOffButtonList.append(GetObject("pet_off"))

				self.npcnameOnOffButtonList.append(GetObject("npcName_on"))
				self.npcnameOnOffButtonList.append(GetObject("npcName_off"))

				self.effectApplyButton = GetObject("effect_apply")
				self.privateshopApplyButton = GetObject("privateShop_apply")
				self.itemdropApplyButton = GetObject("dropItem_apply")
			#self.ctrlShadowQuality = GetObject("shadow_bar")
			if app.__BL_SHADOW_RENDER_QUALITY_OPTION__:
				self.shadowTargetLevelButtonList.append(GetObject("shadow_target_none"))
				self.shadowTargetLevelButtonList.append(GetObject("shadow_target_ground"))
				self.shadowTargetLevelButtonList.append(GetObject("shadow_target_ground_and_solo"))
				self.shadowTargetLevelButtonList.append(GetObject("shadow_target_all"))

				self.shadowQualityLevelButtonList.append(GetObject("shadow_quality_bad"))
				self.shadowQualityLevelButtonList.append(GetObject("shadow_quality_average"))
				self.shadowQualityLevelButtonList.append(GetObject("shadow_quality_good"))
		except:
			import exception
			exception.Abort("OptionDialog.__Load_BindObject")

	def __Load(self):
		self.__Load_LoadScript("uiscript/systemoptiondialog.py")
		self.__Load_BindObject()

		self.SetCenterPosition()
		
		self.titleBar.SetCloseEvent(ui.__mem_func__(self.Close))

		self.ctrlMusicVolume.SetSliderPos(float(systemSetting.GetMusicVolume()))
		self.ctrlMusicVolume.SetEvent(ui.__mem_func__(self.OnChangeMusicVolume))

		self.ctrlSoundVolume.SetSliderPos(float(systemSetting.GetSoundVolume()) / 5.0)
		self.ctrlSoundVolume.SetEvent(ui.__mem_func__(self.OnChangeSoundVolume))

#		self.ctrlShadowQuality.SetSliderPos(float(systemSetting.GetShadowLevel()) / 5.0)
		if app.__BL_SHADOW_RENDER_QUALITY_OPTION__:
			for i, btn in enumerate(self.shadowTargetLevelButtonList):
				btn.SAFE_SetEvent(self.__OnClickShadowTargetLevelButton, i)
			
			for i, btn in enumerate(self.shadowQualityLevelButtonList):
				btn.SAFE_SetEvent(self.__OnClickShadowQualityLevelButton, i)
			
			self.__ClickRadioButton(self.shadowTargetLevelButtonList, systemSetting.GetShadowTargetLevel())
			self.__ClickRadioButton(self.shadowQualityLevelButtonList, systemSetting.GetShadowQualityLevel())

		self.changeMusicButton.SAFE_SetEvent(self.__OnClickChangeMusicButton)

		self.cameraModeButtonList[0].SAFE_SetEvent(self.__OnClickCameraModeShortButton)
		self.cameraModeButtonList[1].SAFE_SetEvent(self.__OnClickCameraModeLongButton)

		if app.__BL_FOG_FIX__:
			self.fogButtonList[0].SAFE_SetEvent(self.__OnClickFogModeOffButton)
			self.fogButtonList[1].SAFE_SetEvent(self.__OnClickFogModeOnButton)
		else:
			self.fogModeButtonList[0].SAFE_SetEvent(self.__OnClickFogModeLevel0Button)
			self.fogModeButtonList[1].SAFE_SetEvent(self.__OnClickFogModeLevel1Button)
			self.fogModeButtonList[2].SAFE_SetEvent(self.__OnClickFogModeLevel2Button)

		self.tilingModeButtonList[0].SAFE_SetEvent(self.__OnClickTilingModeCPUButton)
		self.tilingModeButtonList[1].SAFE_SetEvent(self.__OnClickTilingModeGPUButton)
        
		if app.__BL_GRAPHIC_ON_OFF__:
			for i, btn in enumerate(self.effectOnOffButtonList):
				btn.SAFE_SetEvent(self.__OnClickEffectOnOffButton, i)
			for i, btn in enumerate(self.privateshopOnOffButtonList):
				btn.SAFE_SetEvent(self.__OnClickPrivateShopOnOffButton, i)
			for i, btn in enumerate(self.itemdropOnOffButtonList):
				btn.SAFE_SetEvent(self.__OnClickItemDropOnOffButton, i)

			self.petOnOffButtonList[0].SAFE_SetEvent(self.__OnClickPetOnOffButton, 0)
			self.petOnOffButtonList[1].SAFE_SetEvent(self.__OnClickPetOnOffButton, 1)

			self.npcnameOnOffButtonList[0].SAFE_SetEvent(self.__OnClickNPCNameOnOffButton, 0)
			self.npcnameOnOffButtonList[1].SAFE_SetEvent(self.__OnClickNPCNameOnOffButton, 1)

			self.effectApplyButton.SAFE_SetEvent(self.__OnClickApplyEffectOnOffButton)
			self.privateshopApplyButton.SAFE_SetEvent(self.__OnClickApplyPrivateShopOnOffButton)
			self.itemdropApplyButton.SAFE_SetEvent(self.__OnClickApplyItemDropOnOffButton)

			self.__ClickRadioButton(self.effectOnOffButtonList, grp.GetEffectOnOffLevel())
			self.__ClickRadioButton(self.privateshopOnOffButtonList, grp.GetPrivateShopOnOffLevel())
			self.__ClickRadioButton(self.itemdropOnOffButtonList, grp.GetDropItemOnOffLevel())
			self.__ClickRadioButton(self.petOnOffButtonList, grp.GetPetOnOffStatus())
			self.__ClickRadioButton(self.npcnameOnOffButtonList, grp.GetNPCNameOnOffStatus())

		self.tilingApplyButton.SAFE_SetEvent(self.__OnClickTilingApplyButton)

		self.__SetCurTilingMode()

		self.__ClickRadioButton(self.fogModeButtonList, constInfo.GET_FOG_LEVEL_INDEX())
		self.__ClickRadioButton(self.cameraModeButtonList, constInfo.GET_CAMERA_MAX_DISTANCE_INDEX())
		if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
			self.nightModeButtonList[0].SAFE_SetEvent(self.__OnClickNightModeOffButton)
			self.nightModeButtonList[1].SAFE_SetEvent(self.__OnClickNightModeOnButton)
			self.__InitNightModeOption()
			
			self.snowModeButtonList[0].SAFE_SetEvent(self.__OnClickSnowModeOffButton)
			self.snowModeButtonList[1].SAFE_SetEvent(self.__OnClickSnowModeOnButton)
			self.__InitSnowModeOption()
			
			self.snowTextureModeButtonList[0].SAFE_SetEvent(self.__OnClickSnowTextureModeOffButton)
			self.snowTextureModeButtonList[1].SAFE_SetEvent(self.__OnClickSnowTextureModeOnButton)		
			self.__InitSnowTextureModeOption()
        
		if app.__BL_FOG_FIX__:
			self.__ClickRadioButton(self.fogButtonList, background.GetFogMode())

		if musicInfo.fieldMusic==musicInfo.METIN2THEMA:
			self.selectMusicFile.SetText(uiSelectMusic.DEFAULT_THEMA)
		else:
			self.selectMusicFile.SetText(musicInfo.fieldMusic[:MUSIC_FILENAME_MAX_LEN])

	def __OnClickTilingModeCPUButton(self):
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_CPU_TILING_1)
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_CPU_TILING_2)
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_CPU_TILING_3)
		self.__SetTilingMode(0)

	def __OnClickTilingModeGPUButton(self):
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_GPU_TILING_1)
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_GPU_TILING_2)
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_GPU_TILING_3)
		self.__SetTilingMode(1)

	def __OnClickTilingApplyButton(self):
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_TILING_EXIT)
		if 0==self.tilingMode:
			background.EnableSoftwareTiling(1)
		else:
			background.EnableSoftwareTiling(0)

		net.ExitGame()

	def __OnClickChangeMusicButton(self):
		if not self.musicListDlg:
			
			self.musicListDlg=uiSelectMusic.FileListDialog()
			self.musicListDlg.SAFE_SetSelectEvent(self.__OnChangeMusic)

		self.musicListDlg.Open()

		
	def __ClickRadioButton(self, buttonList, buttonIndex):
		try:
			selButton=buttonList[buttonIndex]
		except IndexError:
			return

		for eachButton in buttonList:
			eachButton.SetUp()

		selButton.Down()


	def __SetTilingMode(self, index):
		self.__ClickRadioButton(self.tilingModeButtonList, index)
		self.tilingMode=index

	def __SetCameraMode(self, index):
		constInfo.SET_CAMERA_MAX_DISTANCE_INDEX(index)
		self.__ClickRadioButton(self.cameraModeButtonList, index)

	def __SetFogLevel(self, index):
		constInfo.SET_FOG_LEVEL_INDEX(index)
		self.__ClickRadioButton(self.fogModeButtonList, index)

	def __OnClickCameraModeShortButton(self):
		self.__SetCameraMode(0)

	def __OnClickCameraModeLongButton(self):
		self.__SetCameraMode(1)

	def __OnClickFogModeLevel0Button(self):
		self.__SetFogLevel(0)

	def __OnClickFogModeLevel1Button(self):
		self.__SetFogLevel(1)

	def __OnClickFogModeLevel2Button(self):
		self.__SetFogLevel(2)
        
	if app.__BL_SHADOW_RENDER_QUALITY_OPTION__:
		def __OnClickShadowTargetLevelButton(self, i):
			systemSetting.SetShadowTargetLevel(i)
			self.__ClickRadioButton(self.shadowTargetLevelButtonList, i)

		def __OnClickShadowQualityLevelButton(self, i):
			systemSetting.SetShadowQualityLevel(i)
			self.__ClickRadioButton(self.shadowQualityLevelButtonList, i)
        
	if app.__BL_GRAPHIC_ON_OFF__:
		def __OnClickEffectOnOffButton(self, i):
			self.__ClickRadioButton(self.effectOnOffButtonList, i)

		def __OnClickPrivateShopOnOffButton(self, i):
			self.__ClickRadioButton(self.privateshopOnOffButtonList, i)

		def __OnClickItemDropOnOffButton(self, i):
			self.__ClickRadioButton(self.itemdropOnOffButtonList, i)

		def __OnClickPetOnOffButton(self, i):
			self.__ClickRadioButton(self.petOnOffButtonList, i)
			grp.SetPetOnOffStatus(i)

		def __OnClickNPCNameOnOffButton(self, i):
			self.__ClickRadioButton(self.npcnameOnOffButtonList, i)
			grp.SetNPCNameOnOffStatus(i)

		def __OnClickApplyEffectOnOffButton(self):
			for i, btn in enumerate(self.effectOnOffButtonList):
				if btn.IsDown():
					grp.SetEffectOnOffLevel(i)
					break
		
		def __OnClickApplyPrivateShopOnOffButton(self):
			for i, btn in enumerate(self.privateshopOnOffButtonList):
				if btn.IsDown():
					grp.SetPrivateShopOnOffLevel(i)
					break

		def __OnClickApplyItemDropOnOffButton(self):
			for i, btn in enumerate(self.itemdropOnOffButtonList):
				if btn.IsDown():
					grp.SetDropItemOnOffLevel(i)
					break
        
	if app.__BL_FOG_FIX__:
		def __OnClickFogModeOnButton(self):
			background.SetFogMode(True)
			self.__ClickRadioButton(self.fogButtonList, 1)
		def __OnClickFogModeOffButton(self):
			background.SetFogMode(False)
			self.__ClickRadioButton(self.fogButtonList, 0)

	def __OnChangeMusic(self, fileName):
		self.selectMusicFile.SetText(fileName[:MUSIC_FILENAME_MAX_LEN])

		if musicInfo.fieldMusic != "":
			snd.FadeOutMusic("BGM/"+ musicInfo.fieldMusic)

		if fileName==uiSelectMusic.DEFAULT_THEMA:
			musicInfo.fieldMusic=musicInfo.METIN2THEMA
		else:
			musicInfo.fieldMusic=fileName

		musicInfo.SaveLastPlayFieldMusic()
		
		if musicInfo.fieldMusic != "":
			snd.FadeInMusic("BGM/" + musicInfo.fieldMusic)

	def OnChangeMusicVolume(self):
		pos = self.ctrlMusicVolume.GetSliderPos()
		snd.SetMusicVolume(pos * net.GetFieldMusicVolume())
		systemSetting.SetMusicVolume(pos)

	def OnChangeSoundVolume(self):
		pos = self.ctrlSoundVolume.GetSliderPos()
		snd.SetSoundVolumef(pos)
		systemSetting.SetSoundVolumef(pos)

	def OnChangeShadowQuality(self):
		pos = self.ctrlShadowQuality.GetSliderPos()
		systemSetting.SetShadowLevel(int(pos / 0.2))

	def OnCloseInputDialog(self):
		self.inputDialog.Close()
		self.inputDialog = None
		return True

	def OnCloseQuestionDialog(self):
		self.questionDialog.Close()
		self.questionDialog = None
		return True

	def OnPressEscapeKey(self):
		self.Close()
		return True
	
	def Show(self):
		ui.ScriptWindow.Show(self)

	def Close(self):
		self.__SetCurTilingMode()
		self.Hide()

	def __SetCurTilingMode(self):
		if background.IsSoftwareTiling():
			self.__SetTilingMode(0)
		else:
			self.__SetTilingMode(1)	

	def __NotifyChatLine(self, text):
		chat.AppendChat(chat.CHAT_TYPE_INFO, text)
		
if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
		def __InitNightModeOption(self):
			self.NightModeOn		= systemSetting.GetNightModeOption()
			self.__ClickRadioButton(self.nightModeButtonList, self.NightModeOn)
			background.SetNightModeOption(self.NightModeOn)
			
		def __InitSnowModeOption(self):
			self.SnowModeOn	= systemSetting.GetSnowModeOption()
			self.__ClickRadioButton(self.snowModeButtonList, self.SnowModeOn)
			background.SetSnowModeOption(self.SnowModeOn)
	
		def __InitSnowTextureModeOption(self):
			self.SnowTextureModeOn	= systemSetting.GetSnowTextureModeOption()
			self.__ClickRadioButton(self.snowTextureModeButtonList, self.SnowTextureModeOn)
			background.SetSnowTextureModeOption(self.SnowTextureModeOn)			
			
		def __OnClickNightModeOffButton(self):
			self.__ClickRadioButton(self.nightModeButtonList, 0)
			self.__SetNightMode(0)
			
		def __OnClickNightModeOnButton(self):
			self.__ClickRadioButton(self.nightModeButtonList, 1)
			self.__SetNightMode(1)
			
		def __OnClickSnowModeOffButton(self):
			self.__ClickRadioButton(self.snowModeButtonList, 0)
			self.__SetSnowMode(0)
			
		def __OnClickSnowModeOnButton(self):
			self.__ClickRadioButton(self.snowModeButtonList, 1)
			self.__SetSnowMode(1)
			
		def __OnClickSnowTextureModeOffButton(self):
			self.__ClickRadioButton(self.snowTextureModeButtonList, 0)
			self.__SetSnowTextureMode(0)
			
		def __OnClickSnowTextureModeOnButton(self):
			self.__ClickRadioButton(self.snowTextureModeButtonList, 1)
			self.__SetSnowTextureMode(1)
			
		def __SetSnowMode(self, index):
			systemSetting.SetSnowModeOption(index)
			background.SetSnowModeOption(index)
			background.EnableSnowMode(index)
	
		def __SetSnowTextureMode(self, index):
			systemSetting.SetSnowTextureModeOption(index)
			background.SetSnowTextureModeOption(index)
			background.EnableSnowTextureMode()
	
		def __SetNightMode(self, index):
			systemSetting.SetNightModeOption(index)	
			background.SetNightModeOption(index)
			
			if not background.GetDayMode():
				return
				
			if not background.IsBoomMap():
				return
			
			if 1 == index:
				self.curtain.SAFE_FadeOut(self.__DayMode_OnCompleteChangeToDark)
			else:
				self.curtain.SAFE_FadeOut(self.__DayMode_OnCompleteChangeToLight)		
		
		def __DayMode_OnCompleteChangeToLight(self):
			background.ChangeEnvironmentData(0)
			self.curtain.FadeIn()
	
		def __DayMode_OnCompleteChangeToDark(self):		
			background.RegisterEnvironmentData(1, constInfo.ENVIRONMENT_NIGHT)
			background.ChangeEnvironmentData(1)
			self.curtain.FadeIn()

 

dont work for me. any idea? @ Mali

the systemoption does not open when i click ingame on them

Edited by Slappy
Link to comment
Share on other sites

  • Honorable Member
12 minutes ago, Slappy said:

my syserr:

0327 13:09:21194 ::   File "uiSystemOption.py", line 217, in __Load

0327 13:09:21194 :: AttributeError
0327 13:09:21194 :: : 
0327 13:09:21194 :: 'OptionDialog' object has no attribute '_OptionDialog__OnClickNightModeOffButton'

my uisystemoption.py

  Reveal hidden contents
import dbg
import ui
import snd
import systemSetting
import net
import chat
import app
import localeInfo
import constInfo
import chrmgr
import player
import musicInfo

import uiSelectMusic
import background

if app.__BL_GRAPHIC_ON_OFF__:
	import grp
    
if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
	import uiPhaseCurtain

MUSIC_FILENAME_MAX_LEN = 25

blockMode = 0

class OptionDialog(ui.ScriptWindow):

	def __init__(self):
		ui.ScriptWindow.__init__(self)
		self.__Initialize()
		self.__Load()
		if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
			self.curtain = uiPhaseCurtain.PhaseCurtain()
			self.curtain.speed = 0.03
			self.curtain.Hide()

	def __del__(self):
		ui.ScriptWindow.__del__(self)
		print " -------------------------------------- DELETE SYSTEM OPTION DIALOG"

	def __Initialize(self):
		self.tilingMode = 0
		self.titleBar = 0
		self.changeMusicButton = 0
		self.selectMusicFile = 0
		self.ctrlMusicVolume = 0
		self.ctrlSoundVolume = 0
		self.musicListDlg = 0
		self.tilingApplyButton = 0
		self.cameraModeButtonList = []
		self.fogModeButtonList = []
		self.tilingModeButtonList = []
		if app.__BL_SHADOW_RENDER_QUALITY_OPTION__:
			self.shadowTargetLevelButtonList = []
			self.shadowQualityLevelButtonList = []
		else:
			self.ctrlShadowQuality = 0
		if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
			self.nightModeButtonList		= []
			self.snowModeButtonList			= []
			self.snowTextureModeButtonList	= []
		if app.__BL_GRAPHIC_ON_OFF__:
			self.effectOnOffButtonList = []
			self.privateshopOnOffButtonList = []
			self.itemdropOnOffButtonList = []
			self.petOnOffButtonList = []
			self.npcnameOnOffButtonList = []
			self.effectApplyButton = None
			self.privateshopApplyButton = None
			self.itemdropApplyButton = None
		if app.__BL_FOG_FIX__:
			self.fogButtonList	= []
		
	def Destroy(self):
		self.ClearDictionary()

		self.__Initialize()
		print " -------------------------------------- DESTROY SYSTEM OPTION DIALOG"

	def __Load_LoadScript(self, fileName):
		try:
			pyScriptLoader = ui.PythonScriptLoader()
			pyScriptLoader.LoadScriptFile(self, fileName)
		except:
			import exception
			exception.Abort("System.OptionDialog.__Load_LoadScript")

	def __Load_BindObject(self):
		try:
			GetObject = self.GetChild
			self.titleBar = GetObject("titlebar")
			self.selectMusicFile = GetObject("bgm_file")
			self.changeMusicButton = GetObject("bgm_button")
			self.ctrlMusicVolume = GetObject("music_volume_controller")
			self.ctrlSoundVolume = GetObject("sound_volume_controller")			
			self.cameraModeButtonList.append(GetObject("camera_short"))
			self.cameraModeButtonList.append(GetObject("camera_long"))
			if app.__BL_FOG_FIX__:
				self.fogButtonList.append(GetObject("fog_off"))
				self.fogButtonList.append(GetObject("fog_on"))
			else:
				self.fogModeButtonList.append(GetObject("fog_level0"))
				self.fogModeButtonList.append(GetObject("fog_level1"))
				self.fogModeButtonList.append(GetObject("fog_level2"))
			self.tilingModeButtonList.append(GetObject("tiling_cpu"))
			self.tilingModeButtonList.append(GetObject("tiling_gpu"))
			self.tilingApplyButton=GetObject("tiling_apply")
			if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
				self.nightModeButtonList.append(GetObject("night_mode_off"))
				self.nightModeButtonList.append(GetObject("night_mode_on"))
				self.snowModeButtonList.append(GetObject("snow_mode_off"))
				self.snowModeButtonList.append(GetObject("snow_mode_on"))
				self.snowTextureModeButtonList.append(GetObject("snow_texture_mode_off"))
				self.snowTextureModeButtonList.append(GetObject("snow_texture_mode_on"))
			if app.__BL_GRAPHIC_ON_OFF__:
				for i in range(5):
					self.effectOnOffButtonList.append(GetObject("effect_level{}".format(i + 1)))
					self.privateshopOnOffButtonList.append(GetObject("privateShop_level{}".format(i + 1)))
					self.itemdropOnOffButtonList.append(GetObject("dropItem_level{}".format(i + 1)))

				self.petOnOffButtonList.append(GetObject("pet_on"))
				self.petOnOffButtonList.append(GetObject("pet_off"))

				self.npcnameOnOffButtonList.append(GetObject("npcName_on"))
				self.npcnameOnOffButtonList.append(GetObject("npcName_off"))

				self.effectApplyButton = GetObject("effect_apply")
				self.privateshopApplyButton = GetObject("privateShop_apply")
				self.itemdropApplyButton = GetObject("dropItem_apply")
			#self.ctrlShadowQuality = GetObject("shadow_bar")
			if app.__BL_SHADOW_RENDER_QUALITY_OPTION__:
				self.shadowTargetLevelButtonList.append(GetObject("shadow_target_none"))
				self.shadowTargetLevelButtonList.append(GetObject("shadow_target_ground"))
				self.shadowTargetLevelButtonList.append(GetObject("shadow_target_ground_and_solo"))
				self.shadowTargetLevelButtonList.append(GetObject("shadow_target_all"))

				self.shadowQualityLevelButtonList.append(GetObject("shadow_quality_bad"))
				self.shadowQualityLevelButtonList.append(GetObject("shadow_quality_average"))
				self.shadowQualityLevelButtonList.append(GetObject("shadow_quality_good"))
		except:
			import exception
			exception.Abort("OptionDialog.__Load_BindObject")

	def __Load(self):
		self.__Load_LoadScript("uiscript/systemoptiondialog.py")
		self.__Load_BindObject()

		self.SetCenterPosition()
		
		self.titleBar.SetCloseEvent(ui.__mem_func__(self.Close))

		self.ctrlMusicVolume.SetSliderPos(float(systemSetting.GetMusicVolume()))
		self.ctrlMusicVolume.SetEvent(ui.__mem_func__(self.OnChangeMusicVolume))

		self.ctrlSoundVolume.SetSliderPos(float(systemSetting.GetSoundVolume()) / 5.0)
		self.ctrlSoundVolume.SetEvent(ui.__mem_func__(self.OnChangeSoundVolume))

#		self.ctrlShadowQuality.SetSliderPos(float(systemSetting.GetShadowLevel()) / 5.0)
		if app.__BL_SHADOW_RENDER_QUALITY_OPTION__:
			for i, btn in enumerate(self.shadowTargetLevelButtonList):
				btn.SAFE_SetEvent(self.__OnClickShadowTargetLevelButton, i)
			
			for i, btn in enumerate(self.shadowQualityLevelButtonList):
				btn.SAFE_SetEvent(self.__OnClickShadowQualityLevelButton, i)
			
			self.__ClickRadioButton(self.shadowTargetLevelButtonList, systemSetting.GetShadowTargetLevel())
			self.__ClickRadioButton(self.shadowQualityLevelButtonList, systemSetting.GetShadowQualityLevel())

		self.changeMusicButton.SAFE_SetEvent(self.__OnClickChangeMusicButton)

		self.cameraModeButtonList[0].SAFE_SetEvent(self.__OnClickCameraModeShortButton)
		self.cameraModeButtonList[1].SAFE_SetEvent(self.__OnClickCameraModeLongButton)

		if app.__BL_FOG_FIX__:
			self.fogButtonList[0].SAFE_SetEvent(self.__OnClickFogModeOffButton)
			self.fogButtonList[1].SAFE_SetEvent(self.__OnClickFogModeOnButton)
		else:
			self.fogModeButtonList[0].SAFE_SetEvent(self.__OnClickFogModeLevel0Button)
			self.fogModeButtonList[1].SAFE_SetEvent(self.__OnClickFogModeLevel1Button)
			self.fogModeButtonList[2].SAFE_SetEvent(self.__OnClickFogModeLevel2Button)

		self.tilingModeButtonList[0].SAFE_SetEvent(self.__OnClickTilingModeCPUButton)
		self.tilingModeButtonList[1].SAFE_SetEvent(self.__OnClickTilingModeGPUButton)
        
		if app.__BL_GRAPHIC_ON_OFF__:
			for i, btn in enumerate(self.effectOnOffButtonList):
				btn.SAFE_SetEvent(self.__OnClickEffectOnOffButton, i)
			for i, btn in enumerate(self.privateshopOnOffButtonList):
				btn.SAFE_SetEvent(self.__OnClickPrivateShopOnOffButton, i)
			for i, btn in enumerate(self.itemdropOnOffButtonList):
				btn.SAFE_SetEvent(self.__OnClickItemDropOnOffButton, i)

			self.petOnOffButtonList[0].SAFE_SetEvent(self.__OnClickPetOnOffButton, 0)
			self.petOnOffButtonList[1].SAFE_SetEvent(self.__OnClickPetOnOffButton, 1)

			self.npcnameOnOffButtonList[0].SAFE_SetEvent(self.__OnClickNPCNameOnOffButton, 0)
			self.npcnameOnOffButtonList[1].SAFE_SetEvent(self.__OnClickNPCNameOnOffButton, 1)

			self.effectApplyButton.SAFE_SetEvent(self.__OnClickApplyEffectOnOffButton)
			self.privateshopApplyButton.SAFE_SetEvent(self.__OnClickApplyPrivateShopOnOffButton)
			self.itemdropApplyButton.SAFE_SetEvent(self.__OnClickApplyItemDropOnOffButton)

			self.__ClickRadioButton(self.effectOnOffButtonList, grp.GetEffectOnOffLevel())
			self.__ClickRadioButton(self.privateshopOnOffButtonList, grp.GetPrivateShopOnOffLevel())
			self.__ClickRadioButton(self.itemdropOnOffButtonList, grp.GetDropItemOnOffLevel())
			self.__ClickRadioButton(self.petOnOffButtonList, grp.GetPetOnOffStatus())
			self.__ClickRadioButton(self.npcnameOnOffButtonList, grp.GetNPCNameOnOffStatus())

		self.tilingApplyButton.SAFE_SetEvent(self.__OnClickTilingApplyButton)

		self.__SetCurTilingMode()

		self.__ClickRadioButton(self.fogModeButtonList, constInfo.GET_FOG_LEVEL_INDEX())
		self.__ClickRadioButton(self.cameraModeButtonList, constInfo.GET_CAMERA_MAX_DISTANCE_INDEX())
		if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
			self.nightModeButtonList[0].SAFE_SetEvent(self.__OnClickNightModeOffButton)
			self.nightModeButtonList[1].SAFE_SetEvent(self.__OnClickNightModeOnButton)
			self.__InitNightModeOption()
			
			self.snowModeButtonList[0].SAFE_SetEvent(self.__OnClickSnowModeOffButton)
			self.snowModeButtonList[1].SAFE_SetEvent(self.__OnClickSnowModeOnButton)
			self.__InitSnowModeOption()
			
			self.snowTextureModeButtonList[0].SAFE_SetEvent(self.__OnClickSnowTextureModeOffButton)
			self.snowTextureModeButtonList[1].SAFE_SetEvent(self.__OnClickSnowTextureModeOnButton)		
			self.__InitSnowTextureModeOption()
        
		if app.__BL_FOG_FIX__:
			self.__ClickRadioButton(self.fogButtonList, background.GetFogMode())

		if musicInfo.fieldMusic==musicInfo.METIN2THEMA:
			self.selectMusicFile.SetText(uiSelectMusic.DEFAULT_THEMA)
		else:
			self.selectMusicFile.SetText(musicInfo.fieldMusic[:MUSIC_FILENAME_MAX_LEN])

	def __OnClickTilingModeCPUButton(self):
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_CPU_TILING_1)
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_CPU_TILING_2)
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_CPU_TILING_3)
		self.__SetTilingMode(0)

	def __OnClickTilingModeGPUButton(self):
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_GPU_TILING_1)
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_GPU_TILING_2)
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_GPU_TILING_3)
		self.__SetTilingMode(1)

	def __OnClickTilingApplyButton(self):
		self.__NotifyChatLine(localeInfo.SYSTEM_OPTION_TILING_EXIT)
		if 0==self.tilingMode:
			background.EnableSoftwareTiling(1)
		else:
			background.EnableSoftwareTiling(0)

		net.ExitGame()

	def __OnClickChangeMusicButton(self):
		if not self.musicListDlg:
			
			self.musicListDlg=uiSelectMusic.FileListDialog()
			self.musicListDlg.SAFE_SetSelectEvent(self.__OnChangeMusic)

		self.musicListDlg.Open()

		
	def __ClickRadioButton(self, buttonList, buttonIndex):
		try:
			selButton=buttonList[buttonIndex]
		except IndexError:
			return

		for eachButton in buttonList:
			eachButton.SetUp()

		selButton.Down()


	def __SetTilingMode(self, index):
		self.__ClickRadioButton(self.tilingModeButtonList, index)
		self.tilingMode=index

	def __SetCameraMode(self, index):
		constInfo.SET_CAMERA_MAX_DISTANCE_INDEX(index)
		self.__ClickRadioButton(self.cameraModeButtonList, index)

	def __SetFogLevel(self, index):
		constInfo.SET_FOG_LEVEL_INDEX(index)
		self.__ClickRadioButton(self.fogModeButtonList, index)

	def __OnClickCameraModeShortButton(self):
		self.__SetCameraMode(0)

	def __OnClickCameraModeLongButton(self):
		self.__SetCameraMode(1)

	def __OnClickFogModeLevel0Button(self):
		self.__SetFogLevel(0)

	def __OnClickFogModeLevel1Button(self):
		self.__SetFogLevel(1)

	def __OnClickFogModeLevel2Button(self):
		self.__SetFogLevel(2)
        
	if app.__BL_SHADOW_RENDER_QUALITY_OPTION__:
		def __OnClickShadowTargetLevelButton(self, i):
			systemSetting.SetShadowTargetLevel(i)
			self.__ClickRadioButton(self.shadowTargetLevelButtonList, i)

		def __OnClickShadowQualityLevelButton(self, i):
			systemSetting.SetShadowQualityLevel(i)
			self.__ClickRadioButton(self.shadowQualityLevelButtonList, i)
        
	if app.__BL_GRAPHIC_ON_OFF__:
		def __OnClickEffectOnOffButton(self, i):
			self.__ClickRadioButton(self.effectOnOffButtonList, i)

		def __OnClickPrivateShopOnOffButton(self, i):
			self.__ClickRadioButton(self.privateshopOnOffButtonList, i)

		def __OnClickItemDropOnOffButton(self, i):
			self.__ClickRadioButton(self.itemdropOnOffButtonList, i)

		def __OnClickPetOnOffButton(self, i):
			self.__ClickRadioButton(self.petOnOffButtonList, i)
			grp.SetPetOnOffStatus(i)

		def __OnClickNPCNameOnOffButton(self, i):
			self.__ClickRadioButton(self.npcnameOnOffButtonList, i)
			grp.SetNPCNameOnOffStatus(i)

		def __OnClickApplyEffectOnOffButton(self):
			for i, btn in enumerate(self.effectOnOffButtonList):
				if btn.IsDown():
					grp.SetEffectOnOffLevel(i)
					break
		
		def __OnClickApplyPrivateShopOnOffButton(self):
			for i, btn in enumerate(self.privateshopOnOffButtonList):
				if btn.IsDown():
					grp.SetPrivateShopOnOffLevel(i)
					break

		def __OnClickApplyItemDropOnOffButton(self):
			for i, btn in enumerate(self.itemdropOnOffButtonList):
				if btn.IsDown():
					grp.SetDropItemOnOffLevel(i)
					break
        
	if app.__BL_FOG_FIX__:
		def __OnClickFogModeOnButton(self):
			background.SetFogMode(True)
			self.__ClickRadioButton(self.fogButtonList, 1)
		def __OnClickFogModeOffButton(self):
			background.SetFogMode(False)
			self.__ClickRadioButton(self.fogButtonList, 0)

	def __OnChangeMusic(self, fileName):
		self.selectMusicFile.SetText(fileName[:MUSIC_FILENAME_MAX_LEN])

		if musicInfo.fieldMusic != "":
			snd.FadeOutMusic("BGM/"+ musicInfo.fieldMusic)

		if fileName==uiSelectMusic.DEFAULT_THEMA:
			musicInfo.fieldMusic=musicInfo.METIN2THEMA
		else:
			musicInfo.fieldMusic=fileName

		musicInfo.SaveLastPlayFieldMusic()
		
		if musicInfo.fieldMusic != "":
			snd.FadeInMusic("BGM/" + musicInfo.fieldMusic)

	def OnChangeMusicVolume(self):
		pos = self.ctrlMusicVolume.GetSliderPos()
		snd.SetMusicVolume(pos * net.GetFieldMusicVolume())
		systemSetting.SetMusicVolume(pos)

	def OnChangeSoundVolume(self):
		pos = self.ctrlSoundVolume.GetSliderPos()
		snd.SetSoundVolumef(pos)
		systemSetting.SetSoundVolumef(pos)

	def OnChangeShadowQuality(self):
		pos = self.ctrlShadowQuality.GetSliderPos()
		systemSetting.SetShadowLevel(int(pos / 0.2))

	def OnCloseInputDialog(self):
		self.inputDialog.Close()
		self.inputDialog = None
		return True

	def OnCloseQuestionDialog(self):
		self.questionDialog.Close()
		self.questionDialog = None
		return True

	def OnPressEscapeKey(self):
		self.Close()
		return True
	
	def Show(self):
		ui.ScriptWindow.Show(self)

	def Close(self):
		self.__SetCurTilingMode()
		self.Hide()

	def __SetCurTilingMode(self):
		if background.IsSoftwareTiling():
			self.__SetTilingMode(0)
		else:
			self.__SetTilingMode(1)	

	def __NotifyChatLine(self, text):
		chat.AppendChat(chat.CHAT_TYPE_INFO, text)
		
if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
		def __InitNightModeOption(self):
			self.NightModeOn		= systemSetting.GetNightModeOption()
			self.__ClickRadioButton(self.nightModeButtonList, self.NightModeOn)
			background.SetNightModeOption(self.NightModeOn)
			
		def __InitSnowModeOption(self):
			self.SnowModeOn	= systemSetting.GetSnowModeOption()
			self.__ClickRadioButton(self.snowModeButtonList, self.SnowModeOn)
			background.SetSnowModeOption(self.SnowModeOn)
	
		def __InitSnowTextureModeOption(self):
			self.SnowTextureModeOn	= systemSetting.GetSnowTextureModeOption()
			self.__ClickRadioButton(self.snowTextureModeButtonList, self.SnowTextureModeOn)
			background.SetSnowTextureModeOption(self.SnowTextureModeOn)			
			
		def __OnClickNightModeOffButton(self):
			self.__ClickRadioButton(self.nightModeButtonList, 0)
			self.__SetNightMode(0)
			
		def __OnClickNightModeOnButton(self):
			self.__ClickRadioButton(self.nightModeButtonList, 1)
			self.__SetNightMode(1)
			
		def __OnClickSnowModeOffButton(self):
			self.__ClickRadioButton(self.snowModeButtonList, 0)
			self.__SetSnowMode(0)
			
		def __OnClickSnowModeOnButton(self):
			self.__ClickRadioButton(self.snowModeButtonList, 1)
			self.__SetSnowMode(1)
			
		def __OnClickSnowTextureModeOffButton(self):
			self.__ClickRadioButton(self.snowTextureModeButtonList, 0)
			self.__SetSnowTextureMode(0)
			
		def __OnClickSnowTextureModeOnButton(self):
			self.__ClickRadioButton(self.snowTextureModeButtonList, 1)
			self.__SetSnowTextureMode(1)
			
		def __SetSnowMode(self, index):
			systemSetting.SetSnowModeOption(index)
			background.SetSnowModeOption(index)
			background.EnableSnowMode(index)
	
		def __SetSnowTextureMode(self, index):
			systemSetting.SetSnowTextureModeOption(index)
			background.SetSnowTextureModeOption(index)
			background.EnableSnowTextureMode()
	
		def __SetNightMode(self, index):
			systemSetting.SetNightModeOption(index)	
			background.SetNightModeOption(index)
			
			if not background.GetDayMode():
				return
				
			if not background.IsBoomMap():
				return
			
			if 1 == index:
				self.curtain.SAFE_FadeOut(self.__DayMode_OnCompleteChangeToDark)
			else:
				self.curtain.SAFE_FadeOut(self.__DayMode_OnCompleteChangeToLight)		
		
		def __DayMode_OnCompleteChangeToLight(self):
			background.ChangeEnvironmentData(0)
			self.curtain.FadeIn()
	
		def __DayMode_OnCompleteChangeToDark(self):		
			background.RegisterEnvironmentData(1, constInfo.ENVIRONMENT_NIGHT)
			background.ChangeEnvironmentData(1)
			self.curtain.FadeIn()

 

dont work for me. any idea? @ Mali

the systemoption does not open when i click ingame on them

indent problem:

.png

  • Love 1

 

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 month later...
  • 2 months later...
  • 2 months later...
  • 3 weeks later...

Fix for this?

0 errors in syserr...

	def __IsXMasMap(self):
		if app.__BL_ENVIRONMENT_EFFECT_OPTION__:
			mapDict = (	"metin2_map1_a1",
						"metin2_map1_a3",
						"metin2_map1_b1",
						"metin2_map1_b3",
						"metin2_map1_c1",
						"metin2_map1_c3",
						"metin2_map_n_flame_01",
						"metin2_map_n_desert_01",
						"metin2_map_spiderdungeon_01",
						"metin2_map_spiderdungeon_02",
						"metin2_map_spiderdungeon_03",
						"metin2_map_deviltower1",
						"season1/metin2_map_sungzi_flame_hill_01",
						"season1/metin2_map_sungzi_flame_hill_02",
						"season1/metin2_map_sungzi_flame_hill_03",
						"season1/metin2_map_sungzi_desert_01",
						"season1/metin2_map_sungzi_desert_hill_01",
						"season1/metin2_map_sungzi_desert_hill_02",
						"season1/metin2_map_sungzi_desert_hill_03",
						"season2/metin2_map_empirewar03",
						"metin2_map_devilsCatacomb",
						"metin2_map_Mt_Thunder",
						"metin2_map_n_flame_dungeon_01",
						"metin2_map_dawnmist_dungeon_01",
						"metin2_map_Mt_Th_dungeon_01",)
		else:
			mapDict = (	"metin2_map_n_flame_01",
						"metin2_map_n_desert_01",
						"metin2_map_spiderdungeon",
						"metin2_map_deviltower1", )

https://metin2.download/video/G2sWGrf7xSYF8LBOb0w4PYiC78f2P9cR/.mp4

Edited by Metin2 Dev International
Core X - External 2 Internal
Link to comment
Share on other sites

  • 2 months later...

Announcements



  • Similar Content

  • Similar Content

  • Similar Content

  • Tags

  • Activity

    1. 0

      Quest 6/7 Problem

    2. 5

      Effect weapons

    3. 3

      Crystal Metinstone

    4. 3

      Feeding game source to LLM

    5. 113

      Ulthar SF V2 (TMP4 Base)

    6. 3

      Feeding game source to LLM

    7. 0

      Target Information System

    8. 3

      Feeding game source to LLM

  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.