예제 #1
0
        public void LoadNPC(string[] parse)
        {
            pnlNPCList.Visible = false;
            pnlNPCEditor.Visible = true;
            this.Size = pnlNPCEditor.Size;

            npc = new Logic.Editors.NPCs.EditableNPC();

            npc.Name = parse[1];
            npc.AttackSay = parse[2];
            npc.Form = parse[3].ToInt();
            npc.Species = parse[4].ToInt();
            npc.ShinyChance = parse[5].ToInt();
            npc.Behavior = (Enums.NpcBehavior)parse[6].ToInt();
            npc.RecruitRate = parse[7].ToInt();
            npc.AIScript = parse[8];
            npc.SpawnsAtDawn = parse[9].ToBool();
            npc.SpawnsAtDay = parse[10].ToBool();
            npc.SpawnsAtDusk = parse[11].ToBool();
            npc.SpawnsAtNight = parse[12].ToBool();

            int n = 13;
            // Load npc moves
            for (int i = 0; i < npc.Moves.Length; i++) {
                npc.Moves[i] = parse[n].ToInt();

                n += 1;
            }
            // Load npc drops
            for (int i = 0; i < npc.Drops.Length; i++) {
                npc.Drops[i] = new Logic.Editors.NPCs.EditableNpcDrop();
                npc.Drops[i].ItemNum = parse[n].ToInt();
                npc.Drops[i].ItemValue = parse[n + 1].ToInt();
                npc.Drops[i].Chance = parse[n + 2].ToInt();
                npc.Drops[i].Tag = parse[n + 3];

                n += 4;
            }

            txtName.Text = npc.Name;
            txtAttackSay.Text = npc.AttackSay;
            nudForm.Value = npc.Form;
            nudSpecies.Value = npc.Species;
            nudShinyChance.Value = npc.ShinyChance;
            chkSpawnsAtDawn.Checked = npc.SpawnsAtDawn;
            chkSpawnsAtDay.Checked = npc.SpawnsAtDay;
            chkSpawnsAtDusk.Checked = npc.SpawnsAtDusk;
            chkSpawnsAtNight.Checked = npc.SpawnsAtNight;
            cmbBehaviour.SelectItem(npc.Behavior.ToString());

            nudRecruitRate.Value = npc.RecruitRate;
            for (int i = 0; i < npc.Moves.Length; i++) {
                nudMove[i].Value = npc.Moves[i];
            }
            nudDropSelector.Value = 1;
            nudDropItemNum.Value = npc.Drops[0].ItemNum;
            nudDropItemAmount.Value = npc.Drops[0].ItemValue;
            nudDropItemChance.Value = npc.Drops[0].Chance;
            txtDropItemTag.Text = npc.Drops[0].Tag;

            btnEdit.Text = "Edit";
        }
예제 #2
0
파일: winNPCPanel.cs 프로젝트: pmdcp/Client
        public void LoadNPC(string[] parse)
        {
            pnlNPCList.Visible   = false;
            pnlNPCEditor.Visible = true;
            this.Size            = pnlNPCEditor.Size;

            npc = new Logic.Editors.NPCs.EditableNPC();

            npc.Name          = parse[1];
            npc.AttackSay     = parse[2];
            npc.Form          = parse[3].ToInt();
            npc.Species       = parse[4].ToInt();
            npc.ShinyChance   = parse[5].ToInt();
            npc.Behavior      = (Enums.NpcBehavior)parse[6].ToInt();
            npc.RecruitRate   = parse[7].ToInt();
            npc.AIScript      = parse[8];
            npc.SpawnsAtDawn  = parse[9].ToBool();
            npc.SpawnsAtDay   = parse[10].ToBool();
            npc.SpawnsAtDusk  = parse[11].ToBool();
            npc.SpawnsAtNight = parse[12].ToBool();

            int n = 13;

            // Load npc moves
            for (int i = 0; i < npc.Moves.Length; i++)
            {
                npc.Moves[i] = parse[n].ToInt();

                n += 1;
            }
            // Load npc drops
            for (int i = 0; i < npc.Drops.Length; i++)
            {
                npc.Drops[i]           = new Logic.Editors.NPCs.EditableNpcDrop();
                npc.Drops[i].ItemNum   = parse[n].ToInt();
                npc.Drops[i].ItemValue = parse[n + 1].ToInt();
                npc.Drops[i].Chance    = parse[n + 2].ToInt();
                npc.Drops[i].Tag       = parse[n + 3];

                n += 4;
            }

            txtName.Text             = npc.Name;
            txtAttackSay.Text        = npc.AttackSay;
            nudForm.Value            = npc.Form;
            nudSpecies.Value         = npc.Species;
            nudShinyChance.Value     = npc.ShinyChance;
            chkSpawnsAtDawn.Checked  = npc.SpawnsAtDawn;
            chkSpawnsAtDay.Checked   = npc.SpawnsAtDay;
            chkSpawnsAtDusk.Checked  = npc.SpawnsAtDusk;
            chkSpawnsAtNight.Checked = npc.SpawnsAtNight;
            cmbBehaviour.SelectItem(npc.Behavior.ToString());

            nudRecruitRate.Value = npc.RecruitRate;
            for (int i = 0; i < npc.Moves.Length; i++)
            {
                nudMove[i].Value = npc.Moves[i];
            }
            nudDropSelector.Value   = 1;
            nudDropItemNum.Value    = npc.Drops[0].ItemNum;
            nudDropItemAmount.Value = npc.Drops[0].ItemValue;
            nudDropItemChance.Value = npc.Drops[0].Chance;
            txtDropItemTag.Text     = npc.Drops[0].Tag;

            btnEdit.Text = "Edit";
        }
