Ejemplo n.º 1
0
 public TSdb()
 {
     SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     TSEtable = new SqlTable("TSEmailer",
         new SqlColumn("TSEindex", MySqlDbType.Int32) { AutoIncrement = true, Primary = true, Unique = true, NotNull = true },
         new SqlColumn("PlayerID", MySqlDbType.Int32) { Unique = true, NotNull = true },
         new SqlColumn("PlayerName", MySqlDbType.Text) { Length = 250, NotNull = true },
         new SqlColumn("RecordType", MySqlDbType.Int32) { NotNull = true }, //RecordTypes: ['1' = Player Settings] ['2' = OnJoin notifing address])
         new SqlColumn("address", MySqlDbType.Text) { Length = 250 },
         new SqlColumn("players", MySqlDbType.Text) { Length = 10, DefaultValue = "true" },
         new SqlColumn("admins", MySqlDbType.Text) { Length = 10, DefaultValue = "true" },
         new SqlColumn("eblast", MySqlDbType.Text) { Length = 10, DefaultValue = "true" },
         new SqlColumn("reply", MySqlDbType.Text) { Length = 10, DefaultValue = "true" },
         new SqlColumn("notify", MySqlDbType.Text) { Length = 10, DefaultValue = "true" }
         );
     SetupDBTable();
 }
Ejemplo n.º 2
0
        public static void InitMessageDB()
        {
            string sql = Path.Combine(terraDB);
            if (!File.Exists(terraDB))
            {
                SqliteConnection.CreateFile(terraDB);
            }

            DB = new SqliteConnection(string.Format("uri=file://{0},Version=3", sql));
            SQLWriter = new SqlTableCreator(DB, new SqliteQueryCreator());
            SQLEditor = new SqlTableEditor(DB, new SqliteQueryCreator());

            var table = new SqlTable("MessagePlugin",
                new SqlColumn("Id", MySqlDbType.Int32) { Primary = true, AutoIncrement = true },
                new SqlColumn("mailFrom", MySqlDbType.Text),
                new SqlColumn("mailTo", MySqlDbType.Text),
                new SqlColumn("mailText", MySqlDbType.Text),
                new SqlColumn("Date", MySqlDbType.Text),
                new SqlColumn("Read", MySqlDbType.Text)
                );

            SQLWriter.EnsureExists(table);
        }
Ejemplo n.º 3
0
        public void OnInitialize()
        {
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());

            #region Setup
            bool sethouse = false;
            bool edithouse = false;
            bool enterlocked = false;

            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("sethouse"))
                        sethouse = true;
                    if (group.HasPermission("edithouse"))
                        edithouse = true;
                    if (group.HasPermission("enterlocked"))
                        enterlocked = true;
                }
            }
            List<string> perm = new List<string>();
            if (!sethouse)
                perm.Add("sethouse");
            if (!edithouse)
                perm.Add("edithouse");
            if (!enterlocked)
                perm.Add("enterlocked");
            TShock.Groups.AddPermissions("trustedadmin", perm);

            var table = new SqlTable("HousingDistrict",
                new SqlColumn("ID", MySqlDbType.Int32) { Primary = true, AutoIncrement = true },
                new SqlColumn("Name", MySqlDbType.Text) { Unique = true },
                new SqlColumn("TopX", MySqlDbType.Int32),
                new SqlColumn("TopY", MySqlDbType.Int32),
                new SqlColumn("BottomX", MySqlDbType.Int32),
                new SqlColumn("BottomY", MySqlDbType.Int32),
                new SqlColumn("Owners", MySqlDbType.Text),
                new SqlColumn("WorldID", MySqlDbType.Text),
                new SqlColumn("Locked", MySqlDbType.Int32)
            );
            SQLWriter.EnsureExists(table);

            for (int i = 0; i < SQLEditor.ReadColumn("HousingDistrict", "ID", new List<SqlValue>()).Count; i++)
            {
                string[] list = SQLEditor.ReadColumn("HousingDistrict", "Owners", new List<SqlValue>())[i].ToString().Split(',');
                List<string> items = new List<string>();

                foreach (string item in list)
                {
                    items.Add(item);
                }

                int locked = 0;

                if (SQLEditor.ReadColumn("HousingDistrict", "Locked", new List<SqlValue>())[i] != null)
                {
                    locked = (int)SQLEditor.ReadColumn("HousingDistrict", "Locked", new List<SqlValue>())[i];
                }

                Houses.Add(new House(
                    new Rectangle(
                    (int)SQLEditor.ReadColumn("HousingDistrict", "TopX", new List<SqlValue>())[i],
                    (int)SQLEditor.ReadColumn("HousingDistrict", "TopY", new List<SqlValue>())[i],
                    (int)SQLEditor.ReadColumn("HousingDistrict", "BottomX", new List<SqlValue>())[i],
                    (int)SQLEditor.ReadColumn("HousingDistrict", "BottomY", new List<SqlValue>())[i]),
                    items,
                    (int)SQLEditor.ReadColumn("HousingDistrict", "ID", new List<SqlValue>())[i],
                    (string)SQLEditor.ReadColumn("HousingDistrict", "Name", new List<SqlValue>())[i],
                    (string)SQLEditor.ReadColumn("HousingDistrict", "WorldID", new List<SqlValue>())[i],
                    locked));
            }
            #endregion

            #region Commands
            Commands.ChatCommands.Add(new Command("sethouse", HCommands.House, "house"));
            Commands.ChatCommands.Add(new Command("superadmin", HCommands.Convert, "converthouse"));
            Commands.ChatCommands.Add(new Command(HCommands.ChangeLock, "changelock"));
            Commands.ChatCommands.Add(new Command(HCommands.TellAll, "all"));
            #endregion
        }
Ejemplo n.º 4
0
        public void OnInitialize()
        {
            SetupConfig();
            for (int i = 0; i < RankConfig.Ranks.Length; i++ )
            {
                for(int j= 0 ; j <RankConfig.Ranks[i].Length;j++)
                    if (!TShock.Groups.GroupExists(RankConfig.Ranks[i][j]))
                        TShock.Groups.AddGroup(RankConfig.Ranks[i][j], RankConfig.RankPermissions[i][j]);
            }
            Commands.ChatCommands.Add(new Command("pouch", Rank, "rank"));
            Commands.ChatCommands.Add(new Command("changerank", ChRank, "chrank"));
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            bool dontchangemyrank = false;
            bool changerank = false;
            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("dontchangemyrank"))
                        dontchangemyrank = true;
                    if (group.HasPermission("chrank"))
                        changerank = true;
                }
            }

            List<string> permlist = new List<string>();
            if (!dontchangemyrank)
                permlist.Add("dontchangemyrank");
            if (!changerank)
                permlist.Add("chrank");
            TShock.Groups.AddPermissions("trustedadmin", permlist);
        }
Ejemplo n.º 5
0
        public void OnInitialize()
        {
            Main.ignoreErrors = true;
            Main.rand = new Random();

            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());

            Commands.ChatCommands.Add(new Command(QCommands.GetCoords, "getcoords"));
            Commands.ChatCommands.Add(new Command("usequest", QCommands.ListQuest, "listquests"));
            Commands.ChatCommands.Add(new Command("usequest", QCommands.StartQuest, "startquest"));
            Commands.ChatCommands.Add(new Command("questregion", QCommands.QuestRegion, "questr"));
            //Commands.ChatCommands.Add(new Command("reloadqdata", QCommands.LoadQuestData, "reloadquestdata"));
            Commands.ChatCommands.Add(new Command("giveq", QCommands.GiveQuest, "giveq"));
            Commands.ChatCommands.Add(new Command("forcequestonall", QCommands.ForceQuestOnAllPlayers, "forcequest"));

            var table = new SqlTable("QuestPlayers",
                 new SqlColumn("LogInName", MySqlDbType.VarChar, 50) { Unique = true, Length = 50},
                 new SqlColumn("QuestPlayerData", MySqlDbType.Text)
             );
            SQLWriter.EnsureExists(table);

            table = new SqlTable("QuestRegions",
                new SqlColumn("RegionName", MySqlDbType.VarChar, 50) { Unique = true, Length = 50},
                new SqlColumn("X1", MySqlDbType.Int32),
                new SqlColumn("Y1", MySqlDbType.Int32),
                new SqlColumn("X2", MySqlDbType.Int32),
                new SqlColumn("Y2", MySqlDbType.Int32),
                new SqlColumn("Quests", MySqlDbType.Text),
                new SqlColumn("EntryMessage", MySqlDbType.Text),
                new SqlColumn("ExitMessage", MySqlDbType.Text)
            );
            SQLWriter.EnsureExists(table);

            QTools.LoadQuests();
            QTools.LoadRegions();
            QTools.LoadPlayers();

            Running = true;

            TriggerHandler.InitializeRegistry();

            QuestHandler = new Thread(ThreadClass.QuestHandler);
            QuestHandler.Start();
        }
Ejemplo n.º 6
0
        public void OnInitialize()
        {
            //CheckT.Elapsed += new ElapsedEventHandler(CheckT_Elapsed);

            #region Add Commands
            Commands.ChatCommands.Add(new Command("fillstacks", more, "maxstacks"));
            Commands.ChatCommands.Add(new Command("getposition", getpos, "pos"));
            Commands.ChatCommands.Add(new Command("tppos", tppos, "tppos"));
            Commands.ChatCommands.Add(new Command("ruler", ruler, "ruler"));
            Commands.ChatCommands.Add(new Command("askadminhelp", helpop, "helpop"));
            Commands.ChatCommands.Add(new Command("commitsuicide", suicide, "suicide", "die"));
            Commands.ChatCommands.Add(new Command("pvpfun", burn, "burn"));
            Commands.ChatCommands.Add(new Command("butcher", killnpc, "killnpc"));
            Commands.ChatCommands.Add(new Command("kickall", kickall, "kickall"));
            Commands.ChatCommands.Add(new Command("moonphase", moon, "moon"));
            Commands.ChatCommands.Add(new Command("convertbiomes", cbiome, "cbiome", "bconvert"));
            Commands.ChatCommands.Add(new Command("searchids", sitems, "sitem", "si", "searchitem"));
            Commands.ChatCommands.Add(new Command("searchids", spage, "spage", "sp"));
            Commands.ChatCommands.Add(new Command("searchids", snpcs, "snpc", "sn", "searchnpc"));
            Commands.ChatCommands.Add(new Command("myhome", setmyhome, "sethome"));
            Commands.ChatCommands.Add(new Command("myhome", gomyhome, "myhome"));
            Commands.ChatCommands.Add(new Command("backontp", back, "b"));
            Commands.ChatCommands.Add(new Command("essentials", cmdessentials, "essentials"));
            Commands.ChatCommands.Add(new Command(null, TeamUnlock, "teamunlock"));
            Commands.ChatCommands.Add(new Command("lastcommand", lastcmd, "="));
            Commands.ChatCommands.Add(new Command("kill", KillReason, "killr"));
            Commands.ChatCommands.Add(new Command("disable", Disable, "disable"));
            #endregion

            TCheck.Start();

            #region Create SQL
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());

            var table = new SqlTable("EssentialsUserHomes",
                new SqlColumn("UserID", MySqlDbType.Int32) { Unique = true },
                new SqlColumn("HomeX", MySqlDbType.Int32),
                new SqlColumn("HomeY", MySqlDbType.Int32),
                new SqlColumn("WorldID", MySqlDbType.Int32)
            );
            SQLWriter.EnsureExists(table);
            #endregion

            #region Fix Permissions
            foreach (Group grp in TShock.Groups.groups)
            {
                if (grp.Name != "superadmin" && grp.HasPermission("backondeath") && !grp.HasPermission("backontp"))
                    grp.AddPermission("backontp");
            }
            #endregion

            #region Check Config
            if (!Directory.Exists(@"tshock/PluginConfigs/"))
            {
                Directory.CreateDirectory(@"tshock/PluginConfigs/");
            }
            SetupConfig();
            #endregion
        }
