/// <summary>
        /// Display a String for the Enums
        /// </summary>
        /// <param name="value"></param>
        /// <returns></returns>
        public static string ToMessage(this CharacterTypeEnum value)
        {
            // Default String
            var Message = "Player";

            switch (value)
            {
            case CharacterTypeEnum.Bravery:
                Message = "Bravery";
                break;

            case CharacterTypeEnum.Creativity:
                Message = "Creativity";
                break;

            case CharacterTypeEnum.Cunning:
                Message = "Cunning";
                break;

            case CharacterTypeEnum.Unknown:
            default:
                break;
            }

            return(Message);
        }
示例#2
0
    public void CreateShip(CharacterTypeEnum characterType, long shipId, Action callBack)
    {
        CptUtil.RemoveChild(transform);

        GameLevelBean gameLevelData = handler_Game.GetGameLevelData();
        GameBean      gameData      = handler_Game.GetGameData();

        switch (characterType)
        {
        case CharacterTypeEnum.Player:
            manager.GetShipDataById((shipData) =>
            {
                shipData.ship_damage     = gameData.playerForDamage;
                shipData.characterType   = CharacterTypeEnum.Player;
                shipData.intervalForFire = handler_GameData.GetFireCD();
                StartCoroutine(CoroutineForCreateShip(shipData, callBack));
            }, shipId);
            break;

        case CharacterTypeEnum.Enemy:
            manager.GetShipDataById((shipData) =>
            {
                shipData.intervalForFire    = gameLevelData.enemy_fire_interval;
                shipData.characterType      = CharacterTypeEnum.Enemy;
                shipData.limitForFireNumber = gameLevelData.enemy_fire_limit_number;
                StartCoroutine(CoroutineForCreateShip(shipData, callBack));
            }, shipId);
            break;
        }
    }
示例#3
0
    /// <summary>
    /// 舰队开火
    /// </summary>
    /// <param name="characterType"></param>
    public void ShipFire(CharacterTypeEnum characterType)
    {
        ShipCpt shipCpt      = manager.GetShip(characterType);
        Vector3 firePosition = handler_Scene.GetFirePosition(characterType);

        shipCpt.OpenFire(firePosition);
    }
    public void SetCharacterSpeedUp(CharacterTypeEnum characterType, float addSpeed, float time)
    {
        List <CharacterCpt> listCharacter = manager.GetCharacterByType(characterType);

        for (int i = 0; i < listCharacter.Count; i++)
        {
            CharacterCpt itemCharacter = listCharacter[i];
            itemCharacter.SetCharacterSpeedUp(addSpeed, time);
        }
    }
示例#5
0
        private GraphNode createNode(CharacterTypeEnum character, List <string> conversations, MDictionary <string, List <string> > links)
        {
            GraphNode node = new GraphNode();

            node.Links         = links;
            node.Character     = character.ToString();
            node.Conversations = conversations;

            return(node);
        }
    /// <summary>
    ///  设置角色生命值
    /// </summary>
    /// <param name="characterType"></param>
    /// <param name="maxLife"></param>
    public void SetCharacterLife(CharacterTypeEnum characterType, int maxLife)
    {
        List <CharacterCpt> listCharacter = manager.GetCharacterByType(characterType);

        for (int i = 0; i < listCharacter.Count; i++)
        {
            CharacterCpt itemCharacter = listCharacter[i];
            itemCharacter.SetLife(maxLife);
        }
    }
    public void AddCharacterSpeed(CharacterTypeEnum characterType, float addSpeed)
    {
        List <CharacterCpt> listCharacter = manager.GetCharacterByType(characterType);

        for (int i = 0; i < listCharacter.Count; i++)
        {
            CharacterCpt itemCharacter = listCharacter[i];
            itemCharacter.AddCharacterSpeed(addSpeed);
        }
    }
 /// <summary>
 /// 刷新角色
 /// </summary>
 public void RefreshCharacter(CharacterTypeEnum characterType)
 {
     if (characterType == CharacterTypeEnum.Player)
     {
         manager.RefreshPlayerCharacter();
     }
     else if (characterType == CharacterTypeEnum.Enemy)
     {
         manager.RefreshEnemyCharacter();
     }
 }
