Example #1
0
 public Character(string nameSelected, CharacterGender GenderSelected, CharacterRace raceSelected, CharacterProfession professionSelected)
 {
     name       = nameSelected;
     gender     = GenderSelected;
     race       = raceSelected;
     profession = professionSelected;
 }
Example #2
0
    protected int CalculateStaminahLevel(int age, CharacterGender gender)
    {
        var level = 0;

        var agec = GetAgeCategory(age);

        switch (agec)
        {
        case AgeCategory.YouthAge:
            level = (gender == CharacterGender.Femail ? 30 : 40);
            break;

        case AgeCategory.MiddleAge:
            level = (gender == CharacterGender.Femail ? 35 : 50);
            break;

        case AgeCategory.ElderAge:
            level = (gender == CharacterGender.Femail ? 20 : 25);
            break;

        case AgeCategory.OldAge:
            level = (gender == CharacterGender.Femail ? 5 : 10);
            break;

        default:
            break;
        }

        return(level);
    }
        // Constructor
        public Dragonborn(string name, CharacterGender gender, CharacterClass jobClass, string alignment, DraconicAncestry ancestry) : base()
        {
            CharacterName   = name;          // set property of character name to the user given name
            CharacterGender = gender;        // set property of the gender to the user selected gender
            CharacterClass  = jobClass;      // set property of the job class to the user selected class

            strengthModifier = strength + 2; // add two to strength
            charismaModifier = charisma + 1; // add one to charisma

            // test for age to determine how many years to add to selected age
            if (age <= 10)
            {
                Age = age + 10;
            } // end if for age
            else if (age >= 21 && age <= 40)
            {
                Age = age - 10;
            } // end else if
            else if (age >= 41 && age <= 65)
            {
                Age = age - 15;
            } // end else if
            else
            {
                Age = age - 20;
            }// end else

            Alignment = "Chaotic" + alignment;
            Size      = "Medium";
            Speed     = 30;
            Ancestry  = ancestry;
            Languages = languages + ", Draconic";
        } // end Constructor
Example #4
0
    protected int CalculateDamageLevel(int age, CharacterGender gender)
    {
        var level = 0;

        var agec = GetAgeCategory(age);

        switch (agec)
        {
        case AgeCategory.YouthAge:
            level = (gender == CharacterGender.Femail ? 10 : 15);
            break;

        case AgeCategory.MiddleAge:
            level = (gender == CharacterGender.Femail ? 15 : 30);
            break;

        case AgeCategory.ElderAge:
            level = (gender == CharacterGender.Femail ? 7 : 12);
            break;

        case AgeCategory.OldAge:
            level = (gender == CharacterGender.Femail ? 1 : 5);
            break;

        default:
            break;
        }

        return(level);
    }
        } // end Parameterless Constructor

        public Dwarf(string name, CharacterGender gender, CharacterClass jobClass, int age, string alignment)
            : base()
        {
            CharacterName   = name;                  // set property of character name to the user given name
            CharacterGender = gender;                // set property of the gender to the user selected gender
            CharacterClass  = jobClass;              // set property of the job class to the user selected class

            strengthModifier     = strength + 2;     // add two to strength
            constitutionModifier = constitution + 2; // add two to constitution

            // test for age to determine how many years to add to selected age
            if (age <= 20)
            {
                Age = age + 50;
            } // end if for age
            else if (age >= 21 && age <= 40)
            {
                Age = age + 100;
            } // end else if
            else if (age >= 41 && age <= 65)
            {
                Age = age + 150;
            } // end else if
            else
            {
                Age = age + 200;
            }// end else
            AlignmentDescriptor = "Lawful";
            Alignment           = alignment;
            Size                = "Medium";
            Speed               = 25;
            Languages           = languages + ", Dwarven"; // add Dwarven to base class languages
            RacialProficiencies = "Darkvision, Dwarven Resilience, Stonecunning";
            WeaponProficiencies = "Smith's tools, Brewer's supplies, or Mason's tools";
        } // end Constructor
        } // end Parameterless Constructor

        public Gnome(string name, CharacterGender gender, CharacterClass jobClass, int age,
                     string alignmentDescriptor) : base()
        {
            CharacterName   = name;                  // set property of character name to the user given name
            CharacterGender = gender;                // set property of the gender to the user selected gender
            CharacterClass  = jobClass;              // set property of the job class to the user selected class

            intelligenceModifier = intelligence + 2; // add two to intelligence

            // test for age to determine how many years to add to selected age
            if (age <= 20)
            {
                Age = age + 25;
            } // end if for age
            else if (age >= 21 && age <= 40)
            {
                Age = age + 100;
            } // end else if
            else if (age >= 41 && age <= 65)
            {
                Age = age + 225;
            } // end else if
            else
            {
                Age = age + 400;
            }// end else

            Size  = "Small";
            Speed = 25;
            AlignmentDescriptor = alignmentDescriptor;
            Alignment           = "Good";
            Languages           = languages + ", Gnomish";
            RacialProficiencies = "Darkvision, Gnome Cunning";
        } // end Constructor
