Ejemplo n.º 1
0
    public void StartDialog(Townsfolk tar)
    {
        if (tar.chatDialog.Count == 0)
        {
            return;
        }

        if (RecipeCrafter.IsUsingInput)
        {
            return;
        }

        targetDialog                = tar;
        dialogWindow.alpha          = 1;
        dialogWindow.blocksRaycasts = true;
        dialogWindow.interactable   = true;
        Player_Accessor_Script.DetailsScript.IsStunned        = true;
        Player_Accessor_Script.ReputationScript.IsInteracting = true;
        dialogWindow.transform.Find("Background/Panel/DialogText").GetComponent <Text>().text = targetDialog.chatDialog[dialogCounter];
        foreach (Townsfolk.ChatActionPair pair in targetDialog.chatActions)
        {
            if (pair.chatIndex == dialogCounter)
            {
                pair.refAction.Invoke();
            }
        }
    }
Ejemplo n.º 2
0
 public void EndDialog()
 {
     if (targetDialog != null && targetDialog.villagerType == VillagerType.STATION)
     {
         switch ((targetDialog as CraftingStation).stationType)
         {
         case (CraftingStationType.FORGE):
             professionInterfaceRef.DisplayInterface("Alchemy");
             break;
         }
     }
     targetDialog                = null;
     dialogCounter               = 0;
     dialogWindow.alpha          = 0;
     dialogWindow.blocksRaycasts = false;
     dialogWindow.interactable   = false;
     Player_Accessor_Script.DetailsScript.IsStunned        = false;
     Player_Accessor_Script.ReputationScript.IsInteracting = false;
 }
Ejemplo n.º 3
0
    private void startSeekTownsf(Townsfolk tf)
    {
        this.changeState(DRUNK_BEHAVIOR_SEEKTOWNSF);
        this.setPathfindingEnabled(true);
        this.spriteAnimation.play(ANIM_WALK, true);

        this.townsfToSeek = tf;
        this.setDestination(tf.transform.position);
    }