示例#9
0
 public void SetGoldNumber(CharacterTypeEnum characterType)
 {
     if (characterType == CharacterTypeEnum.Player)
     {
         ui_TvPlayerGoldNumber.text         = playerNumber + "";
         ui_TvPlayerGoldNumber.outlineColor = colorForPlayerOutline;
     }
     else if (characterType == CharacterTypeEnum.Enemy)
     {
         ui_TvEnemyGoldNumber.text         = enemyNumber + "";
         ui_TvEnemyGoldNumber.outlineColor = colorForEnemyOutline;
     }
 }
    public List <CharacterCpt> GetCharacterByType(CharacterTypeEnum characterType)
    {
        List <CharacterCpt> listCharacter = new List <CharacterCpt>();

        if (characterType == CharacterTypeEnum.Player)
        {
            listCharacter = listPlayer;
        }
        else if (characterType == CharacterTypeEnum.Enemy)
        {
            listCharacter = listEnemy;
        }
        return(listCharacter);
    }
示例#11
0
 public Character(int id, string name, string desc, int gold, int level, double maxHp, double hp, double maxMp, double mp, double hpRegen, double mpRegen, CharacterTypeEnum characterType, Inventar inventar) : base(id, name, desc)
 {
     Gold          = gold;
     Level         = level;
     MaxHp         = maxHp;
     Hp            = hp;
     MaxMp         = maxMp;
     Mp            = mp;
     HpRegen       = hpRegen;
     MpRegen       = mpRegen;
     CharacterType = characterType;
     Inventar      = inventar;
     inTheMind     = true;
 }
        void CharacterTypeChanged(CharacterTypeEnum previousValue, CharacterTypeEnum newValue)
        {
            var characterClass = GameDataSource.Instance.CharacterDataByType[newValue];

            if (characterClass)
            {
                m_BaseHP = characterClass.BaseHP;

                if (m_NetworkHealthState != null && m_NetworkHealthState.HitPoints.Value > 0)
                {
                    DisplayUIHealth();
                }
            }
        }
示例#13
0
 /// <summary>
 /// 获取开始位置
 /// </summary>
 /// <param name="characterType"></param>
 /// <returns></returns>
 public Vector3 GetStartPosition(CharacterTypeEnum characterType)
 {
     if (characterType == CharacterTypeEnum.Player)
     {
         return(transform_PlayerStartPosition.position);
     }
     else if (characterType == CharacterTypeEnum.Enemy)
     {
         return(transform_EnemyStartPosition.position);
     }
     else
     {
         return(Vector3.zero);
     }
 }
示例#14
0
    public void SetCarry(CharacterTypeEnum characterType, Transform tfHand)
    {
        SetPhysic(false);
        goldStatus         = GoldStatusEnum.Carry;
        this.characterType = characterType;
        transform.SetParent(tfHand);
        transform.DOLocalMove(Vector3.zero, 0.5f);
        transform.DOLocalRotate(Vector3.zero, 0.5f);
        //transform.localPosition = Vector3.zero;

        //通知所有搬运者 已经有人搬运
        NotifyAllObserver((int)NotifyTypeEnum.HasCarry);
        //然后删除所有想要的搬运者
        RemoveAllObserver();
    }
示例#15
0
    public ShipCpt GetShip(CharacterTypeEnum characterType)
    {
        switch (characterType)
        {
        case CharacterTypeEnum.Player:
            return(shipForPlayer);

        case CharacterTypeEnum.Enemy:
            return(shipForEnemy);

        default:
            break;
        }
        return(null);
    }
示例#16
0
    public void SetBoat(CharacterTypeEnum characterType)
    {
        Renderer renderer = transform_Boat.GetComponent <Renderer>();

        switch (characterType)
        {
        case CharacterTypeEnum.Enemy:
            renderer.material = matBoatRed;
            break;

        case CharacterTypeEnum.Player:
            renderer.material = matBoatBlue;
            break;
        }
    }
    public static CharacterType GetCharTypeOf(CharacterTypeEnum charTypeEn)
    {
        switch (charTypeEn)
        {
        case CharacterTypeEnum.Warrior:
            return(warrior);

        case CharacterTypeEnum.Archer:
            return(archer);

        case CharacterTypeEnum.Mage:
            return(mage);
        }

        return(null);
    }
示例#18
0
        public void ConfigureForClass(CharacterTypeEnum characterType)
        {
            m_HideWhenNoClassSelected.SetActive(true);
            if (!isLockedIn)
            {
                m_ReadyButton.interactable = true;
            }

            CharacterClass characterClass = GameDataSource.Instance.CharacterDataByType[characterType];

            m_ClassLabel.text    = characterClass.DisplayedName;
            m_ClassBanner.sprite = characterClass.ClassBannerLit;

            ConfigureSkillIcon(m_Skill1, characterClass.Skill1);
            ConfigureSkillIcon(m_Skill2, characterClass.Skill2);
            ConfigureSkillIcon(m_Skill3, characterClass.Skill3);
        }
示例#19
0
    public long AddGoldNumber(CharacterTypeEnum characterType, long goldPrice, int goldNumber)
    {
        long addGold = 0;

        switch (characterType)
        {
        case CharacterTypeEnum.Player:
            GetGameData().AddPlayerGoldNumber(goldNumber);
            addGold = goldNumber * (goldPrice + GetGameData().goldPrice);
            AddUserGold(addGold);
            break;

        case CharacterTypeEnum.Enemy:
            GetGameData().AddEnemyGoldNumber(goldNumber);
            break;
        }
        return(addGold);
    }
示例#20
0
 public Character(int id, string name, string desc, int gold, int level, double experience, double experienceGained, double maxHp, double hp, double maxMp, double mp, double armor, double damage, double hpRegen, double mpRegen, CharacterTypeEnum characterType, Inventar inventar) : base(id, name, desc)
 {
     Gold             = gold;
     Level            = level;
     Experience       = experience;
     ExperienceGained = experienceGained;
     MaxHp            = maxHp;
     Hp            = hp;
     MaxMp         = maxMp;
     Mp            = mp;
     Armor         = armor;
     Damage        = damage;
     HpRegen       = hpRegen;
     MpRegen       = mpRegen;
     CharacterType = characterType;
     Inventar      = inventar;
     inTheMind     = true;
 }
示例#21
0
 public PersonData(CharacterTypeEnum characterTypeEnum, int id, int level, int maxLife, int attack, int defense,
                   int moveSpeed,
                   int attackSpeed, int maxEnergy, int currEnergy, float attackDistance)
 {
     this.characterTypeEnum = characterTypeEnum;
     Id             = id;
     Level          = level;
     MaxLife        = maxLife;
     CurrLife       = maxLife;
     Attack         = attack;
     Defense        = defense;
     MoveSpeed      = moveSpeed;
     AttackSpeed    = attackSpeed;
     MaxEnergy      = maxEnergy;
     CurrEnergy     = currEnergy;
     AttackDistance = attackDistance;
     Alive          = true;
 }
示例#22
0
        private GraphNode createNode(CharacterTypeEnum character, string sentence, AnnotationEnum annotation, string linkedNodeID)
        {
            GraphNode node = new GraphNode();

            List <string> conversations = new List <string>();

            conversations.Add(sentence);

            List <string> linkedIds = new List <string>();

            linkedIds.Add(linkedNodeID);
            MDictionary <string, List <string> > nodeLinks = new MDictionary <string, List <string> >();

            nodeLinks.Add(annotation.ToString(), linkedIds);

            node = createNode(character, conversations, nodeLinks);

            return(node);
        }
