Administrator
Administrator
  • Mesaje: 4663
    Membru din: 07 Aug 2024, 21:53
  • Reacții: 104708
  • Mesaje utile: 45
  • Status: Pe aici.. 🤠
    Server: Saga2 - Soon
  • Regat: Jinno
  • [ID Discord]
  • Contact:
    *Descriere:

    Mai jos veti afla cum sa folositi inventarul de belt, fara a avea o curea echipata.

    *Poze / Video:
    [C++/Py] Folosire inventar Belt (fara curea) - Mesaj 1 - Imagine 1
    *Link download / Code:
    Deschidem char_item.cpp si cautam:
    Code:
    bool CHARACTER::IsEmptyItemGrid(TItemPos Cell, BYTE bSize, int iExceptionCell) const
    Cautam asta in IsEmptyItemGrid
    Code:
    if (Cell.IsBeltInventoryPosition())
    {
    	LPITEM beltItem = GetWear(WEAR_BELT);
    
    	if (NULL == beltItem)
    		return false;
      
    	if (false == CBeltInventoryHelper::IsAvailableCell(bCell - BELT_INVENTORY_SLOT_START, beltItem->GetValue(0)))
    		return false;
    Comentam liniile ca mai jos:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.




    Acum deschidem belt_inventory_helper.h si cautam:
    Code:
    static bool IsExistItemInBeltInventory(LPCHARACTER pc)
    Modificam sa arate asa:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.



    Daca folositi martysama, faceti urmatoarele in char_item.cpp:
    Cautam:
    Code:
    	// @fixme141 BEGIN
    	if (TItemPos(item->GetWindow(), item->GetCell()).IsBeltInventoryPosition())
    	{
    		LPITEM beltItem = GetWear(WEAR_BELT);
    
    		if (NULL == beltItem)
    		{
    			ChatPacket(CHAT_TYPE_INFO, "<Belt> You can't use this item if you have no equipped belt.");
    			return false;
    		}
    
    		if (false == CBeltInventoryHelper::IsAvailableCell(item->GetCell() - BELT_INVENTORY_SLOT_START, beltItem->GetValue(0)))
    		{
    			ChatPacket(CHAT_TYPE_INFO, "<Belt> You can't use this item if you don't upgrade your belt.");
    			return false;
    		}
    	}
    	// @fixme141 END

    Modificam sa arate asa:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Compilam sursa.

    Deschidem uiinventory.py

    Cautam asta in class BeltInventoryWindow:
    Code:
    def RefreshSlot(self):
    Cautam
    Code:
    self.wndBeltInventorySlot.SetAlwaysRenderCoverButton(slotNumber, True)
    Inlocuim cu:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Cautam:
    Code:
    self.wndBeltInventorySlot.DisableCoverButton(slotNumber)
    Inlocuim cu:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Cautam asta in class BeltInventoryWindow:
    Code:
    def __LoadWindow(self):
    Mai jos gasim:
    Code:
    for i in xrange(item.BELT_INVENTORY_SLOT_COUNT):
    	slotNumber = item.BELT_INVENTORY_SLOT_START + i
    	wndBeltInventorySlot.SetCoverButton(slotNumber,	"d:/ymir work/ui/game/quest/slot_button_01.sub",\
    										"d:/ymir work/ui/game/quest/slot_button_01.sub",\
    										"d:/ymir work/ui/game/quest/slot_button_01.sub")
    										"d:/ymir work/ui/game/belt_inventory/slot_disabled.tga", False, False)
    Comentam ultima linie, asa trebuie sa arate:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschidem Userinterface/PythonPlayerModule.cpp si cautam:
    Code:
    #ifdef ENABLE_NEW_EQUIPMENT_SYSTEM
    PyObject * playerIsEquippingBelt(PyObject* poSelf, PyObject* poArgs)
    {
    Modificam sa arate asa:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Modificam si PyObject * playerIsAvailableBeltInventoryCell(PyObject* poSelf, PyObject* poArgs)

    Nou Cum descarc de pe TeraBox?

    Afișează detalii Ascunde detalii
    • Este asemănător cu Mega.nz
    • Instalați-vă clientul lor de Download de aici
    • Faceți-vă un cont (vă puteți loga cu Facebook / Google / etc)
    • Nou Dacă nu vreți să descărcați clientul de Download, folosiți acest site
    • Gata! Acum puteți descărca resursele rapid & simplu.

    De ce folosim TeraBox?

    • Este gratuit
    • Primești 1TB de spațiu gratuit la orice cont creat!
    • Este ușor de folosit și varianta premium este foarte ieftină
    • Fișierele nu sunt șterse niciodată
    TeraBox logo
    Comunitatea Metin2 Romania este si pe Discord! :ymcowboy:

    2500+ membri • Chat activ zilnic • Support • Cereri & Resurse

    ► discord.gg/jWxeDSf7HP ◄





    See full signature
    Membru Avansat
    Membru Avansat
  • Mesaje: 80
    Membru din: 03 Apr 2025, 20:59
  • Reacții: 651
  • Mesaje utile: 3
  • Status: Details make the difference^.^
  • Regat: Jinno
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Avansat
    Membru Avansat

    Mesaj de dany8368 »

    Si uite asa primesti crash cu 0 erori syserr si stai ca prostul si te minunezi si te intrebi ce pl ai gresit de ti-ai futut tot proiectul, zic asta pentru ca am luat la verificat si scos si bagat din nou fiecare system pe care l-am bagat pana la asta, iar aici cand am revenit la functiile default... BAM.



    o sa verific exact ce provoca problema respectiva la modificarile acestor linii de cod si o sa revin cu varianta corecta.

    precizez ca nu am gresit nimic si am facut totul cum scrie aici pana sa ajung la problema cu crash 0 erori ( pentru cine vrea sa verifice cum se intampla mai exact, creaza un cont nou direct in navicate, reboot la sv, inchide clientul, deschide-l inapoi si intra direct pe contul creat mai devreme, fa-ti un caracter, si bam dupa ce se incarca bara de loading, crash 0 syserr)
    Membru Avansat
    Membru Avansat
  • Mesaje: 80
    Membru din: 03 Apr 2025, 20:59
  • Reacții: 651
  • Mesaje utile: 3
  • Status: Details make the difference^.^
  • Regat: Jinno
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Avansat
    Membru Avansat

    Mesaj de dany8368 »

    EDIT! Versiunea corecta a acestor modificari.



    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    pe partea de client/python raman aceleasi modificari.
    Membru Expert
    Membru Expert
  • Mesaje: 211
    Membru din: 26 Noi 2024, 10:43
  • Reacții: 1267
  • Mesaje utile: 1
  • Status: Uite si eu pe aici!
  • Regat: Jinno
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Expert
    Membru Expert

    Mesaj de salexandru9982 »

    dany8368 scrie: EDIT! Versiunea corecta a acestor modificari.



    [Continutul ascuns nu poate fi citat]

    pe partea de client/python raman aceleasi modificari.
    Cum pot sa maresc si eu inventarul asa ?
    Membru Avansat
    Membru Avansat
  • Mesaje: 80
    Membru din: 03 Apr 2025, 20:59
  • Reacții: 651
  • Mesaje utile: 3
  • Status: Details make the difference^.^
  • Regat: Jinno
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Avansat
    Membru Avansat

    Mesaj de dany8368 »

    salexandru9982 scrie:
    dany8368 scrie: EDIT! Versiunea corecta a acestor modificari.



    [Continutul ascuns nu poate fi citat]

    pe partea de client/python raman aceleasi modificari.
    Cum pot sa maresc si eu inventarul asa ?
    common/length.h
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    userinterface/gametype.h

    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    uiscript/beltinventory.py
    root/uiinventory.py

    aici trebuie sa ajustezi tu in functie de cum iti maresti inventarul
    Membru Expert
    Membru Expert
  • Mesaje: 211
    Membru din: 26 Noi 2024, 10:43
  • Reacții: 1267
  • Mesaje utile: 1
  • Status: Uite si eu pe aici!
  • Regat: Jinno
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Expert
    Membru Expert

    Mesaj de salexandru9982 »

    dany8368 scrie:
    salexandru9982 scrie:
    dany8368 scrie: EDIT! Versiunea corecta a acestor modificari.



    [Continutul ascuns nu poate fi citat]

    pe partea de client/python raman aceleasi modificari.
    Cum pot sa maresc si eu inventarul asa ?
    common/length.h
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    userinterface/gametype.h

    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    uiscript/beltinventory.py
    root/uiinventory.py

    aici trebuie sa ajustezi tu in functie de cum iti maresti inventarul

    merci frumos
    See full signature
    Membru Începător
    Membru Începător
  • Mesaje: 12
    Membru din: 10 Apr 2025, 00:15
  • Reacții: 64
  • Mesaje utile: 0
  • Regat: Chunjo
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Începător
    Membru Începător

    Mesaj de marius_69140 »

    dany8368 scrie: EDIT! Versiunea corecta a acestor modificari.



    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    pe partea de client/python raman aceleasi modificari.


    multumesc. nu stiam de ce am crash la conturile noi fara tine dadeam delete :)). comparati cu asta PythonPlayerModule.cpp


    #ifdef ENABLE_NEW_EQUIPMENT_SYSTEM
    PyObject* playerIsEquippingBelt(PyObject* poSelf, PyObject* poArgs)
    {
    const CPythonPlayer* player = CPythonPlayer::InstancePtr();
    bool bEquipping = false;

    //const TItemData* data = player->GetItemData(TItemPos(EQUIPMENT, c_Equipment_Belt));
    //if (NULL != data)
    // bEquipping = 0 < data->count;

    return Py_BuildValue("b", bEquipping);
    }

    PyObject* playerIsAvailableBeltInventoryCell(PyObject* poSelf, PyObject* poArgs)
    {
    int pos = 0;
    if (!PyTuple_GetInteger(poArgs, 0, &pos))
    return Py_BadArgument();

    return Py_BuildValue("b", true);
    }
    #endif
    Scrie răspuns

    Creează-ți un cont sau autentifică-te pentru a participa la discuție

    Trebuie să fii membru pentru a răspunde

    Creează-ți un cont

    Membrii pot crea subiecte noi și pot descărca resurse Metin2 Gratuit!


    Te poți înregistra sau conecta rapid utilizând contul tău de Discord, Github sau Google.

    Înregistrare

    Autentifică-te

    Înapoi la “Îmbunătățiri”

    Informații

    Utilizatori ce navighează pe acest forum: klausobscuritymt2 și 3 vizitatori

    Discord ID copiat: