public ServerPlayer(ServerPlayerManager playerManager, ServerLogic serverLogic, ServerRegionManager regionManager, ServerNpcManager npcManager, ServerGroundItemManager groundItemManager, string name, string password, NetPeer peer) : base(playerManager, name, (byte)peer.Id) { _serverLogic = serverLogic; playerSkills = new ServerPlayerSkills(this); database = new ServerPlayerDatabase(this, serverLogic.Database); ServerInventoryManager inventoryManager = new ServerInventoryManager(); inventory = new ServerPlayerInventory(this, inventoryManager); equipment = new ServerPlayerEquipment(this, inventoryManager); combat = new ServerPlayerCombat(_serverLogic, this, playerSkills, equipment); _regionManager = regionManager; entityRenderer = new ServerPlayerEntityRenderer(this, npcManager); this.groundItemManager = groundItemManager; CurrentDialogue = new PlayerDialogue() { nextStageId = -1 }; SubscribePacketListener(); this.password = password; peer.Tag = this; AssociatedPeer = peer; NetworkState = new PlayerState { Id = (byte)peer.Id }; }
void Start() { try { health = GetComponent <Health>(); } catch { Debug.Log("No health attached"); } finally { health.onZeroHealth.AddListener(Die); } try { movement = GetComponent <PlayerMovement>(); } catch { Debug.Log("No player movement attached"); } try { dialogue = GetComponent <PlayerDialogue>(); } catch { Debug.Log("No dialogue system attached"); } }
void Start() { ray = FindObjectOfType <Camera>().GetComponent <RayCast>(); gm = GameObject.Find("GameManager").GetComponent <GameManager>(); textManager = TextManager.instance; inventory = gm.GetComponent <Inventory>(); playerDialogue = GetComponent <PlayerDialogue>(); }
// Use this for initialization private void Start() { _playerDialogue = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerDialogue>(); _playerDialogue.OnUpdate += UpdateUI; nextButton.onClick.AddListener(Next); quitButton.onClick.AddListener(Quit); UpdateUI(); }
IEnumerator TypeSentence(string sentence, PlayerDialogue pd) { WaitForSeconds wait = new WaitForSeconds(1 / 60f); pd.playerDialogueText.text = ""; foreach (char letter in sentence.ToCharArray()) { pd.playerDialogueText.text += letter; yield return(wait); } }
// Start is called before the first frame update void Start() { ruth = GameObject.FindWithTag("Player"); currentConfidence = startingConfidence; //confidenceBar = GetComponent<Slider>(); confidenceBar.value = currentConfidence; anim = GetComponent <Animator>(); playerMovementScript = ruth.GetComponent <PlayerMovement>(); playerDialogue = ruth.GetComponent <PlayerDialogue>(); }
// For Player public void StartDialogue(PlayerDialogue pd) { clickSound.Play(); TextMeshPro dialogueText = pd.playerDialogueText; sentences.Clear(); foreach (string sentence in pd.dialogue.sentences) { sentences.Enqueue(sentence); } DisplayNextSentence(pd); }
private void OnTriggerEnter(Collider other) { if (!other.CompareTag(Tags.Player)) { return; } // Send bark message to player if (playerBarkAmount > 0 || playerBarkAmount == -1) { PlayerDialogue playerDialogue = other.GetComponentInChildren <PlayerDialogue>(); if (!playerDialogue.isDialogueEnabled) { return; } if (playerBarkMode == PlayerBarkMode.SequentialRecyle) { playerDialogue.Bark(remainingPlayerBarks[curPlayerBarkIndex]); curPlayerBarkIndex = (curPlayerBarkIndex + 1) % remainingPlayerBarks.Count; } else if (playerBarkMode == PlayerBarkMode.RandomRecyle) { playerDialogue.Bark(remainingPlayerBarks[Random.Range(0, remainingPlayerBarks.Count)]); } else if (playerBarkMode == PlayerBarkMode.Sequential && remainingPlayerBarks.Count > 0) { playerDialogue.Bark(remainingPlayerBarks[curPlayerBarkIndex]); // remove bark remainingPlayerBarks.RemoveAt(curPlayerBarkIndex); } else if (playerBarkMode == PlayerBarkMode.Random && remainingPlayerBarks.Count > 0) { curPlayerBarkIndex = Random.Range(0, remainingPlayerBarks.Count); playerDialogue.Bark(remainingPlayerBarks[curPlayerBarkIndex]); // remove bark remainingPlayerBarks.RemoveAt(curPlayerBarkIndex); } } if (remainingPlayerBarks.Count <= 0) { Destroy(gameObject); } }
public void DisplayNextSentence(PlayerDialogue pd) { Debug.Log("Clicked"); if (sentences.Count == 1) { //change button to say play IntroButtonText.text = "Play"; } else if (sentences.Count == 0) { //close dialogue window IntroDialogue.SetActive(false); return; } string sentence = sentences.Dequeue(); //dialogueText.text = sentence; StopAllCoroutines(); StartCoroutine(TypeSentence(sentence, pd)); }
public void SetInstance() { inst = this; }
private void LinkButtonToResponse(Button dialogueButton, PlayerDialogue playerDialogue, NPCDialogue NPCDialogue) { NPCQuestInteraction npcQuestInteraction = null; if (npcInteraction.GetType() == typeof(NPCQuestInteraction)) { npcQuestInteraction = (NPCQuestInteraction)npcInteraction; } switch (playerDialogue.dialogueType) { case PlayerDialogueType.NextDialogue: dialogueButton.onClick.AddListener(delegate { npcInteraction.PlayDialogue(NPCDialogue.nextDialogue); }); break; case PlayerDialogueType.GetInfo: dialogueButton.onClick.AddListener(delegate { npcInteraction.PlayDialogue(playerDialogue.nextDialogue); }); break; case PlayerDialogueType.Accept: if (!npcQuestInteraction) { Debug.Log("NPCQuestInteraction not found, there shouldn't be an Accept option"); } else { dialogueButton.onClick.AddListener(delegate { npcQuestInteraction.PlayDialogue(playerDialogue.nextDialogue); npcQuestInteraction.QuestAccepted(); }); } break; case PlayerDialogueType.Refuse: if (!npcQuestInteraction) { Debug.Log("NPCQuestInteraction not found, there shouldn't be a Refuse option"); } else { dialogueButton.onClick.AddListener(delegate { npcQuestInteraction.PlayDialogue(playerDialogue.nextDialogue); npcQuestInteraction.QuestRefused(); }); } break; case PlayerDialogueType.CompleteQuest: if (!npcQuestInteraction) { Debug.Log("NPCQuestInteraction not found, there shouldn't be a CompleteQuest option"); } else { dialogueButton.onClick.AddListener(delegate { npcQuestInteraction.PlayDialogue(playerDialogue.nextDialogue); npcQuestInteraction.QuestCompleted(); }); } break; case PlayerDialogueType.CloseDialogue: dialogueButton.onClick.AddListener(delegate { npcInteraction.CloseDialogue(); }); break; default: dialogueButton.onClick.AddListener(delegate { npcInteraction.CloseDialogue(); }); break; } }
private void Start() { playerDialogue = player.GetComponent <PlayerDialogue>(); }