[C++] Shop cu 80 de slot-uri

Deconectat
Avatar utilizator
Răzvaan
Utilizator interzis !
Utilizator interzis !
Mesaje: 2052
Membru din: 15 Mar 2015
Localitate: Suceava
Reputație: Super Ad Moderator
Lider Ad Moderatori
Lider Mister
Fost Lider Moderatori
Fost Lider Trial Moderatori
Fost Lider Miss
Nume anterioare: ElAlcon, Brian O'Conner, Grinchzvan
Status: Un fel de două feluri
Server Metin2: da
Regat: Shinsoo
Mulțumiri acordate: 1
Mulțumiri primite: 41
Contact:

[C++] Shop cu 80 de slot-uri

Mesajde Răzvaan » 31 Aug 2015, 18:45

ServerSide


Deschidem "common/length.h" si cautam:

Cod: Selectaţi tot

SHOP_HOST_ITEM_MAX = 40


Inlocuim cu:

Cod: Selectaţi tot

SHOP_HOST_ITEM_MAX_NUM = 80


In aceeasi arhiva cautam:

Cod: Selectaţi tot

SHOP_PRICELIST_MAX_NUM = 40


Inlocuim cu:

Cod: Selectaţi tot

SHOP_PRICELIST_MAX_NUM = 80


Acum deschidem "game/shop.cpp" si cautam:

Cod: Selectaţi tot

m_pGrid = M2_NEW CGrid(5, 9)


Inlocuim cu:

Cod: Selectaţi tot

m_pGrid = M2_NEW CGrid(10, 9)


Deschidem "game/shop_manager.cpp" si cautam:

Cod: Selectaţi tot

CGrid grid = CGrid(5, 9)


Inlocuim cu:

Cod: Selectaţi tot

CGrid grid = CGrid(10, 9)


Acum poti compila game si db.


ClientSide


Extragem "pack/uiscript" din client si deschidem: "shopdialog.py".

Inlocuim continutul cu asta:
Trebuie să fii logat sau înregistrat pentru a vedea acest link.

Acum creeam "shopdialog2.py" si adaugam continutul de aici:
Trebuie să fii logat sau înregistrat pentru a vedea acest link.

Ok, in acest punct putem deja sa comprimam uiscript "shopdialog2.py".

Extragem "pack/root" din client si deschidem "interfacemodule.py".

Cautam:

Cod: Selectaţi tot

self.dlgShop = uiShop.ShopDialog()
self.dlgShop.LoadDialog()
self.dlgShop.Hide()


Adaugati dupa:

Cod: Selectaţi tot

self.dlgShop2 = uiShop.ShopDialog2()
self.dlgShop2.LoadDialog()
self.dlgShop2.Hide()


In aceeasi arhiva cautati asta:

Cod: Selectaţi tot

def OpenShopDialog(self, vid):
  self.wndInventory.Show()
  self.wndInventory.SetTop()
  self.dlgShop.Open(vid)
  self.dlgShop.SetTop()


Dupa ce ati facut acest lucru, adaugati asta:

Cod: Selectaţi tot

def OpenShopDialog2(self, vid):
  self.wndInventory.Show()
  self.wndInventory.SetTop()
  self.dlgShop2.Open(vid)
  self.dlgShop2.SetTop()


Deschidem "game.py" si cautam:

Cod: Selectaţi tot

def StartShop(self, vid):
  self.interface.OpenShopDialog(vid)


Inlocuim cu:

Cod: Selectaţi tot

def StartShop(self, vid):
if chr.IsNPC(vid):
  self.interface.OpenShopDialog(vid)
else:
  self.interface.OpenShopDialog2(vid)


Deschidem "uishop.py" si cautam:

Cod: Selectaţi tot

def Close(self):
 self.OnCloseQuestionDialog()
 shop.Close()
 net.SendShopEndPacket()
 self.CancelShopping()
 self.tooltipItem.HideToolTip()
 self.Hide()


Inlocuim cu:

Cod: Selectaţi tot

def Close(self):
 self.OnCloseQuestionDialog()
 shop.Close()
 net.SendShopEndPacket()
 self.CancelShopping()
 self.Hide()


In aceeasi arhiva cautam asta:

Cod: Selectaţi tot

def OnUpdate(self):


Cod: Selectaţi tot

USE_SHOP_LIMIT_RANGE = 1000


Cod: Selectaţi tot

(x, y, z) = player.GetMainCharacterPosition()
if abs(x - self.xShopStart) > USE_SHOP_LIMIT_RANGE or abs(y - self.yShopStart) > USE_SHOP_LIMIT_RANGE:
self.Close()



Dupa ce ati facut acest lucru, adaugati asta:
Trebuie să fii logat sau înregistrat pentru a vedea acest link.

Acum putem sa comprimam root-ul nostru.

NPC & PrivateShop with 80 Items ClientSide:

Deschidem "UserInterface/Packet.h" in sursa din binar si cautam:

Cod: Selectaţi tot

SHOP_HOST_ITEM_MAX_NUM = 40


Inlocuim cu:

Cod: Selectaţi tot

SHOP_HOST_ITEM_MAX_NUM = 80


Acum putem sa compilam bin.
Deschidem clientul si extragem "pack/uiscript" deschidem "shopdialog.py" si inlocuim continutul cu:
Trebuie să fii logat sau înregistrat pentru a vedea acest link.

Deschidem "privateshopbuilder.py" si inlocuim continutul cu:
Trebuie să fii logat sau înregistrat pentru a vedea acest link.

Acum putem sa comprimam uiscript

Aici aveti o poza cu shop-ul:
Imagine


Sursa: SamuR
Traducere: Eu
Imagine

SERVICII: PHOTOSHOP, PHPBB, METIN2

Înapoi la “Arhivă”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 3 vizitatori