public override void Start() { base.Start(); List <int> no_message = new List <int> { 0, 0 }; VoiceStruct noStruct = new VoiceStruct(0, no_message); CentralBus.HeardMessage.Invoke(noStruct); InnerBus.Global.VoiceChannel.AddListener(MessageHeard); this.transform.parent.GetMessageBus().VoiceArrived.AddListener(MessageHeard); }
private List <int> MockProcess(InputInfo inputInfo) { Debug.LogFormat("MessageHeard like a threat {0}", inputInfo.HeardMessage.SequenceEqual(new List <int> { 0, 1 }) || inputInfo.HeardMessage.SequenceEqual(new List <int> { 1, 1 })); if (inputInfo.CurrentHealth < transform.parent.GetComponent <Health>().maxHealth || inputInfo.HeardMessage.SequenceEqual(new List <int> { 0, 1 }) || inputInfo.HeardMessage.SequenceEqual(new List <int> { 1, 1 })) { List <int> outputArray = new List <int>(new int[] { 1, 0, 1 }); CentralBus.WeaponFire.Invoke(); //Debug.LogFormat("weapon fired at {0}",Time.time); //clear thread message inputInfo.HeardMessage = new List <int>(new int[] { 0, 0 });; List <int> talk_message = new List <int>(new int[] { 0, 1 }); //carry ID with it VoiceStruct talkStruct = new VoiceStruct(MyId, talk_message); CentralBus.TalkMessage.Invoke(talkStruct); Debug.LogFormat("talking threat {0}", talkStruct.ToString()); return(outputArray); } else { List <int> outputArray = new List <int>(new int[] { 0, 0, 0 }); return(outputArray); } }
//pass message to brain through central bus private void MessageHeard(VoiceStruct message) { Debug.LogFormat("message from ear {0}", message.ToString()); CentralBus.HeardMessage.Invoke(message); }
private void HeardMessage(VoiceStruct msg) { inputInfo.HeardMessage = msg.voiceMessage; }
void Talk(VoiceStruct messageFromBrain) { InnerBus.Global.VoiceChannel.Invoke(messageFromBrain); Debug.LogFormat("sent threat voiceChannel {0}", messageFromBrain.ToString()); }