Ejemplo n.º 7
0
 public static void InitTshockDB()
 {
     SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
 }
Ejemplo n.º 8
0
 public void OnInitialize()
 {
     SQLEditor = new SqlTableEditor(TShock.DB,
                                    TShock.DB.GetSqlType() == SqlType.Sqlite
                                        ? (IQueryBuilder) new SqliteQueryCreator()
                                        : new MysqlQueryCreator());
     SQLWriter = new SqlTableCreator(TShock.DB,
                                     TShock.DB.GetSqlType() == SqlType.Sqlite
                                         ? (IQueryBuilder) new SqliteQueryCreator()
                                         : new MysqlQueryCreator());
     SetupConfig();
     Commands.ChatCommands.Add(new Command("duel", Bet, "bet"));
 }
Ejemplo n.º 9
0
        internal void OnInitialize(EventArgs args)
        {
            if (C3Config.TeamColor1 < 1 || C3Config.TeamColor1 > 4 || C3Config.TeamColor1 == C3Config.TeamColor2 || C3Config.TeamColor2 > 4 || C3Config.TeamColor2 < 1)
                throw new Exception("Team Colours are inccorectly set up. Check c3config.json");

            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());

            ApocalypseMonsters.AddNPCs();
            int ArenaCount;

            #region TestPerms
            //Checks to see if permissions have been moved around
            bool vote = false;
            bool joinvote = false;
            bool setflags = false;
            bool setspawns = false;
            bool managec3settings = false;
            bool cvote = false;
            bool duel = false;
            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("vote"))
                        vote = true;
                    if (group.HasPermission("joinvote"))
                        joinvote = true;
                    if (group.HasPermission("setflags"))
                        setflags = true;
                    if (group.HasPermission("managec3settings"))
                        managec3settings = true;
                    if (group.HasPermission("cvote"))
                        cvote = true;
                    if (group.HasPermission("duel"))
                        duel = true;
                    if (group.HasPermission("setspawns"))
                        setspawns = true;
                }
            }
            List<string> perm = new List<string>();
            if (!vote)
                perm.Add("vote");
            if (!joinvote)
                perm.Add("joinvote");
            if (!duel)
                perm.Add("duel");
            TShock.Groups.AddPermissions("default", perm);

            perm.Clear();
            if (!setflags)
                perm.Add("setflags");
            if (!setflags)
                perm.Add("setspawns");
            if (!managec3settings)
                perm.Add("managec3settings");
            if (!cvote)
                perm.Add("cvote");
            if (!setspawns)
                perm.Add("setspawns");
            TShock.Groups.AddPermissions("trustedadmin", perm);
            #endregion
            //Converted v2.2
            #region AddCommands
            if (C3Mod.C3Config.TeamColor1 == 1)
            {
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam1Flag, "setctfredflag"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam1Spawn, "setctfredspawn"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlagTeam1Spawn, "setoneflagredspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetDuelTeam1Spawn, "setduelredspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetTDMTeam1Spawn, "settdmredspawn"));
            }
            else if (C3Mod.C3Config.TeamColor1 == 2)
            {
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam1Flag, "setctfgreenflag"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam1Spawn, "setctfgreenspawn"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlagTeam1Spawn, "setoneflaggreenspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetDuelTeam1Spawn, "setduelgreenspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetTDMTeam1Spawn, "settdmgreenspawn"));
            }
            else if (C3Mod.C3Config.TeamColor1 == 3)
            {
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam1Flag, "setctfblueflag"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam1Spawn, "setctfbluespawn"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlagTeam1Spawn, "setoneflagbluespawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetDuelTeam1Spawn, "setduelbluespawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetTDMTeam1Spawn, "settdmbluespawn"));
            }
            else if (C3Mod.C3Config.TeamColor1 == 4)
            {
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam1Flag, "setctfyellowflag"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam1Spawn, "setctfyellowspawn"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlagTeam1Spawn, "setoneflagyellowspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetDuelTeam1Spawn, "setduelyellowspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetTDMTeam1Spawn, "settdmyellowspawn"));
            }
            if (C3Mod.C3Config.TeamColor2 == 1)
            {
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam2Flag, "setctfredflag"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam2Spawn, "setctfredspawn"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlagTeam2Spawn, "setoneflagredspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetDuelTeam2Spawn, "setduelredspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetTDMTeam2Spawn, "settdmredspawn"));
            }
            else if (C3Mod.C3Config.TeamColor2 == 2)
            {
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam2Flag, "setctfgreenflag"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam2Spawn, "setctfgreenspawn"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlagTeam2Spawn, "setoneflaggreenspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetDuelTeam2Spawn, "setduelgreenspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetTDMTeam2Spawn, "settdmgreenspawn"));
            }
            else if (C3Mod.C3Config.TeamColor2 == 3)
            {
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam2Flag, "setctfblueflag"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam2Spawn, "setctfbluespawn"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlagTeam2Spawn, "setoneflagbluespawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetDuelTeam2Spawn, "setduelbluespawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetTDMTeam2Spawn, "settdmbluespawn"));
            }
            else if (C3Mod.C3Config.TeamColor2 == 4)
            {
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam2Flag, "setctfyellowflag"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFTeam2Spawn, "setctfyellowspawn"));
                Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlagTeam2Spawn, "setoneflagyellowspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetDuelTeam2Spawn, "setduelyellowspawn"));
                Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetTDMTeam2Spawn, "settdmyellowspawn"));
            }

            Commands.ChatCommands.Add(new Command("setflags", C3Commands.AddCTFArena, "addctfarena"));
            Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlag, "setoneflag"));
            Commands.ChatCommands.Add(new Command("setflags", C3Commands.AddOneFlagArena, "addoneflagarena"));
            Commands.ChatCommands.Add(new Command("setflags", C3Commands.AddDuelArena, "addduelarena"));
            Commands.ChatCommands.Add(new Command("setflags", C3Commands.AddTDMArena, "addtdmarena"));

            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetFFASpawn, "setffaspawn"));
            Commands.ChatCommands.Add(new Command("setflags", C3Commands.AddFFAArena, "addffaarena"));

            Commands.ChatCommands.Add(new Command("vote", C3Commands.StartVote, "vote"));
            Commands.ChatCommands.Add(new Command("joinvote", C3Commands.JoinVote, "join"));
            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.Stop, "stop"));
            Commands.ChatCommands.Add(new Command(C3Commands.Quit, "quit"));
            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.SetCTFLimit, "setctflimit"));
            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.SetOneFlagLimit, "setoneflaglimit"));
            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.SetDuelLimit, "setduellimit"));
            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.SetTDMLimit, "settdmlimit"));

            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.SetFFALimit, "setffalimit"));

            Commands.ChatCommands.Add(new Command("cvote", C3Commands.CancelVote, "cvote"));
            Commands.ChatCommands.Add(new Command("duel", C3Commands.ChallengePlayer, "duel"));
            Commands.ChatCommands.Add(new Command(C3Commands.AcceptChallenge, "accept"));

            Commands.ChatCommands.Add(new Command(C3Commands.ListArenaID, "list"));
            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetApocPlayerSpawn, "setapocplayerspawn"));
            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetApocMonsterSpawn, "setapocmonsterspawn"));
            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetApocSpectatorSpawn, "setapocspectatorspawn"));
            #endregion

            #region FlagPoints

            var table = new SqlTable("FlagPoints",
                new SqlColumn("Name", MySqlDbType.Text),
                new SqlColumn("RedX", MySqlDbType.Int32),
                new SqlColumn("RedY", MySqlDbType.Int32),
                new SqlColumn("BlueX", MySqlDbType.Int32),
                new SqlColumn("BlueY", MySqlDbType.Int32),
                new SqlColumn("RedSpawnX", MySqlDbType.Int32),
                new SqlColumn("RedSpawnY", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnX", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnY", MySqlDbType.Int32)
            );
            SQLWriter.EnsureExists(table);

            if ((ArenaCount = SQLEditor.ReadColumn("FlagPoints", "Name", new List<SqlValue>()).Count) != 0)
            {
                for (int i = 0; i < ArenaCount; i++)
                {
                    string name = SQLEditor.ReadColumn("FlagPoints", "Name", new List<SqlValue>())[i].ToString();
                    int redx = Int32.Parse(SQLEditor.ReadColumn("FlagPoints", "RedX", new List<SqlValue>())[i].ToString());
                    int redy = Int32.Parse(SQLEditor.ReadColumn("FlagPoints", "RedY", new List<SqlValue>())[i].ToString());
                    int bluex = Int32.Parse(SQLEditor.ReadColumn("FlagPoints", "BlueX", new List<SqlValue>())[i].ToString());
                    int bluey = Int32.Parse(SQLEditor.ReadColumn("FlagPoints", "BlueY", new List<SqlValue>())[i].ToString());
                    int redspawnx = Int32.Parse(SQLEditor.ReadColumn("FlagPoints", "RedSpawnX", new List<SqlValue>())[i].ToString());
                    int redspawny = Int32.Parse(SQLEditor.ReadColumn("FlagPoints", "RedSpawnY", new List<SqlValue>())[i].ToString());
                    int bluespawnx = Int32.Parse(SQLEditor.ReadColumn("FlagPoints", "BlueSpawnX", new List<SqlValue>())[i].ToString());
                    int bluespawny = Int32.Parse(SQLEditor.ReadColumn("FlagPoints", "BlueSpawnY", new List<SqlValue>())[i].ToString());

                    CTF.Arenas.Add(new CTFArena(new Vector2(redx, redy), new Vector2(bluex, bluey), new Vector2(redspawnx, redspawny), new Vector2(bluespawnx, bluespawny), name));
                }
            }

            #endregion

            #region DuelSpawns

            table = new SqlTable("DuelSpawns",
                new SqlColumn("Name", MySqlDbType.Text),
                new SqlColumn("RedSpawnX", MySqlDbType.Int32),
                new SqlColumn("RedSpawnY", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnX", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnY", MySqlDbType.Int32)
            );
            SQLWriter.EnsureExists(table);

            if ((ArenaCount = SQLEditor.ReadColumn("DuelSpawns", "Name", new List<SqlValue>()).Count) != 0)
            {
                for (int i = 0; i < ArenaCount; i++)
                {
                    string name = SQLEditor.ReadColumn("DuelSpawns", "Name", new List<SqlValue>())[0].ToString();
                    int redx = Int32.Parse(SQLEditor.ReadColumn("DuelSpawns", "RedSpawnX", new List<SqlValue>())[0].ToString());
                    int redy = Int32.Parse(SQLEditor.ReadColumn("DuelSpawns", "RedSpawnY", new List<SqlValue>())[0].ToString());
                    int bluex = Int32.Parse(SQLEditor.ReadColumn("DuelSpawns", "BlueSpawnX", new List<SqlValue>())[0].ToString());
                    int bluey = Int32.Parse(SQLEditor.ReadColumn("DuelSpawns", "BlueSpawnY", new List<SqlValue>())[0].ToString());

                    Duel.Arenas.Add(new DuelArena(new Vector2(redx, redy), new Vector2(bluex, bluey), name));
                }
            }

            #endregion

            #region OneFlagPoints

            table = new SqlTable("OneFlagPoints",
                new SqlColumn("Name", MySqlDbType.Text),
                new SqlColumn("FlagX", MySqlDbType.Int32),
                new SqlColumn("FlagY", MySqlDbType.Int32),
                new SqlColumn("RedSpawnX", MySqlDbType.Int32),
                new SqlColumn("RedSpawnY", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnX", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnY", MySqlDbType.Int32)
            );
            SQLWriter.EnsureExists(table);

            if ((ArenaCount = SQLEditor.ReadColumn("OneFlagPoints", "Name", new List<SqlValue>()).Count) != 0)
            {
                for (int i = 0; i < ArenaCount; i++)
                {
                    string name = SQLEditor.ReadColumn("OneFlagPoints", "Name", new List<SqlValue>())[i].ToString();
                    int flagx = Int32.Parse(SQLEditor.ReadColumn("OneFlagPoints", "FlagX", new List<SqlValue>())[i].ToString());
                    int flagy = Int32.Parse(SQLEditor.ReadColumn("OneFlagPoints", "FlagY", new List<SqlValue>())[i].ToString());
                    int redspawnx = Int32.Parse(SQLEditor.ReadColumn("OneFlagPoints", "RedSpawnX", new List<SqlValue>())[i].ToString());
                    int redspawny = Int32.Parse(SQLEditor.ReadColumn("OneFlagPoints", "RedSpawnY", new List<SqlValue>())[i].ToString());
                    int bluespawnx = Int32.Parse(SQLEditor.ReadColumn("OneFlagPoints", "BlueSpawnX", new List<SqlValue>())[i].ToString());
                    int bluespawny = Int32.Parse(SQLEditor.ReadColumn("OneFlagPoints", "BlueSpawnY", new List<SqlValue>())[i].ToString());

                    OneFlagCTF.Arenas.Add(new OneFlagArena(new Vector2(flagx, flagy), new Vector2(redspawnx, redspawny), new Vector2(bluespawnx, bluespawny), name));
                }
            }

            #endregion

            #region TDMSpawns

            table = new SqlTable("TDMSpawns",
                new SqlColumn("Name", MySqlDbType.Text),
                new SqlColumn("RedSpawnX", MySqlDbType.Int32),
                new SqlColumn("RedSpawnY", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnX", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnY", MySqlDbType.Int32)
            );
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter.EnsureExists(table);

            if ((ArenaCount = SQLEditor.ReadColumn("TDMSpawns", "Name", new List<SqlValue>()).Count) != 0)
            {
                for (int i = 0; i < ArenaCount; i++)
                {
                    string name = SQLEditor.ReadColumn("TDMSpawns", "Name", new List<SqlValue>())[i].ToString();
                    int redx = Int32.Parse(SQLEditor.ReadColumn("TDMSpawns", "RedSpawnX", new List<SqlValue>())[i].ToString());
                    int redy = Int32.Parse(SQLEditor.ReadColumn("TDMSpawns", "RedSpawnY", new List<SqlValue>())[i].ToString());
                    int bluex = Int32.Parse(SQLEditor.ReadColumn("TDMSpawns", "BlueSpawnX", new List<SqlValue>())[i].ToString());
                    int bluey = Int32.Parse(SQLEditor.ReadColumn("TDMSpawns", "BlueSpawnY", new List<SqlValue>())[i].ToString());

                    TDM.Arenas.Add(new TDMArena(new Vector2(redx, redy), new Vector2(bluex, bluey), name));
                }
            }

            #endregion

            #region FFASpawns

            table = new SqlTable("FFASpawns",
                new SqlColumn("Name", MySqlDbType.Text),
                new SqlColumn("SpawnX", MySqlDbType.Int32),
                new SqlColumn("SpawnY", MySqlDbType.Int32)
            );
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter.EnsureExists(table);

            if ((ArenaCount = SQLEditor.ReadColumn("FFASpawns", "Name", new List<SqlValue>()).Count) != 0)
            {
                for (int i = 0; i < ArenaCount; i++)
                {
                    string name = SQLEditor.ReadColumn("FFASpawns", "Name", new List<SqlValue>())[i].ToString();
                    int x = Int32.Parse(SQLEditor.ReadColumn("FFASpawns", "SpawnX", new List<SqlValue>())[i].ToString());
                    int y = Int32.Parse(SQLEditor.ReadColumn("FFASpawns", "SpawnY", new List<SqlValue>())[i].ToString());

                    FFA.Arenas.Add(new FFAArena(new Vector2(x, y), name));
                }
            }

            #endregion

            #region Apocalypse

            table = new SqlTable("Apocalypse",
                new SqlColumn("SpawnX", MySqlDbType.Int32),
                new SqlColumn("SpawnY", MySqlDbType.Int32),
                new SqlColumn("MonsterSpawnX", MySqlDbType.Int32),
                new SqlColumn("MonsterSpawnY", MySqlDbType.Int32),
                new SqlColumn("SpectatorSpawnX", MySqlDbType.Int32),
                new SqlColumn("SpectatorSpawnY", MySqlDbType.Int32)
            );
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter.EnsureExists(table);

            if (SQLEditor.ReadColumn("Apocalypse", "SpawnX", new List<SqlValue>()).Count == 0)
            {
                List<SqlValue> list = new List<SqlValue>();
                list.Add(new SqlValue("SpawnX", 0));
                list.Add(new SqlValue("SpawnY", 0));
                list.Add(new SqlValue("MonsterSpawnX", 0));
                list.Add(new SqlValue("MonsterSpawnY", 0));
                list.Add(new SqlValue("SpectatorSpawnX", 0));
                list.Add(new SqlValue("SpectatorSpawnY", 0));
                SQLEditor.InsertValues("Apocalypse", list);
            }
            else
            {
                Apocalypse.PlayerSpawn.X = Int32.Parse(SQLEditor.ReadColumn("Apocalypse", "SpawnX", new List<SqlValue>())[0].ToString());
                Apocalypse.PlayerSpawn.Y = Int32.Parse(SQLEditor.ReadColumn("Apocalypse", "SpawnY", new List<SqlValue>())[0].ToString());
                Apocalypse.MonsterSpawn.X = Int32.Parse(SQLEditor.ReadColumn("Apocalypse", "MonsterSpawnX", new List<SqlValue>())[0].ToString());
                Apocalypse.MonsterSpawn.Y = Int32.Parse(SQLEditor.ReadColumn("Apocalypse", "MonsterSpawnY", new List<SqlValue>())[0].ToString());
                Apocalypse.SpectatorArea.X = Int32.Parse(SQLEditor.ReadColumn("Apocalypse", "SpectatorSpawnX", new List<SqlValue>())[0].ToString());
                Apocalypse.SpectatorArea.Y = Int32.Parse(SQLEditor.ReadColumn("Apocalypse", "SpectatorSpawnY", new List<SqlValue>())[0].ToString());
            }

            #endregion
        }
