Example #1
0
        public AchievementList writeFile(string file)
        {
            StreamWriter tw = new StreamWriter(file, true);

            AchievementList AchievementList = new AchievementList();

            AchievementList.AddItem(new Achievement(0, "Level 1", new Conditions(0, 0, 50), new Effects(0, 0)));

            tw.Write(JsonConvert.SerializeObject(AchievementList, Formatting.Indented));
            tw.Close();

            return AchievementList;
        }
Example #2
0
        public void OnInitialize()
        {
            save = Path.Combine(TShock.SavePath, @"TShockMMO\Achievements.json");
            AchievementConfig config = new AchievementConfig();

            if (File.Exists(save))
            {
                try
                {
                    achievementlist = config.readFile(save);
                    Console.ForegroundColor = ConsoleColor.Yellow;
                    if (achievementlist.Achievements.Count != 0)
                        Console.WriteLine(achievementlist.Achievements.Count + " achievements have been loaded.");
                    Console.ResetColor();
                }
                catch (Exception e)
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("Error in Achievements.json file! Check log for more details.");
                    Console.WriteLine(e.Message);
                    Console.ResetColor();
                    Log.Error("--------- Config Exception in TShockMMO Config file (Achievements.json) ---------");
                    Log.Error(e.Message);
                    Log.Error("----------------------------------- Error End -----------------------------------");
                }
            }
            else
            {
                Directory.CreateDirectory(Path.Combine(TShock.SavePath, "TShockMMO"));
                achievementlist = config.writeFile(save);
                using (StreamWriter writer = new StreamWriter(Path.Combine(TShock.SavePath, @"TShockMMO\loginmsg.txt"), true))
                {
                    writer.WriteLine("Welcome %playername% %color%");
                    writer.WriteLine("You currently have %xp% %color%");
                }
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine("Sample Achievement file generated.");
                Console.ResetColor();
                Log.Info("Sample Achievement file genereated.");
            }
        }