public override void AssignActorReferences(Actor newActor) { base.AssignActorReferences(newActor); _input = GetBehaviour <Actor_PlayerInput>(); _conversation = GetBehaviour <Actor_Conversation>(); }
public void AddActor(Actor_Conversation actor) { if (actor != null && !_actors.Contains(actor)) { _actors.Add(actor); } }
public void StartConversation(Actor newControlPlayer) { foreach (Actor player in Actor_Player.players) { Actor_Conversation actorConversation = player.GetBehaviour <Actor_Conversation>(); if (actorConversation != null) { if (actorConversation.conversing) { actorConversation.currentConversation.StopConversation(); } } } _actors = new List <Actor_Conversation>(); controlPlayer = newControlPlayer; Actor_Conversation controlActor = newControlPlayer.GetBehaviour <Actor_Conversation>(); if (controlActor != null && !_actors.Contains(controlActor)) { _actors.Add(controlActor); } _currentConversationRoutine = ConversationRoutine(); StartCoroutine(_currentConversationRoutine); }
public override void AssignActorBehaviours() { base.AssignActorBehaviours(); _actorConversation = _currentActor.GetBehaviour <Actor_Conversation>(); if (_actorConversation != null) { _actorConversation.startConversationEvent.AddListener(ConversationStarted); } }
public override void Initialize() { base.Initialize(); _input = parentConversation.controlPlayer.GetBehaviour <Actor_PlayerInput>(); Actor_Conversation speakingActor = Actor_Conversation.GetActorByCharacterData(_characterData); Actor_Conversation speakingToActor = Actor_Conversation.GetActorByCharacterData(_characterSpeakingTo); parentConversation.AddActor(speakingActor); parentConversation.AddActor(speakingToActor); //speakingActor.FaceCharacter(speakingToActor); //speakingToActor.FaceCharacter(speakingActor); }
public override void Initialize() { base.Initialize(); _input = parentConversation.controlPlayer.GetBehaviour <Actor_PlayerInput>(); _speakingActor = null; _speakingToActor = null; if (_characterData != null) { _speakingActor = Actor_Conversation.GetActorByCharacterData(_characterData); parentConversation.AddActor(_speakingActor); } if (_characterSpeakingTo != null) { _speakingToActor = Actor_Conversation.GetActorByCharacterData(_characterSpeakingTo); parentConversation.AddActor(_speakingToActor); } }