Ejemplo n.º 10
0
        public void OnInitialize()
        {
            SetupConfig();

            for (int i = 0; i < SSConfig.BuyRatePermissions.Length; i++)
            {
                BuyRatePermissions.Add(SSConfig.BuyRatePermissions[i]);
                BuyRates.Add(SSConfig.BuyRates[i]);
            }

            if (!Directory.Exists(ShopLogs))
            {
                Directory.CreateDirectory(ShopLogs);
            }

            if (!File.Exists(ShopLogSavePath))
            {
                File.Create(ShopLogSavePath).Close();
            }

            bool serverbuy = false;
            bool seehiddenprices = false;
            bool buy = false;
            bool buyrate = false;
            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("serverbuy"))
                        serverbuy = true;
                    if (group.HasPermission("seehiddenprices"))
                        seehiddenprices = true;
                    if (group.HasPermission("buy"))
                        buy = true;
                    if (group.HasPermission("buyrate"))
                        buyrate = true;
                }
            }

            List<string> permlist = new List<string>();
            if (!serverbuy)
                permlist.Add("serverbuy");
            if (!seehiddenprices)
                permlist.Add("seehiddenprices");
            if (!buy)
                permlist.Add("buy");
            if (!buyrate)
                permlist.Add("buyrate");

            bool setshop = false;
            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("setshop"))
                        setshop = true;
                }
            }
            if (!setshop)
                permlist.Add("setshop");

            TShock.Groups.AddPermissions("trustedadmin", permlist);
            Commands.ChatCommands.Add(new Command("buy", Buy, "buy"));
            Commands.ChatCommands.Add(new Command("serverbuy", Servershop, "servershop"));
            Commands.ChatCommands.Add(new Command("serverbuy", Servershop, "ss"));
            Commands.ChatCommands.Add(new Command("setshop", Setshop, "setshop"));
            Commands.ChatCommands.Add(new Command("buyrate", BuyRate, "buyrate"));
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            var table = new SqlTable("ServerShopCatalogue",
                new SqlColumn("ID", MySqlDbType.Int32) { Primary = true },
                new SqlColumn("Name", MySqlDbType.String, 255) { Unique = true },
                new SqlColumn("Price", MySqlDbType.Int32),
                new SqlColumn("MaxStack", MySqlDbType.Int32),
                new SqlColumn("InStock", MySqlDbType.Int32),
                new SqlColumn("ShopName", MySqlDbType.String, 255),
                new SqlColumn("Hidden", MySqlDbType.Int32),
                new SqlColumn("Permission", MySqlDbType.String, 255)
            );
            SQLWriter.EnsureExists(table);
            string alpha = "abcdefghijklmnopqrstuvwkyz";
            if (SQLEditor.ReadColumn("ServerShopCatalogue", "ID", new List<SqlValue>()).Count < 1)
            {
                Console.WriteLine("Creating Item Price List...");
                foreach (char letter in alpha)
                //for (Int32 i = 1; i < 364; i++ )
                {
                    string firstletter = "" + letter + "";
                    for (int k = 0; k < TShockAPI.TShock.Utils.GetItemByName(firstletter).Count; k++)
                    //for (Int32 k = 0; k < TShockAPI.TShock.Utils.GetItemByIdOrName(i.ToString()).Count; k++)
                    {
                        Item item = TShockAPI.TShock.Utils.GetItemByName(firstletter)[k];
                        int price = item.value / 5;
                        int i = item.type;
                        string space = " ";
                        string itemID = i.ToString();
                        string itemname = item.name;
                        string apostrophe = "'";
                        char[] apostrophetochar = apostrophe.ToCharArray();
                        itemname = itemname.Replace(apostrophetochar[0], ' ');
                        int itemmaxstack = item.maxStack;
                        List<SqlValue> list = new List<SqlValue>();
                        list.Add(new SqlValue("ID", i));
                        list.Add(new SqlValue("Name", "'" + itemname + "'"));
                        list.Add(new SqlValue("Price", price));
                        list.Add(new SqlValue("MaxStack", itemmaxstack));
                        list.Add(new SqlValue("InStock", 1));
                        list.Add(new SqlValue("ShopName", "'" + space + "'"));
                        list.Add(new SqlValue("Hidden", 0));
                        try
                        {
                            SQLEditor.InsertValues("ServerShopCatalogue", list);
                        }
                        catch (Exception) { }

                    }
                }
            }
            if (SQLEditor.ReadColumn("ServerShopCatalogue", "ID", new List<SqlValue>()).Count > 0)
            {
                Console.WriteLine("Loading Item Price List...");
                for (int i = 0; i < SQLEditor.ReadColumn("ServerShopCatalogue", "ID", new List<SqlValue>()).Count; i++)
                {
                    int id = Int32.Parse(SQLEditor.ReadColumn("ServerShopCatalogue", "ID", new List<SqlValue>())[i].ToString());
                    List<SqlValue> where = new List<SqlValue>();
                    where.Add(new SqlValue("ID", id));
                    string name = SQLEditor.ReadColumn("ServerShopCatalogue", "Name", where)[0].ToString();
                    int price = Int32.Parse(SQLEditor.ReadColumn("ServerShopCatalogue", "Price", where)[0].ToString());
                    bool instock = Int32.Parse(SQLEditor.ReadColumn("ServerShopCatalogue", "InStock", where)[0].ToString()) == 0 ? false : true;
                    string shopname = SQLEditor.ReadColumn("ServerShopCatalogue", "ShopName", where)[0].ToString();
                    bool hidden = Int32.Parse(SQLEditor.ReadColumn("ServerShopCatalogue", "Hidden", where)[0].ToString()) == 0 ? false : true;
                    string permission;
                    try
                    {
                        permission = SQLEditor.ReadColumn("ServerShopCatalogue", "Permission", where)[0].ToString();
                    }
                    catch (NullReferenceException)
                    {
                        permission = null;
                    }
                    SSCatalogue.Add(new ServerShopCatalogueItem(id, name, price, instock, shopname, permission, hidden));
                    if (!ShopList.Contains(shopname))
                        ShopList.Add(shopname);
                }
                for (int i = 0; i < ShopList.Count; i++ )
                {
                    if (ShopList[i] == " ")
                        ShopList.RemoveAt(i);
                }
            }
            SSCatalogueInStock = GetItemsInStock();
        }
