Esempio n. 1
0
 public static void ApplyRaceTables(Race race, RaceName name)
 {
     race.name     = name;
     race.speed    = SpeedTable(name);
     race.features = FeaturesFromName(name);
     race.BodyAnimationOverride = BodyOverrideController(name);
 }
Esempio n. 2
0
        public static string Description(RaceName name)
        {
            string ret = "";

            switch (name)
            {
            case RaceName.HUMAN:
                ret  = "Humans are the most common race in [some realm].  They get along pretty well with other races, and span a wide variety of alignments.  They are quite balanced, excelling in any profession with proper planning.";
                ret += "\n\n";
                ret += "Traits:\n";
                ret += "+1 All Abilities\n";
                ret += "Speed: 30ft\n";
                break;

            case RaceName.HALF_ORC:
                ret  = "Half-orcs inherit a tendency toward  chaos from their orc parents and are not strongly inclined toward good. Half-orcs that are raised among orcs are usually evil. ";
                ret += "\n\n";
                ret += "Traits:\n";
                ret += "+2 Strength\n";
                ret += "+1 Constitution\n";
                ret += "Speed: 30ft\n";
                break;
            }


            return(ret);
        }
Esempio n. 3
0
 public CharacterProgress(CharacterClass characterClass)
 {
     cClass      = characterClass;
     cLevel      = 1;
     cExperience = 0;
     weaponFocus = DamageType.None;
     favoredRace = RaceName.None;
 }
Esempio n. 4
0
        // equality comparator based solely on name, for now
        public override bool Equals(object obj)
        {
            Race other = obj as Race;

            if (other == null)
            {
                return(false);
            }
            return(RaceName.Equals(other.RaceName));
        }
Esempio n. 5
0
 public static string ChooseRandomSubrace(this RaceName race)
 {
     if (SubraceDictionary.ContainsKey(race))
     {
         return(SubraceDictionary[race].Random());
     }
     else
     {
         return("");
     }
 }
Esempio n. 6
0
 public static string Format(this RaceName race)
 {
     if (RaceFormatMap.ContainsKey(race))
     {
         return(RaceFormatMap[race]);
     }
     else
     {
         return(race.ToString());
     }
 }
Esempio n. 7
0
    public async Task A_race_can_be_found_by_id()
    {
        await using Composer services = new();
        var sut = services.Resolve <Gw2Client>();

        const RaceName raceId = RaceName.Human;

        var actual = await sut.Races.GetRaceById(raceId);

        Assert.Equal(raceId, actual.Value.Id);
    }
Esempio n. 8
0
 public Player(PlayerColor color, RaceName race, bool isHuman)
 {
     Color = color;
     Race = race;
     Money = 70;
     TimeLeft =      30 * 25;
     MaxTurnTime =   30 * 25;
     UnitCount = 0;
     StationCount = 0;
     IsHuman = isHuman;
     Strategy = new HumanStrategy();
 }
Esempio n. 9
0
 public Character(
     int id,
     string shortName,
     RaceName race,
     bool isActive,
     MapCoordinates currentLocation)
 {
     _id              = id;
     _shortName       = shortName;
     _race            = race;
     _isActive        = isActive;
     _currentLocation = currentLocation;
 }
Esempio n. 10
0
 public Character(
     int id,
     string shortName,
     RaceName race,
     bool isActive,
     int currentLocationId)
 {
     _id                = id;
     _shortName         = shortName;
     _race              = race;
     _isActive          = isActive;
     _currentLocationId = currentLocationId;
 }
Esempio n. 11
0
 public Player(
     int id,
     string shortName,
     int age,
     RaceName race,
     bool isActive,
     bool isGalacticCitizen,
     string militaryStatus,
     MapCoordinates currentLocation) : base(id, shortName, race, isActive, currentLocation)
 {
     _age = age;
     _isGalacticCitizen = isGalacticCitizen;
 }
