public override void Build() { Main.LogDebug("[GenericTriggerBuilder] Building 'Generic' trigger"); GenericTrigger genericTrigger = new GenericTrigger(this.name, this.description, this.triggerMessageType, this.conditional, results); genericTrigger.Run(null); }
// Use this for initialization void Start() { TriggerRange = transform.parent.GetComponent <GenericTrigger>(); startPosition = this.transform.position; player = GameObject.FindGameObjectWithTag("Player"); state = TrapState.Idle; }
private void MarkCommandsAsProcessed(GenericTrigger processedTrigger, int startButton, int endButton) { for (int i = startButton; i <= endButton; i++) { this.commandQueue[i].ProcessedTriggers.Add(processedTrigger); } }
// Use this for initialization void Start() { rb = GetComponent <Rigidbody>(); //Collect scripts ChaseRange = transform.Find("ChaseRange").GetComponent <GenericTrigger>(); AttackRange = transform.Find("AttackRange").GetComponent <GenericTrigger>(); PersonalSpaceRange = transform.Find("PersonalSpaceRange").GetComponent <GenericTrigger>(); BufferSpaceRange = transform.Find("BufferSpaceRange").GetComponent <GenericTrigger>(); player = GameObject.FindGameObjectWithTag("Player"); state = EnemyState.Idle; }
public override void Build() { Main.LogDebug("[GenericTriggerBuilder] Building 'Generic' trigger"); if (this.Results == null) { Main.Logger.LogError("[GenericTriggerBuilder] Generic Triggers require 'Results'"); } else { GenericTrigger genericTrigger = new GenericTrigger(this.name, this.description, this.triggerMessageType, this.conditional, Results); genericTrigger.Run(null); } }
private TriggerToBeInvoked SearchForTriggerInCommandQueue(GenericTrigger trigger) { TriggerToBeInvoked triggerToBeInvoked = null; for (int listIndex = 0; listIndex < commandQueue.Count - trigger.TriggerCommands.Count + 1; listIndex++) { int count = 0; while (count < trigger.TriggerCommands.Count && trigger.SenderType == DetermineSenderType(commandQueue[listIndex + count].Sender) && commandQueue[listIndex + count].Sender.ToString().Contains(trigger.Sender) && trigger.TriggerCommands[count].Equals(commandQueue[listIndex + count].Command)) { count++; if (count == trigger.TriggerCommands.Count) { if (!commandQueue[listIndex].ProcessedTriggers.Contains(trigger)) { List <object> paramList = new List <object>(); for (int i = listIndex; i < listIndex + trigger.TriggerCommands.Count; i++) { if (commandQueue[i].Parameters != null) { paramList.AddRange(commandQueue[i].Parameters); } } triggerToBeInvoked = new TriggerToBeInvoked(); triggerToBeInvoked.Trigger = trigger; if (paramList.Count > 0) { triggerToBeInvoked.TriggerParameters = paramList.ToArray(); } MarkCommandsAsProcessed(trigger, listIndex, listIndex + trigger.TriggerCommands.Count - 1); } } } } return(triggerToBeInvoked); }
private void OnAddNewSelected(GenericTrigger.GenericTriggerType type, GenericTrigger.UnityEventCollider newEvent) { GenericTrigger gt = (GenericTrigger)target; gt.delegates.Add(new GenericTrigger.Entry(){ eventID = type, callbackCollider = newEvent }); EditorUtility.SetDirty(gt); }