Selamlar, bu yazıda oyuncuya nasıl obje takıldığını anlatacağım. İsterseniz giriş kısmını bu seferlik kısa tutalım ve direkt anlatıma geçelim.
Obje ile alakalı fonksiyonlar şunlardır:
SetPlayerAttachedObject - Oyuncuya obje takmak için kullanacağımız fonksiyon.
RemovePlayerAttachedObject - Belirtilen slottaki objeleri kaldırmak için kullanacağımız fonksiyon.
IsPlayerAttachedObjectSlotUsed - Seçilen slotta objenin olup olmadığını kontrol etmek için kullanacağımız fonksiyon.
EditAttachedObject - Oyuncudaki objeyi düzenlemek için kullanacağımız fonksiyon.
Peki, bunlar nasıl kullanılır ki?
1-) Obje Takmak - SetPlayerAttachedObject:SetPlayerAttachedObject(playerid, index, modelid, bone, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX, Float:fScaleY, Float:fScaleZ, materialcolor1, materialcolor2);
Aynen, aynen. Biliyorum, bayağı bir karmaşık geldi sana. Ama dert etme, aslında çok basittir. Hadi, gel de tek tek açıklayalım ne işe yaradıklarını.
Index: Objenin bulunacağı slotu ayarlar. 0 ile 9 arasında bir sayı kullanabilirsiniz.
Modelid: Obje idsini buraya gireceğiz. Peki, ben nereden bulurum ki bu obje idlerini diye bir soru soruyorsunuz gibi geldi. Obje idlerine buradan ulaşabilirsiniz.
Bone: Burası ise, objenin oyuncunun neresinden çıkacağını ayarladığımız kısım. Hemen alttaki tablodan hangi id neresiymiş, neresi hangi idmiş öğrenebilirsiniz.
Offset, Scale, Rot: Objenin konumunu ayarlamaya yarar.
ID | Bölge |
1 | Omurga |
2 | Kafa |
3 | Sol Kol Üstü |
4 | Sağ Kol Üstü |
5 | Sol El |
6 | Sağ El |
7 | Sol Kalça |
8 | Sağ Kalça |
9 | Sol Ayak |
10 | Sağ Auak |
11 | Sağ Baldır |
12 | Sol Baldır |
13 | Sol Ön Kol |
14 | Sağ Ön Kol |
15 | Sol Omuz |
16 | Sağ Omuz |
17 | Boyun |
18 | Çene |
2-) Obje Kaldırmak - RemovePlayerAttachedObject:
RemovePlayerAttachedObject(playerid, Slot Index);
Yukarıdaki kod ise belirttiğiniz slot idsindeki objelerin kaldırılmasını sağlar.
3-) Slot Kontrolü - IsPlayerAttachedObjectSlotUsed:
Burada ise belirtilen slotta objelerin olup olmadığını kontrol ediyoruz.
Örnek Kullanım:
for(new i=0; i < MAX_PLAYER_ATTACHED_OBJECTS; i++)
{
if(IsPlayerAttachedObjectSlotUsed(playerid, i)) print("Adamsin be!");
}
4-) Obje Düzenleme - EditAttachedObject:
EditAttachedObject(playerid, Slot Model ID);
Bununla da obje editleme işlemini yapıyoruz. Örneğin aşağıdaki komut ile objeyi oluşturup, oluşturduğumuz slottaki objeyi düzenleyebiliriz.
public OnPlayerConnect(playerid)
{
SetPlayerAttachedObject(playerid, 2, 18636, 2);
return 1;
}
if(!strcmp(cmdtext, "/edit", true))
{
SendClientMessage(playerid, -1, "Obje düzenleniliyor...");
EditAttachedObject(playerid, 2);
return 1;
}
..:: Bu anlatımın size faydalı olduğunu düşünerek mesajımı iletiyorum, bir sonraki anlatımda görüşmek üzere!
0 Yorumlar
Yorum yapmak için Google hesabına veya bir web sitesine ihtiyacınız yoktur. Kimlik seçme bölümündeki varsayılan değeri "Adı/URL" olarak seçebilir, isminizi yazdıktan sonra "Devam" butonuna tıklamanız yeterlidir. Sizlere gösterdiğimiz minik adımların arkasından yorumunuzu yazmaya başlayabilirsiniz. İçeriğimizle ilgili yorumunuzu yaptıktan sonra "Yayınla" butonuna basmayı unutmayın!