xranzei 1
xranzei
Agora Metin2 1
Agora Metin2
Bvural41 1
Bvural41
romegames 1
romegames
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Best Studio 1
Best Studio
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
InfernoShade 1
InfernoShade
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

MaviAyGames | Para Kutusu Sistemi [C++, Pyhton, Lua]

  • Konuyu başlatan Konuyu başlatan MaviAy44
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 10
  • Görüntüleme Görüntüleme 2K

MaviAy44

Emre Kırıcı
Telefon Numarası Onaylanmış Üye TC Kimlik Numarası Doğrulanmış Üye
Fahri Üye
TM Üye
Katılım
16 Tem 2019
Konular
715
Mesajlar
3,551
Çözüm
47
Online süresi
6mo 20d
Reaksiyon Skoru
2,110
Altın Konu
34
Başarım Puanı
309
MmoLira
19,559
DevLira
122
Ticaret - 100%
7   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

Merhaba arkadaşlar, bugün sizlerle yeni bir sistem paylaşacağım.

Sistem Mantığı: 80010 numaralı bar kutusu içerisine üzerinizde mevcut olan parayı koyabilir ve tekrar geri alabilirsiniz. Ticareti yapılabilir, pazarda satılabilir, depolanabilir ve bunlar yapıldıktan sonra hiçbir şekilde değerini kaybetmez. Hoşunuza giderse eğer para kutusuna şifre seçeneğide ekleyebilirim. Şifre ticaret ve pazar ile farklı hesaplara aktarıldığında bile aktif olacaktır.

Source taraflı işlevlerde oluşabilecek hertürlü hatalar "syserr" dosyasına yazılacak şekilde ayarlandı.

questlua_item.cpp açılır
ve aratılır ;
Kod:
int item_get_cell(lua_State* L)
kod bloğu bitişine eklenir ;
Kod:
int pc_para_degeri(lua_State* L)
{
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr() ;

        if(ch->GetExchange() || ch->GetMyShop() || ch->GetShopOwner() || ch->IsOpenSafebox() || ch->IsCubeOpen())
        {
               ch->ChatPacket(CHAT_TYPE_INFO, "Depo / Market / Pazar Pencerelerini kapat.");
               lua_pushnumber(L, false);
               return 1;
        }

        CQuestManager& q = CQuestManager::instance();
    if (q.GetCurrentItem() && lua_isnumber(L,1))
    {
    int turkmmo = 1;
    long bardegeri = (long) lua_tonumber(L, 1);
        if (bardegeri >=1 && bardegeri < 2000000000 && ch->GetGold() >= bardegeri)
        {
            q.GetCurrentItem()->SetSocket(turkmmo, bardegeri);
            ch->PointChange(POINT_GOLD, -bardegeri, true);
        }
        else
        {
            sys_err("Bar sistemi: Para miktari hatali girildi!");
            lua_pushnumber(L, false);
            return 1;
        }
    }
    else
    {
        sys_err("Bar sistemi: Item yok veya para degeri girilmedi!");
        lua_pushnumber(L, false);
        return 1;
    }
    return 0;
}


tekrar aratılır ;
Kod:
{ "get_cell", item_get_cell },

ve altına eklenir ;

Kod:
{ "para_degeri", pc_para_degeri },

root > uitooltip.py açılır

importlara en başa eklenir ;
Kod:
import translate

aratılır ;
Kod:
def __SetItemTitle(self, itemVnum, metinSlot, attrSlot):

ve içerisine eklenir ;
Kod:
    if 80010 == itemVnum:
        if metinSlot[1] == 0:
    self.AppendTextLine(translate.bar_bos, self.NEGATIVE_COLOR)
else:
    self.AppendTextLine(translate.bar_dolu % localeInfo.NumberToMoneyString(metinSlot[1]), self.SPECIAL_TITLE_COLOR)

translate.py
ekleyin:
Kod:
bar_bos="Mevcut Para : Henüz Girilmedi."
bar_dolu="Mevcut Para : %s"

filezilla quest_functions dosyası içerisine eklenecek ;
Kod:
item.para_degeri

Kod:
quest bar_sistemi begin
    state start begin
        when 80010.use begin
        local gold = pc.get_gold()
        if item.get_socket(1) < 1 then
            say_title("Merhaba "..pc.get_name().."")
            say("") -- bosluk
            say(""..gold.." paranız bulunmakta.")
            say_reward("Bu kutu içerisine para koymak istiyor musun?")
            local seciyoruz = select("Evet","Hayır")
            if seciyoruz == 2 then return
        elseif seciyoruz == 1 then
            say_title("Merhaba "..pc.get_name().."")
            say("")
            say_reward("Lütfen paketlemek istediğiniz para")
            say_reward("miktarını giriniz.")
            local para = tonumber (input())

            if para == "" or para == nil or para > 2000000000 or para < 1 then
                say_title("Merhaba "..pc.get_name().."")
                say("")
                say_reward("Geçersiz bir değer girdiniz !")
                    return
        elseif para > gold then
            say_title("Merhaba "..pc.get_name().."")
            say("")
            say_reward("Malesef, üzerinizde bu kadar para yok!")
                return
            else
                chat("İşlem tamamlandı.")
                item.para_degeri(para)
                    return
                end
            end
    else
            say_title("Merhaba "..pc.get_name().."")
            say("") -- bosluk
            say_reward(""..item.get_socket(1).." yang parayı çıkarmak istiyor musun ?")
            local cikariyoruz = select("Evet","Hayır")
        if cikariyoruz == 2 then return
            elseif cikariyoruz == 1 then
        if gold+item.get_socket(1) > 2000000000 then
            say_title("Merhaba "..pc.get_name().."")
            say("") -- bosluk
            say_reward("Envanterine 2 milyar para alamazsın !")
                return
        else
        pc.give_gold(item.get_socket(1))
                chat(""..item.get_socket(1).." yang envanterinize çıkartıldı.")
                pc.remove_item(item.get_vnum(),pc.count_item(item. get_vnum()))
            return
            end
        end
    end