Ejemplo n.º 11
0
 public void OnInitialize()
 {
     SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     SetupConfig();
     PointRange = CEConfig.PointRange;
     PvPKillReward = CEConfig.PvPKillReward;
     TDMReward = CEConfig.TDMReward;
     CTFReward = CEConfig.CTFReward;
     OFReward = CEConfig.OFReward;
     MoE = CEConfig.MoE;
     Commands.ChatCommands.Add(new Command("duel", Bet, "bet"));
 }
Ejemplo n.º 12
0
        public void OnInitialize(EventArgs args)
        {
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            var table = new SqlTable("muteList",
                        new SqlColumn("Name", MySqlDbType.Text),
                        new SqlColumn("IP", MySqlDbType.Text));
            SQLWriter.EnsureExists(table);

            #region Commands
            Commands.ChatCommands.Add(new Command("mac.kill", Cmds.KillAll, "killall", "kill*"));
            Commands.ChatCommands.Add(new Command("mac.kill", Cmds.AutoKill, "autokill"));
            Commands.ChatCommands.Add(new Command("mac.mute", Cmds.PermaMute, "permamute"));
            Commands.ChatCommands.Add(new Command("mac.mute", Cmds.MuteAll, "muteall"));
            Commands.ChatCommands.Add(new Command("mac.spawn", Cmds.SpawnMobPlayer, "spawnmobplayer", "smp"));
            Commands.ChatCommands.Add(new Command("mac.spawn", Cmds.SpawnGroup, "spawngroup", "sg"));
            Commands.ChatCommands.Add(new Command("mac.spawn", Cmds.SpawnByMe, "spawnbyme", "sbm"));
            Commands.ChatCommands.Add(new Command("mac.search", Cmds.FindPerms, "findperm", "fperm"));
            Commands.ChatCommands.Add(new Command("mac.search", Cmds.FindCommand, "findcommand", "findcmd", "fcmd"));
            Commands.ChatCommands.Add(new Command("mac.search", Cmds.FindItem, "finditem", "fitem"));
            Commands.ChatCommands.Add(new Command("mac.search", Cmds.FindMob, "findmob", "fmob"));
            Commands.ChatCommands.Add(new Command("mac.butcher", Cmds.ButcherAll, "butcherall", "butcher*"));
            Commands.ChatCommands.Add(new Command("mac.butcher", Cmds.ButcherFriendly, "butcherfriendly", "butcherf"));
            Commands.ChatCommands.Add(new Command("mac.butcher", Cmds.ButcherNPC, "butchernpc"));
            Commands.ChatCommands.Add(new Command("mac.butcher", Cmds.ButcherNear, "butchernear"));
            Commands.ChatCommands.Add(new Command("mac.heal", Cmds.AutoHeal, "autoheal"));
            Commands.ChatCommands.Add(new Command("mac.moon", Cmds.MoonPhase, "moon"));
            Commands.ChatCommands.Add(new Command("mac.give", Cmds.ForceGive, "forcegive"));
            Commands.ChatCommands.Add(new Command("mac.view", Cmds.ViewAll, "view"));
            Commands.ChatCommands.Add(new Command("mac.ghost", Cmds.Ghost, "ghost"));
            Commands.ChatCommands.Add(new Command("mac.reload", Cmds.ReloadMore, "reloadmore"));
            Commands.ChatCommands.Add(new Command("mac.freeze", Cmds.FreezeTime, "freezetime", "ft"));
            Commands.ChatCommands.Add(new Command(Cmds.TeamUnlock, "teamunlock"));
            Commands.ChatCommands.Add(new Command("mac.permabuff", Cmds.Permabuff, "permabuff", "pb"));
            Commands.ChatCommands.Add(new Command("mac.permabuff", Cmds.permDebuff, "permadebuff", "pdb"));
            Commands.ChatCommands.Add(new Command("mac.disable", Cmds.Disable, "disable"));
            #endregion

            Utils.SetUpConfig();
        }
Ejemplo n.º 13
0
        public void OnInitialize()
        {
            if (!Directory.Exists(CmdParserDataDirectory))
            {
                Directory.CreateDirectory(CmdParserDataDirectory);
            }
            LoadCmdParsersFromText();
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            bool checkcommandcost = false;
            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("checkcommandcost"))
                        checkcommandcost = true;
                }
            }

            List<string> permlist = new List<string>();
            if (!checkcommandcost)
                permlist.Add("checkcommandcost");
            TShock.Groups.AddPermissions("trustedadmin", permlist);
            Commands.ChatCommands.Add(new Command("checkcommandcost", CheckCommandCost, "checkcommandcost"));
        }
Ejemplo n.º 14
0
        public void OnInitialize()
        {
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            var table = new SqlTable("ChatColor",
                        new SqlColumn("Name", MySqlDbType.Text) { Unique = true },
                        new SqlColumn("CanChange", MySqlDbType.Int32),
                        new SqlColumn("R", MySqlDbType.Int32),
                        new SqlColumn("G", MySqlDbType.Int32),
                        new SqlColumn("B", MySqlDbType.Int32));
            SQLWriter.EnsureExists(table);
            bool color = false;
            bool othercolor = false;
            bool admincolor = false;

            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("chatcolor"))
                        color = true;
                    if (group.HasPermission("otherchatcolor"))
                        othercolor = true;
                    if (group.HasPermission("adminchatcolor"))
                        admincolor = true;
                }
            }
            List<string> permlist = new List<string>();
            if (!color)
                permlist.Add("chatcolor");
            TShock.Groups.AddPermissions("trustedadmin", permlist);
            permlist = new List<string>();
            if (!othercolor)
                permlist.Add("otherchatcolor");
            TShock.Groups.AddPermissions("trustedadmin", permlist);
            permlist = new List<string>();
            if (!admincolor)
                permlist.Add("adminchatcolor");
            TShock.Groups.AddPermissions("trustedadmin", permlist);

            Commands.ChatCommands.Add(new Command("chatcolor", ChatColor, "chatcolor"));
            Commands.ChatCommands.Add(new Command("otherchatcolor", OtherChatColor, "otherchatcolor"));
            Commands.ChatCommands.Add(new Command("adminchatcolor", blockChatColor, "blockchatcolor"));
            Commands.ChatCommands.Add(new Command("adminchatcolor", unblockChatColor, "unblockchatcolor"));
        }
Ejemplo n.º 15
0
        public void OnInitialize()
        {
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            bool setcost = false;
            bool freewarp = false;
            bool freetp = false;
            bool freeheal = false;
            bool freebuff = false;
            bool checkcommandcost = false;

            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("setcost"))
                        setcost = true;
                    if (group.HasPermission("freewarp"))
                        freewarp = true;
                    if (group.HasPermission("freetp"))
                        freetp = true;
                    if (group.HasPermission("freeheal"))
                        freeheal = true;
                    if (group.HasPermission("freebuff"))
                        setcost = true;
                    if (group.HasPermission("checkcommandcost"))
                        checkcommandcost = true;
                }
            }

            List<string> permlist = new List<string>();
            if (!setcost)
                permlist.Add("setcost");
            if (!freewarp)
                permlist.Add("freewarp");
            if (!freetp)
                permlist.Add("freetp");
            if (!freeheal)
                permlist.Add("freeheal");
            if (!freebuff)
                permlist.Add("freebuff");
            if (!checkcommandcost)
                permlist.Add("checkcommandcost");
            TShock.Groups.AddPermissions("trustedadmin", permlist);

            Commands.ChatCommands.Add(new Command("setcost", SetCost, "setcost"));
            Commands.ChatCommands.Add(new Command("setcost", SetWarpCost, "setwarpcost"));
            Commands.ChatCommands.Add(new Command("checkcommandcost", CheckCommandCost, "checkcommandcost"));
            Commands.ChatCommands.Add(new Command("checkcommandcost", CheckWarpCost, "checkwarpcost"));
            var table = new SqlTable("CommandCosts",
                new SqlColumn("Command", MySqlDbType.String, 255) { Unique = true },
                new SqlColumn("Cost", MySqlDbType.Int32)
            );
            SQLWriter.EnsureExists(table);
            if (SQLEditor.ReadColumn("CommandCosts", "Command", new List<SqlValue>()).Count == 0)
            {
                List<SqlValue> tp = new List<SqlValue>();
                tp.Add(new SqlValue("Command", "'" + "tp" + "'"));
                tp.Add(new SqlValue("Cost", 100));
                SQLEditor.InsertValues("CommandCosts", tp);
                List<SqlValue> heal = new List<SqlValue>();
                heal.Add(new SqlValue("Command", "'" + "heal" + "'"));
                heal.Add(new SqlValue("Cost", 100));
                SQLEditor.InsertValues("CommandCosts", heal);
                List<SqlValue> buff = new List<SqlValue>();
                buff.Add(new SqlValue("Command", "'" + "buff" + "'"));
                buff.Add(new SqlValue("Cost", 100));
                SQLEditor.InsertValues("CommandCosts", buff);
                List<SqlValue> warp = new List<SqlValue>();
                warp.Add(new SqlValue("Command", "'" + "warp" + "'"));
                warp.Add(new SqlValue("Cost", 100));
                SQLEditor.InsertValues("CommandCosts", warp);
            }
            List<SqlValue> where1 = new List<SqlValue>();
            where1.Add(new SqlValue("Command", "'" + "warp" + "'"));
            warpcost = Int32.Parse(SQLEditor.ReadColumn("CommandCosts", "Cost", where1)[0].ToString());
            List<SqlValue> where2 = new List<SqlValue>();
            where2.Add(new SqlValue("Command", "'" + "tp" + "'"));
            tpcost = Int32.Parse(SQLEditor.ReadColumn("CommandCosts", "Cost", where1)[0].ToString());
            List<SqlValue> where3 = new List<SqlValue>();
            where3.Add(new SqlValue("Command", "'" + "heal" + "'"));
            healcost = Int32.Parse(SQLEditor.ReadColumn("CommandCosts", "Cost", where1)[0].ToString());
            List<SqlValue> where4 = new List<SqlValue>();
            where4.Add(new SqlValue("Command", "'" + "buff" + "'"));
            buffcost = Int32.Parse(SQLEditor.ReadColumn("CommandCosts", "Cost", where1)[0].ToString());
        }
Ejemplo n.º 16
0
        public void OnInitialize()
        {
            Main.ignoreErrors = true;
            Main.rand = new Random();

            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());

            Commands.ChatCommands.Add(new Command(QCommands.GetCoords, "getcoords"));
            Commands.ChatCommands.Add(new Command(QCommands.HitCoords, "hitcoords"));
            Commands.ChatCommands.Add(new Command("usequest", QCommands.ListQuest, "listquests"));
            Commands.ChatCommands.Add(new Command("usequest", QCommands.StartQuest, "startquest"));
            Commands.ChatCommands.Add(new Command("questregion", QCommands.QuestRegion, "questr"));
            Commands.ChatCommands.Add(new Command("reloadqdata", QCommands.LoadQuestData, "reloadquestdata"));
            Commands.ChatCommands.Add(new Command("giveq", QCommands.GiveQuest, "giveq"));
            Commands.ChatCommands.Add(new Command("stopquest", QCommands.StopQuest, "stopquest"));

            var table = new SqlTable("QuestPlayers",
                 new SqlColumn("LogInName", MySqlDbType.VarChar,96) { Unique = true },
                 new SqlColumn("QuestPlayerData", MySqlDbType.Text)
             );
            SQLWriter.EnsureExists(table);

            table = new SqlTable("QuestRegions",
                new SqlColumn("RegionName", MySqlDbType.VarChar,96) { Unique = true },
                new SqlColumn("X1", MySqlDbType.Int32),
                new SqlColumn("Y1", MySqlDbType.Int32),
                new SqlColumn("X2", MySqlDbType.Int32),
                new SqlColumn("Y2", MySqlDbType.Int32),
                new SqlColumn("Quests", MySqlDbType.Text),
                new SqlColumn("EntryMessage", MySqlDbType.Text),
                new SqlColumn("ExitMessage", MySqlDbType.Text)
            );
            SQLWriter.EnsureExists(table);

            QTools.LoadQuestData();
        }
Ejemplo n.º 17
0
        public void OnInitialize()
        {
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());

            ApocalypseMonsters.AddNPCs();

            #region TestPerms
            //Checks to see if permissions have been moved around
            bool vote = false;
            bool joinvote = false;
            bool setflags = false;
            bool setspawns = false;
            bool managec3settings = false;
            bool cvote = false;
            bool duel = false;
            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("vote"))
                        vote = true;
                    if (group.HasPermission("joinvote"))
                        joinvote = true;
                    if (group.HasPermission("setflags"))
                        setflags = true;
                    if (group.HasPermission("managec3settings"))
                        managec3settings = true;
                    if (group.HasPermission("cvote"))
                        cvote = true;
                    if (group.HasPermission("duel"))
                        duel = true;
                    if (group.HasPermission("setspawns"))
                        setspawns = true;
                }
            }
            List<string> perm = new List<string>();
            if (!vote)
                perm.Add("vote");
            if (!joinvote)
                perm.Add("joinvote");
            if (!duel)
                perm.Add("duel");
            TShock.Groups.AddPermissions("default", perm);

            perm.Clear();
            if (!setflags)
                perm.Add("setflags");
            if (!setflags)
                perm.Add("setspawns");
            if (!managec3settings)
                perm.Add("managec3settings");
            if (!cvote)
                perm.Add("cvote");
            if (!setspawns)
                perm.Add("setspawns");
            TShock.Groups.AddPermissions("trustedadmin", perm);
            #endregion

            #region AddCommands
            //Adds C3Commands
            Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFRedFlag, "setctfredflag"));
            Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetCTFBlueFlag, "setctfblueflag"));
            Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlag, "setoneflag"));
            Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlagRedSpawn, "setoneflagredspawn"));
            Commands.ChatCommands.Add(new Command("setflags", C3Commands.SetOneFlagBlueSpawn, "setoneflagbluespawn"));
            Commands.ChatCommands.Add(new Command("vote", C3Commands.StartVote, "vote"));
            Commands.ChatCommands.Add(new Command("joinvote", C3Commands.JoinVote, "join"));
            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.SetCTFLimit, "setctflimit"));
            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.SetOneFlagLimit, "setoneflaglimit"));
            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.SetDuelLimit, "setduellimit"));
            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.SetTDMLimit, "settdmlimit"));
            Commands.ChatCommands.Add(new Command("managec3settings", C3Commands.Stop, "stop"));
            Commands.ChatCommands.Add(new Command("cvote", C3Commands.CancelVote, "cvote"));
            Commands.ChatCommands.Add(new Command("duel", C3Commands.ChallengePlayer, "duel"));
            Commands.ChatCommands.Add(new Command(C3Commands.AcceptChallenge, "accept"));
            Commands.ChatCommands.Add(new Command(C3Commands.Quit, "quit"));
            Commands.ChatCommands.Add(new Command(C3Commands.Teams, "teams"));
            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetDuelBlueSpawn, "setduelbluespawn"));
            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetDuelRedSpawn, "setduelredspawn"));
            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetTDMBlueSpawn, "settdmbluespawn"));
            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetTDMRedSpawn, "settdmredspawn"));
            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetApocPlayerSpawn, "setapocplayerspawn"));
            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetApocMonsterSpawn, "setapocmonsterspawn"));
            Commands.ChatCommands.Add(new Command("setspawns", C3Commands.SetApocSpectatorSpawn, "setapocspectatorspawn"));
            #endregion

            #region FlagPoints

            var table = new SqlTable("FlagPoints",
                new SqlColumn("RedX", MySqlDbType.Int32),
                new SqlColumn("RedY", MySqlDbType.Int32),
                new SqlColumn("BlueX", MySqlDbType.Int32),
                new SqlColumn("BlueY", MySqlDbType.Int32)
            );
            SQLWriter.EnsureExists(table);

            if (SQLEditor.ReadColumn("FlagPoints", "RedX", new List<SqlValue>()).Count == 0)
            {
                List<SqlValue> list = new List<SqlValue>();
                list.Add(new SqlValue("RedX", 0));
                list.Add(new SqlValue("RedY", 0));
                list.Add(new SqlValue("BlueX", 0));
                list.Add(new SqlValue("BlueY", 0));
                SQLEditor.InsertValues("FlagPoints", list);
            }
            else
            {
                CTF.flagPoints[0].X = float.Parse(SQLEditor.ReadColumn("FlagPoints", "RedX", new List<SqlValue>())[0].ToString());
                CTF.flagPoints[0].Y = float.Parse(SQLEditor.ReadColumn("FlagPoints", "RedY", new List<SqlValue>())[0].ToString());
                CTF.flagPoints[1].X = float.Parse(SQLEditor.ReadColumn("FlagPoints", "BlueX", new List<SqlValue>())[0].ToString());
                CTF.flagPoints[1].Y = float.Parse(SQLEditor.ReadColumn("FlagPoints", "BlueY", new List<SqlValue>())[0].ToString());
            }

            #endregion

            #region DuelSpawns

            table = new SqlTable("DuelSpawns",
                new SqlColumn("RedSpawnX", MySqlDbType.Int32),
                new SqlColumn("RedSpawnY", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnX", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnY", MySqlDbType.Int32)
            );
            SQLWriter.EnsureExists(table);

            if (SQLEditor.ReadColumn("DuelSpawns", "RedSpawnX", new List<SqlValue>()).Count == 0)
            {
                List<SqlValue> list = new List<SqlValue>();
                list.Add(new SqlValue("RedSpawnX", 0));
                list.Add(new SqlValue("RedSpawnY", 0));
                list.Add(new SqlValue("BlueSpawnX", 0));
                list.Add(new SqlValue("BlueSpawnY", 0));
                SQLEditor.InsertValues("DuelSpawns", list);
            }
            else
            {
                Duel.DuelSpawns[0].X = float.Parse(SQLEditor.ReadColumn("DuelSpawns", "RedSpawnX", new List<SqlValue>())[0].ToString());
                Duel.DuelSpawns[0].Y = float.Parse(SQLEditor.ReadColumn("DuelSpawns", "RedSpawnY", new List<SqlValue>())[0].ToString());
                Duel.DuelSpawns[1].X = float.Parse(SQLEditor.ReadColumn("DuelSpawns", "BlueSpawnX", new List<SqlValue>())[0].ToString());
                Duel.DuelSpawns[1].Y = float.Parse(SQLEditor.ReadColumn("DuelSpawns", "BlueSpawnY", new List<SqlValue>())[0].ToString());
            }

            #endregion

            #region OneFlagPoints

            table = new SqlTable("OneFlagPoints",
                new SqlColumn("FlagX", MySqlDbType.Int32),
                new SqlColumn("FlagY", MySqlDbType.Int32),
                new SqlColumn("RedSpawnX", MySqlDbType.Int32),
                new SqlColumn("RedSpawnY", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnX", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnY", MySqlDbType.Int32)
            );
            SQLWriter.EnsureExists(table);

            if (SQLEditor.ReadColumn("OneFlagPoints", "RedSpawnX", new List<SqlValue>()).Count == 0)
            {
                List<SqlValue> list = new List<SqlValue>();
                list.Add(new SqlValue("FlagX", 0));
                list.Add(new SqlValue("FlagY", 0));
                list.Add(new SqlValue("RedSpawnX",0));
                list.Add(new SqlValue("RedSpawnY", 0));
                list.Add(new SqlValue("BlueSpawnX", 0));
                list.Add(new SqlValue("BlueSpawnY", 0));
                SQLEditor.InsertValues("OneFlagPoints", list);
            }
            else
            {
                OneFlagCTF.FlagPoint.X = float.Parse(SQLEditor.ReadColumn("OneFlagPoints", "FlagX", new List<SqlValue>())[0].ToString());
                OneFlagCTF.FlagPoint.Y = float.Parse(SQLEditor.ReadColumn("OneFlagPoints", "FlagY", new List<SqlValue>())[0].ToString());
                OneFlagCTF.SpawnPoint[0].X = float.Parse(SQLEditor.ReadColumn("OneFlagPoints", "RedSpawnX", new List<SqlValue>())[0].ToString());
                OneFlagCTF.SpawnPoint[0].Y = float.Parse(SQLEditor.ReadColumn("OneFlagPoints", "RedSpawnY", new List<SqlValue>())[0].ToString());
                OneFlagCTF.SpawnPoint[1].X = float.Parse(SQLEditor.ReadColumn("OneFlagPoints", "BlueSpawnX", new List<SqlValue>())[0].ToString());
                OneFlagCTF.SpawnPoint[1].Y = float.Parse(SQLEditor.ReadColumn("OneFlagPoints", "BlueSpawnY", new List<SqlValue>())[0].ToString());
            }

            #endregion

            #region TDMSpawns

            table = new SqlTable("TDMSpawns",
                new SqlColumn("RedSpawnX", MySqlDbType.Int32),
                new SqlColumn("RedSpawnY", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnX", MySqlDbType.Int32),
                new SqlColumn("BlueSpawnY", MySqlDbType.Int32)
            );
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter.EnsureExists(table);

            if (SQLEditor.ReadColumn("TDMSpawns", "RedSpawnX", new List<SqlValue>()).Count == 0)
            {
                List<SqlValue> list = new List<SqlValue>();
                list.Add(new SqlValue("RedSpawnX",0));
                list.Add(new SqlValue("RedSpawnY", 0));
                list.Add(new SqlValue("BlueSpawnX", 0));
                list.Add(new SqlValue("BlueSpawnY", 0));
                SQLEditor.InsertValues("TDMSpawns", list);
            }
            else
            {
                TDM.TDMSpawns[0].X = float.Parse(SQLEditor.ReadColumn("TDMSpawns", "RedSpawnX", new List<SqlValue>())[0].ToString());
                TDM.TDMSpawns[0].Y = float.Parse(SQLEditor.ReadColumn("TDMSpawns", "RedSpawnY", new List<SqlValue>())[0].ToString());
                TDM.TDMSpawns[1].X = float.Parse(SQLEditor.ReadColumn("TDMSpawns", "BlueSpawnX", new List<SqlValue>())[0].ToString());
                TDM.TDMSpawns[1].Y = float.Parse(SQLEditor.ReadColumn("TDMSpawns", "BlueSpawnY", new List<SqlValue>())[0].ToString());
            }

            #endregion

            #region Apocalypse

            table = new SqlTable("Apocalypse",
                new SqlColumn("SpawnX", MySqlDbType.Int32),
                new SqlColumn("SpawnY", MySqlDbType.Int32),
                new SqlColumn("MonsterSpawnX", MySqlDbType.Int32),
                new SqlColumn("MonsterSpawnY", MySqlDbType.Int32),
                new SqlColumn("SpectatorSpawnX", MySqlDbType.Int32),
                new SqlColumn("SpectatorSpawnY", MySqlDbType.Int32)
            );
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter.EnsureExists(table);

            if (SQLEditor.ReadColumn("Apocalypse", "SpawnX", new List<SqlValue>()).Count == 0)
            {
                List<SqlValue> list = new List<SqlValue>();
                list.Add(new SqlValue("SpawnX", 0));
                list.Add(new SqlValue("SpawnY", 0));
                list.Add(new SqlValue("MonsterSpawnX", 0));
                list.Add(new SqlValue("MonsterSpawnY", 0));
                list.Add(new SqlValue("SpectatorSpawnX", 0));
                list.Add(new SqlValue("SpectatorSpawnY", 0));
                SQLEditor.InsertValues("Apocalypse", list);
            }
            else
            {
                Apocalypse.PlayerSpawn.X = float.Parse(SQLEditor.ReadColumn("Apocalypse", "SpawnX", new List<SqlValue>())[0].ToString());
                Apocalypse.PlayerSpawn.Y = float.Parse(SQLEditor.ReadColumn("Apocalypse", "SpawnY", new List<SqlValue>())[0].ToString());
                Apocalypse.MonsterSpawn.X = float.Parse(SQLEditor.ReadColumn("Apocalypse", "MonsterSpawnX", new List<SqlValue>())[0].ToString());
                Apocalypse.MonsterSpawn.Y = float.Parse(SQLEditor.ReadColumn("Apocalypse", "MonsterSpawnY", new List<SqlValue>())[0].ToString());
                Apocalypse.SpectatorArea.X = float.Parse(SQLEditor.ReadColumn("Apocalypse", "SpectatorSpawnX", new List<SqlValue>())[0].ToString());
                Apocalypse.SpectatorArea.Y = float.Parse(SQLEditor.ReadColumn("Apocalypse", "SpectatorSpawnY", new List<SqlValue>())[0].ToString());
            }

            #endregion
        }
