Best Studio 1
Best Studio
D 1
delimuratt
Aliyldrim 1
Aliyldrim
Mt2Hizmet 1
Mt2Hizmet
noisiv 1
noisiv
Manwe Work 1
Manwe Work
melankolıa18 1
melankolıa18
Agora Metin2 1
Agora Metin2
Cannn6161 1
Cannn6161
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Oyun İçi Ep Market Sistemi Detaylı Ve Kullanışlı

  • Konuyu başlatan Konuyu başlatan legetman
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 168
  • Görüntüleme Görüntüleme 22K

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!

Yararlı
 
Merhaba Arkadaşlar Bir Çok Kişinin Aradığı Oyun İçin Ep Marketi Questini Paylaşacağım Size. Bu Quest İle Ep Marketinize Yeni İtem Ekleyebilir Onun Kaç Ep'e Satılacağını Belirleyebilirsiniz. Paylaşmadan Önce Belirtiyim Konu Epvp'den Alıntıdır. Ben Sadece O Forumda Olmayan Arkadaşlar İçin Türkçelerştirilmiş Bir Halini Paylaşıyorum. Buyrun quest halinde puttye okutmanız Yeterlidir.
PHP:
----------------------------------------------------------------------
--- Legetman Question
----------------------------------------------------------------------
quest ingameshop begin
    state start begin
        function add_newcategory(name)
            if(name == "" or tostring(name) == nil) then
                return -1
            end
            mysql_query("insert into player.ingameshop_category values ('"..name.."') ")
        end
        function load_category()
            local a = mysql_query("select * from player.ingameshop_category")
            local list = {}
            table.foreachi(a,
                function(n,p)
                    list[n] = a.category_name[n]
            end)
            if(table.getn(a) == 0) then
                return -1
            end
            return list
        end
        function load_items(categoryname)
            local a = mysql_query("select* from player.ingameshop where category_name = '"..categoryname.."'")
            if(table.getn(a) == 0) then
                return -1
            end
            local vnums,names,counts,eps = {},{},{},{}
            table.foreachi(a,
                function(n,p)
                    vnums[n],names[n],counts[n],eps[n] = a.category_itemvnum[n],item_name(a.category_itemvnum[n]),a.category_itemcount[n],a.category_ep[n]
            end)
            return vnums,names,counts,eps
        end
        function check_name(name)
            if(name == "" or tostring(name) == nil) then
                return 0
            end
            local a = mysql_query("select * from player.ingameshop_category where category_name = '"..name.."'")
            if(table.getn(a) == 1) then
                return -1
            end
        end
        function buy(vnum,count,ep)
            mysql_query("update player.ingameshop_player set ep = ep-'"..ep.."' where id = '"..pc.get_player_id().."'")
            pc.give_item2(vnum,count)
        end
        function totalep()
            local a = mysql_query("select * from player.ingameshop_player where id = '"..pc.get_player_id().."'")
            return a.ep[1]
        end
        function add_newitem(categoryname,vnum,count,ep)
            mysql_query("insert into player.ingameshop values ('"..categoryname.."','"..vnum.."','"..count.."','"..ep.."') ")
        end
        when 20354.chat."Yönetim Paneli" with pc.is_gm() begin
            say_title(mob_name(npc.get_race())..":")
            say("")
            ---
            say("Yönetim Paneline hoşgeldiniz, Bay/Bayan."..pc.name)
            say("Ne yapmak istiyorsunuz?")
            say("")
            local s = select("Yeni bir kategori ekle","Yeni obje ekle","Ejderha Markası yükle","Kapat")
            if(s == 1) then
                say_title("Yeni bir kategori ekle:")
                say("")
                ---
                say("Lütfen yeni kategorinin ismini yazın.")
                say("")
                local name = tostring(input())
                local check = ingameshop.check_name(name)
                if(name == "" or name == nil) then
                    say_title("Hata:")
                    say("")
                    ---
                    say_reward("Bir kategori adı gerekiyor.")
                    say_reward("")
                    return;
                elseif(check == -1) then
                    say_title("Hata:")
                    say("")
                    ---
                    say_reward("Zaten böyle bir kategori var.")
                    say_reward("")
                    return;
                end
                say_title("Yeni bir kategori ekle:")
                say("")
                ---
                ingameshop.add_newcategory(name)
                say_reward("Yeni bir kategori ekleme başarılı.")
                say_reward("Teşekkürler!")
                say_reward("")
            elseif(s == 2) then
                say_title("Yeni obje ekle:")
                say("")
                ---
                say("Ekliyeceğiniz obje için bir kategori")
                say("seçin.")
                say("")
                local tables = ingameshop.load_category()
                table.insert(tables,"Kapat")
                local select = select_table(tables)
                if(table.getn(tables) == select) then
                    return;
                end
                say_title(tables[select]..":")
                say("")
                ---
                say("Lütfen vnum'u giriniz.")
                say("")
                local vnum = tonumber(input())
                if(vnum == "" or vnum == nil) then
                    say_title("Hata:")
                    say("")
                    ---
                    say_reward("Bir vnum girmek zorundasın.")
                    say_reward("")
                    return;
                end
                say_title(tables[select]..":")
                say("")
                ---
                say("Lütfen obje adedini yazın.")
                say("")
                local count = tonumber(input())
                if(count == "" or count == nil) then
                    say_title("Hata:")
                    say("")
                    ---
                    say_reward("Bir obje adedi girmelisin.")
                    say_reward("")
                    return;
                end
                say_title(tables[select]..":")
                say("")
                --
                say("Ne kadara satılacak? ")
                say("EP(Ejderha Markası)")
                local ep = tonumber(input())
                if(ep == "" or ep == nil) then
                    say_title("Hata:")
                    say("")
                    ---
                    say_reward("Objeyi kategoriye koyabilmek için EP'i belirtmek zorundasın.")
                    return;
                end
                say_title("Yeni obje ekle:")
                say("")
                ---
                ingameshop.add_newitem(tostring(tables[select]),vnum,count,ep)
                say_reward("Obje adı : "..item_name(vnum))
                say_reward("Obje adedi : "..count)
                say_reward("Satılacak EP miktarı : "..ep)
                say("")
                say_reward("Obje başarıyla eklendi.")
            elseif(s == 3) then
                say_title("EP(Ejderha Markası) Yükle:")
                say("")
                ---
                say("Isim giriniz")
                say("")
                local sname = tostring(input())
                local find = find_pc_by_name(sname)
                if(sname == "" or sname == nil) then
                    say_title("Hata:")
                    say("")
                    ---
                    say_reward("Anlıyorum fakat bir isim olmadan")
                    say_reward("hiçbir şey yapamam.")
                    return;
                elseif(sname == pc.get_name()) then
                    say_title("Hata:")
                    say("")
                    ---
                    say_reward("Neden kendi ismini yazıyorsun?")
                    return;
                elseif(find == 0) then
                    say_title("Hata:")
                    say("")
                    ---
                    say_reward("Böyle birisi yok ya da çevrimdışı.")
                    say_reward("")
                    return ;
                end
                say_title("EP(Ejderha Markası) Yükle:")
                say("")
                ---
                say("Miktar giriniz")
                say("")
                local ep = tonumber(input())
                if(ep == "" or ep == nil) then
                    say_title("Hata:")
                    say("")
                    ---
                    say_reward("Bilmiyor musun?")
                    return;
                end
                local select = pc.select(find)
                mysql_query("update ingameshop_player set ep = ep+'"..ep.."' where id = '"..pc.get_player_id().."'")
                local name = pc.name
                pc.select(select)
                say_reward("Ejderha markası yüklendi. Teşekkürler.")
            end
        end
        when 20354.chat."In-game itemshop system" begin
            say_title(mob_name(npc.get_race())..":")
            say("")
            ---
            if(pc.getf("ingameshop","ep") == 0) then
                pc.setf("ingameshop","ep",1)
                mysql_query("insert into player.ingameshop_player values ('"..pc.get_player_id().."','0')")
            end
            say("Merhaba "..pc.name.." oyun-içi")
            say("alışveriş sistemine hoşgeldin.")
            say("")
            say_reward("Mevcut EP(Ejderha Markası): "..ingameshop.totalep())
            say_reward("Ne yapmak istiyorsun?")
            say("")
            local s = select("Nesne markete giriş yap","Kapat")
            if(s == 1) then
                say_title("Nesne markete giriş yap")
                say("")
                ---
                say("Lütfen bir kategori seçin.")
                say("")
                local tables = ingameshop.load_category()
                table.insert(tables,"Kapat")
                local select = select_table(tables)
                if(table.getn(tables) == select) then
                    return;
                end
                say_title(tables[select])
                say("")
                ---
                local vnums,names,counts,eps = ingameshop.load_items(tostring(tables[select]))
                say("Mevcut nesneler sıralandı.")
                say("")
                table.insert(names,"Hayır")
                local items = select_table(names)
                if(table.getn(names) == items) then
                    return;
                end
                say_title(names[items].." özellikleri:")
                say("")
                ---
                say("Obje adı: "..names[items])
                say("Obje adedi: "..counts[items])
                say("Gerekli EP Miktarı: "..eps[items])
                say("")
                say_item_vnum(vnums[items])
                say("")
                wait()
                say_title("Karar:")
                say("")
                ---
                say_reward("Satın almak istiyor musun?")
                local option = {"Evet","Hayır"}
                local confirms = select_table(option)
                if(confirms == 2) then
                    return
                end
                if(ingameshop.totalep() < eps[items]) then
                    say_title("Hata:")
                    say("")
                    --
                    say_reward(string.format("Bu obje satın almak için %d ep gerekli.",eps[items]))
                    say_reward("")
                    return;
                end
                say_title(names[items].." aldın.")
                say("")
                ---
                say(names[items].." objeyi satın aldın.")
                say("O artık envaterinde!")
                ingameshop.buy(vnums[items],counts[items],eps[items])                
            end
        end
    end
