Exemplo n.º 1
0
        public string GetResourcesPath(bool isPortrait, int index, EnumRace race, EnumSex sex, EnumResourceType type, int skin)
        {
            string basePath = isPortrait ? Util.GeneratorPortraitPath : Util.GeneratorCharasetPath;
            string path     = "";

            switch (type)
            {
            case EnumResourceType.Skin:
                path = string.Format(@"{0}/{1}_{2}_Skin{3}.png", basePath, race, sex, skin);
                break;

            case EnumResourceType.Face:
            case EnumResourceType.Nose:
                path = string.Format(@"{0}/{1}_{2}_{3}{4}_Skin{5}.png", basePath, race, sex, type, index, skin);
                break;

            case EnumResourceType.Ears:
                path = string.Format(@"{0}/{1}_{2}_{3}_Skin{4}.png", basePath, race, sex, type, skin);
                break;

            case EnumResourceType.Hair1:
            case EnumResourceType.Hair2:
                path = string.Format(@"{0}/{1}_{2}_{3}_{4}.png", basePath, race, sex, type, index);
                break;

            default:
                path = string.Format(@"{0}/{1}_{2}_{3}{4}.png", basePath, race, sex, type, index);
                break;
            }

            return(path);
        }
        private void OnRaceChanged(EnumRace race)
        {
            if (race == EnumRace.Human)
            {
                NationItems = Enum.GetNames(typeof(EnumHumanNation)).ToList();
            }
            else
            {
                NationItems = Enum.GetNames(typeof(EnumOgierNation)).ToList();
            }

            OnPropertyChanged("NationItems");
            Race = race;
        }
        public CreatePlayerAvatarViewModel(CreatePlayerAvatarView view, EnumRace race, EnumSex sex,
                                           int skin, int face, int hair1, int hair2, int hairColor, int eyes, int eyesColor, int nose, int mouth, int beard, int beardColor, int extra)
        {
            _view            = view;
            FinishCommand    = new RelayCommand((o) => Finish(), (o) => true);
            CancelCommand    = new RelayCommand((o) => Cancel(), (o) => true);
            _creationManager = new CreationManager();
            _race            = race;
            _sex             = sex;
            SelectedSkin     = skin;
            SelectedFace     = face;
            SelectedHair1    = hair1;
            SelectedHair2    = hair2;
            SelectedEyes     = eyes;
            SelectedNose     = nose;
            SelectedMouth    = mouth;
            SelectedBeard    = beard;
            SelectedExtra    = extra;

            SkinItems      = CreateItemsList(_creationManager.GetResourcesCounter(_race, _sex, EnumResourceType.Skin, SelectedSkin + 1));
            FaceItems      = CreateItemsList(_creationManager.GetResourcesCounter(_race, _sex, EnumResourceType.Face, SelectedSkin + 1));
            Hair1Items     = CreateItemsList(_creationManager.GetResourcesCounter(_race, _sex, EnumResourceType.Hair1, -1) + 1);
            Hair2Items     = CreateItemsList(_creationManager.GetResourcesCounter(_race, _sex, EnumResourceType.Hair2, -1) + 1);
            EyesItems      = CreateItemsList(_creationManager.GetResourcesCounter(_race, _sex, EnumResourceType.Eyes, SelectedSkin + 1));
            EyesColorItems = new List <SolidColorBrush>()
            {
                new SolidColorBrush(Colors.LightGray),
                new SolidColorBrush(Colors.DeepSkyBlue),
                new SolidColorBrush(Colors.Green),
                new SolidColorBrush(Colors.SaddleBrown),
                new SolidColorBrush(Colors.Black)
            };
            NoseItems  = CreateItemsList(_creationManager.GetResourcesCounter(_race, _sex, EnumResourceType.Nose, SelectedSkin + 1));
            MouthItems = CreateItemsList(_creationManager.GetResourcesCounter(_race, _sex, EnumResourceType.Mouth, -1));
            BeardItems = CreateItemsList(_creationManager.GetResourcesCounter(_race, _sex, EnumResourceType.Beard, -1) + 1);
            ExtraItems = CreateItemsList(_creationManager.GetResourcesCounter(_race, _sex, EnumResourceType.Extras, -1));

            PropertyChanged += CreatePlayerAvatarViewModel_PropertyChanged;
            Refresh();
        }
Exemplo n.º 4
0
 public Mobile(
     Schema.TemplateMobileRow mobile,
     Schema.TemplateObjectRow template,
     Schema.ObjectInstanceRow instance
     )
     : base(template, instance)
 {
     Level        = mobile.Level;
     Cognition    = mobile.Cognition;
     Willpower    = mobile.Willpower;
     Dexterity    = mobile.Dexterity;
     Strength     = mobile.Strength;
     Constitution = mobile.Constitution;
     Race         = (EnumRace)mobile.EnumRaceID;
     MobileSize   = (EnumMobileSize)mobile.EnumMobileSizeID;
     MobileState  = (EnumMobileState)mobile.EnumMobileStateID;
     MaxHitPoints = mobile.EnumMobileSizeID * 100 + Level * Constitution / 2;
     HitPoints    = (float)instance.HitpointsCurrent;
     MaxEnergy    = mobile.EnumMobileSizeID * 100 + Level * Constitution / 2;
     Energy       = (float)instance.EnergyCurrent;
     Possessable  = instance.GetMobilePossesableByPlayerRows().Length > 0;
 }
Exemplo n.º 5
0
        public int GetResourcesCounter(EnumRace race, EnumSex sex, EnumResourceType type, int skin)
        {
            var    dir    = type == EnumResourceType.Skin ? Util.GeneratorCharasetPath : Util.GeneratorPortraitPath;
            string prefix = string.Format("{0}_{1}_{2}", race, sex, type);

            if (type == EnumResourceType.Skin)
            {
                prefix = string.Format("{0}_{1}_Skin", race, sex);
            }
            string sufix = "";

            switch (type)
            {
            case EnumResourceType.Face:
            case EnumResourceType.Nose:
                sufix = string.Format("Skin{0}", skin);
                break;
            }

            var pattern = string.Format("{0}*{1}.png", prefix, sufix);
            var files   = Directory.GetFiles(dir, pattern);

            return(files.Length);
        }