Ejemplo n.º 18
0
 public static void SetupDB()
 {
     switch (TShock.Config.StorageType.ToLower())
     {
         case "mysql":
             string[] host = TShock.Config.MySqlHost.Split(':');
             db = new MySqlConnection()
             {
                 ConnectionString = string.Format("Server={0}; Port={1}; Database={2}; Uid={3}; Pwd={4};",
                 host[0],
                 host.Length == 1 ? "3306" : host[1],
                 TShock.Config.MySqlDbName,
                 TShock.Config.MySqlUsername,
                 TShock.Config.MySqlPassword)
             };
             break;
         case "sqlite":
             string sql = Path.Combine(TShock.SavePath, "hostbans.sqlite");
             db = new SqliteConnection(string.Format("uri=file://{0},Version=3", sql));
             break;
     }
     SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     var table = new SqlTable("hostbans",
      new SqlColumn("ID", MySqlDbType.Int32) { Primary = true, AutoIncrement = true },
      new SqlColumn("Host", MySqlDbType.Text),
      new SqlColumn("Username", MySqlDbType.Text),
      new SqlColumn("Reason", MySqlDbType.Text),
      new SqlColumn("Admin", MySqlDbType.Text),
      new SqlColumn("Date", MySqlDbType.Text)
     );
     SQLWriter.EnsureExists(table);
     var table2 = new SqlTable("hostbanscache",
      new SqlColumn("IP", MySqlDbType.VarChar, 16) { Unique = true },
      new SqlColumn("Host", MySqlDbType.Text)
     );
     SQLWriter.EnsureExists(table2);
 }
