예제 #1
0
 protected override void OnClone(SQLiteConnection conn)
 {
     Base.Clone(conn);
     ScaledStats.Clone(conn);
     ElementRates.Clone(conn);
     StateRates.Clone(conn);
 }
예제 #2
0
 protected override string[] OnCreate(SQLiteConnection conn)
 {
     StateRates.Create(conn);
     ElementRates.Create(conn);
     SQLDB.Write(conn, "UPDATE PassiveEffect SET ElementRates = '" + ElementRates.StringList + "' WHERE PassiveEffect_ID = " + ClassTemplateId + ";");
     return(null);
 }
예제 #3
0
        public override string ValidateInputs()
        {
            string err         = Base.ValidateInputs();
            string scaledStats = "";

            if (EnemyClassInput.SelectedIndex == 0)
            {
                scaledStats = ScaledStats.ValidateInputs(0, 85);
                if (scaledStats != "")
                {
                    scaledStats = "Class is set to 'None': " + scaledStats;
                }
            }
            else
            {
                scaledStats = ScaledStats.ValidateInputs(-3, 3);
                if (scaledStats != "")
                {
                    scaledStats = "Enemy has a class: " + scaledStats;
                }
            }
            err += scaledStats;
            err += ElementRates.ValidateInputs();
            err += StateRates.ValidateInputs();
            if (!Utils.PosInt(ExpInput.Text))
            {
                err += "EXP Gain must be a positive integer";
            }
            if (!Utils.PosInt(GoldInput.Text))
            {
                err += "Gold Gain must be a positive integer";
            }
            return(err);
        }
예제 #4
0
        public override string ValidateInputs()
        {
            string err = "";

            err += StateRates.ValidateInputs();
            err += ElementRates.ValidateInputs();
            return(err);
        }
예제 #5
0
 protected override void OnUpdate(SQLiteConnection conn)
 {
     Base.Update(conn);
     ScaledStats.Update(conn);
     ElementRates.Update(conn);
     StateRates.Update(conn);
     SQLUpdate(conn, "EnemyClass=@EnemyClass, ElementRates=@ElementRates, Width=@Width, Height=@Height, BossType=@BossType, Flying=@Flying, Exp=@Exp, Gold=@Gold");
 }
예제 #6
0
 protected override void OnCreate(SQLiteConnection conn)
 {
     Base.Create(conn);
     ScaledStats.Create(conn);
     ElementRates.Create(conn);
     SQLCreate(conn, "BaseObjectID, ScaledStats, EnemyClass, ElementRates, Width, Height, BossType, Flying, Exp, Gold",
               "@BaseObjectID, @ScaledStats, @EnemyClass, @ElementRates, @Width, @Height, @BossType, @Flying, @Exp, @Gold");
     StateRates.Create(conn);
 }
예제 #7
0
 protected override void OnClone(SQLiteConnection conn)
 {
     Base.Clone(conn);
     NatStats.Clone(conn);
     ClassChoices.Clone(conn);
     Skills.Clone(conn);
     StateRates.Clone(conn);
     ElementRates.Clone(conn);
     Relations.Clone(conn);
 }
예제 #8
0
 protected override void SetupTableData()
 {
     StateRates.Setup("PassiveEffect", "State", "State Rates", new List <string> {
         "State", "%"
     });
     ElementRates.Setup("PassiveEffect", "TypesLists", "Elements", "Element Rates", new List <string> {
         "Element", "%"
     });
     StateRates.AttributeName   = "Vulnerability";
     ElementRates.AttributeName = "ElementRates";
 }
예제 #9
0
 protected override void OnUpdate(SQLiteConnection conn)
 {
     Base.Update(conn);
     NatStats.Update(conn);
     ClassChoices.Update(conn);
     Skills.Update(conn);
     StateRates.Update(conn);
     ElementRates.Update(conn);
     Relations.Update(conn);
     SQLUpdate(conn, "Companionship=@Companionship, SavePartnerRate=@SavePartnerRate, CounterattackRate=@CounterattackRate, AssistDamageRate=@AssistDamageRate");
 }
예제 #10
0
 protected override void OnCreate(SQLiteConnection conn)
 {
     Base.Create(conn);
     NatStats.Create(conn);
     ElementRates.Create(conn);
     SQLCreate(conn, "BaseObjectID, NaturalStats, ElementRates, Companionship, SavePartnerRate, CounterattackRate, AssistDamageRate",
               "@BaseObjectID, @NaturalStats, @ElementRates, @Companionship, @SavePartnerRate, @CounterattackRate, @AssistDamageRate");
     ClassChoices.Create(conn);
     Skills.Create(conn);
     StateRates.Create(conn);
     Relations.Create(conn);
 }
