Jump to content

phayara

Premium
  • Posts

    401
  • Joined

  • Last visited

  • Days Won

    3
  • Feedback

    0%

Posts posted by phayara

  1. client syserr error help please
     

    0721 22:35:08162 :: Traceback (most recent call last):

    0721 22:35:08162 ::   File "uiPhaseCurtain.py", line 61, in OnUpdate

    0721 22:35:08162 ::   File "networkModule.py", line 150, in __ChangePhaseWindow

    0721 22:35:08162 ::   File "introSelect.py", line 169, in Open

    0721 22:35:08162 ::   File "introSelect.py", line 242, in Refresh

    0721 22:35:08163 ::   File "introSelect.py", line 367, in MakeCharacter

    0721 22:35:08163 :: AttributeError
    0721 22:35:08163 :: : 
    0721 22:35:08163 :: 'module' object has no attribute 'SetWing'
    0721 22:35:08163 :: 

    "0721 22:35:08163 :: 'module' object has no attribute 'SetWing'" ;)

  2. sysrr:

     

     

    04 12:14:23279 :: Failed to load script file : UIScript/CostumeWindow.py
    0704 12:14:23281 :: 
    ui.py(line:2769) LoadScriptFile
    system.py(line:192) execfile
    system.py(line:163) Run
    UIScript/CostumeWindow.py(line:7) ?

    LoadScriptFile!!!!!!!!!!!!!! - exceptions.AttributeError:'module' object has no attribute 'ENABLE_MOUNT_COSTUME_SYSTEM'

    0704 12:14:23281 :: ============================================================================================================
    0704 12:14:23281 :: Abort!!!!


    0704 12:14:23281 :: 
    uiInventory.py(line:68) __LoadWindow
    ui.py(line:2786) LoadScriptFile
    exception.py(line:36) Abort

    CostumeWindow.LoadWindow.LoadObject - exceptions.SystemExit:

    0704 12:14:23281 :: ============================================================================================================
    0704 12:14:23281 :: Abort!!!!

     

     

    help me 

    Hello, add ENABLE_MOUNT_COSTUME_SYSTEM

    UserInterface > locale_inc.h

  3. Próximos fix + updates y algunos más (Esperamos prepararlo para este lunes todo, se informarán de avances):

    • Sistema día, tarde, noche.
    • Face ingame.
    • Sistema de duelo.

    Imagen del día, tarde, noche y face:

    f5c528462d3fea2a7860c6ed2a145d00.gif

    Imagen del sistema de duelo:

    b7e470cb0a355640a4ad1338be52becc.gif

     

     

    Looks nice, good job.

  4.  

    help 

     

    0330 19:32:08612 :: invalid idx 0
    0330 19:33:32666 :: Traceback (most recent call last):
     
    0330 19:33:32666 ::   File "game.py", line 1500, in OnMouseLeftButtonUp
     
    0330 19:33:32666 ::   File "interfaceModule.py", line 345, in MakeHyperlinkTooltip
     
    0330 19:33:32667 ::   File "uiToolTip.py", line 1850, in SetHyperlinkItem
     
    0330 19:33:32667 ::   File "uiToolTip.py", line 889, in AddItemData
     
    0330 19:33:32667 ::   File "uiToolTip.py", line 1650, in __AppendMetinSlotInfo
     
    0330 19:33:32667 :: IndexError
    0330 19:33:32667 :: : 
    0330 19:33:32667 :: list index out of range
    0330 19:33:32667 :: 

     

     

    Open the binary source and search for:

    chatGetLinkFromHyperlink
    

    And make it look like this:

    PyObject * chatGetLinkFromHyperlink(PyObject * poSelf, PyObject * poArgs)
    {
    	char * szHyperlink;
    	
    	if (!PyTuple_GetString(poArgs, 0, &szHyperlink))
    		return Py_BuildException();
    
    	std::string stHyperlink(szHyperlink);
    	std::vector<std::string> results;
    
    	split_string(stHyperlink, ":", results, false);
    
    	// item:vnum:flag:socket0:socket1:socket2:socket3:socket4:socket5
    	if (0 == results[0].compare("item"))
    	{
    		if (results.size() < 9)
    			return Py_BuildValue("s", "");
    
    		CItemData * pItemData = NULL;
    
    		if (CItemManager::Instance().GetItemDataPointer(htoi(results[1].c_str()), &pItemData))
    		{
    			char buf[1024] = { 0 };
    			char itemlink[256];
    			int len;
    			bool isAttr = false;
    
    			len = snprintf(itemlink, sizeof(itemlink), "item:%x:%x:%x:%x:%x:%x:%x:%x", 
    					htoi(results[1].c_str()),
    					htoi(results[2].c_str()),
    					htoi(results[3].c_str()),
    					htoi(results[4].c_str()),
    					htoi(results[5].c_str()),
    					htoi(results[6].c_str()),
    					htoi(results[7].c_str()),
    					htoi(results[8].c_str()));
    
    			if (results.size() >= 11)
    			{
    				for (int i = 9; i < results.size(); i += 2)
    				{
    					len += snprintf(itemlink + len, sizeof(itemlink) - len, ":%x:%d", 
    							htoi(results[i].c_str()),
    							atoi(results[i+1].c_str()));
    					isAttr = true;
    				}
    			}
    
    			if (isAttr)
    				//"item:¹øÈ£:Ç÷¡±×:¼ÒÄÏ0:¼ÒÄÏ1:¼ÒÄÏ2"
    				snprintf(buf, sizeof(buf), "|cffffc700|H%s|h[%s]|h|r", itemlink, pItemData->GetName());
    			else
    				snprintf(buf, sizeof(buf), "|cfff1e6c0|H%s|h[%s]|h|r", itemlink, pItemData->GetName());
    
    			return Py_BuildValue("s", buf);
    		}
    	}
    
    	return Py_BuildValue("s", "");
    }
    

    Search for

    playerGetItemLink
    

    And make it look like this

    PyObject * playerGetItemLink(PyObject * poSelf, PyObject * poArgs)
    {
    	TItemPos Cell;
    
    	switch (PyTuple_Size(poArgs))
    	{
    	case 1:	
    		if (!PyTuple_GetInteger(poArgs, 0, &Cell.cell))
    			return Py_BuildException();
    		break;
    	case 2:
    		if (!PyTuple_GetByte(poArgs, 0, &Cell.window_type))
    			return Py_BuildException();
    		if (!PyTuple_GetInteger(poArgs, 1, &Cell.cell))
    			return Py_BuildException();
    		break;
    	default:
    		return Py_BuildException();
    	}
    	const TItemData * pPlayerItem = CPythonPlayer::Instance().GetItemData(Cell);
    	CItemData * pItemData = NULL;
    	char buf[1024];
    
    	if (pPlayerItem && CItemManager::Instance().GetItemDataPointer(pPlayerItem->vnum, &pItemData))
    	{
    		char itemlink[256];
    		int len;
    		bool isAttr = false;
    
    		len = snprintf(itemlink, sizeof(itemlink), "item:%x:%x:%x:%x:%x:%x:%x:%x", 
    				pPlayerItem->vnum, pPlayerItem->flags,
    				pPlayerItem->alSockets[0], pPlayerItem->alSockets[1], pPlayerItem->alSockets[2] , pPlayerItem->alSockets[3],  pPlayerItem->alSockets[4],  pPlayerItem->alSockets[5]);
    
    		for (int i = 0; i < ITEM_ATTRIBUTE_SLOT_MAX_NUM; ++i)
    			if (pPlayerItem->aAttr[i].bType != 0)
    			{
    				len += snprintf(itemlink + len, sizeof(itemlink) - len, ":%x:%d", 
    						pPlayerItem->aAttr[i].bType, pPlayerItem->aAttr[i].sValue);
    				isAttr = true;
    			}
    
    
    		if( GetDefaultCodePage() == CP_ARABIC ) {
    			if (isAttr)
    				//"item:¹øÈ£:Ç÷¡±×:¼ÒÄÏ0:¼ÒÄÏ1:¼ÒÄÏ2"
    				snprintf(buf, sizeof(buf), " |h|r[%s]|cffffc700|H%s|h", pItemData->GetName(), itemlink);
    			else
    				snprintf(buf, sizeof(buf), " |h|r[%s]|cfff1e6c0|H%s|h", pItemData->GetName(), itemlink);
    		} else {
    			if (isAttr)
    				//"item:¹øÈ£:Ç÷¡±×:¼ÒÄÏ0:¼ÒÄÏ1:¼ÒÄÏ2"
    				snprintf(buf, sizeof(buf), "|cffffc700|H%s|h[%s]|h|r", itemlink, pItemData->GetName());
    			else
    				snprintf(buf, sizeof(buf), "|cfff1e6c0|H%s|h[%s]|h|r", itemlink, pItemData->GetName());
    		}
    	}
    	else
    		buf[0] = '0';
    
    	return Py_BuildValue("s", buf);
    }
    

    Open uitooltip.py and search for

    def SetHyperlinkItem(self, tokens):
    

    It has to look like this

    def SetHyperlinkItem(self, tokens):
    		minTokenCount = 3 + player.METIN_SOCKET_MAX_NUM
    		maxTokenCount = minTokenCount + 2 * player.ATTRIBUTE_SLOT_MAX_NUM
    		if tokens and len(tokens) >= minTokenCount and len(tokens) <= maxTokenCount:
    			head, vnum, flag = tokens[:3]
    			itemVnum = int(vnum, 16)
    			metinSlot = [int(metin, 16) for metin in tokens[3:9]]
    
    			rests = tokens[9:]
    			if rests:
    				attrSlot = []
    
    				rests.reverse()
    				while rests:
    					key = int(rests.pop(), 16)
    					if rests:
    						val = int(rests.pop())
    						attrSlot.append((key, val))
    
    				attrSlot += [(0, 0)] * (player.ATTRIBUTE_SLOT_MAX_NUM - len(attrSlot))
    			else:
    				attrSlot = [(0, 0)] * player.ATTRIBUTE_SLOT_MAX_NUM
    
    			self.ClearToolTip()
    			self.AddItemData(itemVnum, metinSlot, attrSlot)
    
    			ItemToolTip.OnUpdate(self)
    
    • Love 4
×
×
  • 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.