Esempio n. 12
0
 public void againCompition(RaceName name, int num)
 {
     gameCount.text = "0";
     raceTime.text  = "0";
     foreach (Rigidbody temp in carManager.GetComponentsInChildren <Rigidbody>())
     {
         //print(temp.name);
         if (temp.name != "CarManage" && temp.tag != "Player")
         {
             Destroy(temp.gameObject);
         }
     }
     starCompition(name, num);
 }
Esempio n. 13
0
        public override bool Equals(object obj)
        {
            var item = obj as RaceData;

            if (item == null)
            {
                return(false);
            }

            var different = Horses.Except(item.Horses).ToList();

            return(RaceName.Equals(item.RaceName) &&
                   Horses.SequenceEqual(item.Horses) &&
                   Prices.SequenceEqual(item.Prices));
        }
Esempio n. 14
0
    public Task <IReplica <Race> > GetRaceById(
        RaceName raceId,
        Language?language = default,
        MissingMemberBehavior missingMemberBehavior = default,
        CancellationToken cancellationToken         = default
        )
    {
        RaceByIdRequest request = new(raceId)
        {
            Language = language,
            MissingMemberBehavior = missingMemberBehavior
        };

        return(request.SendAsync(http, cancellationToken));
    }
Esempio n. 15
0
        public static EquipmentAnimationControllerName BodyOverrideController(RaceName name)
        {
            switch (name)
            {
            case RaceName.HALF_ORC:
//				Debug.LogError ("seting");
                return(EquipmentAnimationControllerName.ORC_OVERRIDE);

                break;

            default:
//				Debug.LogError ("NOT seting");
                return(EquipmentAnimationControllerName.NOT_SET);
            }
        }
Esempio n. 16
0
        private static void buildRequirementsList(string property, string value, Feat feat)
        {
            if (String.IsNullOrEmpty(value))
            {
                return;
            }

            List <string> parts = ToStringList(value);

            if (!feat.Requirements.Any())
            {
                for (int i = 0; i < parts.Count; ++i)
                {
                    feat.Requirements.Add(new FeatRequirement());
                }
            }

            feat.Requirements = feat.Requirements.Zip(parts, (a, b) => {
                switch (property)
                {
                case "RACELIST": {
                    a.RaceName = RaceName.FromRaceName(b);

                    break;
                }

                case "CLASSLIST": {
                    a.ClassName = Enumeration.FromDisplayName <ClassName>(b);

                    break;
                }

                case "ACQUIRE": {
                    a.Acquire = b;

                    break;
                }

                case "LEVEL": {
                    a.Level = Int32.Parse(b);

                    break;
                }
                }

                return(a);
            }).ToList();
        }
Esempio n. 17
0
    public static CharacterRace getRace(RaceName rName)
    {
        switch (rName)
        {
        case RaceName.Berrind:
            return(new Race_Berrind());

        case RaceName.Ashpian:
            return(new Race_Ashpian());

        case RaceName.Rorrul:
            return(new Race_Rorrul());

        default:
            return(new Race_Ashpian());
        }
    }
Esempio n. 18
0
        public static Gauge SpeedTable(RaceName rn)
        {
            Gauge ret = new Gauge("movement speed");

            switch (rn)
            {
            case RaceName.TIEFLING:
                ret.ChangeCurrentAndMax(6);
                break;

            case RaceName.HUMAN:
                ret.ChangeCurrentAndMax(6);
                break;

            case RaceName.HALF_ORC:
                ret.ChangeCurrentAndMax(6);
                break;

            case RaceName.ELF:
                ret.ChangeCurrentAndMax(6);
                break;

            case RaceName.HALF_ELF:
                ret.ChangeCurrentAndMax(6);
                break;

            case RaceName.GNOME:
                ret.ChangeCurrentAndMax(5);
                break;

            case RaceName.HAFLING:
                ret.ChangeCurrentAndMax(5);
                break;

            case RaceName.DWARF:
                ret.ChangeCurrentAndMax(5);
                break;

            case RaceName.DRAGONBORN:
                ret.ChangeCurrentAndMax(6);
                break;
            }

            return(ret);
        }