end


Puttye Okutmayı bilmeyenler için basitce anlatıyım. ilk başta klosör seçeneklerinden dosya uzantılarını gösteri ayarlıyacaksınız bunu googleden arayın bulursunuz hemen. sonra yeni metin belgesi olusturun ve adını market yapın uzantısını .txt yerine lua yapın eğer notepad++ varsa onunla yoksa not deftei ile açıp yukarıda paylaştığım questi kopyalayıp yapıştırın ve kaydedin. kodlamayı ansı kodlaması yapın türkçe karekterde sorun yaşamak istemiyorsanız. şimdi filezilladan
HTML:
/usr/game/share/locale/turkey/quest
bölümüne bu market.luayı atın ardından puttye
HTML:
cd /usr/game/share/locale/turkey/quest
yazıp enterleyin ve
HTML:
ee hongkong_list
yazın bi liste açılacak en altına inin market.lua yazıp 1 esc 2 enter yapıyoruz. şimdi sadece tek bi işlem kaldı puttyeilk başta
HTML:
cd /usr/game/share/locale/turkey/quest
daha sonra
HTML:
./qc market.lua
yazıyoruz ve ardından reboot işlem tamamdır anatım birazcık karısık oldu anlatma yeteneğim fazla iyi değil :) eğer daha güzel bi anlatım istiyorsanız forumda bulabilirsiniz hepinize teşekkürler
Buyrun Oyun İçi Görüntü:
sb2ux.jpg

