예제 #1
0
        public bool Save()
        {
            HCEX.CampaignSave saveData = _saveManager.SaveData;
            try
            {
                int validateF = int.Parse(txtFragNades.Text);
                int validateP = int.Parse(txtPlasmaNades.Text);

                if (validateF > 127 && validateF < 0)
                {
                    txtFragNades.Text = "127";
                }
                if (validateP > 127 && validateP < 0)
                {
                    txtPlasmaNades.Text = "127";
                }

                saveData.PlayerBiped.FragGrenades   = Convert.ToSByte(validateF);
                saveData.PlayerBiped.PlasmaGrenades = Convert.ToSByte(validateP);
            }
            catch
            {
                mainWindow.showMessage("Invalid grenade count, you can only have a maximum of 127, and a minimum of 0", "INVALID COUNT");
                return(false);
            }
            return(true);
        }
예제 #2
0
 public void Load()
 {
     HCEX.CampaignSave saveData    = _saveManager.SaveData;
     HCEX.BipedObject  playerBiped = saveData.PlayerBiped;
     loadWeapon(playerBiped.PrimaryWeapon, gridPrimary, txtPrimaryAmmo, txtPrimaryClip);
     loadWeapon(playerBiped.SecondaryWeapon, gridSecondary, txtSecondaryAmmo, txtSecondaryClip);
     loadWeapon(playerBiped.TertiaryWeapon, gridTertiary, txtTertiaryAmmo, txtTertiaryClip);
     loadWeapon(playerBiped.QuaternaryWeapon, gridQuaternary, txtQuaternaryAmmo, txtQuaternaryClip);
 }
예제 #3
0
        public void Load()
        {
            HCEX.CampaignSave saveData    = _saveManager.SaveData;
            HCEX.BipedObject  playerBiped = saveData.PlayerBiped;
            checkInvincible.IsChecked = playerBiped.Invincible;

            txtPlayerXCord.Text = playerBiped.Position.X.ToString();
            txtPlayerYCord.Text = playerBiped.Position.Y.ToString();
            txtPlayerZCord.Text = playerBiped.Position.Z.ToString();
        }
예제 #4
0
 public static void AllWeaponsMaxAmmo(HCEX.CampaignSave saveData)
 {
     foreach (HCEX.GameObject obj in saveData.Objects)
     {
         HCEX.WeaponObject weapon = obj as HCEX.WeaponObject;
         if (weapon != null)
         {
             weapon.Ammo     = 32767;
             weapon.ClipAmmo = 32767;
         }
     }
 }
예제 #5
0
        public void Load()
        {
            HCEX.CampaignSave saveData = _saveManager.SaveData;
            lblGamertag.Content   = Gamertag;
            lblMapName.Text       = Util.EditorSupport.GetMissionName(saveData) + " - " + saveData.Map;
            lblDifficulty.Content = saveData.CFGData.Difficulty;

            // Try to load the mission image
            try
            {
                string mapName = saveData.Map;
                mapName = mapName.Substring(mapName.LastIndexOf('\\') + 1);
                var source = new Uri(@"/Liberty;component/Images/hcexMaps/" + mapName + ".png", UriKind.Relative);
                imgMapImage.Source = new BitmapImage(source);

                int diff = saveData.CFGData.DifficultyID + 1;
                source = new Uri(@"/Liberty;component/Images/Difficulty/Blam_Default/" + diff.ToString() + ".png", UriKind.Relative);
                imgDifficulty.Source = new BitmapImage(source);
            }
            catch { }
        }
예제 #6
0
        public static string GetMissionName(HCEX.CampaignSave saveData)
        {
            switch (saveData.Map)
            {
            case @"levels\a10\a10":
                return("The Pillar of Autumn");

            case @"levels\a30\a30":
                return("Halo");

            case @"levels\a50\a50":
                return("The Truth and Reconciliation");

            case @"levels\b30\b30":
                return("The Silent Cartographer");

            case @"levels\b40\b40":
                return("Assault on the Control Room");

            case @"levels\c10\c10":
                return("343 Guilty Spark");

            case @"levels\c20\c20":
                return("The Library");

            case @"levels\c40\c40":
                return("Two Betrayals");

            case @"levels\d20\d20":
                return("Keys");

            case @"levels\d40\d40":
                return("The Maw");

            default:
                return(saveData.Map.Substring(saveData.Map.LastIndexOf('\\') + 1).ToLower());
            }
        }
예제 #7
0
        public bool Save()
        {
            HCEX.CampaignSave saveData = _saveManager.SaveData;

            HCEX.BipedObject playerBiped = saveData.PlayerBiped;
            playerBiped.MakeInvincible((bool)checkInvincible.IsChecked);

            // TODO: Actually detect if this is a vehicle, and not some homosexual dragon (fixhax)
            // I think that should work AMD -Xerax
            GameObject playerCarrier = playerBiped.Carrier;

            if (playerCarrier != null && playerCarrier.TagGroup == TagGroup.Vehi)
            {
                playerBiped.Carrier.MakeInvincible((bool)checkInvincible.IsChecked);
            }

            float newX = Convert.ToSingle(txtPlayerXCord.Text);
            float newY = Convert.ToSingle(txtPlayerYCord.Text);
            float newZ = Convert.ToSingle(txtPlayerZCord.Text);

            playerBiped.Position = new MathUtil.Vector3(newX, newY, newZ);

            return(true);
        }