Ejemplo n.º 19
0
        public void OnInitialize()
        {
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());

            #region Setup
            bool sethouse = false;
            bool edithouse = false;
            bool enterlocked = false;
            bool adminhouse = false;

            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("sethouse"))
                        sethouse = true;
                    if (group.HasPermission("edithouse"))
                        edithouse = true;
                    if (group.HasPermission("enterlocked"))
                        enterlocked = true;
                    if (group.HasPermission("adminhouse"))
                        adminhouse = true;
                }
            }
            List<string> perm = new List<string>();
            if (!sethouse)
                perm.Add("sethouse");
            if (!edithouse)
                perm.Add("edithouse");
            if (!enterlocked)
                perm.Add("enterlocked");
            if (!adminhouse)
                perm.Add("adminhouse");
            TShock.Groups.AddPermissions("trustedadmin", perm);

            var table = new SqlTable("HousingDistrict",
                new SqlColumn("ID", MySqlDbType.Int32) { Primary = true, AutoIncrement = true },
                new SqlColumn("Name", MySqlDbType.VarChar, 255) { Unique = true },
                new SqlColumn("TopX", MySqlDbType.Int32),
                new SqlColumn("TopY", MySqlDbType.Int32),
                new SqlColumn("BottomX", MySqlDbType.Int32),
                new SqlColumn("BottomY", MySqlDbType.Int32),
                new SqlColumn("Owners", MySqlDbType.Text),
                new SqlColumn("WorldID", MySqlDbType.Text),
                new SqlColumn("Locked", MySqlDbType.Int32),
                new SqlColumn("ChatEnabled", MySqlDbType.Int32),
                new SqlColumn("Visitors", MySqlDbType.Text)
            );
            SQLWriter.EnsureExists(table);
            var reader = TShock.DB.QueryReader("Select * from HousingDistrict");
            while( reader.Read() )
            {
                int id = reader.Get<int>("ID");
                string[] list = reader.Get<string>("Owners").Split(',');
                List<string> owners = new List<string>();
                foreach( string i in list)
                    owners.Add( i );
                int locked = reader.Get<int>("Locked");
                int chatenabled;
                if (reader.Get<int>("ChatEnabled") == 1) { chatenabled = 1; }
                else { chatenabled = 0; }
                List<string> visitors = new List<string>();
                foreach (string i in list)
                    visitors.Add(i);
                Houses.Add( new House( new Rectangle( reader.Get<int>("TopX"),reader.Get<int>("TopY"),reader.Get<int>("BottomX"),reader.Get<int>("BottomY") ),
                    owners, id, reader.Get<string>("Name"), reader.Get<string>("WorldID"), locked, chatenabled, visitors));
            }
            #endregion

            #region Commands
            Commands.ChatCommands.Add(new Command("sethouse", HCommands.House, "house"));
            Commands.ChatCommands.Add(new Command("superadmin", HCommands.Convert, "converthouse"));
            Commands.ChatCommands.Add(new Command(HCommands.ChangeLock, "changelock"));
            Commands.ChatCommands.Add(new Command(HCommands.TellAll, "all"));
            Commands.ChatCommands.Add(new Command("superadmin", HCommands.HouseReload, "housereload"));
            #endregion
        }
        public void OnInitialize()
        {
            Main.buffName[1] = "Obsidian Skin";
            Main.buffName[2] = "Regeneration";
            Main.buffName[3] = "Swiftness";
            Main.buffName[4] = "Gills";
            Main.buffName[5] = "Ironskin";
            Main.buffName[6] = "Mana Regeneration";
            Main.buffName[7] = "Magic Power";
            Main.buffName[8] = "Featherfall";
            Main.buffName[9] = "Spelunker";
            Main.buffName[10] = "Invisibility";
            Main.buffName[11] = "Shine";
            Main.buffName[12] = "Night Owl";
            Main.buffName[13] = "Battle";
            Main.buffName[14] = "Thorns";
            Main.buffName[15] = "Water Walking";
            Main.buffName[0x10] = "Archery";
            Main.buffName[0x11] = "Hunter";
            Main.buffName[0x12] = "Gravitation";
            Main.buffName[0x13] = "Orb of Light";
            Main.buffName[20] = "Poisoned";
            Main.buffName[0x15] = "Potion Sickness";
            Main.buffName[0x16] = "Darkness";
            Main.buffName[0x17] = "Cursed";
            Main.buffName[0x18] = "On Fire!";
            Main.buffName[0x19] = "Tipsy";
            Main.buffName[0x1a] = "Well Fed";
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            var table = new SqlTable("regionMow",
                        new SqlColumn("Name", MySqlDbType.Text),
                        new SqlColumn("Mow", MySqlDbType.Int32));
            SQLWriter.EnsureExists(table);
            var table2 = new SqlTable("muteList",
                        new SqlColumn("Name", MySqlDbType.Text),
                        new SqlColumn("IP", MySqlDbType.Text));
            SQLWriter.EnsureExists(table2);
            var readTableName = SQLEditor.ReadColumn("regionMow", "Name", new List<SqlValue>());
            var readTableBool = SQLEditor.ReadColumn("regionMow", "Mow", new List<SqlValue>());
            for (int i = 0; i < readTableName.Count; i++)
            {

                try
                {
                    regionMow.Add(readTableName[i].ToString(), Convert.ToBoolean(readTableBool[i]));
                }
                catch (Exception) { }

            }
            reload();
            List<string> permlist = new List<string>();
            permlist.Add("ghostmode");
            permlist.Add("fly");
            permlist.Add("flymisc");
            permlist.Add("mute");
            permlist.Add("reloadmore");
            permlist.Add("permabuff");
            TShock.Groups.AddPermissions("trustedadmin", permlist);
            for (int i = 0; i < 256; i++)
            {

                isGhost[i] = false;
                isHeal[i] = false;
                flyMode[i] = false;
                upPressed[i] = false;
                carpetPoints.Add(new List<Vector2>());
                buffsUsed.Add(new List<int>());
                muted[i] = false;
                muteTime[i] = -1;
                muteAllFree[i] = false;
                viewAll[i] = false;
                accessRed[i] = (redPass == "");
                accessBlue[i] = (bluePass == "");
                accessGreen[i] = (greenPass == "");
                accessYellow[i] = (yellowPass == "");
                autoKill[i] = false;
                tpOff[i] = false;

            }
            Commands.ChatCommands.Add(new Command("ghostmode", Ghost, "ghost"));
            Commands.ChatCommands.Add(new Command("time", FreezeTime, "freezetime"));
            Commands.ChatCommands.Add(new Command("spawnmob", SpawnMobPlayer, "spawnmobplayer"));
            Commands.ChatCommands.Add(new Command("spawnmob", SpawnAll, "spawnall"));
            Commands.ChatCommands.Add(new Command("spawnmob", SpawnGroup, "spawngroup"));
            Commands.ChatCommands.Add(new Command("autoheal", AutoHeal, "autoheal"));
            Commands.ChatCommands.Add(new Command("fly", Fly, "fly"));
            Commands.ChatCommands.Add(new Command("flymisc", Fetch, "fetch"));
            //Commands.ChatCommands.Add(new Command("flymisc", CarpetBody, "carpetbody"));
            //Commands.ChatCommands.Add(new Command("flymisc", CarpetSides, "carpetsides"));
            Commands.ChatCommands.Add(new Command("editspawn", Mow, "mow"));
            Commands.ChatCommands.Add(new Command("permabuff", permaBuff, "permabuff"));
            Commands.ChatCommands.Add(new Command("permabuff", permaBuffAll, "permabuffall"));
            Commands.ChatCommands.Add(new Command("permabuff", permaBuffGroup, "permabuffgroup"));
            Commands.ChatCommands.Add(new Command("item", ForceGive, "forcegive"));
            Commands.ChatCommands.Add(new Command("killall", KillAll, "killall"));
            Commands.ChatCommands.Add(new Command("mute", Mute, "mute"));
            Commands.ChatCommands.Add(new Command("mute", PermaMute, "permamute"));
            Commands.ChatCommands.Add(new Command("muteall", MuteAll, "muteall"));
            Commands.ChatCommands.Add(new Command("butcher", ButcherAll, "butcherall"));
            Commands.ChatCommands.Add(new Command("butcher", ButcherFriendly, "butcherfriendly"));
            Commands.ChatCommands.Add(new Command("butcher", ButcherNPC, "butchernpc"));
            Commands.ChatCommands.Add(new Command("butcher", ButcherNear, "butchernear"));
            Commands.ChatCommands.Add(new Command("spawnmob", SpawnByMe, "spawnbyme"));
            //Commands.ChatCommands.Add(new Command("clearitems", ClearItems, "clearitems"));
            Commands.ChatCommands.Add(new Command("reloadmore", ReloadMore, "reloadmore"));
            Commands.ChatCommands.Add(new Command("viewall", ViewAll, "viewall"));
            Commands.ChatCommands.Add(new Command(null, TeamUnlock, "teamunlock"));
            Commands.ChatCommands.Add(new Command("autokill", AutoKill, "autokill"));
            Commands.ChatCommands.Add(new Command("forcepvp", ForcePvP, "forcepvp"));
            Commands.ChatCommands.Add(new Command("forcepvp", CanOffPvP, "canoffpvp"));
            Commands.ChatCommands.Add(new Command("antitp", TPOff, "tpoff"));
            Commands.ChatCommands.Add(new Command("moonphase", MoonPhase, "moonphase"));
        }
