Menu Cubugu |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1) Silah Komutu Ekleme
Öncelikle modumuzu pawno programıyla açıyoruz.Daha sonra OnPlayerCommandText bölümüne örnek kod olarak aşağıdaki kodu yapıştırıyoruz...
if(!strcmp(cmdtext,"/uzi",true)) {
SendClientMessage(playerid, COLOR_GREEN, "2000 TL Harcayarak Uzi SAtin Aldin");
GivePlayerWeapon(playerid,28,125);
GivePlayerMoney(playerid,-2000);
return 1;
}
-Üst kısımda if ile başlayan kısımın /uzi bölümüne istediğimiz komutu yazıyoruz.
-SendClientMessage kısmına komutu yazdığınız an çıkacak mesajı yazıyoruz.
-GivePlayerWeapon kısmına (28) olan silahın ididir.125 ise mermi sayısıdır)bunlarıda ayarlıyoruz
-GivePlayerMoney kısmında -2000 bölümü silahın fiyatını belirler.
Kodumuz hazır.F5 tuşuna basark modu kaydedersiniz.Sonra modu server dosyasına atıp resetlerseniz.Komut hazır demektir.Bu şekilde istediğiniz silahı yapabilirsiniz...
2) Işınlanma Yeri Kaydetme
Aynı silah komutu gibi OnPlayerCommandText bölümüne aşağıdaki kodu yapıştırıyoruz...
if(!strcmp(cmdtext,"/4dragon",true)) {
SendClientMessage(playerid, COLOR_GREEN, "Dort Dragon");
SetPlayerPos(playerid, 2027.8707,1008.6269,10.8203);
PlayerPlaySound(playerid, 1083, X, Y, Z);
return 1;
}
Aynı şekilde bu kodlarlada oynayıp değişik yerlere komut kayıtı yapabilirsiniz.Örneğin bu kod 4dragon a ışınlanma kodudur.Burada sadece SetPlayerPos ve SendClientMessage bölümünü değiştirmeniz.Işınlanma için yeterlidir..
Soru-Cevap : Peki ben SetPlayerPos bölümünü nasıl ayarlayacağım??
Cevap:Çok karışık gibi görünebilir ama aslında basit.Oyundayken ışınlanmak istediğiniz yere gidin /save yapın.Sonra oyundan çıkıp gta klasorunde SavedPositions'u not defteri ile açıyoruz.İçinde AddPlayerClass olan bir yazı olacak...
Örneğin: AddPlayerClass(120,"-15.7541,1511.2710,12.7500",346.2166,0,0,0,0,0,0);yazısının sadece tırnak içindekileri alacaksınız.Onu siz ayarlarsınız bu örnekle heralde; bu örnekten anlarsınız ve ayarlarsınız...İşlem tamam aynı şekilde pwn yi kaydedin ve komutunuz hazır...
1. Ders Sona Erdi..
Not : 2. dersimiz, sadece çete eklemek ve çetelere özel komut kodlamaktan ibarettir..
Çete eklemek :
Modun başına,
#define TEAM_CETE 0
yazıyoruz..
Daha sonra çete renkleri için ve diğer özellikleri için,
public OnPlayerSpawn(playerid) 'e :
if(gTeam[playerid] == TEAM_CETE) {
SetPlayerColor(playerid,COLOR_GREEN); // Green
}
return 1;
}
kodunu ekliyoruz.. ( COLOR_GREEN 'i yani renk kısmını istediğiniz gibi seçebilirsiniz, 1 dersimizde anlatmıştım.. )
Daha sonra, modun herhangi bir yerine;
SetPlayerClass(playerid, classid) {
if(classid == 0) {
gTeam[playerid] = TEAM_CETE;
}
}
kodunu da ekliyoruz..
Takım kurma işlemimiz sona erdi. Şimdi geldik takıma özel komut kodlamaya..
Takıma Özel Komut :
public OnPlayerCommandText(playerid, cmdtext[])
publicinin olduğu yere,
Örneğin :
if(gTeam[playerid] == TEAM_CETE)
if(strcmp("/groveac", cmdtext, true) == 0) {
SetPlayerPos(playerid, -2724.5046,-314.9041,7.1862);
SendClientMessage(playerid, COLOR_RED, "Cete mekaniniza hosgeldiniz.");
return 1;
}
( Not : Diğer çeteler bu komutu yazdığında, komut işlemeyecektir.. )
2. dersimizin sonuna geldik. Umarım yeterli bilgiler verebilmişimdir.
Ders 3
Textdraw Eklemek :
İlk önce modun en başına,
new Text:savage;
ekliyoruz..
Daha sonra,
public OnGameModeInit()
public'ine,
savage = TextDrawCreate(430.0, 4.0, "~r~Savage ~g~Server");
TextDrawAlignment(savage, 0);
TextDrawLetterSize(savage, 0.4999, 1.7999);
TextDrawColor(savage, 0x000000FF);
TextDrawSetOutline(savage, 1);
TextDrawSetProportional(savage, true);
TextDrawSetShadow(savage, 7);
kodlarını ekliyoruz..
Şimdi geldik sunucuya girince bu özelliğin aktif olmasına :
public OnPlayerSpawn(playerid)
public'ine de,
TextDrawShowForPlayer(playerid, savage);
yapıyoruz..
Ders 4
Obje hareket ettirme :
Obje hareket ettirme "MoveObject" kodu ile sağlanır.
Bu kodu sağlamak için önce hareket ettirmek istediğimiz objeye , bir isim vermemiz gerekir.
Bunu da şu şekilde sağlayacağız :
new objemiz = CreateObject; Bu şekilde hareket ettirmek istediğimiz objeyi "objemiz" ismi ile tanıttık.
Şimdi aşağıda gördüğünüz kodla objenin hareket etmesini sağlayacağız :
MoveObject(objemiz,X,Y,Z,Float:Hız); "X,Y,Z" : Bu koordinatlar , objemizin hareketin sonunda olmasını istediğimiz yerin koordinatlarıdır.
"Hız" : Buraya objemizin hareket etmesini istediğimiz hızı yazacağız.
Bu kodu bir komutla kullanalım diyelim :
if(strcmp(cmdtext, "/hareketettir", true) == 0)
{
MoveObject(objemiz,X,Y,Z,Float:Hız);
}
Bu sayede bir oyuncu "/hareketettir" komutunu kullanırsa , "objemiz" adıyla tanıttığımız obje , belirttiğimiz koordinatlara belirttiğimiz hızla hareket edecektir.
Ders 5
Çoğu arkadaşın istediği Dialog öbür ismiyle GUI yi nasıl yapacağınızı anlatıcam
Dialog Oluşturabilmek için "ShowPlayerDialog" functionunu kullanıcağız.
Kullanacağımız Parametreler;
playerid, dialogid, style, caption[], info[], button1[], button2[]
Parametlerimizi Function içinde gösterelim;
ShowPlayerDialog(playerid,dialogid,style,caption[], info[] ,button1[] ,button2[]);
Parametrelerimizi Anlatalım;
dialogid : Dialogların karışmaması için bir sayı veriyoruz Örn: 1 , 2 , 4 , 10 , 100 ..
style : Dialogumuzun 3 çeşit şekli vardır => 1 = DIALOG_STYLE_MSGBOX | 2 = DIALOG_STYLE_INPUT | 3 = DIALOG_STYLE_LIST || 1 = Mesaj kutusu , 2 = Şifre Kullanıcı adı gibi kutucuklu dialoglar , 3 = liste şeklinde sıralı dialoglar
caption: Dialogumuzun başlığı
info : Dialogumuzun içinde yazıcak olan dialogu tanıtma amaçlı (veya kayıt olurken Notlar) yazılar
button1 = Birincil Tuş
button2 = Ikincil Tuş
Örnek :
if(strcmp(cmdtext, "/giris", true) == 0)
{
new s[128];
new loginname[MAX_PLAYER_NAME];
GetPlayerName(playerid,loginname,MAX_PLAYER_NAME);
format(s,sizeof(s),"Tekrar Hosgeldin, %s!nnDevam etmek icin giris yap!",loginname);
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Giris yap",s,"Giris","İptal");
return 1;
}
Ders 6
Dialog Çeşitleri ve İşlevleri
- DIALOG_STYLE_MSGBOX
Bu dialog şeklinde yardım menüleri yapabilirsiniz.
Örneğin :
ShowPlayerDialog(playerid, DIALOGID, DIALOG_STYLE_MSGBOX, "Yardım Menüsü", "/Silahlarn/Komutlarn/Shop", "Tamam","Çıkış");
- DIALOG_STYLE_LIST
Bu dialog şeklinde menü ve liste hazırlayabilirsiniz.
Örneğin:
ShowPlayerDialog(playerid, 10, DIALOG_STYLE_LIST, "Deneme Menüsü", "Deneme1nDeneme2", "Tamam", "Çıkış");
-DIALOG_STYLE_INPUT
Bu dialog şekli ile yazı butonu yapabilirsiniz.
Örneğin:
ShowPlayerDialog(playerid,20,DIALOG_STYLE_INPUT,"Ad Seçimi","Oyuncu adını veya idini giriniz.","Tamam","Çıkış");
-(n)
Bu işaret ile bir sonraki satıra geçersiniz.
Not : Dialog_Style_Input ve Dialog_Style_List çeşitlerinde ayrı bir dialog public'i kullanmak gerekiyor.Onu menü içeriği gibi ayarlayabilirsiniz.
|
|
|
|
|
|
|
|
|
|
|
|