Jump to content

Sevenfoldia

Member
  • Posts

    27
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by Sevenfoldia

  1. 17 minutes ago, VegaS™ said:
    • PythonItem.cpp

    Hidden Content

     

    // Search for:
    	CEffectManager::Instance().RegisterEffect2("d:/ymir work/effect/etc/dropitem/dropitem.mse", &m_dwDropItemEffectID);
    // Add after:
    	CEffectManager::Instance().RegisterEffect2("d:/ymir work/effect/etc/dropitem/dropitem_rare.mse", &m_dwDropItemRareEffectID);
    
    // Search for:
    		CEffectManager & rem =CEffectManager::Instance();
    		pGroundItemInstance->dwEffectInstanceIndex =
    		rem.CreateEffect(m_dwDropItemEffectID, D3DXVECTOR3(x, -y, z), D3DXVECTOR3(0,0,0));
    // Replace with:
    		static const auto s_rare_items = { 71084, 71085 };
    		auto effectID = m_dwDropItemEffectID;
    		if (std::find(s_rare_items.begin(), s_rare_items.end(), dwVirtualNumber) != s_rare_items.end())
    			effectID = m_dwDropItemRareEffectID;
    
    		pGroundItemInstance->dwEffectInstanceIndex = CEffectManager::Instance().CreateEffect(effectID, D3DXVECTOR3(x, -y, z), D3DXVECTOR3(0, 0, 0));

     

     

    • PythonItem.h

    Hidden Content

     

    // Search for:
    		DWORD m_dwDropItemEffectID;
    // Add after:
    		DWORD m_dwDropItemRareEffectID;

     

     

    Thank you very much! It is awesome.

    Here is image

    • Love 1
  2. Hello everyone,

    In PythonItem.cpp, there is function for original effect for items on the ground.

    void CPythonItem::Create()
    {
    	CEffectManager::Instance().RegisterEffect2("d:/ymir work/effect/etc/dropitem/dropitem.mse", &m_dwDropItemEffectID);
    }

    I want to add effects for different item IDs separately. For example: for item ID 71084, 71085 I want to use effect dropitem_rare.mse and for all other items I want to use original dropitem.mse,

    Can somebody help me with this please?

    Thank you for all your advices.

  3. 4 hours ago, dumita123 said:

    This problem was a pain in the ass, but it was because of the worldmatrix. The sash system also has a scale system, so we need to also update the shake function matrix, since the sash system is updating our deform functions over in ThingInstance.

     

    Enough talking, let's fix it:

    GameLib/ActorInstanceBattle.cpp

     

    Search:

    void CActorInstance::ShakeProcess()

     

    Replace

    		m_worldMatrix._41	+= v3Pos.x;
    		m_worldMatrix._42	+= v3Pos.y;
    		m_worldMatrix._43	+= v3Pos.z;

     

    With

    		m_TransformMatrix._41	+= v3Pos.x;
    		m_TransformMatrix._42	+= v3Pos.y;
    		m_TransformMatrix._43	+= v3Pos.z;

     

    It works! Than you very much!

  4. 6 hours ago, Syreldar said:
    void CActorInstance::__ProcessDataAttackSuccess(const NRaceData::TAttackData& c_rAttackData, CActorInstance& rVictim, const D3DXVECTOR3& c_rv3Position, UINT uiSkill, BOOL isSendPacket)
    	else if (rVictim.IsStone() || rVictim.IsDoor())
    	{
    		__HitStone(rVictim);
    	}
    void CActorInstance::__HitStone(CActorInstance& rVictim)
    {
    	if (rVictim.IsStun())
    	{
    		rVictim.Die();
    	}
    	else
    	{
    		rVictim.__Shake(100); // This is what triggers the shake, make sure it's there.
    	}
    }

     

    Thank you for your advice. I have this this code in ActorInstanceBattle.cpp but it doesnt work.

    It is not working after I added shoulder sash system. When I load backup without sash, metin stones shaking normally.

    Maybe I added some code badly, but there is no changes in ActorInstanceBattle.cpp

  5. On 7/29/2022 at 3:27 PM, Karbust said:

    Use this queries instead

    For player ranking:

    SELECT
    	p.id, 
    	p.`name`, 
    	p.job, 
    	p.playtime, 
    	p.`level`,
    	p.exp, 
    	g.`name` AS g_name
    FROM player AS p
    INNER JOIN guild_member AS gm ON gm.pid = p.id
    INNER JOIN guild AS g ON g.id = gm.guild_id
    WHERE p.`name` NOT LIKE '[%]%'
    ORDER BY
    	p.`level` DESC, 
    	p.exp DESC, 
    	playtime DESC
    LIMIT 100

    For guild ranking:

    SELECT
    	g.`name`, 
    	g.`level`, 
    	g.exp, 
    	g.win, 
    	g.draw, 
    	g.loss, 
    	g.ladder_point, 
    	p.`name`, 
    	p.id
    FROM player AS p
    INNER JOIN guild_member AS gm ON p.id = gm.pid
    INNER JOIN guild AS g ON g.id = gm.guild_id
    WHERE p.`name` NOT LIKE '[%]%'
    ORDER BY ladder_point DESC
    LIMIT 100

     

    Thank you for this. I edit some lines and It works pretty well. But there is a problem at player rankings. It shows only player who are in guild. Players without guilds are not in ladder. When i delete the "guild" part from query it shows all players

     

    My rankings.php:

    <div class="content">
    	<div class="content-bg">
    		<div class="content-bg-bottom">
    			<h2>100 nejlepších hráčů - podle dosažené úrovně a zkušeností </h2>
    			<div id="ranking">
    				<br />
    				<table border="1">
    					<tr>
    						<th width="10">Umístění</th>
    						<th width="100">Jméno</th>
    						<th width="70">Level</th>
    						<th width="70">Zkušeností</th>
    						<th width="80">Cech</th>
    						<th width="70">Rasa</th>
    						<th width="40">Říše</th>
    					</tr>
    				<?php
    					mysqli_select_db($sqlServ, 'player');
    					$rank = "SELECT
    								p.id, 
    								p.account_id, 
    								p.`name`, 
    								p.job, 
    								p.playtime, 
    								p.`level`,
    								p.exp, 
    								g.`name` AS g_name,
    								i.empire AS empire
    							FROM player AS p
    							INNER JOIN guild_member AS gm ON gm.pid = p.id
    							INNER JOIN guild AS g ON g.id = gm.guild_id
    							INNER JOIN player_index AS i ON i.id = p.account_id
    							WHERE p.`name` NOT LIKE '[%]%'
    							ORDER BY
    								p.`level` DESC, 
    								p.exp DESC, 
    								playtime DESC
    							LIMIT 100";
    					$query = mysqli_query($sqlServ, $rank);
    					$i = 0;
    					while($array = mysqli_fetch_array($query)) {
    						$i = $i + 1;
    						echo "<tr>
    						<th width=\"10\"><font color=\"black\">" . $i . "</font></th>
    						<th width=\"100\"><font color=\"black\">" . $array["name"] . "</font></th>
    						<th width=\"70\"><font color=\"black\">" . $array["level"] . "</font></th>
    						<th width=\"70\"><font color=\"black\">" . $array["exp"] . "</font></th>
    						<th width=\"80\"><font color=\"black\">" . $array["g_name"] . "</font></th>";
    						if($array["job"] == 0) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/warrior_m.png\"></th>";
    						} elseif($array["job"] == 1) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/assassin_w.png\"></th>";
    						} elseif($array["job"] == 2) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/sura_m.png\"></th>";
    						} elseif($array["job"] == 3) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/shaman_w.png\"></th>";
    						} elseif($array["job"] == 4) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/warrior_w.png\"></th>";
    						} elseif($array["job"] == 5) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/assassin_m.png\"></th>";
    						} elseif($array["job"] == 6) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/sura_w.png\"></th>";
    						} else {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/shaman_m.png\"></th>";
    						}
    						if($array["empire"] == 1) {
    						echo "<th width=\"40\" td align=\"center\"><img src=\"img/1_s.png\"></th></tr>";
    						} elseif($array["empire"] == 2) {
    						echo "<th width=\"40\" td align=\"center\"><img src=\"img/2_s.png\"></th></tr>";
    						} else {
    						echo "<th width=\"40\" td align=\"center\"><img src=\"img/3_s.png\"></th></tr>";
    						}
    					}
    					echo "</table>";
    				?>
    				<br />
    			</div>
    			<center><strong><a class="btn" href="?s=guildrank">Žebříček cechů</a></strong><br /></center>
    			<br class="clearfloat" />
    		</div>
    	</div>
    </div>
    <div class="shadow">&nbsp;</div>

    Can you help me with this?

    Here is screenshot of my website

  6. Hello everyone. I am using [Replica] Old Metin2 Website. I edited pretty much things, but I need help with query for guild at player ranking page and guild leader at guild ranking page.

    I tried so many variants like $guild = "SELECT example FROM example WHERE  example = " . $array["example"] . "";  etc.

    But i didnt find the right solution

    Here my rankings.php

    <div class="content">
    	<div class="content-bg">
    		<div class="content-bg-bottom">
    			<h2>100 nejlepších hráčů - podle dosažené úrovně a zkušeností </h2>
    			<div id="ranking">
    				<br />
    				<table border="1">
    					<tr>
    						<th width="10">Umístění</th>
    						<th width="100">Jméno</th>
    						<th width="70">Level</th>
    						<th width="70">Zkušeností</th>
    						<th width="80">Cech</th>
    						<th width="70">Rasa</th>
    						<th width="40">Říše</th>
    					</tr>
    				<?php
    					mysqli_select_db($sqlServ, 'player');
    					$rank = "SELECT * from player WHERE name NOT LIKE '[%]%' order by level desc, exp desc, playtime desc limit 100";
    					$query = mysqli_query($sqlServ, $rank);
    					$i = 0;
    					while($array = mysqli_fetch_array($query)) {
    						$i = $i + 1;
    						echo "<tr>
    						<th width=\"10\"><font color=\"black\">" . $i . "</font></th>
    						<th width=\"100\"><font color=\"black\">" . $array["name"] . "</font></th>
    						<th width=\"70\"><font color=\"black\">" . $array["level"] . "</font></th>
    						<th width=\"70\"><font color=\"black\">" . $array["exp"] . "</font></th>
    						
    						<th width=\"80\"><font color=\"black\">" . $array["guild"] . "</font></th>"; //placeholder for right guild query
    						
    						$job = "SELECT job from player where job = " . $array["job"] . "";
    						$query2 = mysqli_query($sqlServ, $job);
    						$array2 = mysqli_fetch_array($query2);
    						if($array2["job"] == 0) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/warrior_m.png\"></th>";
    						} elseif($array2["job"] == 1) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/assassin_w.png\"></th>";
    						} elseif($array2["job"] == 2) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/sura_m.png\"></th>";
    						} elseif($array2["job"] == 3) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/shaman_m.png\"></th>";
    						} elseif($array2["job"] == 4) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/warrior_w.png\"></th>";
    						} elseif($array2["job"] == 5) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/assassin_m.png\"></th>";
    						} elseif($array2["job"] == 6) {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/sura_w.png\"></th>";
    						} else {
    						echo "<th width=\"70\" td align=\"center\"><img src=\"img/shaman_w.png\"></th>";
    						}
    						$reich = "SELECT empire from player_index where id = " . $array["account_id"] . "";
    						$query3 = mysqli_query($sqlServ, $reich);
    						$array3 = mysqli_fetch_array($query3);
    						if($array3["empire"] == 1) {
    						echo "<th width=\"40\" td align=\"center\"><img src=\"img/1_s.png\"></th></tr>";
    						} elseif($array3["empire"] == 2) {
    						echo "<th width=\"40\" td align=\"center\"><img src=\"img/2_s.png\"></th></tr>";
    						} else {
    						echo "<th width=\"40\" td align=\"center\"><img src=\"img/3_s.png\"></th></tr>";
    						}
    					}
    					echo "</table>";
    				?>
    				<br />
    			</div>
    			<center><strong><a class="btn" href="?s=guildrank">Žebříček cechů</a></strong><br /></center>
    			<br class="clearfloat" />
    		</div>
    	</div>
    </div>
    <div class="shadow">&nbsp;</div>

    and here is my guild rank.php

    <div class="content">
    	<div class="content-bg">
    		<div class="content-bg-bottom">
    			<h2>100 nejlepších cechů - podle dosažených bodů ve válkách</h2>
    			<div id="ranking">
    				<br />
    				<table border="1">
    					<tr>
    						<th width="10">Umístění</th>
    						<th width="90">Název</th>
    						<th width="50">Level</th>
    						<th width="50">Vítězství</th>
    						<th width="50">Remízy</th>
    						<th width="40">Prohry</th>
    						<th width="50">Body</th>
    						<th width="70">Vůdce</th>
    						<th width="40">Říše </th>
    					</tr>
    				<?php
    					mysqli_select_db($sqlServ, 'player');
    					$rank = "SELECT * from guild order by ladder_point desc limit 100";
    					$query = mysqli_query($sqlServ, $rank);
    					$i = 0;
    					while($array = mysqli_fetch_array($query)) {
    						$i = $i + 1;
    						echo "<tr>
    						<th width=\"10\"><font color=\"black\">" . $i . "</font></th>
    						<th width=\"90\"><font color=\"black\">" . $array["name"] . "</font></th>
    						<th width=\"50\"><font color=\"black\">" . $array["level"] . "</font></th>
    						<th width=\"50\"><font color=\"black\">" . $array["win"] . "</font></th>
    						<th width=\"50\"><font color=\"black\">" . $array["draw"] . "</font></th>
    						<th width=\"40\"><font color=\"black\">" . $array["loss"] . "</font></th>
    						<th width=\"50\"><font color=\"black\">" . $array["ladder_point"] . "</font></th>
    
    						<th width=\"50\"><font color=\"black\">" . $array["guild_leader"] . "</font></th>"; //placeholder for right guild leader query
    
    						$reich = "SELECT empire from player_index where id = " . $array2["account_id"] . "";
    						$query2 = mysqli_query($sqlServ, $reich);
    						if($array2["empire"] == 1) {
    						echo "<th width=\"40\" td align=\"center\"><img src=\"img/1_s.png\"></th></tr>";
    						} elseif($array2["empire"] == 2) {
    						echo "<th width=\"40\" td align=\"center\"><img src=\"img/2_s.png\"></th></tr>";
    						} else {
    						echo "<th width=\"40\" td align=\"center\"><img src=\"img/3_s.png\"></th></tr>";
    						}
    					}
    					echo "</table>";
    				?>
    				<br />
    			</div>
    			<center><strong><a class="btn" href="?s=rankings">Žebříček hráčů</a></strong><br /></center>
    			<br class="clearfloat" />
    		</div>
    	</div>
    </div>
    <div class="shadow">&nbsp;</div>

    There is screenshot of my ranking page

    There is screeshot of my guild rank page

    It is in Czech language so there are some translations if you need: cech = guild, vůdce = leader

     

    Can someone please help me to setup right query?

    Thank you for all advices.

  7. Hello community,

    I have a little problem with this system. Everything works good, except options for experience, items and currency.

    Experience does nothing
    Items hides recieved experience
    Currency hides recieved yangs and items at the same time 

     

    Anybody knows how to solve it? I uploaded all touched files from this system in the link bellow, so you can check all my files.

    This is the hidden content, please

     

    I tried to implement this system 3 times with the same results.

    The same problem has @blaxis on this topic, but there is no solution.

     

    Thanks for every suggestions.

    • Metin2 Dev 21
    • Good 3
    • Love 1
  8. Hello community,

     

    First of all, I added switchbot and then make a button at inventory window for bonus switcher (Like this), which was good enough for me in the moment.

     

    Then I added Official character details by Mali

    and decided to move button for switchbot from inventory window to character details window (Like this)

    I created a new button and added it to the character details window but the bonus switcher does not open without any error. 

     

     

    I followed this tutorial for make it work in inventory window:

    Spoiler

    #in root/uiinventory.py

    #Add:

     

    import bonusswitcher

     

    #Find:

     

    self.isOpenedBeltWindowWhenClosingInventory = 0

    #Add above:

     

    self.okno2 = bonusswitcher.Bot()

    #Find:

     

    self.costumeButton = self.GetChild2("CostumeButton")

    #Add under:

     

    self.nowyButton2 = self.GetChild2("Button2")

    #Find:

     

    self.wndMoneySlot.SetEvent(ui.__mem_func__(self.OpenPickMoneyDialog))

    #Add under:

     

    self.nowyButton2.SetEvent(ui.__mem_func__(self.Okno2))

    #Find:

     

    def ClickMallButton(self):

    #Add above:

     

    def Okno2(self):

    if self.okno2.IsShow():

    self.okno2.Close()

    else:

    self.okno2.Open()

     

    In locale/xx/ui/inventorywindow.py I simply added a button with ("name":"Button2",) and everything works fine.

    When I put ("name":"Button2",) to the button I created in character details window, nothing happens even when I try to put there ("name" : "DSSButton",)

    I tried to put functions to root/uicharacterdeails.py and also to root/uicharacter.py but every time I ended with some missing attribute errors. 

     

    I found some threads people asking for similar questions, but mostly it was for buttons at inventory window and nothing was really helpfull for me.

     

    So can you help me make this button work please?

    Thank you for your replies and sorry for my english.

  9. Hello community,

    I'm using Metin2 Project 2014.1 | Kraizy Updated Edition and I have a problem, that  the belts gives me bonuses, but I can't see them in description. I compared uitooltip from another client, everything is the same.

    Edit: Also I can't see slots when I put diamonds on belts.

    Can anybody help me with this?

    Spoiler

    • Confused 1
    • Love 1
  10. On 2/7/2020 at 1:57 PM, Nirray said:

    root/uitooltip.py

    Find:

    
        def __AppendAccessoryMetinSlotInfo(self, metinSlot, mtrlVnum)

    Replace whole function:
     

      Reveal hidden contents
    
    
    	def __AppendAccessoryMetinSlotInfo(self, metinSlot, mtrlVnum):
    		ACCESSORY_SOCKET_MAX_SIZE = 4
    
    		cur=min(metinSlot[0], ACCESSORY_SOCKET_MAX_SIZE)
    		end=min(metinSlot[1], ACCESSORY_SOCKET_MAX_SIZE)
    
    		affectType1, affectValue1 = item.GetAffect(0)
    		affectList1=[0, max(1, affectValue1*10/100), max(2, affectValue1*20/100), max(3, affectValue1*40/100), max(4, affectValue1*60/100)]
    
    		affectType2, affectValue2 = item.GetAffect(1)
    		affectList2=[0, max(1, affectValue2*10/100), max(2, affectValue2*20/100), max(3, affectValue2*40/100), max(4, affectValue1*60/100)]
    
    		affectType3, affectValue3 = item.GetAffect(2)
    		affectList3=[0, max(1, affectValue3*10/100), max(2, affectValue3*20/100), max(3, affectValue3*40/100), max(4, affectValue1*60/100)]
    
    
    		mtrlPos=0
    		mtrlList=[mtrlVnum]*cur+[player.METIN_SOCKET_TYPE_SILVER]*(end-cur)
    		for mtrl in mtrlList:
    			affectString1 = self.__GetAffectString(affectType1, affectList1[mtrlPos+1]-affectList1[mtrlPos])		  
    			affectString2 = self.__GetAffectString(affectType2, affectList2[mtrlPos+1]-affectList2[mtrlPos])
    			affectString3 = self.__GetAffectString(affectType3, affectList3[mtrlPos+1]-affectList3[mtrlPos])		  
    
    			leftTime = 0
    			if cur == mtrlPos+1:
    				leftTime=metinSlot[2]
    
    			self.__AppendMetinSlotInfo_AppendMetinSocketData(mtrlPos, mtrl, affectString1, affectString2 ,affectString3, leftTime)
    			mtrlPos+=1

     

    Then search:
     

    
    	def __AppendMetinSlotInfo_AppendMetinSocketData(self, index, metinSlotData, custumAffectString="", custumAffectString2="", custumAffectString3="",leftTime=0):

    And also replace:
     

      Reveal hidden contents
    
    
    def __AppendMetinSlotInfo_AppendMetinSocketData(self, index, metinSlotData, custumAffectString="", custumAffectString2="", custumAffectString3="",leftTime=0):
    
    		slotType = self.GetMetinSocketType(metinSlotData)
    		itemIndex = self.GetMetinItemIndex(metinSlotData)
    
    		if 0 == slotType:
    			return
    
    		self.AppendSpace(5)
    
    		slotImage = ui.ImageBox()
    		slotImage.SetParent(self)
    		slotImage.Show()
    		
    		## Name
    		nameTextLine = ui.TextLine()
    		nameTextLine.SetParent(self)
    		nameTextLine.SetFontName(self.defFontName)
    		nameTextLine.SetPackedFontColor(self.NORMAL_COLOR)
    		nameTextLine.SetOutline()
    		nameTextLine.SetFeather()
    		nameTextLine.Show()
    
    		self.childrenList.append(nameTextLine)
    
    		if player.METIN_SOCKET_TYPE_SILVER == slotType:
    			slotImage.LoadImage("d:/ymir work/ui/game/windows/metin_slot_silver.sub")
    		elif player.METIN_SOCKET_TYPE_GOLD == slotType:
    			slotImage.LoadImage("d:/ymir work/ui/game/windows/metin_slot_gold.sub")
    
    		self.childrenList.append(slotImage)
    
    		if localeInfo.IsARABIC():
    			slotImage.SetPosition(self.toolTipWidth - slotImage.GetWidth() - 9, self.toolTipHeight-1)
    			nameTextLine.SetPosition(self.toolTipWidth - 50, self.toolTipHeight + 2)
    		else:
    			slotImage.SetPosition(9, self.toolTipHeight-1)
    			nameTextLine.SetPosition(50, self.toolTipHeight + 2)
    
    		metinImage = ui.ImageBox()
    		metinImage.SetParent(self)
    		metinImage.Show()
    		self.childrenList.append(metinImage)
    
    		if itemIndex:
    
    			item.SelectItem(itemIndex)
    
    			## Image
    			try:
    				metinImage.LoadImage(item.GetIconImageFileName())
    			except:
    				dbg.TraceError("ItemToolTip.__AppendMetinSocketData() - Failed to find image file %d:%s" %
    					(itemIndex, item.GetIconImageFileName())
    				)
    
    			nameTextLine.SetText(item.GetItemName())
    		   
    			## Affect
    			affectTextLine = ui.TextLine()
    			affectTextLine.SetParent(self)
    			affectTextLine.SetFontName(self.defFontName)
    			affectTextLine.SetPackedFontColor(self.POSITIVE_COLOR)
    			affectTextLine.SetOutline()
    			affectTextLine.SetFeather()
    			affectTextLine.Show()
    			   
    			if localeInfo.IsARABIC():
    				metinImage.SetPosition(self.toolTipWidth - metinImage.GetWidth() - 10, self.toolTipHeight)
    				affectTextLine.SetPosition(self.toolTipWidth - 50, self.toolTipHeight + 16 + 2)
    			else:
    				metinImage.SetPosition(10, self.toolTipHeight)
    				affectTextLine.SetPosition(50, self.toolTipHeight + 16 + 2)
    
    			if custumAffectString:
    				affectTextLine.SetText(custumAffectString)
    			elif itemIndex!=constInfo.ERROR_METIN_STONE:
    				affectType, affectValue = item.GetAffect(0)
    				affectString = self.__GetAffectString(affectType, affectValue)
    				if affectString:
    					affectTextLine.SetText(affectString)
    			else:
    				affectTextLine.SetText(localeInfo.TOOLTIP_APPLY_NOAFFECT)
    		   
    			self.childrenList.append(affectTextLine)
    
    			if custumAffectString2:
    				affectTextLine = ui.TextLine()
    				affectTextLine.SetParent(self)
    				affectTextLine.SetFontName(self.defFontName)
    				affectTextLine.SetPackedFontColor(self.POSITIVE_COLOR)
    				affectTextLine.SetPosition(50, self.toolTipHeight + 16 + 2 + 16 + 2)
    				affectTextLine.SetOutline()
    				affectTextLine.SetFeather()
    				affectTextLine.Show()
    				affectTextLine.SetText(custumAffectString2)
    				self.childrenList.append(affectTextLine)
    				self.toolTipHeight += 16 + 2
    
    			if custumAffectString3:
    				affectTextLine = ui.TextLine()
    				affectTextLine.SetParent(self)
    				affectTextLine.SetFontName(self.defFontName)
    				affectTextLine.SetPackedFontColor(self.POSITIVE_COLOR)
    				affectTextLine.SetPosition(50, self.toolTipHeight + 16 + 2 + 16 + 2)
    				affectTextLine.SetOutline()
    				affectTextLine.SetFeather()
    				affectTextLine.Show()
    				affectTextLine.SetText(custumAffectString3)
    				self.childrenList.append(affectTextLine)
    				self.toolTipHeight += 16 + 2
    
    			if 0 != leftTime:
    				timeText = (localeInfo.LEFT_TIME + " : " + localeInfo.SecondToDHM(leftTime))
    
    				timeTextLine = ui.TextLine()
    				timeTextLine.SetParent(self)
    				timeTextLine.SetFontName(self.defFontName)
    				timeTextLine.SetPackedFontColor(self.POSITIVE_COLOR)
    				timeTextLine.SetPosition(50, self.toolTipHeight + 16 + 2 + 16 + 2)
    				timeTextLine.SetOutline()
    				timeTextLine.SetFeather()
    				timeTextLine.Show()
    				timeTextLine.SetText(timeText)
    				self.childrenList.append(timeTextLine)
    				self.toolTipHeight += 16 + 2
    
    		else:
    			nameTextLine.SetText(localeInfo.TOOLTIP_SOCKET_EMPTY)
    
    		self.toolTipHeight += 45
    		self.ResizeToolTip()

     


    Should work now ?

    Work very vell, but for other who will need this, take care of tabs.

    thank you.

  11. Hello community,

    can you help me please how to edit displayed bonuses in jewelry when you add an ore?

     

    I added 3 bonuses into earings, and when I add ore, there are displayed only 2. Works all 3 of them, but they are not in the description as you can in in the picture.

    I did not find anything like that.
    Thank you and sorry for my english.

    Spoiler

    • Love 1
×
×
  • 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.