Example #7
0
    protected int CalculateHealthLevel(int age, CharacterGender gender)
    {
        var level = 0;

        var agec = GetAgeCategory(age);

        switch (agec)
        {
        case AgeCategory.YouthAge:
            level = 30;
            break;

        case AgeCategory.MiddleAge:
            level = 50;
            break;

        case AgeCategory.ElderAge:
            level = 20;
            break;

        case AgeCategory.OldAge:
            level = 5;
            break;

        default:
            break;
        }

        return(level);
    }
Example #8
0
    protected override void SetPrivates()
    {
        base.SetPrivates();
        OnRootPreviousScene = Constants.SoulTreeScene;
        _characterName      = GameObject.Find("CharacterName").GetComponent <TMPro.TextMeshPro>();
        _skinContainer      = GameObject.Find("SkinContainer");
        _raceTextMesh       = GameObject.Find("RaceText").GetComponent <TMPro.TextMeshPro>();
        _gender             = (CharacterGender)Random.Range(0, 1);
        _race         = CharacterRace.Human;
        _rightButtons = new List <ButtonBhv>();
        _leftButtons  = new List <ButtonBhv>();
        var allButtons = GameObject.FindGameObjectsWithTag(Constants.TagButton);

        foreach (var button in allButtons)
        {
            if (button.name.Contains("Right"))
            {
                _rightButtons.Add(button.GetComponent <ButtonBhv>());
            }
            if (button.name.Contains("Left"))
            {
                _leftButtons.Add(button.GetComponent <ButtonBhv>());
            }
        }
    }
Example #9
0
    public static List <string> CreateBodyPartsFromRace(CharacterRace race, CharacterGender gender)
    {
        List <string> bodyParts      = new List <string>();
        int           skinColor      = Random.Range(0, NbSkinTemplates);
        int           armTemplateId  = Random.Range(0, NbBodyTemplates);
        int           handTemplateId = Random.Range(0, NbBodyTemplates);

        for (int i = 0; i < BodyParts.Length; ++i)
        {
            if (BodyParts[i].Contains("Naked"))
            {
                bodyParts.Add("Sprites/" + race + "/" + race + BodyParts[i] + "_" + skinColor);
            }
            else if (BodyParts[i].Contains("Hair"))
            {
                bodyParts.Add("Sprites/" + race + "/" + race + gender + BodyParts[i] + "_" + Random.Range(0, NbHairTemplates));
            }
            else if (BodyParts[i].Contains("Arm"))
            {
                bodyParts.Add("Sprites/" + race + "/" + race + BodyParts[i] + "_" + armTemplateId);
            }
            else if (BodyParts[i].Contains("Hand"))
            {
                bodyParts.Add("Sprites/" + race + "/" + race + BodyParts[i] + "_" + handTemplateId);
            }
            else
            {
                bodyParts.Add("Sprites/" + race + "/" + race + BodyParts[i] + "_" + Random.Range(0, NbBodyTemplates));
            }
        }
        return(bodyParts);
    }
