duplicator

Duplicator kütüphanesi, birisi kopyalayıcı aracıyla özel varlığınızı kopyalamaya çalıştığında neyin kaydedilmesi gerektiğini belirtmenize olanak tanır. Ayrıca, yerleşik sistemi kullanmak için 3. taraf kopyalayıcı araçları tarafından da kullanılabilir.

Alanlar

table duplicator.BoneModifiers
duplicator.RegisterBoneModifier ile kaydedilmiş tüm varlık kemik düzenleyicilerinin bir listesi.
Kopyalanabilen tüm kısıtlamaların bir listesi. duplicator.RegisterConstraint ile kaydedilir.
table duplicator.EntityClasses
Özel bir kopyalama oluşturma fonksiyonuna sahip tüm varlık sınıflarının bir listesi. duplicator.RegisterEntityClass ile kaydedilir. Eğer belirli bir varlık sınıfı tablosu almak isterseniz, duplicator.FindEntityClass kullanın.
duplicator.RegisterEntityModifier ile kaydedilmiş tüm varlık düzenleyicilerinin bir listesi.

Metotlar

duplicator.Allow( string classname )
Verilen sınıf adına sahip varlıkların kopyalanmasına izin verir. Tersi etki için duplicator.Disallow'a bakın.
duplicator.ApplyBoneModifiers( Player ply, Entity ent )
duplicator.RegisterBoneModifier ile kaydedilen her fonksiyonu, varlığın sahip olduğu her kemik üzerinde çağırır.
duplicator.ApplyEntityModifiers( Player ply, Entity ent )
duplicator.RegisterEntityModifier ile kaydedilen her fonksiyonu varlık üzerinde çağırır.
duplicator.ClearEntityModifier( Entity ent, any key )
Seçilen varlık düzenleyicisini varlıktan temizler/kaldırır.
table duplicator.Copy( Entity ent, table tableToAdd = {} )
Varlığı ve tüm kısıtlamalarını ve varlıklarını kopyalar, ardından bunları bir tablo içinde döndürür.
table duplicator.CopyEnts( table ents )
Daha sonra kaydetmek için iletilen varlık tablosunu kopyalar.
table duplicator.CopyEntTable( Entity ent )
duplicator.CreateEntityFromTable ile yeni bir varlık oluşturmak için kullanılabilecek bazı varlık verilerini içeren bir tablo döndürür.
Entity duplicator.CreateConstraintFromTable( table constraint, table entityList )
Bu dahili olarak kullanılır - kullanabilseniz de muhtemelen kullanmamalısınız. Kaydedilmiş/kopyalanmış bir kısıtlama tablosundan bir kısıtlama oluşturur.
Entity duplicator.CreateEntityFromTable( Player ply, table entTable )
"Bir tablodan bir varlık oluşturun. " Bu, EntTable'daki verileri kullanarak bir varlık oluşturur. Varlığın Sınıfı için bir varlık fabrikası kaydedilmişse, o çağrılır. Aksi takdirde, bunun yerine duplicator.GenericDuplicatorFunction çağrılır.
duplicator.Disallow( string classname )
Bu varlığın kopyalanmasını engeller. duplicator.Allow'ın tersidir. Varsayılan olarak, tüm sınıfların kopyalanması engellenmiştir. Bu fonksiyon, daha önce izin verilmiş olabilecek belirli varlık sınıflarının kopyalanmasını geçici olarak devre dışı bırakmak için kullanışlıdır.
duplicator.DoBoneManipulator( Entity ent, table bones )
"Kemiğin verilerini geri yükler. " Bones içinde döngü kurar ve sırasıyla tablo anahtarları ve s, a ve p alt tablo değerleri ile ent üzerinde Entity:ManipulateBoneScale, Entity:ManipulateBoneAngles ve Entity:ManipulateBonePosition fonksiyonlarını çağırır.
duplicator.DoFlex( Entity ent, table flex, number scale = nil )
Entity:SetFlexWeight ve Entity:SetFlexScale kullanarak flex verilerini geri yükler.
duplicator.DoGeneric( Entity ent, table data )
"Veri tablosundan ent için genel, gündelik varlık işlerini uygular. " Veri tablosundaki Model, Angle, Pos, Skin, Flex, Bonemanip, ModelScale, ColGroup, Name ve BodyG (birden çok değer içeren tablo) değerlerine bağlı olarak, bu fonksiyon ent üzerinde Entity:SetModel, Entity:SetAngles, Entity:SetPos, Entity:SetSkin, duplicator.DoFlex, duplicator.DoBoneManipulator, Entity:SetModelScale, Entity:SetCollisionGroup, Entity:SetName, Entity:SetBodygroup fonksiyonlarını çağırır. Eğer ent bir RestoreNetworkVars fonksiyonuna sahipse, bu fonksiyon data.DT ile çağrılır.
duplicator.DoGenericPhysics( Entity ent, Player ply = nil, table data )
"Kemik verilerini genel olarak uygular. " Eğer veri bir PhysicsObjects tablosu içeriyorsa, belirtilen tüm kemikleri önce yerel koordinatlardan dünya koordinatlarına dönüştürerek taşır, yeniden açılandırır ve ilgiliyse dondurur.
duplicator.FigureOutRequiredAddons( table dupe )
Verilen kopyalama tablosunu kontrol eder ve kopyalamayı doğru bir şekilde oluşturmak için gerekebilecek eklentileri bulmaya çalışır. Şu anda bu, kopyalamada kaydedilen modeller ve materyal geçersiz kılmaları ile sınırlıdır.
table duplicator.FindEntityClass( string name )
duplicator.RegisterEntityClass ile kaydedilmiş varlık sınıfı fabrikasını döndürür.
"Eşyaları kopyalamak için genel fonksiyon" Bu, duplicator.CreateEntityFromTable'ın inşa edilecek bir varlık fabrikası bulamadığında çağrılır. Model ve pozisyon gibi standart kopyalayıcıda saklanan şeyleri uygulamak için duplicator.DoGeneric ve duplicator.DoGenericPhysics'i çağırır.
table, table duplicator.GetAllConstrainedEntitiesAndConstraints( Entity ent, table entStorageTable, table constraintStorageTable )
Bu dahili olarak kullanılır - kullanabilseniz de muhtemelen kullanmamalısınız. entStorageTable'ı kısıtlamalarla bağlı bir gruptaki tüm varlıklarla doldurur. constraintStorageTable'ı grubu kısıtlayan tüm kısıtlamalarla doldurur.
boolean duplicator.IsAllowed( string classname )
Varlığın kopyalanıp kopyalanamayacağını döndürür.
table, table duplicator.Paste( Player Player, table EntityList, table ConstraintList )
"Verilen varlık listesi ve kısıtlama listesi ile tüm varlıkları oluşturun ve tablolarını döndürün" EntityList'in her bir alt tablosunda duplicator.CreateEntityFromTable'ı çağırır. Eğer bir varlık gerçekten oluşturulursa, varlığın kopyalayıcı verileriyle ENTITY:OnDuplicated'ı, ardından duplicator.ApplyEntityModifiers, duplicator.ApplyBoneModifiers'ı ve son olarak ENTITY:PostEntityPaste'i çağırır. Kısıtlamalar daha sonra duplicator.CreateConstraintFromTable ile oluşturulur.
duplicator.RegisterBoneModifier( any key, function boneModifier )
duplicator.ApplyBoneModifiers çağrıldığında bir varlığın her kemiği üzerinde çağrılacak bir fonksiyon kaydeder. Bu fonksiyon istemcide çağrılabilir, ancak kaydedilen fonksiyonlar hiçbir yerde kullanılmaz!
duplicator.RegisterConstraint( string name, function callback, ... )
Kopyalanmış bir kısıtlama oluşturmak için kullanılan bir fonksiyonu kaydeder.
duplicator.RegisterEntityClass( string name, function function, ... )
Bu, SENT'iniz kopyalayıcı ile yapıştırıldığında, genel otomatik fonksiyonlara güvenmek yerine çalıştırılacak belirli bir fonksiyon belirtmenize olanak tanır. Varlık sınıfı için otomatik olarak duplicator.Allow'u çağırır.
duplicator.RegisterEntityModifier( string name, function func )
Bu, varlıklara yönelik ince ayarları kaydetmenizi sağlar. Örneğin, bir "kırılmaz" eklentisi yapıyorsanız, varlıkların "kırılmaz" durumunu kopyalamalar arasında kaydetmeyi etkinleştirmek için bunu kullanırsınız. Bu fonksiyon, bu düzenleyiciye sahip tüm varlıklarda çalışan genel bir kod parçası kaydeder. Gerçekten çalışmasını sağlamak için duplicator.StoreEntityModifier'ı kullanın. Bu fonksiyon istemci tarafında çalıştırıldığında hiçbir şey yapmaz.
Kaydedilmiş varlıkları oluşturmadan önce harita tarafından oluşturulan belirli varlıkları kaldırmaya yardımcı olur. Bu, açıkçası her yerde yinelenen proplar elde etmememiz içindir. Paste çağrılmadan önce çağrılmalıdır.
duplicator.SetLocalAng( Angle v )
"Bir kopya kopyalandığında, bunlara göre çevrilecektir. Eğer bunları ayarlarsanız - onları tekrar 0 0 0'a ayarladığınızdan emin olun!"
duplicator.SetLocalPos( Vector v )
"Bir kopya kopyalandığında, bunlara göre çevrilecektir. Eğer bunları ayarlarsanız - onları tekrar 0 0 0'a ayarladığınızdan emin olun!"
duplicator.StoreBoneModifier( Entity ent, number boneID, any key, table data )
Kaydedilmiş bir kemik modifikasyon fonksiyonu için kemik modu verilerini saklar.
duplicator.StoreEntityModifier( Entity entity, string name, table data )
Kaydetmek için bir varlık düzenleyicisini bir varlığa saklar.
Vector, Vector duplicator.WorkoutSize( table Ents )
Kopyalamanın AABB boyutunu hesaplar.

Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord