Jump to content

Randaron

Member
  • Posts

    21
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by Randaron

  1. On 4/30/2020 at 2:13 PM, ElRenardo said:

    Hey,

     

    You are right TMP4, there is a problem at the load of guild land npc.

    El núcleo de la base de datos envía todas las coordenadas del npc a los canales y no hay comprobación de si el índice del mapa del npc está en el núcleo que recibe los datos.

     

    En building.cpp, puede modificar la función LoadObject:

     

    bool CManager::LoadObject(TObject * pTable, bool isBoot)
    {
    	if (!map_allow_find(pTable->lMapIndex))
    		return false;
    [...]

     

    ¡Buena suerte en tus pruebas!

    To solve the problem, then comment those two lines, example: 
    //if (!map_allow_find(pTable->lMapIndex))
    // return false;

    • kekw 4
    • Sad 1
  2. On 3/26/2020 at 2:41 PM, Intel said:

    I don't know if this bug ever existed or generated from all the changes I've made, but I noticed that, when mounting a horse, basically, it would update your HT/IQ points, but they won't affect your HP/SP/Stamina.

    To fix this I edited void CHARACTER::ComputePoints() and brought the if (GetMountVnum()) check in the first if (IsPC()):

     

    	if (IsPC())
    	{
    
    		if (GetMountVnum())
    		{
    			if (GetHorseST() > GetPoint(POINT_ST))
    				PointChange(POINT_ST, GetHorseST() - GetPoint(POINT_ST));
    
    			if (GetHorseDX() > GetPoint(POINT_DX))
    				PointChange(POINT_DX, GetHorseDX() - GetPoint(POINT_DX));
    
    			if (GetHorseHT() > GetPoint(POINT_HT))
    				PointChange(POINT_HT, GetHorseHT() - GetPoint(POINT_HT));
    
    			if (GetHorseIQ() > GetPoint(POINT_IQ))
    				PointChange(POINT_IQ, GetHorseIQ() - GetPoint(POINT_IQ));
    		}
    		
    		iMaxHP = JobInitialPoints[GetJob()].max_hp + m_points.iRandomHP + GetPoint(POINT_HT) * JobInitialPoints[GetJob()].hp_per_ht;
    		iMaxSP = JobInitialPoints[GetJob()].max_sp + m_points.iRandomSP + GetPoint(POINT_IQ) * JobInitialPoints[GetJob()].sp_per_iq;
    		iMaxStamina = JobInitialPoints[GetJob()].max_stamina + GetPoint(POINT_HT) * JobInitialPoints[GetJob()].stamina_per_con;

    The code would look something like that

     

    file location?

     

     

  3. On 1/21/2016 at 4:31 PM, Frozen said:

    M2 Download Center

    This is the hidden content, please
    ( Internal )

     

    Hello, im here today releasing my version of slot effect system. Is not the same as the official looks like but in the future i will update this to look the same.

    Screenshot to see how it looks like.

      Reveal hidden contents

    ZgBtvp7.png

    Everything in this system was made by me.

    Tutorial:

    Go to UserInterface > PythonPlayer.cpp

    Search for :

     

    void CPythonPlayer::SetItemData(TItemPos Cell, const TItemData & c_rkItemInst)
     

    Add in  the end of the funcion:

     

    PyCallClassMemberFunc(m_ppyGameWindow, "OnNewItem", Py_BuildValue("(i)", Cell.cell));
     

    Compile It.

    Go to root > constInfo.py

    Add this somewhere:

     

    NEWITEMS = []
     

    Save it.

    Go to root > game.py

    Add this function:

     

    def OnNewItem(self, cell):
    	if not cell in constInfo.NEWITEMS:
    		constInfo.NEWITEMS.append(cell)
     

    Save It.

    Go to root > uiinventory.py

    Search for :

     

    def RefreshBagSlotWindow(self):
     

    Add this before this: (if 0 == itemCount:) :

     

    if itemCount == 0 and slotNumber in constInfo.NEWITEMS:
    	constInfo.NEWITEMS.remove(slotNumber)
     
    

    Add this under this: (setItemVNum(i, itemVnum, itemCount)) :

     

    self.wndItem.EnableCoverButton(i)        
     if slotNumber in constInfo.NEWITEMS:
    	self.wndItem.SetCoverButton(i, "d:/ymir work/ui/game/quest/slot_button_00.sub",\
    																		 "d:/ymir work/ui/game/quest/slot_button_00.sub",\
    																		"d:/ymir work/ui/game/quest/slot_button_00.sub",\
    																		"d:/ymir work/ui/new_icon.tga", FALSE, FALSE)
    	 self.wndItem.DisableCoverButton(i)
     

    Search for:

     

    def OverInItem(self, overSlotPos):
     Add under:

     

    slotPos = overSlotPos
     

    Add in the end:

     

    if overSlotPos in constInfo.NEWITEMS:
    	self.wndItem.EnableCoverButton(slotPos)    
    	constInfo.NEWITEMS.remove(overSlotPos)
     

    Save It.

    Finally go to ymirwork/ui and add this file:

    This is the hidden content, please

    Pack root and etc.

    Have fun :)

     

    This may not be the most optimized way to do this system, but at least you have a way. In the future i will post more updates such as a more optimized versions and with official effects.

    If you find any bugs please post it.

    #UPDATE

      Reveal hidden contents

     

    I found a little bug that is if you move the item too quickly the item will count as new. Thats because normally if you do at normal speed you should be with your mouse over in item when it is attach to inventory so the code will remove it. But when you are at a faster sometimes you wont call mouse over in function.

    Solution:

    Goto uiinventory.py

    Search for:

    self.wndCostume = None
    Add under:
    
    self.movedSlot = -1
    search for:
    
    itemCount = getItemCount(slotNumber)
     add under:
    
    
    if self.movedSlot in constInfo.NEWITEMS:
    	 constInfo.NEWITEMS.remove(self.movedSlot)
     search for:
    def __SendMoveItemPacket(self, srcSlotPos, dstSlotPos, srcItemCount):
     

    add under:

    self.movedSlot = dstSlotPos
     

     

     

     

    Kind Regards,

    Frozen

     

    Hello, I have a problem when I change characters and enter, the other inventories skip all the accessories as new, any solution?

    • Love 1
  4. 1018 16:59:09668 :: 
    networkModule.py(line:208) SetSelectCharacterPhase
    system.py(line:130) __pack_import
    system.py(line:110) _process_result
    introSelect.py(line:23) <module>
    system.py(line:130) __pack_import
    system.py(line:110) _process_result
    uiAffectShower.py(line:8) <module>
    system.py(line:130) __pack_import

    networkModule.SetSelectCharacterPhase - <type 'exceptions.IndentationError'>:expected an indented block (uiToolTip.py, line 1386)

    1018 16:59:09668 :: ============================================================================================================
    1018 16:59:09668 :: Abort!!!!


     

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