Example #10
0
        public CharacterInfo(SqlDatabaseClient MySqlClient, uint SessionId, uint Id, string Username, string RealName, string Figure, 
            CharacterGender Gender, string Motto, int Credits, int ActivityPoints, double ActivityPointsLastUpdate,
            bool PrivacyAcceptFriends, uint HomeRoom, int Score, int ConfigVolume, int ModerationTickets,
            int ModerationTicketsAbusive, double ModerationTicketCooldown, int ModerationBans, int ModerationCautions,
            double TimestampLastOnline, double TimestampRegistered, int RespectPoints, int RespectCreditHuman,
            int RespectCreditPets, double ModerationMutedUntil)
        {
            mSessionId = SessionId;
            mId = Id;
            mUsername = Username;
            mRealName = RealName;
            mFigure = Figure;
            mGender = Gender;
            mMotto = Motto;
            mCredits = Credits;

            mActivityPoints = ActivityPoints;
            mPrivacyAcceptFriends = PrivacyAcceptFriends;
            mHomeRoom = HomeRoom;
            mScore = Score;
            mConfigVolume = ConfigVolume;

            mRespectPoints = RespectPoints;
            mRespectCreditHuman = RespectCreditHuman;
            mRespectCreditPets = RespectCreditPets;

            mModerationTickets = ModerationTickets;
            mModerationTicketsAbusive = ModerationTicketsAbusive;
            mModerationTicketsCooldown = ModerationTicketCooldown;
            mModerationCautions = ModerationCautions;
            mModerationBans = ModerationBans;
            mModerationMutedUntil = ModerationMutedUntil;

            mCacheAge = UnixTimestamp.GetCurrent();
            mTimestampLastActivityPointsUpdate = ActivityPointsLastUpdate;
            mTimestampLastOnline = TimestampLastOnline;
            mTimestampRegistered = TimestampRegistered;

            mWardrobe = new Dictionary<int, WardrobeItem>();
            mTags = new List<string>();

            if (MySqlClient != null)
            {
                MySqlClient.SetParameter("userid", mId);
                DataTable Table = MySqlClient.ExecuteQueryTable("SELECT * FROM wardrobe WHERE user_id = @userid LIMIT 10");

                foreach (DataRow Row in Table.Rows)
                {
                    mWardrobe.Add((int)Row["slot_id"], new WardrobeItem((string)Row["figure"], (Row["gender"].ToString().ToLower() == "m" ? CharacterGender.Male : CharacterGender.Female)));
                }

                MySqlClient.SetParameter("userid", mId);
                DataTable TagsTable = MySqlClient.ExecuteQueryTable("SELECT * FROM tags WHERE user_id = @userid");

                foreach (DataRow Row in TagsTable.Rows)
                {
                    mTags.Add((string)Row["tag"]);
                }
            }
        }
        } // end Parameterless Constructor

        public Halfling(string name, CharacterGender gender, CharacterClass jobClass, int age) : base()
        {
            CharacterName   = name;            // set property of character name to the user given name
            CharacterGender = gender;          // set property of the gender to the user selected gender
            CharacterClass  = jobClass;        // set property of the job class to the user selected class

            dexterityModifier = dexterity + 2; // add two to dexterity
            charismaModifier  = charisma + 1;  // add one to charisma

            // test for age to determine how many years to add to selected age
            if (age <= 20)
            {
                Age = age + 50;
            } // end if for age
            else if (age >= 21 && age <= 40)
            {
                Age = age + 75;
            } // end else if
            else if (age >= 41 && age <= 65)
            {
                Age = age + 125;
            } // end else if
            else
            {
                Age = age + 150;
            }// end else

            AlignmentDescriptor = "Lawful";
            Alignment           = "Good";
            Size                = "Small";
            Speed               = 25;
            Languages           = languages + ", Halfling";
            RacialProficiencies = "Lucky, Brave, Halfling Nimbleness";
        } // end Constructor
Example #12
0
 public static DefaultItem Get(this IEnumerable <DefaultItem> defaultItems, CharacterGender gender,
                               CostumeSlot slot, byte variation)
 {
     return(defaultItems.FirstOrDefault(item =>
                                        item.Gender == gender && item.Variation == variation &&
                                        item.ItemNumber.SubCategory == (byte)slot));
 }