sb2w2.jpg

sb2wl.jpg




PHP:
SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `ingameshop`
-- ----------------------------
DROP TABLE IF EXISTS `ingameshop`;
CREATE TABLE `ingameshop` (
  `category_name` varchar(255) character set latin1 NOT NULL,
  `category_itemvnum` int(255) NOT NULL,
  `category_itemcount` int(255) NOT NULL,
  `category_ep` int(255) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin5;

-- ----------------------------
-- Records of ingameshop
-- ----------------------------

-- ----------------------------
-- Table structure for `ingameshop_category`
-- ----------------------------
DROP TABLE IF EXISTS `ingameshop_category`;
CREATE TABLE `ingameshop_category` (
  `category_name` varchar(255) NOT NULL,
  PRIMARY KEY  (`category_name`)
) ENGINE=MyISAM DEFAULT CHARSET=latin5;

-- ----------------------------
-- Records of ingameshop_category
-- ----------------------------

-- ----------------------------
-- Table structure for `ingameshop_player`
-- ----------------------------
DROP TABLE IF EXISTS `ingameshop_player`;
CREATE TABLE `ingameshop_player` (
  `id` int(16) NOT NULL,
  `ep` int(255) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

-- ----------------------------
-- Records of ingameshop_player
-- ----------------------------

bunu da olusturdugunuz navicat dbsine ekleyeceksiniz. peki bunu nasıl yapacağız masa üstüne market.txt adında bir metin belgesi açıyoruz ardından uzantısı olan txtyi silip sql yapıyoruz. şimdi navicatı açıp serverimize bağlanalım ve player sekmesine sağ tıklayalım orada seçeneklerde execute sql file diye bir seçenek çıkacak ona tıklıyoruz ve düzenlediğimiz market.sql dosyasını seçiyoruz. starta basıyoruz. yükleme işlemi bittikten sonra oyun içi market sistemi hazırlanmış oluyor şimdi tek yapmanız gereken şey bi reboot atıp şehir bekcisine giderek hangi itemi ne kadara satacağınızı ayarlamak :)


Bİrde Vİdeo EKledim BUyrun

24 Saat içinde Resimleri Güncelleyiniz.
 
Güzel Sistem Elinize Sağlık
 
emeğine sağlık
 
+++++++++++++
 

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

Geri
Üst