- Katılım
- 24 Eki 2014
- Konular
- 54
- Mesajlar
- 442
- Reaksiyon Skoru
- 106
- Altın Konu
- 0
- Başarım Puanı
- 67
- TM Yaşı
- 11 Yıl 6 Ay 1 Gün
- MmoLira
- 10
- DevLira
- 0
Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!
Evet Arkadaşlar Başlıkta yazdığım gibi 4'lü envanter sistemini anlatacağım bu konumda.
Piyasa'ya inat paylaşım diyebilriiz.
4'lü ve 6'lı Envanter Yapıp Satışa sunanlar var.
Gerçekten ciddi bir miktar istiyorlar.
Bende bunlara karşılık sizlere 4'lü Envanter Nasıl yapılır bunu Anlatacağım.
Umarım Hoşunuza Gider ..
Arkadaşlar Bunu yapmak için Öncelikle Açık kaynak dosyalarına İhtiyacımız vardır.
Bu Türkiye'de Source Olarak Bildiğimiz Açık Kaynak Anlamına Gelmektedir.
Aşağıda Yazan Yere Gelin.
ve
Bulup Açın.
Bu Kodu Aratın,
Bu Kod İle Değiştirin.
--------
ve Daha Sonra
Dosyasından
Yukarıdaki Kodu Aratın ve Aşağıdaki Kodla Değiştirin.
Aynı Şekilde
Aratın ve Aşağıdakiyle Değiştirin.
----------
Şimdi Farklı bir Dosya Aratıyoruz ve Açıyoruz.
Dosyamızın Adı
Bu Dosyanın içerisine girip
Bunu aratıyoruz.
ve
Bunları ekliyoruz.
-
Piyasa'ya inat paylaşım diyebilriiz.
4'lü ve 6'lı Envanter Yapıp Satışa sunanlar var.
Gerçekten ciddi bir miktar istiyorlar.
Bende bunlara karşılık sizlere 4'lü Envanter Nasıl yapılır bunu Anlatacağım.
Umarım Hoşunuza Gider ..
Arkadaşlar Bunu yapmak için Öncelikle Açık kaynak dosyalarına İhtiyacımız vardır.
Bu Türkiye'de Source Olarak Bildiğimiz Açık Kaynak Anlamına Gelmektedir.
Aşağıda Yazan Yere Gelin.
mainline_released/mainline_sg/Srcs/Server/common
ve
length.h
Bulup Açın.
Bu Kodu Aratın,
INVENTORY_MAX_NUM = 90,
Bu Kod İle Değiştirin.
INVENTORY_MAX_NUM = 180,
--------
ve Daha Sonra
char_item.cpp
Dosyasından
BYTE bPage = bCell / (INVENTORY_MAX_NUM / 2);
Yukarıdaki Kodu Aratın ve Aşağıdaki Kodla Değiştirin.
BYTE bPage = bCell / (INVENTORY_MAX_NUM / 4);
Aynı Şekilde
if (p / (INVENTORY_MAX_NUM / 2) != bPage)
Aratın ve Aşağıdakiyle Değiştirin.
if (p / (INVENTORY_MAX_NUM / 4) != bPage)
----------
Şimdi Farklı bir Dosya Aratıyoruz ve Açıyoruz.
Dosyamızın Adı
exchange.cpp
Bu Dosyanın içerisine girip
static CGrid s_grid2(5, INVENTORY_MAX_NUM/5 / 2); // inven page 2
Bunu aratıyoruz.
ve
Bunları ekliyoruz.
static CGrid s_grid1(5, INVENTORY_MAX_NUM/5 / 2); // inven page 1
static CGrid s_grid2(5, INVENTORY_MAX_NUM/5 / 2); // inven page 2
static CGrid s_grid3(5, INVENTORY_MAX_NUM/5 / 2); // inven page 3
static CGrid s_grid4(5, INVENTORY_MAX_NUM/5 / 2); // inven page 4
s_grid1.Clear();
s_grid2.Clear();
s_grid3.Clear();
s_grid4.Clear();
-
for (i = 0; i < INVENTORY_MAX_NUM / 4; ++i)
{
if (!(item = victim->GetInventoryItem(i)))
continue;
s_grid1.Put(i, 1, item->GetSize());
}
for (i = INVENTORY_MAX_NUM / 4; i < INVENTORY_MAX_NUM; ++i)
{
if (!(item = victim->GetInventoryItem(i)))
continue;
s_grid2.Put(i - INVENTORY_MAX_NUM / 4, 1, item->GetSize());
}
for (i = INVENTORY_MAX_NUM / 4; i < INVENTORY_MAX_NUM; ++i)
{
if (!(item = victim->GetInventoryItem(i)))
continue;
s_grid3.Put(i - INVENTORY_MAX_NUM / 4, 1, item->GetSize());
}
for (i = INVENTORY_MAX_NUM / 4; i < INVENTORY_MAX_NUM; ++i)
{
if (!(item = victim->GetInventoryItem(i)))
continue;
s_grid4.Put(i - INVENTORY_MAX_NUM / 4, 1, item->GetSize());}
Bu Koduda Eklediğimiz zaman tamamdır.
Source'den
mainline_released/mainline_sg/Srcs/Client/Userinterface
Bunu Açıyoruz.
GameType.h
const DWORD c_Inventory_Page_Count = 2;
Yukarıdakini Aratıyoruz,
const DWORD c_Inventory_Page_Count = 4;
Yukarıdakiyle Değiştiriyoruz.
Şimdi Gelelim Pack Dosyalarına.
Root ve Locale Dosyalarından
inventorywindow.py
Bunu Buluyoruz. İçerisinden bu kodu aratıp
EQUIPMENT_START_INDEX = 90
Aşağıdaki kod ile değiştiriyoruz.
EQUIPMENT_START_INDEX = 180
Yine Pack Dosyasından aşağıdaki dosyayı buluyoruz ve açıyoruz,
uiinventory.py
self.inventoryTab.append(self.GetChild("Inventory_Tab_02"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_03"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_04"))
self.inventoryTab[1].SetEvent(lambda arg=1: self.SetInventoryPage(arg))
self.inventoryTab[2].SetEvent(lambda arg=2: self.SetInventoryPage(arg))
self.inventoryTab[3].SetEvent(lambda arg=3: self.SetInventoryPage(arg))
İşlemlerini yaptıktan sonra,
SetInventoryPage
aratıp
def SetInventoryPage(self, page):
self.inventoryTab[self.inventoryPageIndex].SetUp()
self.inventoryPageIndex = page
self.inventoryTab[self.inventoryPageIndex].Down()
self.RefreshBagSlotWindow()
Değiştiriyoruz.
inventorywindow.py
Açıyoruz
import uiScriptLocaleimport item
EQUIPMENT_START_INDEX = 180
window = {
"name" : "InventoryWindow",
## 600 - (width + ì¤ë¥¸ìª½ì¼ë¡ ë¶í° ëì°ê¸° 24 px)
"x" : SCREEN_WIDTH - 176,
"y" : SCREEN_HEIGHT - 37 - 565,
"style" : ("movable", "float",),
"width" : 176,
"height" : 585,
"children" :
(
## Inventory, Equipment Slots
{
"name" : "board",
"type" : "board",
"style" : ("attach",),
"x" : 0,
"y" : 0,
"width" : 176,
"height" : 585,
"children" :
(
## Title
{
"name" : "TitleBar",
"type" : "titlebar",
"style" : ("attach",),
"x" : 8,
"y" : 7,
"width" : 161,
"color" : "yellow",
"children" :
(
{ "name":"TitleName", "type":"text", "x":77, "y":3, "text":uiScriptLocale.INVENTORY_TITLE, "text_horizontal_align":"center" },
),
},
## Equipment Slot
{
"name" : "Equipment_Base",
"type" : "image",
"x" : 10,
"y" : 33,
"image" : "d:/ymir work/ui/equipment_bg_without_ring.tga",
"children" :
(
{
"name" : "EquipmentSlot",
"type" : "slot",
"x" : 3,
"y" : 3,
"width" : 150,
"height" : 182,
"slot" : (
{"index":EQUIPMENT_START_INDEX+0, "x":39, "y":37, "width":32, "height":64},
{"index":EQUIPMENT_START_INDEX+1, "x":39, "y":2, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+2, "x":39, "y":145, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+3, "x":75, "y":67, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+4, "x":3, "y":3, "width":32, "height":96},
{"index":EQUIPMENT_START_INDEX+5, "x":114, "y":67, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+6, "x":114, "y":35, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+7, "x":2, "y":145, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+8, "x":75, "y":145, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+9, "x":114, "y":2, "width":32, "height":32},
{"index":EQUIPMENT_START_INDEX+10, "x":75, "y":35, "width":32, "height":32},
## ì ë°ì§1
##{"index":item.EQUIPMENT_RING1, "x":2, "y":106, "width":32, "height":32},
## ì ë°ì§2
##{"index":item.EQUIPMENT_RING2, "x":75, "y":106, "width":32, "height":32},
## ì 벨í¸
{"index":item.EQUIPMENT_BELT, "x":39, "y":106, "width":32, "height":32},
),
},
## Dragon Soul Button
{
"name" : "DSSButton",
"type" : "button",
"x" : 114,
"y" : 107,
"tooltip_text" : uiScriptLocale.TASKBAR_DRAGON_SOUL,
"default_image" : "d:/ymir work/ui/dragonsoul/dss_inventory_button_01.tga",
"over_image" : "d:/ymir work/ui/dragonsoul/dss_inventory_button_02.tga",
"down_image" : "d:/ymir work/ui/dragonsoul/dss_inventory_button_03.tga",
},
## MallButton
{
"name" : "MallButton",
"type" : "button",
"x" : 118,
"y" : 148,
"tooltip_text" : uiScriptLocale.MALL_TITLE,
"default_image" : "d:/ymir work/ui/game/TaskBar/Mall_Button_01.tga",
"over_image" : "d:/ymir work/ui/game/TaskBar/Mall_Button_02.tga",
"down_image" : "d:/ymir work/ui/game/TaskBar/Mall_Button_03.tga",
},
## CostumeButton
{
"name" : "CostumeButton",
"type" : "button",
"x" : 78,
"y" : 5,
"tooltip_text" : uiScriptLocale.COSTUME_TITLE,
"default_image" : "d:/ymir work/ui/game/taskbar/costume_Button_01.tga",
"over_image" : "d:/ymir work/ui/game/taskbar/costume_Button_02.tga",
"down_image" : "d:/ymir work/ui/game/taskbar/costume_Button_03.tga",
},
{
"name" : "Equipment_Tab_01",
"type" : "radio_button",
"x" : 86,
"y" : 161,
"default_image" : "d:/ymir work/ui/game/windows/tab_button_small_01.sub",
"over_image" : "d:/ymir work/ui/game/windows/tab_button_small_02.sub",
"down_image" : "d:/ymir work/ui/game/windows/tab_button_small_03.sub",
"children" :
(
{
"name" : "Equipment_Tab_01_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "I",
},
),
},
{
"name" : "Equipment_Tab_02",
"type" : "radio_button",
"x" : 86 + 32,
"y" : 161,
"default_image" : "d:/ymir work/ui/game/windows/tab_button_small_01.sub",
"over_image" : "d:/ymir work/ui/game/windows/tab_button_small_02.sub",
"down_image" : "d:/ymir work/ui/game/windows/tab_button_small_03.sub",
"children" :
(
{
"name" : "Equipment_Tab_02_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "II",
},
),
},
),
},
{
"name" : "Inventory_Tab_01",
"type" : "radio_button",
"x" : 10,
"y" : 33 + 189,
"default_image" : "d:/ymir work/ui/game/windows/tab_button_large_01.sub",
"over_image" : "d:/ymir work/ui/game/windows/tab_button_large_02.sub",
"down_image" : "d:/ymir work/ui/game/windows/tab_button_large_03.sub",
"tooltip_text" : uiScriptLocale.INVENTORY_PAGE_BUTTON_TOOLTIP_1,
"children" :
(
{
"name" : "Inventory_Tab_01_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "I",
},
),
},
{
"name" : "Inventory_Tab_02",
"type" : "radio_button",
"x" : 10 + 78,
"y" : 33 + 189,
"default_image" : "d:/ymir work/ui/game/windows/tab_button_large_01.sub",
"over_image" : "d:/ymir work/ui/game/windows/tab_button_large_02.sub",
"down_image" : "d:/ymir work/ui/game/windows/tab_button_large_03.sub",
"tooltip_text" : uiScriptLocale.INVENTORY_PAGE_BUTTON_TOOLTIP_2,
"children" :
(
{
"name" : "Inventory_Tab_02_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "II",
},
),
},
{
"name" : "Inventory_Tab_03",
"type" : "radio_button",
"x" : 10,
"y" : 33 + 210,
"default_image" : "d:/ymir work/ui/game/windows/tab_button_large_01.sub",
"over_image" : "d:/ymir work/ui/game/windows/tab_button_large_02.sub",
"down_image" : "d:/ymir work/ui/game/windows/tab_button_large_03.sub",
"tooltip_text" : uiScriptLocale.INVENTORY_PAGE_BUTTON_TOOLTIP_2,
"children" :
(
{
"name" : "Inventory_Tab_03_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "III",
},
),
},
{
"name" : "Inventory_Tab_04",
"type" : "radio_button",
"x" : 10 + 78,
"y" : 33 + 210,
"default_image" : "d:/ymir work/ui/game/windows/tab_button_large_01.sub",
"over_image" : "d:/ymir work/ui/game/windows/tab_button_large_02.sub",
"down_image" : "d:/ymir work/ui/game/windows/tab_button_large_03.sub",
"tooltip_text" : uiScriptLocale.INVENTORY_PAGE_BUTTON_TOOLTIP_2,
"children" :
(
{
"name" : "Inventory_Tab_04_Print",
"type" : "text",
"x" : 0,
"y" : 0,
"all_align" : "center",
"text" : "IV",
},
),
},
## Item Slot
{
"name" : "ItemSlot",
"type" : "grid_table",
"x" : 8,
"y" : 264,
"start_index" : 0,
"x_count" : 5,
"y_count" : 9,
"x_step" : 32,
"y_step" : 32,
"image" : "d:/ymir work/ui/public/Slot_Base.sub"
},
{
"name":"Money_Slot",
"type":"button",
"x":8,
"y":28,
"horizontal_align":"center",
"vertical_align":"bottom",
"default_image" : "d:/ymir work/ui/public/parameter_slot_05.sub",
"over_image" : "d:/ymir work/ui/public/parameter_slot_05.sub",
"down_image" : "d:/ymir work/ui/public/parameter_slot_05.sub",
"children" :
(
{
"name":"Money_Icon",
"type":"image",
"x":-18,
"y":2,
"image":"d:/ymir work/ui/game/windows/money_icon.sub",
},
{
"name" : "Money",
"type" : "text",
"x" : 3,
"y" : 3,
"horizontal_align" : "right",
"text_horizontal_align" : "right",
"text" : "123456789",
},
),
},
),
},
),}
Son Hali böyle olacak.
beltinventorywindow.py
Açıyoruz,
Aratıp
EQUIPMENT_START_INDEX = 90
Değiştiriyoruz.
EQUIPMENT_START_INDEX = 180
4 Envanter Hayırlı Uğurlu olması dileğiyle
Yorumlarınız bekliyorum. İlerleyen zamanlarda
Game dosyası ve Client'ide ekleyebilirim.
Konuya İlgi Olursa...
Son düzenleme:
En Çok Reaksiyon Alan Mesajlar
bu anlatım en az 15 forum sitesinde var hacı bikişide demiyoki source nasıl editlenir diye kendini bi çok kişiden farklı göstererek ekleyebilirim demişsin hazır client ve exe yi cbaran velfor gibi kişiler bile paylaşabilirim deyip sırra kadem bastı güzel bi anlatımla hazır dosyaları veya source den ziyade exe yi kapatmayı sağlam bi şekilde anlatsan daha çok yararlanılır.
- Katılım
- 15 May 2010
- Konular
- 415
- Mesajlar
- 1,281
- Reaksiyon Skoru
- 22
- Altın Konu
- 0
- Başarım Puanı
- 143
- TM Yaşı
- 15 Yıl 11 Ay 13 Gün
- MmoLira
- 5
- DevLira
- 0
evet arkadaşlar başlıkta yazdığım gibi 4'lü envanter sistemini anlatacağım bu konumda.
Piyasa'ya inat paylaşım diyebilriiz.
4'lü ve 6'lı envanter yapıp satışa sunanlar var.
Gerçekten ciddi bir miktar istiyorlar.
Bende bunlara karşılık sizlere 4'lü envanter nasıl yapılır bunu anlatacağım.
Umarım hoşunuza gider ..
arkadaşlar bunu yapmak için Öncelikle açık kaynak dosyalarına İhtiyacımız vardır.
Bu türkiye'de source olarak bildiğimiz açık kaynak anlamına gelmektedir.
Aşağıda yazan yere gelin.
ve
bulup açın.
Bu kodu aratın,
bu kod İle değiştirin.
--------
ve daha sonra
dosyasından
yukarıdaki kodu aratın ve aşağıdaki kodla değiştirin.
aynı Şekilde
aratın ve aşağıdakiyle değiştirin.
----------
Şimdi farklı bir dosya aratıyoruz ve açıyoruz.
Dosyamızın adı
bu dosyanın içerisine girip
bunu aratıyoruz.
Ve
bunları ekliyoruz.
-
bu koduda eklediğimiz zaman tamamdır.
Source'den
bunu açıyoruz.
yukarıdakini aratıyoruz,
yukarıdakiyle değiştiriyoruz.
Şimdi gelelim pack dosyalarına.
Root ve locale dosyalarından
bunu buluyoruz. İçerisinden bu kodu aratıp
aşağıdaki kod ile değiştiriyoruz.
yine pack dosyasından aşağıdaki dosyayı buluyoruz ve açıyoruz,
İşlemlerini yaptıktan sonra,
aratıp
değiştiriyoruz.
açıyoruz
son hali böyle olacak.
açıyoruz,
aratıp
değiştiriyoruz.
4 envanter hayırlı uğurlu olması dileğiyle
yorumlarınız bekliyorum. İlerleyen zamanlarda
game dosyası ve client'ide ekleyebilirim.
Konuya İlgi olursa...
34k gameye eklenmiyor sanirim ?
Konuya eklersen hangi gameye ekleniyor diye ona gore bilgi sahibi olurlar
- Katılım
- 24 Eki 2014
- Konular
- 54
- Mesajlar
- 442
- Reaksiyon Skoru
- 106
- Altın Konu
- 0
- Başarım Puanı
- 67
- TM Yaşı
- 11 Yıl 6 Ay 1 Gün
- MmoLira
- 10
- DevLira
- 0
Evt Arkadaşlar. Söylemeyi Unutmuşum, r40k ve Üstü game versiyonlara uygundur.
Tercihiniz r40k olsun çünkü açık kaynak kodları piyasada mevcut açıkları veya eksikleri hızlıca tamamlayabilirsiniz.
Tercihiniz r40k olsun çünkü açık kaynak kodları piyasada mevcut açıkları veya eksikleri hızlıca tamamlayabilirsiniz.
- Katılım
- 18 Ağu 2010
- Konular
- 408
- Mesajlar
- 7,501
- Online süresi
- 1ay 13g
- Reaksiyon Skoru
- 5,833
- Altın Konu
- 0
- Başarım Puanı
- 294
- TM Yaşı
- 15 Yıl 8 Ay 9 Gün
- MmoLira
- 4,623
- DevLira
- 0
bu anlatım en az 15 forum sitesinde var hacı bikişide demiyoki source nasıl editlenir diye kendini bi çok kişiden farklı göstererek ekleyebilirim demişsin hazır client ve exe yi cbaran velfor gibi kişiler bile paylaşabilirim deyip sırra kadem bastı güzel bi anlatımla hazır dosyaları veya source den ziyade exe yi kapatmayı sağlam bi şekilde anlatsan daha çok yararlanılır.
- Katılım
- 7 Tem 2014
- Konular
- 872
- Mesajlar
- 5,136
- Online süresi
- 1ay 11g
- Reaksiyon Skoru
- 1,287
- Altın Konu
- 0
- Başarım Puanı
- 304
- TM Yaşı
- 11 Yıl 9 Ay 19 Gün
- MmoLira
- 3,843
- DevLira
- 0
Gameyi hazırla clientin bendenbu anlatım en az 15 forum sitesinde var hacı bikişide demiyoki source nasıl editlenir diye kendini bi çok kişiden farklı göstererek ekleyebilirim demişsin hazır client ve exe yi cbaran velfor gibi kişiler bile paylaşabilirim deyip sırra kadem bastı güzel bi anlatımla hazır dosyaları veya source den ziyade exe yi kapatmayı sağlam bi şekilde anlatsan daha çok yararlanılır.
- Durum
- Üzgünüz bu konu cevaplar için kapatılmıştır...
Şu an konuyu görüntüleyenler (Toplam : 1, Üye: 0, Misafir: 1)
Benzer konular
- Cevaplar
- 2
- Görüntüleme
- 272
- Cevaplar
- 16
- Görüntüleme
- 2K
- Cevaplar
- 24
- Görüntüleme
- 2K
- Cevaplar
- 13
- Görüntüleme
- 1K