Example #13
0
    /// <summary>
    /// Register a new user in local DB.
    /// </summary>
    /// <param name="login">user login</param>
    /// <param name="password">user password</param>
    /// <param name="age">age of user's character</param>
    /// <param name="gender">gender of user's character</param>
    /// <returns>true if user authenticated successful, flase in other case</returns>
    public UserModel RegisterNewUser(string login, string password, int age, CharacterGender gender)
    {
        if (CheckLogin(login))
        {
            return(null);
        }

        // Create new character
        var character    = GameEnvironmentManager.CreatePlayer(login, "Talk (t)", GeneralName.InitialGameSceneId, age, gender);
        var characterDto = character.ConvertToDTO <CharacterDTO>();

        // Get inventory for character
        var inventoryDto = character.Inventory.ConvertToDTO <InventoryDTO>();

        // Create new user
        var user    = new UserModel(login, character.Id);
        var userDto = user.ConvertToDTO <UserDTO>(password);

        // todo: save all objects to Database in transaction
        _connection.Insert(inventoryDto);
        _connection.Insert(characterDto);
        _connection.Insert(userDto);

        InitializeNewGame(userDto, characterDto);

        return(user);
    }
Example #14
0
        public CharacterInfo(SqlDatabaseClient MySqlClient, uint SessionId, uint Id, string Username, string RealName, string Figure,
                             CharacterGender Gender, string Motto, int Credits, int ActivityPoints, double ActivityPointsLastUpdate,
                             bool PrivacyAcceptFriends, uint HomeRoom, int Score, int ConfigVolume, int ModerationTickets,
                             int ModerationTicketsAbusive, double ModerationTicketCooldown, int ModerationBans, int ModerationCautions,
                             double TimestampLastOnline, double TimestampRegistered, int RespectPoints, int RespectCreditHuman,
                             int RespectCreditPets, double ModerationMutedUntil)
        {
            mSessionId = SessionId;
            mId        = Id;
            mUsername  = Username;
            mRealName  = RealName;
            mFigure    = Figure;
            mGender    = Gender;
            mMotto     = Motto;
            mCredits   = Credits;

            mActivityPoints       = ActivityPoints;
            mPrivacyAcceptFriends = PrivacyAcceptFriends;
            mHomeRoom             = HomeRoom;
            mScore        = Score;
            mConfigVolume = ConfigVolume;

            mRespectPoints      = RespectPoints;
            mRespectCreditHuman = RespectCreditHuman;
            mRespectCreditPets  = RespectCreditPets;

            mModerationTickets         = ModerationTickets;
            mModerationTicketsAbusive  = ModerationTicketsAbusive;
            mModerationTicketsCooldown = ModerationTicketCooldown;
            mModerationCautions        = ModerationCautions;
            mModerationBans            = ModerationBans;
            mModerationMutedUntil      = ModerationMutedUntil;

            mCacheAge = UnixTimestamp.GetCurrent();
            mTimestampLastActivityPointsUpdate = ActivityPointsLastUpdate;
            mTimestampLastOnline = TimestampLastOnline;
            mTimestampRegistered = TimestampRegistered;

            mWardrobe = new Dictionary <int, WardrobeItem>();
            mTags     = new List <string>();

            if (MySqlClient != null)
            {
                MySqlClient.SetParameter("userid", mId);
                DataTable Table = MySqlClient.ExecuteQueryTable("SELECT * FROM wardrobe WHERE user_id = @userid LIMIT 10");

                foreach (DataRow Row in Table.Rows)
                {
                    mWardrobe.Add((int)Row["slot_id"], new WardrobeItem((string)Row["figure"], (Row["gender"].ToString().ToLower() == "m" ? CharacterGender.Male : CharacterGender.Female)));
                }

                MySqlClient.SetParameter("userid", mId);
                DataTable TagsTable = MySqlClient.ExecuteQueryTable("SELECT * FROM tags WHERE user_id = @userid");

                foreach (DataRow Row in TagsTable.Rows)
                {
                    mTags.Add((string)Row["tag"]);
                }
            }
        }
Example #15
0
    protected int CalculateCarriedWeigthLevel(int age, CharacterGender gender)
    {
        var level = 0;

        var agec = GetAgeCategory(age);

        switch (agec)
        {
        case AgeCategory.YouthAge:
            level = (gender == CharacterGender.Femail ? 30 : 40);
            break;

        case AgeCategory.MiddleAge:
            level = (gender == CharacterGender.Femail ? 35 : 60);
            break;

        case AgeCategory.ElderAge:
            level = (gender == CharacterGender.Femail ? 15 : 20);
            break;

        case AgeCategory.OldAge:
            level = (gender == CharacterGender.Femail ? 1 : 5);
            break;

        default:
            break;
        }

        return(level);
    }
        } // end Parameterless Constructor

        public Elf(string name, CharacterGender gender, CharacterClass jobClass, int age, string alignment) : base()
        {
            CharacterName   = name;            // set property of character name to the user given name
            CharacterGender = gender;          // set property of the gender to the user selected gender
            CharacterClass  = jobClass;        // set property of the job class to the user selected class

            wisdomModifier    = wisdom + 1;    // add one to wisdom
            dexterityModifier = dexterity + 2; // add two to dexterity

            // test for age to determine how many years to add to selected age
            if (age <= 20)
            {
                Age = age + 150;
            }     // end if for age
            else if (age >= 21 && age <= 40)
            {
                Age = age + 300;
            }     // end else if
            else if (age >= 41 && age <= 65)
            {
                Age = age + 400;
            }     // end else if
            else
            {
                Age = age + 600;
            }    // end else

            AlignmentDescriptor = "Chaotic";
            Alignment           = alignment;
            Size                = "Medium";
            Speed               = 35;
            Languages           = languages + ", Elvish"; // add Elvish to base class languages
            RacialProficiencies = "Darkvision, Keen Senses, Fey Ancestry, Trance, Mask of the Wild";
            WeaponProficiencies = "Long sword, short sword, shortbow, and longbow";
        }     // end Constructor
 /// <inheritdoc />
 public NameQueryResult([NotNull] string name, [CanBeNull] string realmName, CharacterRace race, CharacterGender gender, CharacterClass @class)
 {
     Name      = name ?? throw new ArgumentNullException(nameof(name));
     RealmName = realmName ?? "";             //don't check nullness
     Race      = race;
     Gender    = gender;
     Class     = @class;
 }
        public void AddCharacterDetailToProject(string characterId, CharacterGender gender, CharacterAge age)
        {
            var detail = new CharacterDetail {
                CharacterId = characterId, Gender = gender, Age = age, MaxSpeakers = 1
            };

            m_project.AddProjectCharacterDetail(detail);
            m_project.SaveProjectCharacterDetailData();
        }
Example #19
0
        public void UpdateFigure(SqlDatabaseClient MySqlClient, string NewGender, string NewFigure)
        {
            mGender = (NewGender == "m" ? CharacterGender.Male : CharacterGender.Female);
            mFigure = NewFigure;

            MySqlClient.SetParameter("userid", mId);
            MySqlClient.SetParameter("figure", mFigure);
            MySqlClient.SetParameter("gender", NewGender);
            MySqlClient.ExecuteNonQuery("UPDATE characters SET gender = @gender, figure = @figure WHERE id = @userid LIMIT 1");
        }
        public bool Matches(CharacterGender g1, CharacterGender g2)
        {
            var hashSet = m_matchingRules[g1];

            if (hashSet == null)
            {
                return(true);
            }
            return(hashSet.Contains(g2));
        }
Example #21
0
 public CharacterStyle(CharacterGender gender, byte slot, byte hair, byte face, byte shirt, byte pants)
 {
     Gender = gender;
     Hair   = hair;
     Face   = face;
     Shirt  = shirt;
     Pants  = pants;
     Unk    = 0;
     Slot   = slot;
 }
Example #22
0
 public Metalhead(string name, CharacterGender gender) : base() // call base constructor and change name and gender to user preference
 {
     Name         = name;
     Gender       = gender;
     Strength     = 40;
     Charisma     = 50;
     Agility      = 30;
     Inebriation  = 90;
     Constitution = 10;
     Intelligence = 10;
 }
