public override int GetHashCode() { var result = FragmentName.GetHashCode() ^ TypeCondition.GetHashCode(); if (Directives != null) { result = Directives.Aggregate(result, (x, y) => x ^ y.GetHashCode()); } return(SelectionSet.Aggregate(result, (x, y) => x ^ y.GetHashCode())); }
public override int GetHashCode() { var result = FragmentName.GetHashCode(); if (Directives != null) { result = Directives.Aggregate(result, (x, y) => x ^ y.GetHashCode()); } return(result); }
public void AddFragmentItem(FragmentName _name, GameObject ItemPrefab, Sprite _sprite) { if (ItemChild == null) { ItemChild = Instantiate(ItemPrefab, transform).transform; } ItemChild.GetComponent <Image>().sprite = _sprite; ItemChild.GetComponent <FragmentItem>().ItemFragment = FragmentFactory.GetFragment(_name); isEmpty = false; ItemChild.localPosition = Vector3.zero; }
public override bool Equals(object obj) { if (obj is FragmentSpread fragmentSpread) { return (FragmentName.Equals(fragmentSpread.FragmentName) && ( Directives == null && fragmentSpread.Directives == null || Directives != null && fragmentSpread.Directives != null && Directives.SequenceEqual(fragmentSpread.Directives) )); } return(base.Equals(obj)); }
public override bool Equals(object obj) { if (obj is FragmentDefinition fragmentDefinition) { return (FragmentName.Equals(fragmentDefinition.FragmentName) && TypeCondition.Equals(fragmentDefinition.TypeCondition) && ( Directives == null && fragmentDefinition.Directives == null || Directives != null && fragmentDefinition.Directives != null && Directives.SequenceEqual(fragmentDefinition.Directives) ) && SelectionSet.SequenceEqual(fragmentDefinition.SelectionSet)); } return(base.Equals(obj)); }
// 添加碎片 public void AddFragmentItem(FragmentName _name, Sprite _sprite) { bool hasEmpty = false; foreach (FragmentSlot mSlot in EquipSlot) { if (mSlot.isEmpty) { mSlot.AddFragmentItem(_name, ItemPrefab, _sprite); hasEmpty = true; FlushSkill(); break; } } if (!hasEmpty) { ExtraSlot.AddFragmentItem(_name, ItemPrefab, _sprite); } }
public static IFragment GetFragment(FragmentName _name) { switch (_name) { case FragmentName.CriterionFrag: return(new CriterionFrag()); case FragmentName.ShockFrag: return(new ShockFrag()); case FragmentName.TrialFrag: return(new TrialFrag()); case FragmentName.Arrogant: return(new ArrogantFrag()); case FragmentName.Disorder: return(new DisorderFrag()); case FragmentName.Riot: return(new RiotFrag()); case FragmentName.WindFrag: return(new WindFrag()); case FragmentName.FireFrag: return(new FireFrag()); } throw new System.Exception("no but try get it"); }
/// <summary> /// 添加碎片 /// </summary> /// <param name="type"></param> /// <param name="id"></param> public void AddFragment(FragmentName _name, Sprite _sprite = null) { // UI上显示 FragmenMgr.Instance.AddFragmentItem(_name, _sprite); //OnFragAdd.Invoke(_name, _sprite); }
public bool Equals(ShaderSetCacheKey other) { return(VertexName.Equals(other.VertexName) && FragmentName.Equals(other.FragmentName) && Specializations.Span.SequenceEqual(other.Specializations.Span)); }