public override void Apply(Tapestry_Actor target) { bool execute = false; if (exposeTimeControls) { time -= Time.deltaTime * Tapestry_WorldClock.GlobalTimeFactor * target.personalTimeFactor; if (time <= 0) { execute = true; } } else { execute = true; } if (execute) { float amount = Random.Range(amountMin, amountMax); target.Heal(amount); if (exposeTimeControls) { time = pulse; } } }
public void Apply(Tapestry_Actor target) { //Temporary. Forgive me father, for I have sinned if (ReferenceEquals(payload, null)) { payload = (Tapestry_EffectBuilder_Payload_Damage)ScriptableObject.CreateInstance("Tapestry_EffectBuilder_Payload_Damage"); } payload.Apply(target); if (duration == Tapestry_EffectBuilder_Duration.Instant) { readyForRemoval = true; } else if (duration == Tapestry_EffectBuilder_Duration.Timed) { time += Time.deltaTime * Tapestry_WorldClock.GlobalTimeFactor * target.personalTimeFactor; if (time >= decayTime) { readyForRemoval = true; } } if (readyForRemoval) { payload.Cleanup(target); } }
public override void Apply(Tapestry_Actor target) { if (target.GetType() == typeof(Tapestry_Player)) { Tapestry_Player p = target as Tapestry_Player; p.jumpPower.AddBonus(amount, id, type, overwrite, overwriteByMag); } }
private void OnTriggerEnter(Collider other) { Tapestry_Actor actor = other.gameObject.GetComponentInParent <Tapestry_Actor>(); if (!ReferenceEquals(actor, null)) { actor.AddEffect(effectStanding); } }
public override void Cleanup(Tapestry_Actor target) { if (removeWhenEffectEnds) { if (target.GetType() == typeof(Tapestry_Player)) { Tapestry_Player p = target as Tapestry_Player; p.jumpPower.RemoveBonus(id, type); } } }
private void OnTriggerExit(Collider other) { if (removeEffectOnTriggerLeave) { if (effect.duration != Tapestry_EffectBuilder_Duration.Instant) { Tapestry_Actor a = other.GetComponentInParent <Tapestry_Actor>(); if (a != null) { a.RemoveEffect(effect); } } } }
public override void Apply(Tapestry_Actor target) { Rigidbody rb = target.GetComponent <Rigidbody>(); if (rb != null) { if (target.GetType() == typeof(Tapestry_Player)) { Tapestry_Player p = target as Tapestry_Player; p.RestrictControls = true; } rb.velocity = dir * strength; } }
public override void Apply(Tapestry_Actor target) { if (localPosOffset) { target.transform.position = target.transform.position + newPos; } else { target.transform.position = newPos; } if (changeRot) { target.transform.rotation = Quaternion.Euler(0, newRot, 0); } }
public override void OnInspectorGUI() { Tapestry_Actor t = target as Tapestry_Actor; t.isInteractable = false; GUILayout.Label("Actor is not a usable component!\nPlease use Entity, Prop, or a component that inherits from one of them."); GUILayout.Label("Replace With..."); GUILayout.BeginHorizontal(); if (GUILayout.Button("Entity")) { t.gameObject.AddComponent <Tapestry_Entity>(); DestroyImmediate(t); } if (GUILayout.Button("Prop")) { t.gameObject.AddComponent <Tapestry_Prop>(); DestroyImmediate(t); } GUILayout.EndHorizontal(); }
private void OnTriggerEnter(Collider other) { if (ReferenceEquals(keywords, null)) { keywords = (Tapestry_KeywordRegistry)ScriptableObject.CreateInstance("Tapestry_KeywordRegistry"); } Tapestry_Actor a = other.GetComponentInParent <Tapestry_Actor>(); if (keywords.Count == 0) { if (a != null) { a.AddEffect(effect.Clone()); } } else if (applyByKeyword) { if (a != null && !ReferenceEquals(a.keywords, null)) { if (a.keywords.ContainsOne(keywords)) { a.AddEffect(effect.Clone()); } } } else { if (a != null && !ReferenceEquals(a.keywords, null)) { if (!a.keywords.ContainsAll(keywords)) { a.AddEffect(effect.Clone()); } } } }
public override void Apply(Tapestry_Actor target) { for (int i = target.effects.Count - 1; i >= 0; i--) { Tapestry_Effect e = target.effects[i]; if (e.payload.GetType() != typeof(Tapestry_EffectBuilder_Payload_Purge)) { if (needsOneKeyword) { if (e.keywords.ContainsOne(keywords)) { e.readyForRemoval = true; } } else { if (e.keywords.ContainsAll(keywords)) { e.readyForRemoval = true; } } } } }
public virtual void Cleanup(Tapestry_Actor target) { }
public virtual void Apply(Tapestry_Actor target) { throw new System.NotImplementedException(); }
public override void Apply(Tapestry_Actor target) { base.Apply(target); }
public virtual void Use(Tapestry_Actor target) { }