Exemple #1
0
        protected void LoadAspirations()
        {
            pa = SimPe.Data.MetaData.AspirationTypes.Nothing;
            sa = SimPe.Data.MetaData.AspirationTypes.Nothing;
            if (parent == null)
            {
                return;
            }
            pa = parent.CharacterDescription.Aspiration;

            if (aspeditor == null)
            {
                return;
            }
            SimPe.Data.MetaData.AspirationTypes[] asps = aspeditor.LoadAspirations(this.parent);

            if (asps == null)
            {
                return;
            }
            if (asps.Length > 0)
            {
                pa = asps[0];
            }
            if (asps.Length > 1)
            {
                sa = asps[1];
            }
        }
Exemple #2
0
 protected void StoreAspirations()
 {
     if (parent == null)
     {
         return;
     }
     if (aspeditor == null)
     {
         return;
     }
     SimPe.Data.MetaData.AspirationTypes[] asps = new SimPe.Data.MetaData.AspirationTypes[] { pa, sa };
     aspeditor.StoreAspirations(asps, parent);
 }
Exemple #3
0
        public SimPe.Data.MetaData.AspirationTypes[] LoadAspirations(SDesc sim)
        {
            if (sim == null)
            {
                return(null);
            }
            LoadMemoryResource(sim);
            ushort sval = GetSecondaryAspirationValue(sim);

            SimPe.Data.MetaData.AspirationTypes[] res = new SimPe.Data.MetaData.AspirationTypes[] { SimPe.Data.MetaData.AspirationTypes.Nothing, SimPe.Data.MetaData.AspirationTypes.Nothing };
            ushort a = (ushort)sim.CharacterDescription.Aspiration;


            if (sval != 0)
            {
                res[0] = (SimPe.Data.MetaData.AspirationTypes)(a ^ sval);
                res[1] = (SimPe.Data.MetaData.AspirationTypes)(a & sval);
            }
            else
            {
                Array arr = Enum.GetValues(typeof(SimPe.Data.MetaData.AspirationTypes));


                foreach (ushort i in arr)
                {
                    if ((a & i) == i)
                    {
                        if (res[0] == SimPe.Data.MetaData.AspirationTypes.Nothing)
                        {
                            res[0] = (SimPe.Data.MetaData.AspirationTypes)i;
                        }
                        else
                        {
                            res[1] = (SimPe.Data.MetaData.AspirationTypes)i;
                        }
                    }
                }
            }

            return(res);
        }