Ejemplo n.º 21
0
        private void SetupDb()
        {
            if (TShock.Config.StorageType.ToLower() == "sqlite")
            {
                //Console.WriteLine("sqlite - {0}", TShock.Config.StorageType);
                db = new SqliteConnection(string.Format("uri=file://{0},Version=3", Path.Combine(savepath, "Factions.sqlite")));
            }
            else if (TShock.Config.StorageType.ToLower() == "mysql")
            {
                //Console.WriteLine("mysql - {0}", TShock.Config.StorageType);
                try
                {
                    var host = TShock.Config.MySqlHost.Split(':');
                    db = new MySqlConnection();
                    db.ConnectionString = String.Format("Server={0}; Port={1}; Database={2}; Uid={3}; Pwd={4};",
                        host[0],
                        host.Length == 1 ? "3306" : host[1],
                        TShock.Config.MySqlDbName,
                        TShock.Config.MySqlUsername,
                        TShock.Config.MySqlPassword
                    );
                }
                catch (MySqlException ex)
                {
                    Log.Error(ex.ToString());
                    throw new Exception("MySql not setup correctly");
                }
            }
            else
            {
                throw new Exception("Invalid storage type");
            }

            SqlTableCreator SQLcreator = new SqlTableCreator(db, db.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SqlTableEditor SQLeditor = new SqlTableEditor(db, db.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SqlTable table = new SqlTable("factions_Factions",
                new SqlColumn("ID", MySqlDbType.Int32) { Primary = true, AutoIncrement = true, NotNull = true },
                new SqlColumn("Name", MySqlDbType.VarChar) { Length = 30 },
                new SqlColumn("Description", MySqlDbType.Text),
                new SqlColumn("Members", MySqlDbType.Text),
                new SqlColumn("Admins", MySqlDbType.Text),
                new SqlColumn("Invites", MySqlDbType.Text),
                new SqlColumn("Power", MySqlDbType.Int32),
                new SqlColumn("Territory", MySqlDbType.Text),
                new SqlColumn("Allies", MySqlDbType.Text),
                new SqlColumn("AllyInvites", MySqlDbType.Text),
                new SqlColumn("Enemies", MySqlDbType.Text),
                new SqlColumn("Flags", MySqlDbType.Int32),
                new SqlColumn("WorldID", MySqlDbType.Int32)
            );
            SQLcreator.EnsureExists(table);
            table = new SqlTable("factions_Players",
                new SqlColumn("UserID", MySqlDbType.Int32) { Primary = true, NotNull = true },
                new SqlColumn("Name", MySqlDbType.VarChar) { Length = 30 },
                new SqlColumn("Faction", MySqlDbType.Int32),
                new SqlColumn("Power", MySqlDbType.Int32),
                new SqlColumn("Online", MySqlDbType.Int32),
                new SqlColumn("OfflineCount", MySqlDbType.Int32),
                new SqlColumn("WorldID", MySqlDbType.Int32)
            );
            SQLcreator.EnsureExists(table);
            table = new SqlTable("factions_Regions",
                new SqlColumn("ID", MySqlDbType.Int32) { Primary = true, AutoIncrement = true, NotNull = true },
                new SqlColumn("X", MySqlDbType.Int32),
                new SqlColumn("Y", MySqlDbType.Int32),
                new SqlColumn("Owner", MySqlDbType.Int32),
                new SqlColumn("Faction", MySqlDbType.Int32),
                new SqlColumn("Flags", MySqlDbType.Int32),
                new SqlColumn("WorldID", MySqlDbType.Int32)
            );
            SQLcreator.EnsureExists(table);
        }
Ejemplo n.º 22
0
        public void OnInitialize()
        {
            for(int i = 0; i<LastStrike.Length;i++)
            {
                LastStrike[i] = DateTime.Now;
            }
            if (!Directory.Exists(TShock.SavePath))
            {
                Directory.CreateDirectory(TShock.SavePath);
            }

            if (!File.Exists(EPRLogSavePath))
            {
                File.Create(EPRLogSavePath).Close();
            }
            SetupConfig();

            DeathToll = EPRConfig.DeathToll;
            DeathTollStatic = EPRConfig.DeathTollStatic;
            PointMultiplier = EPRConfig.PointMultiplier;
            currname = EPRConfig.currname;
            ReapersBlessingEnabled = EPRConfig.ReapersBlessingEnabled;
            LadyLucksMultiplier = EPRConfig.LadyLucksMultiplier;
            TimeReward = EPRConfig.TimeReward;
            EnableTR = EPRConfig.EnableTimeRewards;
            RewardTime = EPRConfig.RewardTime;
            ClaimTime = EPRConfig.ClaimTime;
            if (ClaimTime >= RewardTime * 60)
                ClaimTime = (RewardTime * 60) - 1;

            for(int i = 0; i <Main.maxNPCs;i++)
            {
                ENPCs[i] = new ENPC(i);
            }

            Commands.ChatCommands.Add(new Command("changepoints", CPoints, "cpoints"));
            Commands.ChatCommands.Add(new Command("pouch", Points, "shards"));
            Commands.ChatCommands.Add(new Command("pouch", Points, "points"));
            Commands.ChatCommands.Add(new Command("pouch", CheckDeathToll, "checkdeathtoll","checkdt"));
            Commands.ChatCommands.Add(new Command("pouch", CheckMultiplier, "checkmultiplier", "checkmult"));
            Commands.ChatCommands.Add(new Command("manage", Award, "award"));
            Commands.ChatCommands.Add(new Command("manage", Deduct, "deduct"));
            Commands.ChatCommands.Add(new Command("manage", AwardAll, "awardall"));
            Commands.ChatCommands.Add(new Command("manage", DeductAll, "deductall"));
            Commands.ChatCommands.Add(new Command("manage", LadyLuck, "ladylucksmileson","llso"));
            Commands.ChatCommands.Add(new Command("manage", ReaperBless, "reaperbless", "rb"));
            bool changepoints = false;
            bool pouchperm = false;
            bool manageperm = false;

            foreach (Group group in TShock.Groups.groups)
            {
                if (group.Name != "superadmin")
                {
                    if (group.HasPermission("changepoints"))
                        changepoints = true;
                    if (group.HasPermission("pouch"))
                        pouchperm = true;
                    if (group.HasPermission("manage"))
                        manageperm = true;
                }
            }

            List<string> permlist = new List<string>();
            List<string> permlist2 = new List<string>();
            List<string> permlist3 = new List<string>();
            if (!changepoints)
                permlist2.Add("changepoints");
            if (!pouchperm)
                permlist.Add("pouch");
            if (!manageperm)
                permlist3.Add("manage");

            TShock.Groups.AddPermissions("default", permlist);
            TShock.Groups.AddPermissions("trustedadmin", permlist2);
            TShock.Groups.AddPermissions("trustedadmin", permlist3);
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());

            var table = new SqlTable("ServerPointAccounts",
                new SqlColumn("ID", MySqlDbType.Int32) { Primary = true, AutoIncrement = true },
                new SqlColumn("name", MySqlDbType.String, 255) { Unique = true },
                new SqlColumn("amount", MySqlDbType.Int32)
            );
            SQLWriter.EnsureExists(table);
            Commands.ChatCommands.Add(new Command("pouch", Points, currname));
            if (!Directory.Exists(PayLogs))
            {
                Directory.CreateDirectory(PayLogs);
            }

            if (!File.Exists(PayLogSavePath))
            {
                File.Create(PayLogSavePath).Close();
            }
        }
Ejemplo n.º 23
0
        private void SetupDb()
        {
            if (TShock.Config.StorageType.ToLower() == "sqlite")
            {
                string sql = Path.Combine(TShock.SavePath, "InanZen_DB.sqlite");
                db = new SqliteConnection(string.Format("uri=file://{0},Version=3", sql));
            }
            else if (TShock.Config.StorageType.ToLower() == "mysql")
            {
                try
                {
                    var hostport = TShock.Config.MySqlHost.Split(':');
                    db = new MySqlConnection();
                    db.ConnectionString =
                        String.Format("Server={0}; Port={1}; Database={2}; Uid={3}; Pwd={4};",
                                      hostport[0],
                                      hostport.Length > 1 ? hostport[1] : "3306",
                                      TShock.Config.MySqlDbName,
                                      TShock.Config.MySqlUsername,
                                      TShock.Config.MySqlPassword
                            );
                }
                catch (MySqlException ex)
                {
                    Log.Error(ex.ToString());
                    throw new Exception("MySql not setup correctly");
                }
            }
            else
            {
                throw new Exception("Invalid storage type");
            }

            SQLcreator = new SqlTableCreator(db, new SqliteQueryCreator());
            SQLeditor = new SqlTableEditor(db, new SqliteQueryCreator());
            DayRegions_Create();
        }
Ejemplo n.º 24
0
        private void SetupDb()
        {
            if (TShock.Config.StorageType.ToLower() == "sqlite")
            {
                string sql = Path.Combine(savepath, "AdminTools.sqlite");
                db = new SqliteConnection(string.Format("uri=file://{0},Version=3", sql));
            }
            else if (TShock.Config.StorageType.ToLower() == "mysql")
            {
                try
                {
                    var hostport = TShock.Config.MySqlHost.Split(':');
                    db = new MySqlConnection();
                    db.ConnectionString =
                        String.Format("Server={0}; Port={1}; Database={2}; Uid={3}; Pwd={4};",
                                      hostport[0],
                                      hostport.Length > 1 ? hostport[1] : "3306",
                                      TShock.Config.MySqlDbName,
                                      TShock.Config.MySqlUsername,
                                      TShock.Config.MySqlPassword
                            );
                }
                catch (MySqlException ex)
                {
                    Log.Error(ex.ToString());
                    throw new Exception("MySql not setup correctly");
                }
            }
            else
            {
                throw new Exception("Invalid storage type");
            }

            SQLcreator = new SqlTableCreator(db, new SqliteQueryCreator());
            SQLeditor = new SqlTableEditor(db, new SqliteQueryCreator());

            var table = new SqlTable("SignData",
                new SqlColumn("ID", MySql.Data.MySqlClient.MySqlDbType.Int32) { Primary = true, AutoIncrement = true, NotNull = true },
                new SqlColumn("X", MySql.Data.MySqlClient.MySqlDbType.Int32),
                new SqlColumn("Y", MySql.Data.MySqlClient.MySqlDbType.Int32),
                new SqlColumn("User", MySql.Data.MySqlClient.MySqlDbType.VarChar) { Length = 30 },
                new SqlColumn("Time", MySql.Data.MySqlClient.MySqlDbType.Int32),
                new SqlColumn("WorldID", MySql.Data.MySqlClient.MySqlDbType.Int32)
            );
            SQLcreator.EnsureExists(table);
            table = new SqlTable("PlayerData",
                new SqlColumn("UserID", MySql.Data.MySqlClient.MySqlDbType.Int32) { Primary = true, Unique = true, NotNull = true },
                new SqlColumn("Username", MySql.Data.MySqlClient.MySqlDbType.VarChar) { Length = 30 },
                new SqlColumn("Nicknames", MySql.Data.MySqlClient.MySqlDbType.Text),
                new SqlColumn("IPs", MySql.Data.MySqlClient.MySqlDbType.Text),
                new SqlColumn("LastSeen", MySql.Data.MySqlClient.MySqlDbType.Int32)
            );
            SQLcreator.EnsureExists(table);
        }
Ejemplo n.º 25
0
 public void OnInitialize()
 {
     SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     var table = new SqlTable("AutoBanRegions",
          new SqlColumn("ID", MySqlDbType.Int32) { Primary = true, AutoIncrement = true },
          new SqlColumn("Name", MySqlDbType.VarChar, 255) { Unique = true },
          new SqlColumn("X", MySqlDbType.Int32),
          new SqlColumn("Y", MySqlDbType.Int32),
          new SqlColumn("Width", MySqlDbType.Int32),
          new SqlColumn("Height", MySqlDbType.Int32),
          new SqlColumn("Owners", MySqlDbType.Text)
      );
     SQLWriter.EnsureExists(table);
     RegionTools.ReadRegions();
     Commands.ChatCommands.Add(new Command("abcommands", ABCommands.ABCommand, "ab"));
 }
Ejemplo n.º 26
0
        public void OnInitialize(EventArgs args)
        {
            SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
            var table = new SqlTable("muteList",
                        new SqlColumn("Name", MySqlDbType.Text),
                        new SqlColumn("IP", MySqlDbType.Text));
            SQLWriter.EnsureTableStructure(table);

            #region Commands
            Commands.ChatCommands.Add(new Command("mac.kill", Cmds.KillAll, "killall", "kill*"));
            Commands.ChatCommands.Add(new Command("mac.kill", Cmds.AutoKill, "autokill"));
            Commands.ChatCommands.Add(new Command("mac.mute", Cmds.MuteAll, "muteall"));
            Commands.ChatCommands.Add(new Command("mac.spawn", Cmds.SpawnMobPlayer, "spawnmobplayer", "smp"));
            Commands.ChatCommands.Add(new Command("mac.spawn", Cmds.SpawnGroup, "spawngroup", "sg"));
            Commands.ChatCommands.Add(new Command("mac.spawn", Cmds.SpawnByMe, "spawnbyme", "sbm"));
            Commands.ChatCommands.Add(new Command("mac.search", Cmds.FindPerms, "findperm", "fperm"));
            Commands.ChatCommands.Add(new Command("mac.butcher", Cmds.ButcherAll, "butcherall", "butcher*"));
            Commands.ChatCommands.Add(new Command("mac.butcher", Cmds.ButcherFriendly, "butcherfriendly", "butcherf"));
            Commands.ChatCommands.Add(new Command("mac.butcher", Cmds.ButcherNPC, "butchernpc"));
            Commands.ChatCommands.Add(new Command("mac.butcher", Cmds.ButcherNear, "butchernear"));
            Commands.ChatCommands.Add(new Command("mac.heal", Cmds.AutoHeal, "autoheal"));
            Commands.ChatCommands.Add(new Command("mac.heal.all", Cmds.HealAll, "healall"));
            Commands.ChatCommands.Add(new Command("mac.moon", Cmds.MoonPhase, "moon"));
            Commands.ChatCommands.Add(new Command("mac.give", Cmds.ForceGive, "forcegive"));
            Commands.ChatCommands.Add(new Command("mac.view", Cmds.ViewAll, "view"));
            Commands.ChatCommands.Add(new Command("mac.reload", Cmds.ReloadMore, "reloadmore"));
            Commands.ChatCommands.Add(new Command("mac.freeze", Cmds.FreezeTime, "freezetime", "ft"));
            Commands.ChatCommands.Add(new Command(Cmds.TeamUnlock, "teamunlock"));
            #endregion

            Utils.SetUpConfig();

            itemspam = new Dictionary<int, List<DateTime>>();

            updateTimers.initializeTimers();
        }
Ejemplo n.º 27
0
 public void OnInitialize()
 {
     SQLEditor = new SqlTableEditor(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     SQLWriter = new SqlTableCreator(TShock.DB, TShock.DB.GetSqlType() == SqlType.Sqlite ? (IQueryBuilder)new SqliteQueryCreator() : new MysqlQueryCreator());
     var table = new SqlTable("TrapResetter",
          new SqlColumn("ID", MySqlDbType.Int32) { Primary = true, AutoIncrement = true },
          new SqlColumn("X", MySqlDbType.Int32),
          new SqlColumn("Y", MySqlDbType.Int32),
          new SqlColumn("Type", MySqlDbType.Int32)
      );
     SQLWriter.EnsureExists(table);
     ReloadTraps();
     Commands.ChatCommands.Add(new Command("TrapReset", TrapCommand, "trap"));
     //Commands.ChatCommands.Add(new Command("TrapReset", BoulderCannon, "boulder"));
 }