end
end
end
80010 kodlu bir item ekleyin tamamdır.
 
Son düzenleme:
Merhaba arkadaşlar, bugün sizlerle yeni bir sistem paylaşacağım.

Sistem Mantığı: 80010 numaralı bar kutusu içerisine üzerinizde mevcut olan parayı koyabilir ve tekrar geri alabilirsiniz. Ticareti yapılabilir, pazarda satılabilir, depolanabilir ve bunlar yapıldıktan sonra hiçbir şekilde değerini kaybetmez. Hoşunuza giderse eğer para kutusuna şifre seçeneğide ekleyebilirim. Şifre ticaret ve pazar ile farklı hesaplara aktarıldığında bile aktif olacaktır.

Source taraflı işlevlerde oluşabilecek hertürlü hatalar "syserr" dosyasına yazılacak şekilde ayarlandı.

questlua_item.cpp açılır
ve aratılır ;
Kod:
int item_get_cell(lua_State* L)
kod bloğu bitişine eklenir ;
Kod:
int pc_para_degeri(lua_State* L)
{
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr() ;

        if(ch->GetExchange() || ch->GetMyShop() || ch->GetShopOwner() || ch->IsOpenSafebox() || ch->IsCubeOpen())
        {
               ch->ChatPacket(CHAT_TYPE_INFO, "Depo / Market / Pazar Pencerelerini kapat.");
               lua_pushnumber(L, false);
               return 1;
        }

        CQuestManager& q = CQuestManager::instance();
    if (q.GetCurrentItem() && lua_isnumber(L,1))
    {
    int turkmmo = 1;
    long bardegeri = (long) lua_tonumber(L, 1);
        if (bardegeri >=1 && bardegeri < 2000000000 && ch->GetGold() >= bardegeri)
        {
            q.GetCurrentItem()->SetSocket(turkmmo, bardegeri);
            ch->PointChange(POINT_GOLD, -bardegeri, true);
        }
        else
        {
            sys_err("Bar sistemi: Para miktari hatali girildi!");
            lua_pushnumber(L, false);
            return 1;
        }
    }
    else
    {
        sys_err("Bar sistemi: Item yok veya para degeri girilmedi!");
        lua_pushnumber(L, false);
        return 1;
    }
    return 0;
}


tekrar aratılır ;
Kod:
{ "get_cell", item_get_cell },

ve altına eklenir ;

Kod:
{ "para_degeri", pc_para_degeri },

root > uitooltip.py açılır

importlara en başa eklenir ;
Kod:
import translate

aratılır ;
Kod:
def __SetItemTitle(self, itemVnum, metinSlot, attrSlot):

ve içerisine eklenir ;
Kod:
    if 80010 == itemVnum:
        if metinSlot[1] == 0:
    self.AppendTextLine(translate.bar_bos, self.NEGATIVE_COLOR)
else:
    self.AppendTextLine(translate.bar_dolu % localeInfo.NumberToMoneyString(metinSlot[1]), self.SPECIAL_TITLE_COLOR)

translate.py
ekleyin:
Kod:
bar_bos="Mevcut Para : Henüz Girilmedi."
bar_dolu="Mevcut Para : %s"

filezilla quest_functions dosyası içerisine eklenecek ;
Kod:
item.para_degeri

Kod:
quest bar_sistemi begin
    state start begin
        when 80010.use begin
        local gold = pc.get_gold()
        if item.get_socket(1) < 1 then
            say_title("Merhaba "..pc.get_name().."")
            say("") -- bosluk
            say(""..gold.." paranız bulunmakta.")
            say_reward("Bu kutu içerisine para koymak istiyor musun?")
            local seciyoruz = select("Evet","Hayır")
            if seciyoruz == 2 then return
        elseif seciyoruz == 1 then
            say_title("Merhaba "..pc.get_name().."")
            say("")
            say_reward("Lütfen paketlemek istediğiniz para")
            say_reward("miktarını giriniz.")
            local para = tonumber (input())

            if para == "" or para == nil or para > 2000000000 or para < 1 then
                say_title("Merhaba "..pc.get_name().."")
                say("")
                say_reward("Geçersiz bir değer girdiniz !")
                    return
        elseif para > gold then
            say_title("Merhaba "..pc.get_name().."")
            say("")
            say_reward("Malesef, üzerinizde bu kadar para yok!")
                return
            else
                chat("İşlem tamamlandı.")
                item.para_degeri(para)
                    return
                end
            end
    else
            say_title("Merhaba "..pc.get_name().."")
            say("") -- bosluk
            say_reward(""..item.get_socket(1).." yang parayı çıkarmak istiyor musun ?")
            local cikariyoruz = select("Evet","Hayır")
        if cikariyoruz == 2 then return
            elseif cikariyoruz == 1 then
        if gold+item.get_socket(1) > 2000000000 then
            say_title("Merhaba "..pc.get_name().."")
            say("") -- bosluk
            say_reward("Envanterine 2 milyar para alamazsın !")
                return
        else
        pc.give_gold(item.get_socket(1))
                chat(""..item.get_socket(1).." yang envanterinize çıkartıldı.")
                pc.remove_item(item.get_vnum(),pc.count_item(item. get_vnum()))
            return
            end
        end
    end
end
end
end
80010 kodlu bir item ekleyin tamamdır.
Tenk yu
 
2 seçenek olması güzel olur şifreli şifresiz
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst