示例#1
0
    /// <summary>
    /// 增加评价
    /// </summary>
    /// <param name="type"></param>
    /// <param name="number"></param>
    public void AddPraise(PraiseTypeEnum type, int number)
    {
        switch (type)
        {
        case PraiseTypeEnum.Excited:
            praiseExcitedNumber += number;
            break;

        case PraiseTypeEnum.Happy:
            praiseHappyNumber += number;
            break;

        case PraiseTypeEnum.Okay:
            praiseOkayNumber += number;
            break;

        case PraiseTypeEnum.Ordinary:
            praiseOrdinaryNumber += number;
            break;

        case PraiseTypeEnum.Disappointed:
            praiseDisappointedNumber += number;
            break;

        case PraiseTypeEnum.Anger:
            praiseAngerNumber += number;
            break;
        }
    }
示例#2
0
    /// <summary>
    /// 根据心情不同给出不同的评价
    /// </summary>
    /// <returns></returns>
    public PraiseTypeEnum GetPraise()
    {
        PraiseTypeEnum praise = PraiseTypeEnum.Excited;

        if (mood > 80)
        {
            praise = PraiseTypeEnum.Excited;
        }
        else if (mood > 60 && mood <= 80)
        {
            praise = PraiseTypeEnum.Happy;
        }
        else if (mood > 40 && mood <= 60)
        {
            praise = PraiseTypeEnum.Okay;
        }
        else if (mood > 20 && mood <= 40)
        {
            praise = PraiseTypeEnum.Ordinary;
        }
        else if (mood > 0 && mood <= 20)
        {
            praise = PraiseTypeEnum.Disappointed;
        }
        else if (mood <= 0)
        {
            praise = PraiseTypeEnum.Anger;
        }
        return(praise);
    }
示例#3
0
    /// <summary>
    /// 获取评价描述
    /// </summary>
    /// <returns></returns>
    public string GetPraiseDetails()
    {
        PraiseTypeEnum praiseType = GetPraise();
        string         praiseStr  = "???";

        switch (praiseType)
        {
        case PraiseTypeEnum.Excited:
            praiseStr = TextHandler.Instance.manager.GetTextById(64);
            break;

        case PraiseTypeEnum.Happy:
            praiseStr = TextHandler.Instance.manager.GetTextById(65);
            break;

        case PraiseTypeEnum.Okay:
            praiseStr = TextHandler.Instance.manager.GetTextById(66);
            break;

        case PraiseTypeEnum.Ordinary:
            praiseStr = TextHandler.Instance.manager.GetTextById(67);
            break;

        case PraiseTypeEnum.Disappointed:
            praiseStr = TextHandler.Instance.manager.GetTextById(68);
            break;

        case PraiseTypeEnum.Anger:
            praiseStr = TextHandler.Instance.manager.GetTextById(69);
            break;
        }
        return(praiseStr);
    }
示例#4
0
    /// <summary>
    /// 增加好评
    /// </summary>
    /// <param name="praiseType"></param>
    /// <param name="number"></param>
    public void AddPraise(PraiseTypeEnum praiseType, int number)
    {
        switch (praiseType)
        {
        case PraiseTypeEnum.Excited:
            praiseForExcited += number;
            break;

        case PraiseTypeEnum.Happy:
            praiseForHappy += number;
            break;

        case PraiseTypeEnum.Okay:
            praiseForOkay += number;
            break;

        case PraiseTypeEnum.Ordinary:
            praiseForOrdinary += number;
            break;

        case PraiseTypeEnum.Disappointed:
            praiseForDisappointed += number;
            break;

        case PraiseTypeEnum.Anger:
            praiseForAnger += number;
            break;
        }
    }
示例#5
0
    /// <summary>
    /// 好评数量
    /// </summary>
    /// <param name="praiseType"></param>
    /// <param name="number"></param>
    public void AddItemForPraiseNumber(PraiseTypeEnum praiseType, long number)
    {
        string iconKey = "";

        switch (praiseType)
        {
        case PraiseTypeEnum.Excited:
            iconKey = "customer_mood_0";
            break;

        case PraiseTypeEnum.Happy:
            iconKey = "customer_mood_1";
            break;

        case PraiseTypeEnum.Okay:
            iconKey = "customer_mood_2";
            break;

        case PraiseTypeEnum.Ordinary:
            iconKey = "customer_mood_3";
            break;

        case PraiseTypeEnum.Disappointed:
            iconKey = "customer_mood_4";
            break;

        case PraiseTypeEnum.Anger:
            iconKey = "customer_mood_5";
            break;
        }
        Sprite spIcon = IconDataHandler.Instance.manager.GetIconSpriteByName(iconKey);

        CreateTextItem(spIcon, TextHandler.Instance.manager.GetTextById(336), number + "");
    }
示例#6
0
    public override void IntentForLeave()
    {
        //添加好感
        if (orderForCustomer != null)
        {
            PraiseTypeEnum praiseType = orderForCustomer.innEvaluation.GetPraise();
            if (praiseType == PraiseTypeEnum.Excited || praiseType == PraiseTypeEnum.Happy)
            {
                int AddFavorability = 0;
                if (praiseType == PraiseTypeEnum.Excited)
                {
                    AddFavorability = 1;
                }
                else if (praiseType == PraiseTypeEnum.Happy)
                {
                }
                characterFavorabilityData.AddFavorability(AddFavorability);
                //弹出喜爱图标
                if (AddFavorability > 0)
                {
                    SetExpression(CharacterExpressionCpt.CharacterExpressionEnum.Love, 10);
                }
            }
        }
        base.IntentForLeave();

        orderForCustomer = new OrderForCustomer(CustomerTypeEnum.Friend, this);
    }
示例#7
0
    /// <summary>
    /// 给客栈评价
    /// </summary>
    public void InnPraise(PraiseTypeEnum praiseType)
    {
        GameDataBean gameData = GameDataHandler.Instance.manager.GetGameData();

        //记录好评数量
        innRecord.AddPraise(praiseType, 1);
        //总记录
        gameData.GetAchievementData().AddPraise(praiseType, 1);
        //增加评价
        gameData.GetInnAttributesData().AddPraise((int)praiseType);
    }
示例#8
0
    public void SetMood(PraiseTypeEnum mood)
    {
        string spKey = "";

        switch (mood)
        {
        case PraiseTypeEnum.Excited:
            spKey = "customer_mood_0";
            break;

        case PraiseTypeEnum.Happy:
            spKey = "customer_mood_1";
            break;

        case PraiseTypeEnum.Okay:
            spKey = "customer_mood_2";
            break;

        case PraiseTypeEnum.Ordinary:
            spKey = "customer_mood_3";
            break;

        case PraiseTypeEnum.Disappointed:
            spKey = "customer_mood_4";
            break;

        case PraiseTypeEnum.Anger:
            spKey = "customer_mood_5";
            break;
        }
        //避免实时更新带来的多次调用
        if (spCurrent == null || !spCurrent.name.Contains(spKey))
        {
            Sprite spIcon = IconDataHandler.Instance.manager.GetIconSpriteByName(spKey);
            CharacterStatusIconBean statusIconData = new CharacterStatusIconBean();
            statusIconData.iconStatus = CharacterStatusIconEnum.Mood;
            statusIconData.spIcon     = spIcon;
            characterStatusIcon.ChangeStatusIcon(statusIconData);
            spCurrent = spIcon;
        }
    }
示例#9
0
 /// <summary>
 /// 表情处理
 /// </summary>
 public void HandleForMood()
 {
     if (targetNpcAIForCustomerFood != null)
     {
         OrderForCustomer order = targetNpcAIForCustomerFood.GetOrderForCustomer();
         if (order != null && order.table != null)
         {
             PraiseTypeEnum praiseType    = order.innEvaluation.GetPraise();
             string         praiseTypeStr = order.innEvaluation.GetPraiseDetails();
             SetMood(praiseTypeStr, targetNpcAIForCustomerFood.characterMoodCpt.GetCurrentMoodSprite());
         }
     }
     if (targetNpcAIForCustomerHotel != null)
     {
         OrderForHotel order = targetNpcAIForCustomerHotel.orderForHotel;
         if (order != null && order.GetOrderStatus() != OrderHotelStatusEnum.End)
         {
             PraiseTypeEnum praiseType    = order.innEvaluation.GetPraise();
             string         praiseTypeStr = order.innEvaluation.GetPraiseDetails();
             SetMood(praiseTypeStr, targetNpcAIForCustomerHotel.characterMoodCpt.GetCurrentMoodSprite());
         }
     }
 }
示例#10
0
    public long GetPraiseNumber(PraiseTypeEnum praiseType)
    {
        switch (praiseType)
        {
        case PraiseTypeEnum.Excited:
            return(praiseForExcited);

        case PraiseTypeEnum.Happy:
            return(praiseForHappy);

        case PraiseTypeEnum.Okay:
            return(praiseForOkay);

        case PraiseTypeEnum.Ordinary:
            return(praiseForOrdinary);

        case PraiseTypeEnum.Disappointed:
            return(praiseForDisappointed);

        case PraiseTypeEnum.Anger:
            return(praiseForAnger);
        }
        return(0);
    }