protected override void Awake() { base.Awake(); _clonedSkin = SkeletonAnimation.skeleton.Data.DefaultSkin.GetClone(); _weaponSlotIndex = SkeletonAnimation.skeleton.FindSlotIndex(WeaponSlot); var weaponSprite = SpriteHelper.GetPlayerSpineTextureWeapon(GameConfig.DefaultAvatarWeaponId); _weaponAttachmentDefault = MakeAttachment(weaponSprite); var hairSlots = hairTypeIndex == 0 ? HairType0Slots : HairType1Slots; foreach (var hairSlot in hairSlots) { if (!TryGetSlotAndAttachment(hairSlot, out var result)) { break; } _hairs.Add(result); } TryGetSlotAndAttachment(EarLeftSlot, out _earLeft); TryGetSlotAndAttachment(EarRightSlot, out _earRight); TryGetSlotAndAttachment(EyeHalfSlot, out _eyeHalf); TryGetSlotAndAttachment(EyeOpenSlot, out _eyeOpen); TryGetSlotAndAttachment(TailSlot, out _tail); }
public void Equip(int armorId, int weaponId) { var spineResourcePath = $"Character/Player/{armorId}"; ChangeSpine(spineResourcePath); var sprite = SpriteHelper.GetPlayerSpineTextureWeapon(weaponId); SpineController.UpdateWeapon(sprite); }
public static Sprite GetPlayerSpineTexture(this Weapon weapon) { return(weapon is null ? SpriteHelper.GetPlayerSpineTextureWeapon(GameConfig.DefaultAvatarWeaponId) : SpriteHelper.GetPlayerSpineTextureWeapon(weapon.Id)); }