示例#23
0
        /// <summary>
        /// helper method to get the attack message for Monster to Character
        /// </summary>
        /// <param name="attacker"></param>
        /// <param name="target"></param>
        /// <returns></returns>
        public string TurnMessageResultForAttackMonster(MonsterTypeEnum attacker, CharacterTypeEnum target)
        {
            string msg = "";

            switch (EngineSettings.BattleMessagesModel.HitStatus)
            {
            case HitStatusEnum.CriticalHit:
                msg = attacker.ToString() + MonsterTypeEnumHelper.GetAttackMessage(attacker, target) + target.ToString() + ". ";
                break;

            case HitStatusEnum.Hit:
                msg = attacker.ToString() + MonsterTypeEnumHelper.GetAttackMessage(attacker, target) + target.ToString() + ". ";
                break;

            default:
                break;
            }

            return(msg);
        }
        /// <summary>
        /// Helper that takes in a CharacterTypeEnum to return the default base version of that type
        /// </summary>
        /// <param name="type"></param>
        public static CharacterModel DefaultCharacter(CharacterTypeEnum type)
        {
            switch (type)
            {
            case CharacterTypeEnum.Bassist:
                return(DefaultBassist());

            case CharacterTypeEnum.Keyboardist:
                return(DefaultKeyboardist());

            case CharacterTypeEnum.Drummer:
                return(DefaultDrummer());

            case CharacterTypeEnum.Guitarist:
                return(DefaultGuitarist());

            case CharacterTypeEnum.LeadVocalist:
                return(DefaultLeadVocalist());

            default:
                return(DefaultTambourine());
            }
        }
        /// <summary>
        /// Helper used get msg
        /// </summary>
        public static string getAttackMessage(CharacterTypeEnum attacker, MonsterTypeEnum target)
        {
            string msg = "";

            switch (attacker)
            {
            case CharacterTypeEnum.Student:
                switch (target)
                {
                case MonsterTypeEnum.Faculty:
                    msg = " pass an exam from ";
                    break;

                case MonsterTypeEnum.Administrator:
                    msg = " finished the paper work from ";
                    break;
                }
                break;

            case CharacterTypeEnum.Parent:
                switch (target)
                {
                case MonsterTypeEnum.Faculty:
                    msg = " puts pressure to make exam easier on ";
                    break;

                case MonsterTypeEnum.Administrator:
                    msg = " complain about time needed to process paperwork from ";
                    break;
                }
                break;

            default:
                break;
            }
            return(msg);
        }
示例#26
0
        /// <summary>
        /// Helper used get attack message
        /// </summary>
        public static string GetAttackMessage(MonsterTypeEnum attacker, CharacterTypeEnum target)
        {
            string msg = "";

            switch (attacker)
            {
            case  MonsterTypeEnum.Faculty:
                switch (target)
                {
                case CharacterTypeEnum.Student:
                    msg = " gives an exam to ";
                    break;

                case CharacterTypeEnum.Parent:
                    msg = " calls for parent-teacher conference with ";
                    break;
                }
                break;

            case MonsterTypeEnum.Administrator:
                switch (target)
                {
                case CharacterTypeEnum.Student:
                    msg = " gives forms to fill out to ";
                    break;

                case CharacterTypeEnum.Parent:
                    msg = " requests payment from ";
                    break;
                }
                break;

            default:
                break;
            }
            return(msg);
        }
示例#27
0
 public Rogue(int id, string name, string desc, int gold, int level, double experience, double experienceGained, double maxHp, double hp, double maxMp, double mp, double armor, double damage, double hpRegen, double mpRegen, CharacterTypeEnum characterType, Inventar inventar) : base(id, name, desc, gold, level, experience, experienceGained, maxHp, hp, maxMp, mp, armor, damage, hpRegen, mpRegen, characterType, inventar)
 {
 }
示例#28
0
 public CharacterDataBean(CharacterTypeEnum characterType)
 {
     this.characterType = characterType;
 }
 private int GetMaxHPForClass(CharacterTypeEnum characterType)
 {
     return(GameDataSource.Instance.CharacterDataByType[characterType].BaseHP.Value);
 }
示例#30
0
 /// <summary>
 /// 获取舰队
 /// </summary>
 /// <param name="characterType"></param>
 /// <returns></returns>
 public ShipCpt GetShip(CharacterTypeEnum characterType)
 {
     return(manager.GetShip(characterType));
 }