Esempio n. 19
0
        public static string ShortDescription(RaceName name)
        {
            string ret = "";

            switch (name)
            {
            case RaceName.HUMAN:
                ret += "+1 All Abilities\n";
                ret += "Speed: 30ft";
                break;

            case RaceName.HALF_ORC:
                ret += "+2 Strength\n";
                ret += "+1 Constitution\n";
                ret += "Speed: 30ft";
                break;
            }


            return(ret);
        }
Esempio n. 20
0
    public void setFavoredRace(int race)
    {
        switch (race)
        {
        case 1:
            favoredRace = RaceName.Berrind;
            break;

        case 2:
            favoredRace = RaceName.Ashpian;
            break;

        case 3:
            favoredRace = RaceName.Rorrul;
            break;

        default:
            favoredRace = RaceName.None;
            break;
        }
    }
Esempio n. 21
0
    //传一个赛道名,激活相应赛道,将车辆放置在指定位置
    public void starCompition(RaceName name, int num)
    {
        if (RaceDic.ContainsKey(name))
        {
            RaceRootList.Clear();
            //将赛道检查点存入容器
            foreach (Transform everyRoot in RaceDic[name].GetComponentsInChildren <Transform>())
            {
                if (everyRoot.tag == "root")
                {
                    RaceRootList.Add(everyRoot);
                }
            }

            raceNow = name;
            AInum   = num;
            num     = Mathf.Clamp(num, 1, 5);
            RaceDic[name].SetActive(true);
            Transform   starPOS = GameObject.Find("starPos").transform;
            Transform[] allPos  = starPOS.GetComponentsInChildren <Transform>();
            for (int i = 0; i < num; i++)
            {
                GameObject carTemp  = Instantiate <GameObject>(AIframework, allPos[i + 1]);
                GameObject carShape = Instantiate <GameObject>(AIcars[Random.Range(0, AIcars.Length)], carTemp.transform);
                carTemp.name = PlayerInformation.Instance.AInames[Random.Range(0, PlayerInformation.Instance.AInames.Length)];
                carShape.GetComponent <BoxCollider>().enabled = false;
                carTemp.GetComponent <AIcar>().isHaveVectort  = true;
                carTemp.transform.SetParent(carManager.transform);
                carTemp.GetComponent <Rigidbody>().isKinematic = true;
            }
            player.transform.position = allPos[num + 1].position;
            player.transform.rotation = allPos[num + 1].rotation;
            //player.GetComponent<Rigidbody>().isKinematic = true;
            player.GetComponent <Car>().isAvaliable    = false;
            player.GetComponent <Rigidbody>().velocity = Vector3.zero;
            StartCoroutine(CountDownToBegin());
        }
    }
Esempio n. 22
0
 public Race(RaceName raceName)
 {
     _raceName = raceName;
     switch (raceName)
     {
         case RaceName.Human :
             Name = "Human";
             Description = "Typical humanssss";
             break;
         case RaceName.Swarm:
             Name = "Swarm";
             Description = "Another race";
             break;
         case RaceName.Dentelian:
             Name = "Dentelian";
             Description = "And another one";
             break;
         case RaceName.Kronolian:
             Name = "Kronolian";
             Description = "How ambitious are we! 4 races!";
             break;
     }
 }
Esempio n. 23
0
        public static List <GenericFeature> FeaturesFromName(RaceName race)
        {
            List <GenericFeature> ret = new List <GenericFeature>();

            switch (race)
            {
            case RaceName.TIEFLING:
                ret = TieflingFeatures();
                break;

            case RaceName.HUMAN:
                ret = HumanFeatures();
                break;

            case RaceName.HALF_ORC:
                ret = HalfOrcFeatures();
                break;

            default:
                break;
            }

            return(ret);
        }
