public static void generateTypes() { ServerLog.LogAsyncMessage(new LogMessage("Begining " + NAME + " generation", LogType.Log)); using (StreamWriter outputFile = new StreamWriter(System.IO.Path.Combine(GenerateTypeConfig.MOD_FOLDER, "Log.txt"), true)) { outputFile.WriteLine("Begining " + NAME + " generation"); } JSONNode list = new JSONNode(NodeType.Array); if (GenerateTypeConfig.DecorTypes.TryGetValue(NAME, out List <DecorType> blockTypes)) { foreach (var currentType in blockTypes) { //ServerLog.LogAsyncMessage(new LogMessage("Found parent " + currentType.type, LogType.Log)); //ServerLog.LogAsyncMessage(new LogMessage("Found texture " + currentType.texture, LogType.Log)); var typeName = GenerateTypeConfig.TYPEPREFIX + NAME + "." + currentType.type; ServerLog.LogAsyncMessage(new LogMessage("Generating type " + typeName, LogType.Log)); using (StreamWriter outputFile = new StreamWriter(System.IO.Path.Combine(GenerateTypeConfig.MOD_FOLDER, "Log.txt"), true)) { outputFile.WriteLine("Generating type " + typeName); } var Typesbase = new TypeSpecs(); Typesbase.baseType.categories.Add(currentType.type); Typesbase.typeName = typeName; Typesbase.baseType.sideall = currentType.texture; list.AddToArray(Typesbase.JsonSerialize()); } } ItemTypesServer.BlockRotator.Patches.AddPatch(new ItemTypesServer.BlockRotator.BlockGeneratePatch(GenerateTypeConfig.MOD_FOLDER, -99999, list)); }
public static void generateRecipes() { ServerLog.LogAsyncMessage(new LogMessage("Begining " + NAME + " recipe generation", LogType.Log)); using (StreamWriter outputFile = new StreamWriter(System.IO.Path.Combine(GenerateTypeConfig.MOD_FOLDER, "Log.txt"), true)) { outputFile.WriteLine("Begining " + NAME + " recipe generation"); } if (GenerateTypeConfig.DecorTypes.TryGetValue(LocalGenerateConfig.NAME, out List <DecorType> blockTypes)) { foreach (var currentType in blockTypes) { var typeName = GenerateTypeConfig.TYPEPREFIX + NAME + "." + currentType.type; var typeNameRecipe = GenerateTypeConfig.TYPEPREFIX + NAME + "." + currentType.type + ".Recipe"; ServerLog.LogAsyncMessage(new LogMessage("Generating recipe " + typeNameRecipe, LogType.Log)); using (StreamWriter outputFile = new StreamWriter(System.IO.Path.Combine(GenerateTypeConfig.MOD_FOLDER, "Log.txt"), true)) { outputFile.WriteLine("Generating recipe " + typeNameRecipe); } var recipe = new TypeRecipe(); recipe.name = typeNameRecipe; recipe.requires.Add(new RecipeItem(currentType.type)); recipe.results.Add(new RecipeItem(typeName)); recipe.LoadRecipe(); } } }
private static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args) { ServerLog.LogAsyncMessage(new LogMessage(args.Name, UnityEngine.LogType.Log)); try { if (args.Name.Contains("Newtonsoft.Json")) { return(Assembly.LoadFile(MOD_FOLDER + "Newtonsoft.Json.dll")); } if (args.Name.Contains("System.Numerics")) { return(Assembly.LoadFile(MOD_FOLDER + "System.Numerics.dll")); } if (args.Name.Contains("System.Data")) { return(Assembly.LoadFile(MOD_FOLDER + "System.Data.dll")); } if (args.Name.Contains("System.Runtime.Serialization")) { return(Assembly.LoadFile(MOD_FOLDER + "System.Runtime.Serialization.dll")); } } catch (Exception ex) { ServerLog.LogAsyncMessage(new LogMessage(ex.Message, UnityEngine.LogType.Exception)); } return(null); }
public void Log(string message, params object[] args) { if (args != null && args.Length != 0) { ServerLog.LogAsyncMessage(new LogMessage(PandaChat.BuildMessageNoLocal(GetFormattedMessage(string.Format(message, args))), LogType.Log)); } else { ServerLog.LogAsyncMessage(new LogMessage(PandaChat.BuildMessageNoLocal(GetFormattedMessage(message)), LogType.Log)); } }
public static void generateTypes(Dictionary <string, ItemTypeRaw> types) { ServerLog.LogAsyncMessage(new LogMessage("Begining " + NAME + " type generation", LogType.Log)); using (StreamWriter outputFile = new StreamWriter(System.IO.Path.Combine(GenerateTypeConfig.MOD_FOLDER, "Log.txt"), true)) { outputFile.WriteLine("Begining " + NAME + " generation"); } if (GenerateTypeConfig.DecorTypes.TryGetValue(NAME, out List <DecorType> blockTypes)) { foreach (var currentType in blockTypes) { //ServerLog.LogAsyncMessage(new LogMessage("Found parent " + currentType.type, LogType.Log)); //ServerLog.LogAsyncMessage(new LogMessage("Found texture " + currentType.texture, LogType.Log)); var typeName = GenerateTypeConfig.TYPEPREFIX + NAME + "." + currentType.type; var typeNameUp = typeName + ".up"; var typeNameDown = typeName + ".down"; ServerLog.LogAsyncMessage(new LogMessage("Generating type " + typeName, LogType.Log)); using (StreamWriter outputFile = new StreamWriter(System.IO.Path.Combine(GenerateTypeConfig.MOD_FOLDER, "Log.txt"), true)) { outputFile.WriteLine("Generating type " + typeName); } var baseType = new TypeParent(); baseType.categories.Add(currentType.type); baseType.name = typeName; baseType.sideall = currentType.texture; baseType.rotatablexn = typeNameUp; baseType.rotatablexp = typeNameUp; baseType.rotatablezn = typeNameDown; baseType.rotatablezp = typeNameDown; var typeUp = new TypeUp(); typeUp.name = typeNameUp; typeUp.parentType = typeName; var typeDown = new TypeDown(); typeDown.name = typeNameDown; typeDown.parentType = typeName; types.Add(typeName, new ItemTypeRaw(typeName, baseType.JsonSerialize())); types.Add(typeNameUp, new ItemTypeRaw(typeNameUp, typeUp.JsonSerialize())); types.Add(typeNameDown, new ItemTypeRaw(typeNameDown, typeDown.JsonSerialize())); } } }
public static void AfterWorldLoad() { if (NewWorld) { DecorConfigFileTrue = false; if (!Directory.Exists(GAME_SAVEFILE)) { return; } if (!File.Exists(NEW_FILE)) { DecorLogger.LogToFile("Decor Config file not found for save game " + ServerManager.WorldName + " named " + FILE_NAME); if (File.Exists(EXAMPLE_FILE)) { DecorLogger.LogToFile("Example Decor File Found"); File.Copy(EXAMPLE_FILE, NEW_FILE); DecorLogger.LogToFile("Example File Coppied to savegame"); ServerLog.LogAsyncMessage(new LogMessage("<color = blue>Restart server/game for decor mod to be functional</color>", LogType.Log)); NewDecorConfigFileTrue = true; } else { DecorLogger.LogToFile("Example Decor File not found can not copy file"); DecorConfigFileTrue = false; return; } } DecorLogger.LogToFile("Decor Config file found for save game " + ServerManager.WorldName + " named " + FILE_NAME); var fileContents = File.ReadAllText(NEW_FILE); DecorTypes = JsonConvert.DeserializeObject <Dictionary <string, List <DecorType> > >(fileContents); foreach (string type in TypeList) { if (!DecorTypes.ContainsKey(type)) { DecorTypes.Add(type, null); } } fileContents = JsonConvert.SerializeObject(DecorTypes); File.WriteAllText(NEW_FILE, fileContents); using (StreamWriter outputFile = new StreamWriter(Path.Combine(GenerateTypeConfig.GAME_SAVEFILE, "TypeList.txt"))) { outputFile.WriteLine(""); } } DecorLogger.LogToFile("TypeList.txt Contents: " + File.ReadAllText(GenerateTypeConfig.GAME_SAVEFILE + "TypeList.txt")); }
public static void generateTypes(Dictionary <string, ItemTypeRaw> types) { ServerLog.LogAsyncMessage(new LogMessage("Begining " + NAME + " generation", LogType.Log)); if (GenerateTypeConfig.DecorTypes.TryGetValue(NAME, out List <DecorType> blockTypes)) { foreach (var currentType in blockTypes) { //ServerLog.LogAsyncMessage(new LogMessage("Found parent " + currentType.type, LogType.Log)); //ServerLog.LogAsyncMessage(new LogMessage("Found texture " + currentType.texture, LogType.Log)); var typeName = GenerateTypeConfig.TYPEPREFIX + NAME + "." + currentType.type; ServerLog.LogAsyncMessage(new LogMessage("Generating type " + typeName, LogType.Log)); var baseType = new TypeParent(); baseType.categories.Add(currentType.type); baseType.name = typeName; baseType.sideall = currentType.texture; baseType.rotatablexn = typeName + "x+"; baseType.rotatablexp = typeName + "x-"; baseType.rotatablezn = typeName + "z+"; baseType.rotatablezp = typeName + "z-"; var typeXP = new TypeXP(); typeXP.name = typeName + "x+"; typeXP.parentType = typeName; var typeXM = new TypeXM(); typeXM.name = typeName + "x-"; typeXM.parentType = typeName; var typeZP = new TypeXM(); typeZP.name = typeName + "z+"; typeZP.parentType = typeName; var typeZM = new TypeXM(); typeZM.name = typeName + "z-"; typeZM.parentType = typeName; types.Add(typeName, new ItemTypeRaw(typeName, baseType.JsonSerialize())); types.Add(typeName + "x+", new ItemTypeRaw(typeName + "x+", typeXP.JsonSerialize())); types.Add(typeName + "x-", new ItemTypeRaw(typeName + "x-", typeXM.JsonSerialize())); types.Add(typeName + "z+", new ItemTypeRaw(typeName + "z+", typeZP.JsonSerialize())); types.Add(typeName + "z-", new ItemTypeRaw(typeName + "z-", typeZM.JsonSerialize())); } } }
private static void LogMessage(string modname, Pipliz.LogMessage logMessage, bool output = false, string message = null, bool ignoreconsole = false) { if (ignoreconsole == false) { ServerLog.LogAsyncMessage(logMessage); } if (output && message != null) { if (sw.ContainsKey(modname)) { sw[modname].WriteLine(GetTimestamp() + message); sw[modname].WriteLine(""); sw[modname].Flush(); } } }
public CSConsoleAndFileLogger(string namespaceStr, string logName, string consolePrefix) { LOG_DIR = GameInitializer.GAME_ROOT + "Logs/" + namespaceStr + "/"; _consolePrefix = consolePrefix; if (!Directory.Exists(LOG_DIR)) { Directory.CreateDirectory(LOG_DIR); } LOG_NAME = logName + "." + DateTime.Now.ToString("yyyy-dd-M--HH-mm-ss"); _logFile = LOG_DIR + LOG_NAME + DOT_LOG; ServerLog.LogAsyncMessage(new LogMessage("Log file set to: " + _logFile, LogType.Log)); _thread = new Thread(new ThreadStart(Log)); _thread.IsBackground = true; _thread.Start(); }
public static void generateRecipes() { if (GenerateTypeConfig.DecorTypes.TryGetValue(LocalGenerateConfig.NAME, out List <DecorType> blockTypes)) { foreach (var currentType in blockTypes) { var typeName = GenerateTypeConfig.TYPEPREFIX + NAME + "." + currentType.type; var typeNameRecipe = GenerateTypeConfig.TYPEPREFIX + NAME + "." + currentType.type + ".Recipe"; ServerLog.LogAsyncMessage(new LogMessage("Generating type " + typeNameRecipe, LogType.Log)); var recipe = new TypeRecipe(); recipe.name = typeNameRecipe; recipe.requires.Add(new RecipeItem(currentType.type)); recipe.results.Add(new RecipeItem(typeName)); recipe.LoadRecipe(); } } }
public void Log(string message) { ServerLog.LogAsyncMessage(new LogMessage(GetFormattedMessage(message), LogType.Log)); }
internal static void Log(ChatColor color, string message, params object[] args) { ServerLog.LogAsyncMessage(new LogMessage(PandaChat.BuildMessage(GetFormattedMessage(string.Format(message, args)), color), LogType.Log)); }
internal static void Log(string message, params object[] args) { ServerLog.LogAsyncMessage(new LogMessage(GetFormattedMessage(string.Format(message, args)), LogType.Log)); }
internal static void Log(string message) { ServerLog.LogAsyncMessage(new Pipliz.LogMessage(GetFormattedMessage(message), UnityEngine.LogType.Log)); }
private static void Log(string message) { ServerLog.LogAsyncMessage(new LogMessage(string.Format("[{0}]<Pandaros => SharedStockpile> {1}", DateTime.Now, message), UnityEngine.LogType.Log)); }