45 public SpriteRenderer
sr;
67 public override void OnDraw(ref Vector3 pos)
69 if (
_mat != base.owner.material)
71 _mat = base.owner.material;
75 bool flag = base.owner.dir == 2 || base.owner.dir == 3;
76 bool flag2 = base.owner.parent is
Chara && (base.owner.parent as
Chara).held == base.owner;
77 bool flag3 = base.owner.
dir % 2 == 1;
84 if (base.owner.renderer.hasActor && base.owner.isChara)
86 v.x = base.owner.renderer.position.x + (flag5 ? data.offsetBack.x : data.
offset.x);
87 v.y = base.owner.renderer.position.y + (flag5 ? data.offsetBack.y : data.
offset.y);
88 v.z = base.owner.renderer.position.z + (flag5 ? data.offsetBack.z : data.
offset.z) +
FixPos.z + (flag2 ? (-0.5f) : 0f) + ((!flag2) ? 0f : (flag3 ? heldPosFlip.z :
heldPos.z));
90 else if (
dirPos.Length == 0)
92 v.x = base.owner.renderer.position.x + (flag5 ? data.offsetBack.x : data.
offset.x) * (
float)((!flag4) ? 1 : (-1)) +
FixPos.x +
flipFixX * (
float)((!flag4) ? 1 : (-1)) + ((!flag2) ? 0f : (flag3 ? heldPosFlip.x :
heldPos.x));
93 v.y = base.owner.renderer.position.y + (flag5 ? data.offsetBack.y : data.
offset.y) +
FixPos.y + ((!flag2) ? 0f : (flag3 ? heldPosFlip.y :
heldPos.y));
94 v.z = base.owner.renderer.position.z + (flag5 ? data.offsetBack.z : data.
offset.z) +
FixPos.z + (flag2 ? (-0.5f) : 0f) + ((!flag2) ? 0f : (flag3 ? heldPosFlip.z :
heldPos.z));
98 v.x = base.owner.renderer.position.x + (flag5 ? data.offsetBack.x : data.
offset.x) +
dirPos[base.owner.dir %
dirPos.Length].x + ((!flag2) ? 0f : (flag3 ? heldPosFlip.x :
heldPos.x));
99 v.y = base.owner.renderer.position.y + (flag5 ? data.offsetBack.y : data.
offset.y) +
dirPos[base.owner.dir %
dirPos.Length].y + ((!flag2) ? 0f : (flag3 ? heldPosFlip.y :
heldPos.y));
100 v.z = base.owner.renderer.position.z + (flag5 ? data.offsetBack.z : data.
offset.z) +
dirPos[base.owner.dir %
dirPos.Length].z + (flag2 ? (-0.5f) : 0f) + ((!flag2) ? 0f : (flag3 ? heldPosFlip.z :
heldPos.z));
102 base.transform.position =
v;
112 bool flag6 = (!
onlyInstalled || base.owner.IsInstalled || base.owner.isRoofItem) && base.owner.trait.UseExtra;
115 case Type.QuestBoard:
129 if (traitEffect.
timer < Time.realtimeSinceStartup)
131 traitEffect.timer = Time.realtimeSinceStartup - Time.realtimeSinceStartup % traitEffect.Interval + traitEffect.Interval + traitEffect.
data.
delay;
140 foreach (Transform transform
in array)
144 if (transform.localPosition.z > 0f)
146 transform.localPosition = transform.localPosition.SetZ(0f - transform.localPosition.z);
149 else if (transform.localPosition.z < 0f)
151 transform.localPosition = transform.localPosition.SetZ(0f - transform.localPosition.z);
155 if (base.owner.isHidden && base.owner.isChara && !
EMono.
pc.
CanSee(base.owner.Chara))
159 if (base.gameObject.activeSelf != flag6)
161 base.gameObject.SetActive(flag6);
175 Color color = base.owner.trait.ColorExtra ??
Color.white;
176 color.a =
sr.color.a;
181 ParticleSystem[] componentsInChildren = GetComponentsInChildren<ParticleSystem>();
182 for (
int i = 0; i < componentsInChildren.Length; i++)
184 ParticleSystem.MainModule main = componentsInChildren[i].main;
185 main.startColor = (base.owner.isDyed ? base.owner.DyeMat : base.owner.material).GetColor().SetAlpha(main.startColor.color.a);
virtual bool IsVisibleOnQuestBoard()
void Proc(Vector3 v=default(Vector3))