Esempio n. 24
0
 public Race(RaceType type, RaceName name, RaceFaction faction)
 {
     this.Type    = type;
     this.Name    = name;
     this.Faction = faction;
 }
Esempio n. 25
0
 public override bool raceIsFavoredRace(RaceName race)
 {
     return(false);
 }
Esempio n. 26
0
 // hash code is based solely on name for now
 public override int GetHashCode()
 {
     return(RaceName.GetHashCode());
 }
Esempio n. 27
0
 public override int GetHashCode()
 {
     return(23 * RaceName.GetHashCode() +
            Horses.GetHashCode() +
            Prices.GetHashCode());
 }
Esempio n. 28
0
    public string getCharacterString()
    {
        string characterStr = "";

        //********PERSONAL INFORMATION********\\
        //Adding player first name.
        characterStr += personalInfo.getCharacterName().firstName + delimiter;
        characterStr += personalInfo.getCharacterName().lastName + delimiter;
        CharacterSex sex = personalInfo.getCharacterSex();

        characterStr += (sex == CharacterSex.Male ? 0 : (sex == CharacterSex.Female ? 1 : 2)) + delimiter;
        RaceName race = personalInfo.getCharacterRace().raceName;

        characterStr += (race == RaceName.Berrind ? 0 : (race == RaceName.Ashpian ? 1 : 2)) + delimiter;
        CharacterBackground background = personalInfo.getCharacterBackground();

        characterStr += (background == CharacterBackground.FallenNoble || background == CharacterBackground.Commoner || background == CharacterBackground.Servant ? 0 : 1) + delimiter;
        characterStr += personalInfo.getCharacterAge().age + delimiter;
        characterStr += (personalInfo.getCharacterHeight().feet * 12 + personalInfo.getCharacterHeight().inches) + delimiter;
        characterStr += personalInfo.getCharacterWeight().weight + delimiter;
        ClassName clas = characterProgress.getCharacterClass().getClassName();

        characterStr += (clas == ClassName.ExSoldier ? 0 : (clas == ClassName.Engineer ? 1 : (clas == ClassName.Investigator ? 2 : (clas == ClassName.Researcher ? 3 : 4)))) + delimiter;
        characterStr += abilityScores.getSturdy() + delimiter;
        characterStr += abilityScores.getPerception(0) + delimiter;
        characterStr += abilityScores.getTechnique() + delimiter;
        characterStr += abilityScores.getWellVersed() + delimiter;
        foreach (int score in skillScores.scores)
        {
            characterStr += score + delimiter;
        }
        CharacterColors colors = characterSheet.characterColors;

        characterStr += colorString(colors.characterColor);
        characterStr += colorString(colors.headColor);
        characterStr += colorString(colors.primaryColor);
        characterStr += colorString(colors.secondaryColor);
        characterStr += characterSheet.personalInformation.getCharacterHairStyle().hairStyle + delimiter;
        characterStr += characterProgress.getCharacterLevel() + delimiter;
        characterStr += characterProgress.getCharacterExperience() + delimiter;
        //*********Hair*********\\
        characterStr += characterSheet.inventory.purse.money + delimiter;
        characterStr += characterSheet.combatScores.getCurrentHealth() + delimiter;
        characterStr += characterSheet.combatScores.getCurrentComposure() + delimiter;
        int[] features = characterSheet.characterProgress.getCharacterClass().chosenFeatures;
        characterStr += features.Length + delimiter;
        foreach (int feature in features)
        {
            characterStr += feature + delimiter;
        }
        characterStr += characterSheet.characterProgress.getWeaponFocusAsNumber() + delimiter;
        string inventoryString = "";
        int    inventorySize   = 0;

        foreach (InventoryItemSlot slot in characterSheet.inventory.inventory)
        {
            if (slot.item != null)
            {
                inventorySize++;
                inventoryString += slot.index + delimiter;
                inventoryString += (int)slot.item.getItemCode() + delimiter;
                inventoryString += slot.item.getItemData() + delimiter;
                if (slot.item.stackSize() > 0)
                {
                    foreach (Item i in slot.item.stack)
                    {
                        inventorySize++;
                        inventoryString += slot.index + delimiter;
                        inventoryString += (int)i.getItemCode() + delimiter;
                        inventoryString += i.getItemData() + delimiter;
                    }
                }
            }
        }
        foreach (InventorySlot slot in UnitGUI.armorSlots)
        {
            Item i = characterSheet.characterLoadout.getItemInSlot(slot);
            if (i != null)
            {
//				if (characterSheet.personalInformation.getCharacterName().firstName == "v") Debug.Log("GUI Slot: " + slot + "  " + (i is Weapon) + "   " + (i is Medicinal));
                inventorySize++;
                inventoryString += getArmorSlotIndex(slot) + delimiter;
                inventoryString += (int)i.getItemCode() + delimiter;
                inventoryString += i.getItemData() + delimiter;
            }
        }
        characterStr += inventorySize + delimiter + inventoryString;
        characterStr += characterSheet.characterProgress.getFavoredRaceAsNumber() + delimiter;
        return(characterStr);
    }
