public bool UpdateProperties(AppearanceInstance outfit, AppearanceInstance mountOutfit, List <ProtocolOutfit> outfits, List <ProtocolMount> mounts) { _outfits = outfits; _mounts = mounts; int outfitIndex = _outfits.FindIndex((x) => x._id == outfit.Id); if (outfitIndex == -1) { outfitIndex = 0; } ChangeOutfitIndex(outfitIndex); if (OpenTibiaUnity.GameManager.GetFeature(GameFeature.GamePlayerMounts)) { int mountIndex = mountOutfit != null?_mounts.FindIndex((x) => x._id == mountOutfit.Id) : 0; if (mountIndex == -1 && _mounts.Count > 0) { mountIndex = 0; } ChangeMountIndex(mountIndex); } _currentOutfit = outfit; _currentMount = mountOutfit; _currentDirection = Direction.South; return(true); }
private void OnRequestOutfitDialog(AppearanceInstance outfit, AppearanceInstance mountOutfit, List <ProtocolOutfit> outfits, List <ProtocolMount> mounts) { if (OutfitWindow.UpdateProperties(outfit, mountOutfit, outfits, mounts)) { OutfitWindow.Show(); } }
private void ChangeOutfitIndex(int newIndex) { if (_currentOutfitIndex == newIndex) { return; } _updatingOutfit = true; _currentOutfitIndex = newIndex; var newProtocolOutfit = _outfits[_currentOutfitIndex]; int head = 0, body = 0, legs = 0, feet = 0, addons = newProtocolOutfit.AddOns; if (_currentOutfit is OutfitInstance outfitInstance) { head = outfitInstance.Head; body = outfitInstance.Torso; legs = outfitInstance.Legs; feet = outfitInstance.Detail; } _checkboxAddon1.checkbox.Checked = (addons & 1) != 0; _checkboxAddon2.checkbox.Checked = (addons & 2) != 0; _checkboxAddon1.SetEnabled(_checkboxAddon1.checkbox.Checked); _checkboxAddon2.SetEnabled(_checkboxAddon2.checkbox.Checked); _currentOutfit = OpenTibiaUnity.AppearanceStorage.CreateOutfitInstance(newProtocolOutfit._id, head, body, legs, feet, addons); if (OpenTibiaUnity.GameManager.GetFeature(GameFeature.GameNewOutfitProtocol)) { UpdateInformation(true, false); } _updatingOutfit = false; }
public bool Merge(AppearanceInstance other) { var textualEffect = other as TextualEffectInstance; if (!!textualEffect && textualEffect.m_Phase <= 0 && this.m_Phase <= 0 && textualEffect.m_Color != m_Color) { m_Value = textualEffect.m_Value; return(true); } return(false); }
private void OnOkButtonClick() { if (!!OpenTibiaUnity.ProtocolGame) { if (_currentOutfit is OutfitInstance outfitInstance) { OpenTibiaUnity.ProtocolGame.SendSetOutfit(outfitInstance, _currentMount as OutfitInstance); } } _currentOutfit = null; _currentMount = null; _outfits = null; _mounts = null; _currentOutfitIndex = -1; _currentMountIndex = -1; }
private void OnOkButtonClick() { if (!!OpenTibiaUnity.ProtocolGame) { if (m_CurrentOutfit is OutfitInstance outfitInstance) { OpenTibiaUnity.ProtocolGame.SendSetOutfit(outfitInstance, m_CurrentMount as OutfitInstance); } } m_CurrentOutfit = null; m_CurrentMount = null; m_Outfits = null; m_Mounts = null; m_CurrentOutfitIndex = -1; m_CurrentMountIndex = -1; CloseWindow(); }
private void ChangeMountIndex(int newIndex) { if (_currentMountIndex == newIndex) { return; } if (_mounts.Count == 0) { _currentMountIndex = -1; } else { _currentMountIndex = newIndex; var newProtocolMount = _mounts[_currentMountIndex]; _currentMount = OpenTibiaUnity.AppearanceStorage.CreateOutfitInstance(newProtocolMount._id, 0, 0, 0, 0, 0); } UpdateInformation(false, true); }