Bir Anahtar, iki şekilde kullanılabilir.
-
Oyuncuların etkileşime geçebileceği, diğer cihazlarla birlikte kullanılan, oyuncuların kapıları veya ışıkları açıp kapatabileceği fiziksel bir anahtar olarak.
-
Diğer cihazlarla etkileşimleri filtrelemenin bir yöntemi olarak. Örneğin, Anahtar Açık konumdaysa bir kanala sinyal aktarır. Kapalı konumdaysa başka bir kanala sinyal aktarır.
Anahtar Cihazı'nı bulmak için Cihazları Bulma ve Yerleştirme dokümantasyonunu okuyabilirsin.
Bağlamsal Filtreleme
Bazı cihazlar bağlamsal filtreleme denilen özellikten etkilenirler. Bu özellik, ilgili belirli seçenekler için seçilen değerlere bağlı olarak seçenekleri gizler veya gösterir. Bu özellik, Özelleştir panelindeki dağınıklığı azaltır ve seçenekleri ayarlamayı ve bulmayı kolaylaştırır.
Ancak hangi seçeneklerin veya değerlerin bağlamsal filtrelemeyi tetiklediğini anlamak kolay olmayabilir. Bunları fark etmene yardımcı olmak adına bağlamsal filtrelemeyi tetikleyen tüm değerler italik yazılır. Bağlamsal filtrelemeden etkilenenler de dahil bütün seçenekler listelenecek. Belirli bir seçeneğin değerlerine göre gizlenmişlerse veya görünüyorlarsa, bu seçeneğin Açıklama alanında bunun hakkında bir not olacak.
Cihaz Seçenekleri
Bu cihazın, anahtarın görünürlüğünü ayarlamak ve oyuncuların anahtarla etkileşime geçtiklerinde görecekleri metni belirlemek gibi basit işlevleri vardır. Ek olarak, anahtarın durumunu kaydedebilmesi durumunda kullanabileceğin bazı gelişmiş seçenekler de bulunur.
Şu seçenekler yardımıyla bu cihazı özelleştirebilirsin:
Kalın olarak yazılan değerler varsayılan değerlerdir. Bağlamsal filtreleme kullanan değerler italik font ile yazılır.
Seçenek | Değer | Açıklama | |
---|---|---|---|
Oyun Başlangıcında Etkin | Evet, Hayır | Cihazın oyun başladığında etkin olup olmayacağını belirler. | Devre dışı cihazlar etkinleştirme dışında bütün komutları görmezden gelir. |
İlk Durum | Kapalı, Açık | Bu, geçersiz kılabilecek oyuncu kaynaklı bir durum olmadığında anahtarın başlangıçtaki varsayılan durumudur. | |
Oyun Sırasında Görünür | Evet, Hayır | Cihazın oyun sırasında görülebilir olup olmadığını belirler. | |
Açma Metni | Alana metin gir | Anahtarı açık konuma getirirken görünen metni belirler. | Metin alanının karakter sınırı 150'dir. |
Kapama Metni | Alana metin gir | Anahtarı kapalı konuma getirirken görünen metni belirler. | Metin alanının karakter sınırı 150'dir. |
Cihaz Modeli | Varsayılan, Şalter, Düğme, Varsayılan (Işıksız), Şalter (Işıksız), Kırmızı Buton, Hacker, Antik Kol, Kutucuk | Anahtar için kullanılacak görsel model. | |
Ses | Etkin, Devre Dışı | Anahtar, durum değiştirdiğinde (Açık durumdan Kapalı duruma ya da Kapalı durumdan Açık duruma geçtiğinde) ses çıkarıp çıkarmayacağını belirler. | |
Etkileşime İzin Ver | Evet, Hayır | Oyuncuların cihazla etkileşime girip giremeyeceğini belirler. | |
Etkileşim Süresi | Anında, Saniye Cinsinden Süre Seç veya Gir | Oyuncunun, cihazı etkinleştirebilmesi için ne kadar süre etkileşime geçmesi gerektiğini belirler. | |
Değişebileceği Sayıyı Sınırla | Hayır, Evet | Cihazın kaç defa değişebileceğinin bir sınırı olup olmayacağını belirler. Bu seçenek Evet olarak ayarlanırsa, altında başka bir seçenek daha görünür. | |
Değişebileceği Sayı | 1, Bir Sayı Seç veya Gir | Devre dışı kalmadan önce, bu cihazın kaç sefer açılıp kapanabileceğini belirler. | |
Sınırsız Bekleme Süresi | Hayır, Evet | Cihazla etkileşimler arasındaki bekleme süresini belirler. Bu seçeneği Evet olarak ayarlarsan, Bekleme Süresi seçeneği bu seçeneğin altında gösterilmez. | |
Bekleme Süresi | Anında, Saniye seç | Bu seçenek yalnızca Sınırsız Bekleme Süresi, Hayır olarak ayarlandıysa görünür. Etkileşimler arasındaki bekleme süresini belirler. | |
İzin Verilen Sınıf | Sınıfsız, Herhangi Biri Bir Sınıf Seç veya Gir | Cihazı hangi sınıfın etkinleştirebileceğini belirler. | |
İzin Verilen Takım | Herhangi Biri, Bir Takım Seç veya Gir | Hangi takımın bu cihazı etkinleştirebileceğini belirler. | |
Etkileşim Yarıçapı | 0, Bir yarıçap büyüklüğü seç veya gir | Oyuncuların belirlenen yarıçaplı alan içinde herhangi bir yere bakarak cihazı etkinleştirebilmelerini sağlar. Normalde oyuncunun butona bakıyor olması gerekir. Görünürlük ayarıyla birlikte kullanarak oyuncular diğer nesnelerle etkileşime giriyormuş gibi göster. | |
Durum Sıfırlanma Süresi | Sıfırlama Yok, Bir süre seç veya gir | Cihazın varsayılan durumuna sıfırlanmasından önce geçen süreyi belirler. | |
Aynı Anda Çalışmaz | Bağımsız Çalışır, Bir sayı seç | Bu anahtarı Açık duruma getirmek, "Aynı Anda Çalışmaz" endeks numarasına sahip diğer tüm anahtarları kapatır. | |
Her Oyuncu İçin Durumu Kaydet | Evet, Hayır | Evet olarak ayarlandıysa her oyuncunun kendi anahtar durumu olur. Hayır olarak ayarlanmışsa tüm oyuncular aynı anahtar durumuna sahip olur. Eğer bu seçenek Hayır olarak ve Süreklilik Kullan seçeneği Kullan olarak ayarlanmışsa anahtar, durum yüklenmeye çalışırken Çakışmaları Çöz seçeneğini kullanır. | |
Süreklilik Kullan | Kullanma, Kullan | Bu cihazın arka uçtan veri yükleyip yükleyemeyeceğini belirler. Kullan'ı seçersen, Tüm Seçenekler sekmesinde ek seçenekler görüntülenir. | |
Otomatik Kaydet | Açık, Kapalı | Bu seçenek yalnızca Süreklilik Kullan seçeneği Kullan olarak ayarlandığında görünür. Anahtar durumunun değeri değiştiğinde durumun otomatik olarak kaydedilip kaydedilmeyeceğini belirler. | |
Otomatik Yükleme | Açık, Kapalı | Bu seçenek yalnızca Süreklilik Kullan seçeneği Kullan olarak ayarlandığında görünür. Anahtar durumunun otomatik olarak oyun başlangıcında mı yüklendiğini yoksa etkinlik bağlama kullanılırken mi yüklenmesi gerektiğini belirler. | |
Çakışmaları Çöz | İlk Oyuncu, Çoğunluk, Öncelik Açık, Öncelik Kapalı | Bu seçenek yalnızca Süreklilik Kullan seçeneği Kullan olarak ayarlandığında görünür. Durum yüklendiğinde ve Her Oyuncu İçin Durumu Kaydet seçeneği Hayır olarak ayarlandığında ne olacağını belirler. Bu seçenek için değerler şöyledir:
|
|
Oyun Başlangıcında Durum Kontrol Et | Etkin, Devre Dışı | Anahtarın oyun başlangıcında durumunu kontrol edip etmeyeceğini ve Kontrolde Açık Sonucuna Ulaşıldığında veya Kontrolde Kapalı Sonucuna Ulaşıldığında etkinliklerini tetikleyip tetiklemeyeceğini belirler. | |
Devre Dışı Bırakılınca Anahtar Durumunu Kontrol Et | Evet, Hayır | Devre dışı bile olsa cihazın durumunu kontrol edip etmeyeceğini belirler. |
Doğrudan Etkinlik Bağlama Sistemi
Doğrudan etkinlik bağlama, cihazların doğrudan iletişim kurmasını sağlayarak iş akışını daha akıcı hale getirir ve tasarım fikirlerine odaklanman için sana daha fazla özgürlük tanır.
Aşağıda bu cihaz için işlevler ve etkinlikler bulunmaktadır.
İşlevler
Bir işlev, bir cihazdaki etkinliği izler ve ardından bir eylemi gerçekleştirir.
- Seçeneğe tıklayıp ardından Cihaz Seç kısmına girerek cihazın açılır menüsünden herhangi bir işleve erişebilirsin.
- Cihazın işlevini tetikleyecek bir etkinliğe bağlamak için, bir cihaz seçtikten sonra Etkinlik Seç seçeneğine tıkla.
- Bir işlevi birden fazla cihaz veya etkinlik tetiklerse, bir satır eklemek için Ekle butonuna tıklayıp bu adımları tekrarlayabilirsin.
Seçenek | Açıklama |
---|---|
Şuradan Alındığında Etkinleştir: | Bu işlev, bir etkinlik gerçekleştiğinde cihazı etkinleştirir. |
Şuradan Alındığında Devre Dışı Bırak: | Bu işlev, bir etkinlik gerçekleştiğinde cihazı devre dışı bırakır. |
Şuradan Alındığında Aç: | Bu işlev, bir etkinlik gerçekleştiğinde anahtarı açar. |
Şuradan Alındığında Devre Dışı Bırak: | Bu işlev, bir etkinlik gerçekleştiğinde anahtarı devre dışı bırakır. |
Şuradan Alındığında Durumu Aç/Kapat: | Bu işlev, bir etkinlik gerçekleştiğinde anahtarı açar/kapatır. |
Şuradan Alındığında Durum Yükle: | Bu işlev, bir etkinlik gerçekleştiğinde anahtarın durumunu yükler. |
Şuradan Alındığında Durumu Kaydet: | Bu işlev, bir etkinlik gerçekleştiğinde anahtarın durumunu kaydeder. |
Şuradan Alındığında Durumu Sorgula: | Bu işlev, bir etkinlik gerçekleştiğinde anahtarın durumunu sorgular. |
Şuradan Alındığında Oyuncu Süreklilik Verisini Sil: | Bu işlev, bir etkinlik gerçekleştiğinde tetikleyen oyuncunun süreklilik verisini siler. |
Şuradan Alındığında Mevcut Oyuncuların Süreklilik Verisini Sil: | Bu işlev, bir etkinlik gerçekleştiğinde tüm mevcut oyuncuların tüm süreklilik verilerini siler. |
Şuradan Alındığında Herkes İçin Durumu Kaydet: | Bu işlev, bir etkinlik gerçekleştiğinde tüm oyuncular için anahtarın durumunu kaydeder. |
Şuradan Alındığında Herkes İçin Durum Yükle: | Bu işlev, bir etkinlik gerçekleştiğinde tüm oyuncular için anahtarın durumunu yükler. |
Etkinlikler
Doğrudan etkinlik bağlama, etkinlikleri birer aktarıcı olarak kullanır. Bir etkinlik, başka bir cihaza bir işlev gerçekleştirmesini belirtir.
- Seçeneğe tıklayıp ardından Cihaz Seç kısmına girerek cihazın açılır menüsünden herhangi bir etkinlik seçeneğine erişebilirsin.
- Etkinliği o cihazın bir işlevine bağlamak için bir cihaz seçtikten sonra İşlev Seç seçeneğine tıkla.
- Etkinlikten birden fazla işlev tetiklenecekse bir satır eklemek için Ekle butonuna tıklayıp bu adımları tekrarlayabilirsin.
Seçenek | Açıklama |
---|---|
Açıldığında Şuraya Etkinlik Gönder: | Anahtar açıldığında seçili cihaza bir etkinlik gönderir, cihaz ise seçili işlevi tetikler. |
Kapandığında Şuraya Etkinlik Gönder: | Anahtar kapandığında seçili cihaza bir etkinlik gönderir, cihaz ise seçili işlevi tetikler. |
Kontrolde Açık Sonucuna Ulaşıldığında Şuraya Etkinlik Gönder: | Durum kontrol edildiğinde anahtar açıksa seçili cihaza bir etkinlik gönderir, cihaz ise seçili işlevi tetikler. |
Kontrolde Kapalı Sonucuna Ulaşıldığında Şuraya Etkinlik Gönder: | Durum kontrol edildiğinde anahtar kapalıysa seçili cihaza bir etkinlik gönderir, cihaz ise seçili işlevi tetikler. |
Durum Kaydedildiğinde Şuraya Etkinlik Gönder: | Anahtar durumu kaydedildiğinde seçili cihaza bir etkinlik gönderir, cihaz ise seçili işlevi tetikler. |
Durum Değiştiğinde Şuraya Etkinlik Gönder: | Anahtar durumu değiştiğinde seçili cihaza bir etkinlik gönderir, cihaz ise seçili işlevi tetikler. |
Durum Yüklendiğinde Şuraya Etkinlik Gönder: | Anahtar durumu yüklendiğinde seçili cihaza bir etkinlik gönderir, cihaz ise seçili işlevi tetikler. |
Temizlendiğinde Şuraya Etkinlik Gönder: | Anahtar süreklilik verisi temizlendiğinde seçili cihaza bir etkinlik gönderir, cihaz ise seçili işlevi tetikler. |
Verse'te Anahtar Kullanımı
Verse ile bir Anahtar Cihazı kontrol edebilmek için aşağıdaki kodu kullanabilirsin. Bu kod, Anahtar Cihazı API'da etkinlik ve işlevlerin nasıl kullanıldığını gösterir. Deneyimine uyacak şekilde ayarla.
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
# Verse tarafından oluşturulan ve bir bölüme yerleştirilebilen kreatif cihaz
switch_device_verse_example := class(creative_device):
# Seviyedeki Anahtar Cihazı'na referans.
# Bu Verse cihazının Detay panelinde,
# bu özelliği Anahtar Cihazı'na ekle.
@editable
MySwitchDevice:switch_device = switch_device{}
# Oyuncular tarafından görülebilen metin eklemek için kullanabileceğin yerelleştirilebilir mesajlar
TurnOnInteractionText<localizes>:message = "Özel anahtar açma metni!"
# Cihaz sürmekte olan bir oyunda başlatıldığında devreye girer
OnBegin<override>()<suspends>:void=
# Kreatif cihazdaki bir etkinliğe abone olma örneği.
# Anahtar durumu değiştiğinde sinyal verir.
MySwitchDevice.StateChangesEvent.Subscribe(OnStateChanged)
# Anahtar halihazırda kapalıyken *Açma Metnini* kullanıcıya gösterilecek şekilde ayarlar ve açmak için etkileşime izin verir. 150 karakterle sınırlıdır.
MySwitchDevice.SetTurnOnInteractionText(TurnOnInteractionText)
# Bu işlev, oyuncu oyun içinde anahtarı açıp kapattığında çalışır çünkü StateChangesEvent için olay işleyicisidir.
OnStateChanged():void=
Print("Anahtar Cihazı durumu değişti.")
# Bu cihazın tek bir genel açık/kapalı durumuna mı yoksa her bir ajan için kişiselleştirilmiş bir açık/kapalı durumuna mı sahip olduğunu sorgular.
if (MySwitchDevice.IsStatePerAgent[]):
Print("Anahtar Cihazı durumu ajana göre ayarlanır.")
# Cihazda her oyuncu için operasyonların nasıl yapıldığını göstermek için bu örnek, deneyimdeki tüm oyuncularda tekrarlanır.
for (Player : GetPlayspace().GetPlayers()):
# Anahtarın mevcut durumuna geri döner: doğru (açık) veya yanlış (kapalı). Bu cihazın *Her Oyuncu İçin Durumu Kaydet* seçeneği *Evet* olarak ayarlanmışsa 'GetCurrentState' overload'unu kullan.
if (MySwitchDevice.GetCurrentState[Oyuncu]):
Print("Mevcut durum açık.")
else:
Print("Mevcut durum kapalı.")
else:
Print("Anahtar Cihazı durumu ajana göre ayarlanmaz.")
# Anahtarın mevcut durumuna geri döner: doğru (açık) veya yanlış (kapalı). Bu cihazın *Her Oyuncu İçin Durumu Kaydet* seçeneği *Hayır* olarak ayarlanmışsa 'GetCurrentState' overload'unu kullan.
if (MySwitchDevice.GetCurrentState[]):
Print("Mevcut durum açık.")
else:
Print("Mevcut durum kapalı.")
Bu kodu UEFN deneyiminde kullanmak için şu adımları takip et:
- Adana bir Anahtar Cihazı sürükle.
- anahtar_cihazı_verse_örneği isimli yeni bir Verse cihazı oluştur. Adımlar için Verse Kullanarak Kendi Cihazını Oluştur dokümantasyonunu incele.
- Visual Studio Code'da anahtar_cihazı_verse_örneği.verse cihazını açarak yukarıdaki kodu yapıştır.
- Kodunu derle ve Verse tarafından oluşturulan cihazı adana sürükle. Adımlar için Verse Cihazını Seviyene Ekleme dokümantasyonunu incele.
- Adandaki Anahtar Cihazı için Verse cihazına referans ekle. Adımlar için Seviyendeki Kreatif Cihazına Verse Referansı Ekleme dokümantasyonunu incele.
- Projeni kaydet ve oyun testi için Oturumu Başlat'a tıkla.
Anahtar Cihazı Verse API
Anahtar Cihazı'nı Verse'te kullanmakla ilgili daha fazla bilgi almak için 'anahtar_cihazı' API Referansı dokümantasyonunu incele.