Esempio n. 29
0
        /// <summary>
        /// Saves the force power descriptor.
        /// </summary>
        /// <returns>Race Object</returns>
        public Race SaveRace()
        {
            SqlDataReader      result;
            DatabaseConnection dbconn     = new DatabaseConnection();
            SqlCommand         command    = new SqlCommand();
            SqlConnection      connection = new SqlConnection(dbconn.SQLSEVERConnString);

            try
            {
                connection.Open();
                command.Connection  = connection;
                command.CommandType = CommandType.StoredProcedure;
                command.CommandText = "InsertUpdate_Race";

                command.Parameters.Add(dbconn.GenerateParameterObj("@RaceID", SqlDbType.Int, RaceID.ToString(), 0));
                command.Parameters.Add(dbconn.GenerateParameterObj("@RaceName", SqlDbType.VarChar, RaceName.ToString(), 50));
                command.Parameters.Add(dbconn.GenerateParameterObj("@RaceDescription", SqlDbType.VarChar, RaceDescription.ToString(), 1000));
                command.Parameters.Add(dbconn.GenerateParameterObj("@OtherDescription", SqlDbType.VarChar, OtherDescription.ToString(), 1000));
                command.Parameters.Add(dbconn.GenerateParameterObj("@SizeID", SqlDbType.Int, SizeID.ToString(), 0));
                command.Parameters.Add(dbconn.GenerateParameterObj("@Sex", SqlDbType.Char, Sex.ToString(), 1));
                command.Parameters.Add(dbconn.GenerateParameterObj("@RageAbility", SqlDbType.Bit, RageAbility.ToString(), 0));
                command.Parameters.Add(dbconn.GenerateParameterObj("@ShapeShiftAbility", SqlDbType.Bit, ShapeShiftAbility.ToString(), 0));
                command.Parameters.Add(dbconn.GenerateParameterObj("@Primitive", SqlDbType.Bit, Primitive.ToString(), 0));
                command.Parameters.Add(dbconn.GenerateParameterObj("@BonusSkill", SqlDbType.Bit, BonusSkill.ToString(), 0));
                command.Parameters.Add(dbconn.GenerateParameterObj("@BonusFeat", SqlDbType.Bit, BonusFeat.ToString(), 0));
                command.Parameters.Add(dbconn.GenerateParameterObj("@AverageHeight", SqlDbType.Decimal, AverageHeight.ToString(), 0));
                command.Parameters.Add(dbconn.GenerateParameterObj("@AverageWeight", SqlDbType.Decimal, AverageWeight.ToString(), 0));
                command.Parameters.Add(dbconn.GenerateParameterObj("@SpeedID", SqlDbType.Int, SpeedID.ToString(), 0));

                result = command.ExecuteReader();

                result.Read();
                SetReaderToObject(ref result);
            }
            catch
            {
                Exception e = new Exception();
                this._insertUpdateOK = false;
                this._insertUpdateMessage.Append(e.Message + "                     Inner Exception= " + e.InnerException);
                throw e;
            }
            finally
            {
                command.Dispose();
                connection.Close();
            }
            return(this);
        }