예제 #8
0
        public listcordWindow(HCEX.CampaignSave _hcex, HCEX.TagGroup group)
        {
            this.InitializeComponent();

            lblTitle.Text   = "COPY COORDINATES";
            lblSubInfo.Text = "Select an object to copy coordinates from";

            GID = 0;

            foreach (HCEX.GameObject obj in _hcex.Objects)
            {
                if (obj.TagGroup == group && obj != null)
                {
                    ListBoxItem lbi     = new ListBoxItem();
                    string      posData = " -- [X: {0} - Y: {1} - Z: {2}]";
                    lbi.Content = obj.Index.Value.ToString("X") + string.Format(posData, obj.Position.X.ToString(),
                                                                                obj.Position.Y.ToString(),
                                                                                obj.Position.Z.ToString());
                    lbi.Tag = obj;

                    listObjects.Items.Add(lbi);
                }
            }
        }
예제 #9
0
 public void Load()
 {
     HCEX.CampaignSave saveData = _saveManager.SaveData;
     txtFragNades.Text   = saveData.PlayerBiped.FragGrenades.ToString();
     txtPlasmaNades.Text = saveData.PlayerBiped.PlasmaGrenades.ToString();
 }
예제 #10
0
        public bool Save()
        {
            HCEX.CampaignSave saveData    = _saveManager.SaveData;
            HCEX.BipedObject  playerBiped = saveData.PlayerBiped;

            try
            {
                int primAmmo = 0;
                int primClip = 0;
                int secAmmo  = 0;
                int secClip  = 0;
                int terAmmo  = 0;
                int terClip  = 0;
                int quadAmmo = 0;
                int quadClip = 0;

                if (txtPrimaryAmmo.IsEnabled)
                {
                    primAmmo = int.Parse(txtPrimaryAmmo.Text);
                    primClip = int.Parse(txtPrimaryClip.Text);
                }
                if (txtSecondaryAmmo.IsEnabled)
                {
                    secAmmo = int.Parse(txtSecondaryAmmo.Text);
                    secClip = int.Parse(txtSecondaryClip.Text);
                }
                if (txtTertiaryAmmo.IsEnabled)
                {
                    terAmmo = int.Parse(txtTertiaryAmmo.Text);
                    terClip = int.Parse(txtTertiaryClip.Text);
                }
                if (txtQuaternaryAmmo.IsEnabled)
                {
                    quadAmmo = int.Parse(txtQuaternaryAmmo.Text);
                    quadClip = int.Parse(txtQuaternaryClip.Text);
                }

                if (txtPrimaryAmmo.IsEnabled)
                {
                    if (primAmmo > 32767 && primAmmo < 0)
                    {
                        txtPrimaryAmmo.Text = "32767";
                    }
                    if (primClip > 32767 && primClip < 0)
                    {
                        txtPrimaryClip.Text = "32767";
                    }
                }
                if (txtSecondaryAmmo.IsEnabled)
                {
                    if (secAmmo > 32767 && secAmmo < 0)
                    {
                        txtSecondaryAmmo.Text = "32767";
                    }
                    if (secClip > 32767 && secClip < 0)
                    {
                        txtSecondaryClip.Text = "32767";
                    }
                }
                if (txtTertiaryAmmo.IsEnabled)
                {
                    if (terAmmo > 32767 && terAmmo < 0)
                    {
                        txtTertiaryAmmo.Text = "32767";
                    }
                    if (terClip > 32767 && terClip < 0)
                    {
                        txtTertiaryClip.Text = "32767";
                    }
                }
                if (txtQuaternaryAmmo.IsEnabled)
                {
                    if (quadAmmo > 32767 && quadAmmo < 0)
                    {
                        txtQuaternaryAmmo.Text = "32767";
                    }
                    if (quadAmmo > 32767 && quadAmmo < 0)
                    {
                        txtQuaternaryClip.Text = "32767";
                    }
                }

                saveWeapon(playerBiped.PrimaryWeapon, txtPrimaryAmmo, txtPrimaryClip);
                saveWeapon(playerBiped.SecondaryWeapon, txtSecondaryAmmo, txtSecondaryClip);
                saveWeapon(playerBiped.TertiaryWeapon, txtTertiaryAmmo, txtTertiaryClip);
                saveWeapon(playerBiped.QuaternaryWeapon, txtQuaternaryAmmo, txtQuaternaryClip);
            }
            catch
            {
                mainWindow.showMessage("Invalid weapon ammo count, you can only have a maximum of 32767, and a minimum of 0", "INVALID AMMO");
                return(false);
            }
            return(true);
        }