예제 #11
0
 protected override void OnRead(SQLiteDataReader reader)
 {
     Base.Read(reader);
     ScaledStats.Read(reader);
     EnemyClassInput.SelectedIndex = EnemyClassData.FindIndex(reader["EnemyClass"]);
     ElementRates.Read();
     StateRates.Read();
     WidthInput.SelectedIndex    = int.Parse(reader["Width"].ToString());
     HeightInput.SelectedIndex   = int.Parse(reader["Height"].ToString());
     BossTypeInput.SelectedIndex = int.Parse(reader["BossType"].ToString());
     FlyingInput.IsChecked       = reader["Flying"].ToString() == "True" ? true : false;
     ExpInput.Text  = reader["Exp"].ToString();
     GoldInput.Text = reader["Gold"].ToString();
 }
예제 #12
0
 protected override void OnRead(SQLiteDataReader reader)
 {
     Base.Read(reader);
     NatStats.Read(reader);
     ClassChoices.Read();
     Skills.Read();
     StateRates.Read();
     ElementRates.Read();
     Relations.Read();
     CompanionshipInput.Text     = reader["Companionship"].ToString();
     SavePartnerRateInput.Text   = reader["SavePartnerRate"].ToString();
     CounterattackRateInput.Text = reader["CounterattackRate"].ToString();
     AssistDamageRateInput.Text  = reader["AssistDamageRate"].ToString();
 }
예제 #13
0
 protected override void SetupTableData()
 {
     EnemyClassData = new ComboBoxInputData("BattlerClass_ID", "Name", "BaseObject JOIN BattlerClass", "BaseObjectID = BaseObject_ID", "Name", ComboBoxInputData.ADD_NULL_INPUT);
     StateRates.Setup("Enemy", "State", "State Rates", new List <string> {
         "State", "%"
     });
     ElementRates.Setup("Enemy", "TypesLists", "Elements", "Element Rates", new List <string> {
         "Element", "%"
     });
     WidthInput.ItemsSource      = SizeOptions;
     HeightInput.ItemsSource     = SizeOptions;
     BossTypeInput.ItemsSource   = BossTypeOptions;
     EnemyClassInput.ItemsSource = EnemyClassData.OptionsListNames;
     StateRates.AttributeName    = "Vulnerability";
     ElementRates.AttributeName  = "ElementRates";
 }
예제 #14
0
 protected override void SetupTableData()
 {
     ClassChoices.Setup("Player", "BattlerClass", "Possible Classes", new List <string> {
         "Class"
     });
     Skills.Setup("Player", "Skill", "Skill Set", new List <string> {
         "Skill", "Level"
     });
     StateRates.Setup("Player", "State", "State Rates", new List <string> {
         "State", "%"
     });
     ElementRates.Setup("Player", "TypesLists", "Elements", "Element Rates", new List <string> {
         "Element", "%"
     });
     Relations.Setup("Player", "Player", "Compatibilities", new List <string> {
         "Player", "Comp."
     });
     Skills.AttributeName       = "LevelRequired";
     StateRates.AttributeName   = "Vulnerability";
     ElementRates.AttributeName = "ElementRates";
     Relations.AttributeName    = "CompanionshipTo";
 }
예제 #15
0
        public override string ValidateInputs()
        {
            string err = Base.ValidateInputs();

            err += NatStats.ValidateInputs(-3, 3);
            err += ClassChoices.ValidateInputs();
            if (ClassChoices.Count <= 0)
            {
                err += "Player must have at least one possible class\n";
            }
            err += Skills.ValidateInputs();
            err += StateRates.ValidateInputs();
            err += ElementRates.ValidateInputs();
            err += Relations.ValidateInputs();
            bool relationTabErrored = false;

            if (!Utils.PosInt(CompanionshipInput.Text, 1000))
            {
                relationTabErrored = true;
            }
            if (!Utils.PosInt(SavePartnerRateInput.Text, 1000))
            {
                relationTabErrored = true;
            }
            if (!Utils.PosInt(CounterattackRateInput.Text, 1000))
            {
                relationTabErrored = true;
            }
            if (!Utils.PosInt(AssistDamageRateInput.Text, 1000))
            {
                relationTabErrored = true;
            }
            if (relationTabErrored)
            {
                err += "All fillable inputs in 'Relations' must be integers between 0 and 1000\n";
            }
            return(err);
        }
예제 #16
0
 protected override void OnRead(SQLiteDataReader reader)
 {
     StateRates.Read();
     ElementRates.Read();
 }
예제 #17
0
 public override void ParameterizeAttributes()
 {
     StateRates.ParameterizeAttributes();
     ElementRates.ParameterizeAttributes();
 }
예제 #18
0
 protected override void OnClone(SQLiteConnection conn)
 {
     StateRates.Clone(conn);
     ElementRates.Clone(conn);
 }
예제 #19
0
 protected override void OnDelete(SQLiteConnection conn)
 {
     StateRates.Delete(conn);
     ElementRates.Delete(conn);
 }
예제 #20
0
 protected override string OnUpdate(SQLiteConnection conn)
 {
     StateRates.Update(conn);
     ElementRates.Update(conn);
     return("");
 }