Example #23
0
        internal Character(CharacterManager characterManager, byte slot, CharacterGender gender)
        {
            CharacterManager = characterManager;

            Weapons  = new WeaponManager(this);
            Skills   = new SkillManager(this);
            Costumes = new CostumeManager(this);

            Slot   = slot;
            Gender = gender;
        }
 public bool ValidateGender(CharacterGender _gender)
 {
     if (_gender == gender)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Example #25
0
 public Dwarf(string name, CharacterGender gender) : base() // call base constructor and change name and gender to user preference
 {
     Name         = name;
     Gender       = gender;
     Strength     = 60;
     Charisma     = 20;
     Agility      = 30;
     Inebriation  = 0;
     Constitution = 60;
     Intelligence = 20;
 }
Example #26
0
        public void GetGenderMatchQuality_Acceptable(ActorGender actorGender, CharacterGender characterGender)
        {
            var actor = new Glyssen.VoiceActor.VoiceActor {
                Gender = actorGender
            };
            var matchQuality = actor.GetGenderMatchQuality(new CharacterDetail {
                Gender = characterGender
            });

            Assert.AreEqual(GenderMatchQuality.Acceptable, matchQuality);
        }
Example #27
0
        public void GetGenderMatchQuality_Mismatch(ActorGender actorGender, CharacterGender characterGender)
        {
            var actor = new Glyssen.VoiceActor.VoiceActor {
                Gender = actorGender
            };
            var matchQuality = actor.GetGenderMatchQuality(new CharacterDetail {
                Gender = characterGender
            });

            Assert.AreEqual(MatchLevel.Mismatch, matchQuality);
        }
Example #28
0
 public static string GetRandomNameFromRaceAndGender(CharacterRace race, CharacterGender nameGender)
 {
     if (nameGender == CharacterGender.Male)
     {
         return(MaleCharacterRaceNames[race.GetHashCode()][Random.Range(0, MaleCharacterRaceNames[race.GetHashCode()].Length)]);
     }
     else
     {
         return(FemaleCharacterRaceNames[race.GetHashCode()][Random.Range(0, FemaleCharacterRaceNames[race.GetHashCode()].Length)]);
     }
 }
 public void AddRule(CharacterGender gender, IEnumerable <CharacterGender> matchingGenders)
 {
     if (matchingGenders == null)
     {
         m_matchingRules.Add(gender, null);
     }
     else
     {
         m_matchingRules.Add(gender, new HashSet <CharacterGender>(matchingGenders));
     }
 }
Example #30
0
 public Human(string name, CharacterGender gender) : base() // call base constructor and change name and gender to user preference
 {
     Name         = name;
     Gender       = gender;
     Strength     = 35;
     Charisma     = 50;
     Agility      = 50;
     Inebriation  = 0;
     Constitution = 45;
     Intelligence = 55;
 }
        public void StoreCharacterDetail(string characterId, CharacterGender gender, CharacterAge age)
        {
            if (m_project.AllCharacterDetailDictionary.ContainsKey(characterId))
            {
                throw new ArgumentException("Project already contains a character with ID " + characterId);
            }
            var detail = new CharacterDetail {
                CharacterId = characterId, Gender = gender, Age = age, MaxSpeakers = 1
            };

            m_pendingCharacterDetails[characterId] = detail;
        }
Example #32
0
        public Character(WorldDate currentWorldDate, string firstname, string dynasty, CharacterGender characterGender)
        {
            Firstname = firstname;
            Dynasty = dynasty;
            BornDate = new WorldDate(currentWorldDate.Year, currentWorldDate.Season, currentWorldDate.Day);
            var gender = characterGender;
            _rawAttributes = new Dictionary<string, ICharacterAttribute>();
            _modifiedAttributes = new Dictionary<string, ICharacterAttribute>();
            Traits = new List<Trait>();
            AddAttribute(new ValueCharacterAttribute("Fertility", 0.5m));
            AddAttribute(new ValueCharacterAttribute("Combat", 1m));
            AddAttribute(new ValueCharacterAttribute("Strength", 10));

            var mods = new List<Modifier>()
            {
                new Modifier("Fertility",0.5m, new FlatModifier())
            };

            var kuk = new Trait("Järnringsvigör", mods);

            if (Dynasty == "Järnring")
            {
                AddTrait(kuk);
            }

            mods = new List<Modifier>()
            {
                new Modifier("Combat", 8m,new FlatModifier()),
                new Modifier("Strength", 4m,new FlatModifier())
            };

            kuk = new Trait("Dunhallskrigare", mods);
            if (Dynasty == "Dunhall")
            {
                AddTrait(kuk);
            }

            _modifiedAttributes = FetchModifiedAttributes();

            foreach (var modifiedAttribute in _modifiedAttributes)
            {
                Console.WriteLine(firstname + " " + dynasty + " " + modifiedAttribute.Key + ": " + modifiedAttribute.Value.Value);
            }

            Console.WriteLine(Traits.Count);
        }
Example #33
0
        public static ServerMessage Compose(uint ActorId, string Look, CharacterGender Gender, string Motto, int Score)
        {
            ServerMessage Message = new ServerMessage(OpcodesOut.USER_INFO_UPDATE);

            if (ActorId == 0)
            {
                Message.AppendInt32(-1);
            }
            else
            {
                Message.AppendUInt32(ActorId);
            }

            Message.AppendStringWithBreak(Look);
            Message.AppendStringWithBreak(Gender == CharacterGender.Male ? "m" : "f");
            Message.AppendStringWithBreak(Motto);
            Message.AppendInt32(Score);
            return Message;
        }
    void Awake()
    {
        playerGender = (PlayerPrefs.GetFloat(Strings.Gender) == ((float)CharacterGender.MALE) ? CharacterGender.MALE : CharacterGender.FEMALE);

        playerCharacter = GameObject.Find(Strings.Player).GetComponent<Player>();
        CharacterAgeManager.SetPlayer(playerCharacter);

        SetGender(playerGender);
        SetupInitialAgeSettings();
        playerCharacter.EnterState(new IdleState(playerCharacter));
    }
    /// <summary>
    /// Sets the gender. And will destroy the other gender data to save space
    /// </summary>
    private void SetGender(CharacterGender gender)
    {
        GameObject[] maleAnimations = GetMaleAnimations();
        GameObject[] femaleAnimations = GetFemaleAnimations();

        switch(gender){
            case CharacterGender.MALE:
                genderAnimationInUse = genderAnimations[(int)CharacterGender.MALE];
                siblingGenderAnimations = genderAnimations[(int)CharacterGender.FEMALE];
                DisableAnimations(maleAnimations);
                DisableAnimations(femaleAnimations);
                break;
            case CharacterGender.FEMALE:
                genderAnimationInUse = genderAnimations[(int)CharacterGender.FEMALE];
                siblingGenderAnimations = genderAnimations[(int)CharacterGender.MALE];
                DisableAnimations(femaleAnimations);
                DisableAnimations(maleAnimations);
                break;
        }
    }
Example #36
0
 public WardrobeItem(string Figure, CharacterGender Gender)
 {
     mFigure = Figure;
     mGender = Gender;
 }
Example #37
0
        public CharacterInfo(SqlDatabaseClient MySqlClient, uint SessionId, uint Id, string Username, string RealName, string Figure,
            CharacterGender Gender, string Motto, int Credits, int ActivityPoints, double ActivityPointsLastUpdate,
            bool PrivacyAcceptFriends, uint HomeRoom, int Score, int ConfigVolume, int ModerationTickets,
            int ModerationTicketsAbusive, double ModerationTicketCooldown, int ModerationBans, int ModerationCautions,
            double TimestampLastOnline, double TimestampRegistered, int RespectPoints, int RespectCreditHuman,
            int RespectCreditPets, double ModerationMutedUntil, int Health, int Str, int XP, int GroupID, int Dead, int Wanted, int Phone, int Shotgun, int Pellet, int Knife, int Uzi, int Licence, int Glock, int Jailed, int Working, int Learning, int Timer, int Bank, int Energy, int Intelligence, int Clothes, int Bullets, int Weed, int Tokens, int LastRoom)
        {
            mSessionId = SessionId;
            mId = Id;
            mUsername = Username;
            mRealName = RealName;
            mFigure = Figure;
            mGender = Gender;
            mMotto = Motto;
            mCredits = Credits;

            mActivityPoints = ActivityPoints;
            mPrivacyAcceptFriends = PrivacyAcceptFriends;
            mHomeRoom = HomeRoom;
            mScore = Score;
            mConfigVolume = ConfigVolume;

            mRespectPoints = RespectPoints;
            mRespectCreditHuman = RespectCreditHuman;
            mRespectCreditPets = RespectCreditPets;

            mModerationTickets = ModerationTickets;
            mModerationTicketsAbusive = ModerationTicketsAbusive;
            mModerationTicketsCooldown = ModerationTicketCooldown;
            mModerationCautions = ModerationCautions;
            mModerationBans = ModerationBans;
            mModerationMutedUntil = ModerationMutedUntil;

            mCacheAge = UnixTimestamp.GetCurrent();
            mTimestampLastActivityPointsUpdate = ActivityPointsLastUpdate;
            mTimestampLastOnline = TimestampLastOnline;
            mTimestampRegistered = TimestampRegistered;

            mHealth = Health;

            mStr = Str;
            mXP = XP;
            mGroupID = GroupID;

            mDead = Dead;
            mWanted = Wanted;
            mPhone = Phone;
            mShotgun = Shotgun;
            mPellet = Pellet;
            mOfferweed = Offerweed;
            mOfferpgun = Offerpgun;
            mOffersgun = Offersgun;
            mOfferKeycard = OfferKeycard;
            mKnife = Knife;
            mUzi = Uzi;
            mLicence = Licence;
            mGlock = Glock;

            mJailed = Jailed;
            mWorking = Working;
            mLearning = Learning;
            mEnergy = Energy;
            mIntelligence = Intelligence;
            mClothes = Clothes;
            mBullets = Bullets;
            mWeed = Weed;
            mTokens = Tokens;
            mTimer = Timer;
            mBank = Bank;
            mSentHome = 0;
            mGathering = 0;
            mKeycard = 0;
            mRocks = 5;
            mDriving = 0;
            mATMamount = 20;

            mWardrobe = new Dictionary<int, WardrobeItem>();
            mTags = new List<string>();

            if (MySqlClient != null)
            {
                MySqlClient.SetParameter("userid", mId);
                DataTable Table = MySqlClient.ExecuteQueryTable("SELECT * FROM wardrobe WHERE user_id = @userid LIMIT 10");

                foreach (DataRow Row in Table.Rows)
                {
                    mWardrobe.Add((int)Row["slot_id"], new WardrobeItem((string)Row["figure"], (Row["gender"].ToString().ToLower() == "m" ? CharacterGender.Male : CharacterGender.Female)));
                }

                MySqlClient.SetParameter("userid", mId);
                DataTable TagsTable = MySqlClient.ExecuteQueryTable("SELECT * FROM tags WHERE user_id = @userid");

                foreach (DataRow Row in TagsTable.Rows)
                {
                    mTags.Add((string)Row["tag"]);
                }
            }
        }
Example #38
0
        public void SetWardrobeSlot(SqlDatabaseClient MySqlClient, int SlotId, string Figure, CharacterGender Gender)
        {
            lock (mWardrobe)
            {
                WardrobeItem Item = new WardrobeItem(Figure, Gender);

                MySqlClient.SetParameter("userid", mId);
                MySqlClient.SetParameter("slotid", SlotId);
                MySqlClient.SetParameter("figure", Figure);
                MySqlClient.SetParameter("gender", Gender == CharacterGender.Male ? "M" : "F");

                if (!mWardrobe.ContainsKey(SlotId))
                {
                    mWardrobe.Add(SlotId, Item);
                    MySqlClient.ExecuteNonQuery("INSERT INTO wardrobe (user_id,slot_id,figure,gender) VALUES (@userid,@slotid,@figure,@gender)");
                    return;
                }

                mWardrobe[SlotId] = Item;
                MySqlClient.ExecuteNonQuery("UPDATE wardrobe SET figure = @figure, gender = @gender WHERE user_id = @userid AND slot_id = @slotid LIMIT 1");
            }
        }
Example #39
0
        public void UpdateFigure(SqlDatabaseClient MySqlClient, string NewGender, string NewFigure)
        {
            mGender = (NewGender == "m" ? CharacterGender.Male : CharacterGender.Female);
            mFigure = NewFigure;

            MySqlClient.SetParameter("userid", mId);
            MySqlClient.SetParameter("figure", mFigure);
            MySqlClient.SetParameter("gender", NewGender);
            MySqlClient.ExecuteNonQuery("UPDATE characters SET gender = @gender, figure = @figure WHERE id = @userid LIMIT 1");
        }