예제 #3
0
        public void LoadNPC(string[] parse)
        {
            pnlNPCList.Visible   = false;
            pnlNPCEditor.Visible = true;
            this.Size            = pnlNPCEditor.Size;

            npc = new Logic.Editors.NPCs.EditableNPC();

            var n = 2;

            npc.Name           = parse[n];
            npc.AttackSay      = parse[n + 1];
            npc.AttackSay2     = parse[n + 2];
            npc.AttackSay3     = parse[n + 3];
            npc.Form           = parse[n + 4].ToInt();
            npc.Species        = parse[n + 5].ToInt();
            npc.ShinyChance    = parse[n + 6].ToInt();
            npc.Behavior       = (Enums.NpcBehavior)parse[n + 7].ToInt();
            npc.RecruitRate    = parse[n + 8].ToInt();
            npc.AIScript       = parse[n + 9];
            npc.SpawnsAtDawn   = parse[n + 10].ToBool();
            npc.SpawnsAtDay    = parse[n + 11].ToBool();
            npc.SpawnsAtDusk   = parse[n + 12].ToBool();
            npc.SpawnsAtNight  = parse[n + 13].ToBool();
            npc.SpawnDirection = (Enums.Direction)parse[n + 14].ToInt();
            npc.SpawnWeather   = (Enums.Weather)parse[n + 15].ToInt();
            npc.Story          = parse[n + 16].ToInt();
            npc.Shop           = parse[n + 17].ToInt();
            npc.DeathStory     = parse[n + 18].ToInt();
            npc.Costume        = parse[n + 19].ToInt();

            n += 20;
            // Load npc moves
            for (int i = 0; i < npc.Moves.Length; i++)
            {
                npc.Moves[i] = parse[n].ToInt();

                n += 1;
            }
            // Load npc drops
            for (int i = 0; i < npc.Drops.Length; i++)
            {
                npc.Drops[i]           = new Logic.Editors.NPCs.EditableNpcDrop();
                npc.Drops[i].ItemNum   = parse[n].ToInt();
                npc.Drops[i].ItemValue = parse[n + 1].ToInt();
                npc.Drops[i].Chance    = parse[n + 2].ToInt();
                npc.Drops[i].Tag       = parse[n + 3];

                n += 4;
            }

            txtName.Text             = npc.Name;
            txtAttackSay.Text        = npc.AttackSay;
            txtAttackSay2.Text       = npc.AttackSay2;
            txtAttackSay3.Text       = npc.AttackSay3;
            nudForm.Value            = npc.Form;
            nudSpecies.Value         = npc.Species;
            nudShinyChance.Value     = npc.ShinyChance;
            chkSpawnsAtDawn.Checked  = npc.SpawnsAtDawn;
            chkSpawnsAtDay.Checked   = npc.SpawnsAtDay;
            chkSpawnsAtDusk.Checked  = npc.SpawnsAtDusk;
            chkSpawnsAtNight.Checked = npc.SpawnsAtNight;
            cmbBehaviour.SelectItem(npc.Behavior.ToString());

            nudRecruitRate.Value = npc.RecruitRate;
            for (int i = 0; i < npc.Moves.Length; i++)
            {
                nudMove[i].Value = npc.Moves[i];
            }
            nudDropSelector.Value   = 1;
            nudDropItemNum.Value    = npc.Drops[0].ItemNum;
            nudDropItemAmount.Value = npc.Drops[0].ItemValue;
            nudDropItemChance.Value = npc.Drops[0].Chance;
            txtDropItemTag.Text     = npc.Drops[0].Tag;

            btnEdit.Text = "Edit";
        }