// Start() does basic setup and also registers custom power level // delegates and starts wandering. protected override void Start() { base.Start(); m_startPosition = transform.position; m_animator = GetComponent <Animator>(); factionMember = GetComponent <FactionMember>(); if (factionMember != null) { factionMember.GetPowerLevel = GetPowerLevel; factionMember.GetSelfPerceivedPowerLevel = GetSelfPerceivedPowerLevel; } Wander(); }
public override void OnExecute(IDialogueOwner dialogueOwner) { // var factionManager = QuestSystemLoveHateBridgeManager.factionManager; FactionMember factionMember = null; switch (ownerType) { case DialogueOwnerType.Player: { var p = PlayerManager.instance.currentPlayer; factionMember = p.GetComponent <FactionMember>(); break; } case DialogueOwnerType.DialogueOwner: { var qg = QuestManager.instance.currentQuestGiver; if (qg != null) { factionMember = qg.transform.GetComponent <FactionMember>(); } break; } default: throw new ArgumentOutOfRangeException(); } if (factionMember != null) { var deed = Deed.GetNew(deedInfo.tag, factionMember.factionID, deedInfo.targetFactionID, deedInfo.impact, deedInfo.aggression, factionMember.GetPowerLevel(), deedInfo.traits); // int numPersonalityTraits = factionManager.factionDatabase.personalityTraitDefinitions.Length; // float[] traits = Traits.Allocate(numPersonalityTraits, true); // Optional values that describe personality of deed. QuestSystemLoveHateBridgeManager.factionManager.CommitDeed ( factionMember, deed, requiresSight, dimension, radius ); Deed.Release(deed); } Finish(true); }
// Start() does basic setup. protected override void Start() { base.Start(); m_deedReporter = GetComponent <DeedReporter>(); if (m_deedReporter != null) { m_deedReporter.enabled = true; // Dummy line to quiet Unity 2018+ if USE_PHYSICS2D isn't set yet. } m_member = GetComponent <FactionMember>(); m_member.GetPowerLevel = GetPowerLevel; m_member.GetSelfPerceivedPowerLevel = GetSelfPerceivedPowerLevel; m_destination = GetRandomDestination(); m_text = GetComponentInChildren <UnityEngine.UI.Text>(); ChangeState(State.Wander, null); }
public void RemoveMember(FactionMember member) { _members.Remove(member); }
public void AddMember(FactionMember member) { _members.Add(member); }
public void OnGossip(FactionMember other) { lastOtherFactionMember = other; StartEvent(eventInteractions.gossip); }
public void OnGreet(FactionMember other) { lastOtherFactionMember = other; StartEvent(eventInteractions.greet); }
public void OnShareRumors(FactionMember other) { lastOtherFactionMember = other; StartEvent(eventInteractions.shareRumors); }
public void OnAura(FactionMember other) { lastFactionMember = other; StartEvent(gameObject); }