10-04-2015, 05:18 PM
Giriş
Sürekli LeaugeSharp kodlaması nasıl yaparım diye sorular olmuştur.Bunu açıklamak için temel bir eğitim hazırlamaya karar verdim. ;d
Bu eğitimde etkili bir biçimde c# geliştirme ortamında leaugesharp assembly kodlaması için gerekli ayarları nasıl kuracağınızı öğreneceksiniz. Ayrıca biz oyun içi sohbete "Merhaba dünya" yazdıracak olan ilk assemblyımızı yapacağız.
Geliştirme ortamı kurma
LeagueSharp assembly geliştirmek için 2 temel araca ihtiyacımız vardır, ama ben çok çok yardımcı olduğundan dolayı 3. bir araç daha öneriyorum (ReSharper)
LeagueSharpKappa Bizim tabiki LeagueSharp'a ihtiyacımız olması bir yana uygulama ile bizim assemblyımız arasında köprü görevi görür ve League Of Legends 'ta assemblyı çalıştırmak için uygulama programlama arayüzü ile League Of Legends etkileşimini sağlar.
Visual Studio: Assembly kodlamak için c# kullanacağız.. Ücretsiz olan ekspres versiyonunu kullanabilirsiniz. Ama şahsen ben profesyonel bir tane kullanmayı tercih ederim.
ReSharper: ReSharper temel bir visual studio eklentisidir. Daha kolay ,temiz ve hızlı kodlama yapmayı sağlayacaktır. :3. Eğer bir öğrenciysen onu ücretsiz alabilirsin http://www.jetbrains.com/student/
İlk assemblyımız
Şimdi gerekli tüm araçları yükledik. ilk LeagueSharp assemblyımızı kodlamaya hazırız.:D, Bu bizim ilk assemblyımız. "Merhaba dünya" yazdıran basit bir assembly yapacağız.
Assembly kodlamak için visual studio kullanacağız bu yüzden sadece visual studioyu açın ve yeni bir C# Console Application projesi oluşturun:
LeagueSharp uygulama arayüzünü kullanabilmek için referans olarak gerekli dll dosyalarını eklememiz gerekiyor:
Genellikle Bu referansları kullanacağız:
LeagueSharp.dll: Bunu oyun ile etkileşim için kullanacağız.
LeagueSharp.Common.dll: LeagueSharp Common bir kütüphanedir. LeaugeSharp dll'lerine bazı yararlı eklentiler ekleyerek uygulama arayüzünde assembly kodlamasını kolaylaştırır.
SharpDX.dll: SharpDX bir yığın sınıfları içerir bunlar yardımcılar olarak kullanılan (Örneğin vektör sınıfları) ve bizim leauge of legends'in görüntü cihazı olan directx'i kullanmamıza olanak sağlar. (ekranda birşeyler çizmek için kullanılır).
Yani onlar da yararlı olacaktır. Biz referans olarak hepsini eklicez. Onları %LeagueSharp%/System/ klasöründen edinebilirsiniz:
Ayrıca gelecekte assemblyımız için çizimler eklemek isteyebilirsiniz. System.Drawings seçeneğini işaretlediğinizden emin olun:
Şimdi kodlamaya başlamak için hazırız
İlk assemblymız
Basit bir assembly yapacağımızı söylemiştim oyun içi sohbete "Merhaba dünya" yazdıracağız. Bunun için leaguesharp.dll'den PrintChat komutuna ihtiyacımız var.(LeagueSharp.Game.PrintChat).
Komutu direk olarak Main() bölümüne ekleyeceğiz ve böylece yüklendiği zaman onu yazacaktır., Eğer herşey yolunda giderse bu gibi görünmelidir:
Daha sonra kontrol etmeliyiz.Eğer derlersek (Build -> Rebuild Solution(visual studio menülerinden birisidir görürsünüz zaten)) test etmeye hazır oluruz.Tabi oyun içinde çalışırsa
Test Etme
Assemblyımızı test etmek için ilk olarak loader'a yüklememiz gerekiyor. Kaynak olarak local(yerel) olarak seçip ekleyin:
Tabiki bir League Of Legends oyunu başlatmamız gerekiyor. Dominion genel test için en iyi oyun modudur. sinir bozucu minyonlar kuleleri yıkamazlar veya rastgele botlar oynarken rahatsız edemez. D: Assemblyımız tüm şampiyonlarda çalışması gerekir. İstediğimiz şampiyonu seçebiliriz (benim seçimim Sivir). Ayrıca ayar geliştirmek için oyunu pencere moduna alın ve F9'a basın, hızlı geçiş yapabilmek için oldukça kullanışlıdır.
Biz eklemek için onay vermediysek.Yükleme ekranında değil oyuna girdikten sonra assemblyı eklediğinizden emin olun, Sevimli bir şekilde çalıştığını göreceğiz
Diğer assemblyları okuma ve düzenleme
Bu muhtemelen LeagueSharp uygulama programlama arayüzünü nasıl kullanacağınızı denetlemeniz için en iyi yoldur. Sadece diğer geliştiricileri, assemblyları oku ve onları ihtiyaçlarına göre düzenle.
Visual Studio'nun nesne tarayıcısını (Visual Studio's Object Browser)kullanmak
Kontrol için visual studio nesne tarayıcısını kullanarak leaugesharp.dll'yi keşfedebilirsiniz. Mevcut uygulama programlama arayüzü nedir?. Örnek içinde örnek bu bir yana PrintChat komutunu bilmeseydik onu nesne tarayıcıda (Object Browser'da) arayabilirdik:
Sürekli LeaugeSharp kodlaması nasıl yaparım diye sorular olmuştur.Bunu açıklamak için temel bir eğitim hazırlamaya karar verdim. ;d
Bu eğitimde etkili bir biçimde c# geliştirme ortamında leaugesharp assembly kodlaması için gerekli ayarları nasıl kuracağınızı öğreneceksiniz. Ayrıca biz oyun içi sohbete "Merhaba dünya" yazdıracak olan ilk assemblyımızı yapacağız.
Geliştirme ortamı kurma
LeagueSharp assembly geliştirmek için 2 temel araca ihtiyacımız vardır, ama ben çok çok yardımcı olduğundan dolayı 3. bir araç daha öneriyorum (ReSharper)
LeagueSharpKappa Bizim tabiki LeagueSharp'a ihtiyacımız olması bir yana uygulama ile bizim assemblyımız arasında köprü görevi görür ve League Of Legends 'ta assemblyı çalıştırmak için uygulama programlama arayüzü ile League Of Legends etkileşimini sağlar.
Visual Studio: Assembly kodlamak için c# kullanacağız.. Ücretsiz olan ekspres versiyonunu kullanabilirsiniz. Ama şahsen ben profesyonel bir tane kullanmayı tercih ederim.
ReSharper: ReSharper temel bir visual studio eklentisidir. Daha kolay ,temiz ve hızlı kodlama yapmayı sağlayacaktır. :3. Eğer bir öğrenciysen onu ücretsiz alabilirsin http://www.jetbrains.com/student/
İlk assemblyımız
Şimdi gerekli tüm araçları yükledik. ilk LeagueSharp assemblyımızı kodlamaya hazırız.:D, Bu bizim ilk assemblyımız. "Merhaba dünya" yazdıran basit bir assembly yapacağız.
Assembly kodlamak için visual studio kullanacağız bu yüzden sadece visual studioyu açın ve yeni bir C# Console Application projesi oluşturun:
LeagueSharp uygulama arayüzünü kullanabilmek için referans olarak gerekli dll dosyalarını eklememiz gerekiyor:
Genellikle Bu referansları kullanacağız:
LeagueSharp.dll: Bunu oyun ile etkileşim için kullanacağız.
LeagueSharp.Common.dll: LeagueSharp Common bir kütüphanedir. LeaugeSharp dll'lerine bazı yararlı eklentiler ekleyerek uygulama arayüzünde assembly kodlamasını kolaylaştırır.
SharpDX.dll: SharpDX bir yığın sınıfları içerir bunlar yardımcılar olarak kullanılan (Örneğin vektör sınıfları) ve bizim leauge of legends'in görüntü cihazı olan directx'i kullanmamıza olanak sağlar. (ekranda birşeyler çizmek için kullanılır).
Yani onlar da yararlı olacaktır. Biz referans olarak hepsini eklicez. Onları %LeagueSharp%/System/ klasöründen edinebilirsiniz:
Ayrıca gelecekte assemblyımız için çizimler eklemek isteyebilirsiniz. System.Drawings seçeneğini işaretlediğinizden emin olun:
Şimdi kodlamaya başlamak için hazırız
İlk assemblymız
Basit bir assembly yapacağımızı söylemiştim oyun içi sohbete "Merhaba dünya" yazdıracağız. Bunun için leaguesharp.dll'den PrintChat komutuna ihtiyacımız var.(LeagueSharp.Game.PrintChat).
Komutu direk olarak Main() bölümüne ekleyeceğiz ve böylece yüklendiği zaman onu yazacaktır., Eğer herşey yolunda giderse bu gibi görünmelidir:
Daha sonra kontrol etmeliyiz.Eğer derlersek (Build -> Rebuild Solution(visual studio menülerinden birisidir görürsünüz zaten)) test etmeye hazır oluruz.Tabi oyun içinde çalışırsa
Test Etme
Assemblyımızı test etmek için ilk olarak loader'a yüklememiz gerekiyor. Kaynak olarak local(yerel) olarak seçip ekleyin:
Tabiki bir League Of Legends oyunu başlatmamız gerekiyor. Dominion genel test için en iyi oyun modudur. sinir bozucu minyonlar kuleleri yıkamazlar veya rastgele botlar oynarken rahatsız edemez. D: Assemblyımız tüm şampiyonlarda çalışması gerekir. İstediğimiz şampiyonu seçebiliriz (benim seçimim Sivir). Ayrıca ayar geliştirmek için oyunu pencere moduna alın ve F9'a basın, hızlı geçiş yapabilmek için oldukça kullanışlıdır.
Biz eklemek için onay vermediysek.Yükleme ekranında değil oyuna girdikten sonra assemblyı eklediğinizden emin olun, Sevimli bir şekilde çalıştığını göreceğiz
Diğer assemblyları okuma ve düzenleme
Bu muhtemelen LeagueSharp uygulama programlama arayüzünü nasıl kullanacağınızı denetlemeniz için en iyi yoldur. Sadece diğer geliştiricileri, assemblyları oku ve onları ihtiyaçlarına göre düzenle.
Visual Studio'nun nesne tarayıcısını (Visual Studio's Object Browser)kullanmak
Kontrol için visual studio nesne tarayıcısını kullanarak leaugesharp.dll'yi keşfedebilirsiniz. Mevcut uygulama programlama arayüzü nedir?. Örnek içinde örnek bu bir yana PrintChat komutunu bilmeseydik onu nesne tarayıcıda (Object Browser'da) arayabilirdik: