Esempio n. 1
0
        public static Unit Random()
        {
            var unit = new Unit
            {
                Gender = new Gender((Gender.Type)Randomizer.Do(0, 1)),
                Race   = UnitRace.Random()
            };

            unit.InteractableObjectsMap = CalculateCategoriesMap(unit);

            unit.Name = new UnitName(UnitNameGenerator.Gen(unit, true));
            return(unit);
        }
Esempio n. 2
0
    //public static Skill GetSkillByName(string skill){
    //    return Skill.ReturnSkillByString((Skill.SkillClasses)Enum.Parse(typeof(Skill.SkillClasses), skill));
    //}

    /*
     * Utility Functions
     */

    public static Unit BuildInitial(FactionType fType, UnitType uType, int team, ClassNode classObj = null, int val = 1)
    {
        List <string> avoidNames = team == BoardProxy.PLAYER_TEAM ?
                                   new List <string>(BaseSaver.GetPlayer().characters.Select(chr => chr.characterMoniker)) :
                                   new List <string>();
        string uName = UnitNameGenerator.GenerateRandomName(avoidNames, fType);
        Unit   bUnit = new Unit(uName, uName, 0, team, 3, 1, 3, 2, 1, 1, new string[] { }, "", uType, fType);

        if (classObj == null)
        {
            classObj = ClassNode.ComputeClassObject(fType, uType);
        }
        else
        {
            bUnit = new Unit(uName, uName, 0, team, val, val, 3, 2, 1, 1, new string[] { }, "", uType, fType);
        }
        bUnit = classObj.UpgradeCharacter(bUnit);
        bUnit.SetCurrentClass(classObj.GetType().Name);
        return(bUnit);
    }
Esempio n. 3
0
    public void SaySomething(Skill.Actions interaction)
    {
        bool isSaying = UnityEngine.Random.Range(0, 10) > 7;

        if (!isSaying)
        {
            return;
        }

        string dialog = UnitNameGenerator.GenerateRandomCatchphrase(interaction, GetData().GetFactionType());

        Color clr = Color.black;

        switch (interaction)
        {
        case Skill.Actions.DidAttack: clr = Color.red; break;

        case Skill.Actions.DidKill: clr = Color.magenta; break;
        }

        AnimationInteractionController.InteractionDialogGameobject(interaction, BoardProxy.instance.GetTileAtPosition(GetPosition()), dialog, clr);
    }