Esempio n. 30
0
 public static IRace Create(RaceName type)
 {
     return(new GeneralRace(RaceDatabase.Find(type)));
 }
Esempio n. 31
0
    public void LoadRecord(RaceName raceName, string playerName, float time)
    {
        string filePath = Application.streamingAssetsPath + "/XML/RaceRecord.xml";

        if (File.Exists(filePath))
        {
            List <string> nameRank = new List <string>()
            {
                "", "", ""
            };
            List <float> timeRank = new List <float>()
            {
                0, 0, 0
            };
            XmlDocument myDoc = new XmlDocument();
            myDoc.Load(filePath);
            XmlNodeList nodeList = myDoc.SelectSingleNode("root").ChildNodes;
            //获得XML中赛道纪录,将纪录存入容器中
            foreach (XmlElement tempRace in nodeList)
            {
                if (tempRace.Name == raceName.ToString())
                {
                    foreach (XmlAttribute RaceInf in tempRace.Attributes)
                    {
                        if (RaceInf.Name == "FName")
                        {
                            nameRank[0] = RaceInf.Value;
                        }
                        else if (RaceInf.Name == "SName")
                        {
                            nameRank[1] = RaceInf.Value;
                        }
                        else if (RaceInf.Name == "TName")
                        {
                            nameRank[2] = RaceInf.Value;
                        }
                        else if (RaceInf.Name == "FiresRecord")
                        {
                            timeRank[0] = float.Parse(RaceInf.Value);
                        }
                        else if (RaceInf.Name == "SecondRecord")
                        {
                            timeRank[1] = float.Parse(RaceInf.Value);
                        }
                        else if (RaceInf.Name == "ThirdRecord")
                        {
                            timeRank[2] = float.Parse(RaceInf.Value);
                        }
                    }
                }
            }
            //与传入数据相比较,若更快则存入容器中
            for (int i = 0; i < timeRank.Count; i++)
            {
                if (time < timeRank[i])
                {
                    for (int j = timeRank.Count - 1; j >= i + 1; j--)
                    {
                        timeRank[j] = timeRank[j - 1];
                        nameRank[j] = nameRank[j - 1];
                    }
                    timeRank[i] = time;
                    nameRank[i] = playerName;
                    break;
                }
            }

            foreach (XmlElement tempRace in nodeList)
            {
                if (tempRace.Name == raceName.ToString())
                {
                    foreach (XmlAttribute RaceInf in tempRace.Attributes)
                    {
                        if (RaceInf.Name == "FName")
                        {
                            RaceInf.Value = nameRank[0];
                        }
                        else if (RaceInf.Name == "SName")
                        {
                            RaceInf.Value = nameRank[1];
                        }
                        else if (RaceInf.Name == "TName")
                        {
                            RaceInf.Value = nameRank[2];
                        }
                        else if (RaceInf.Name == "FiresRecord")
                        {
                            RaceInf.Value = timeRank[0].ToString();
                        }
                        else if (RaceInf.Name == "SecondRecord")
                        {
                            RaceInf.Value = timeRank[1].ToString();
                        }
                        else if (RaceInf.Name == "ThirdRecord")
                        {
                            RaceInf.Value = timeRank[2].ToString();
                        }
                    }
                }
            }
            myDoc.Save(filePath);
            nameRank.Clear();
            timeRank.Clear();
        }
    }
Esempio n. 32
0
 public static RaceData Find(RaceName name)
 {
     return(RaceDataList[name.ToString()]);
 }