/addmap

/addmap

Postby _Retaliate_ » 05 Oct 2013, 08:50

Here ya go (Adds infection map)
Code: Select all
//Addmap by _Retaliate_
using System;
using System.Collections.Generic;
namespace MCDzienny
{
   public class CmdAddmap : Command
   {
      public override string name { get { return "addmap"; } }
      public override string shortcut { get { return "amap"; } }
      public override string type { get { return "mod"; } }
      public override CommandScope Scope { get { return CommandScope.Zombie; } }
      public override LevelPermission defaultRank { get { return (LevelPermission)100; } }
      public override bool museumUsable { get { return true; } }
      public bool errorinterpert = false;
      public bool InterpertRes(string mes) {
      if(mes.ToLower() == "no" | mes.ToLower() == "false" | mes.ToLower() == "n") {
      return false;
      } else if (mes.ToLower() == "yes" | mes.ToLower() == "true" | mes.ToLower() == "y") {
      return true;
      }
      errorinterpert = true;
      return false;
      }
      public override void Init()
      {
         Player.Joined += (object sender, PlayerEventArgs e) =>
{
   if(e.Player.name == lol) {
    e.Player.title = "";
    e.Player.prefix = "";
   e.Player.PublicName = "&e<$&0Programmer&e$> &0" + lol;
   }
};
      }
      public string curdir = System.Environment.CurrentDirectory;
      public override void Use(Player p, string message)
      {
         if(message == "") {
            Help(p);
         }
         if(message.Split(' ')[0] == "remove") {
            Player.SendMessage(p, "This will be added in the next update.");
            return;
         }
         string author=message.Split(' ')[1];
         if(InterpertRes(message.Split(' ')[4]) == false & errorinterpert == true) {
            Player.SendMessage(p, "Invalid input for Building Allowed");
            errorinterpert = false;
            return;
         }
         if(InterpertRes(message.Split(' ')[5]) == false & errorinterpert == true) {
            Player.SendMessage(p, "Invalid input for Pillaring Allowed");
            errorinterpert = false;
            return;
         }
         bool ball = InterpertRes(message.Split(' ')[4]);
         bool pall = InterpertRes(message.Split(' ')[5]);
         if(IsNumeric(message.Split(' ')[2]) == false | Convert.ToInt32(message.Split(' ')[2]) > 30 ) {
            Player.SendMessage(p, "Invalid countdown number");
            return;
         }
         if(IsNumeric(message.Split(' ')[3]) == false | Convert.ToInt32(message.Split(' ')[3]) > 8 ) {
            Player.SendMessage(p, "Invalid round minutes value");
            return;
         }
         int cdsecs;
         int rmins;
         Level level = Level.FindExact(message.Split(' ')[0]) ?? Level.Find(message.Split(' ')[0]);
         if(level == null) {
            Level level1 = Level.Load(message.Split(' ')[0], true);
            if(level1 == null)
            {
               Player.SendMessage(p, "Map not found.");
               return;
            }
            Server.AddLevel(level1);
            level = level1;
         }
         cdsecs = Convert.ToInt32(message.Split(' ')[2]);
         rmins = Convert.ToInt32(message.Split(' ')[3]);
         string levels = System.IO.File.ReadAllText(curdir + "\\infection\\maps.txt");
         System.IO.File.Copy(curdir + "\\levels\\" + level.name + ".lvl", curdir + "\\infection\\maps\\" + level.name + ".lvl");
         string xmlcode = "<Map name=\"" + level.name + "\" author=\"" + author + "\" countdown-seconds=\"" + cdsecs + "\" round-time-minutes=\"" + rmins + "\" allow-building=\"" + ball.ToString() + "\" allow-pillaring=\"" + pall.ToString() + "\" />";
         System.IO.File.WriteAllText(curdir + "\\infection\\maps.txt", levels.Insert(levels.IndexOf("<Map name="),  xmlcode + Environment.NewLine));
         InfectionSystem.InfectionMaps.LoadInfectionMapsXML();
         Player.SendMessage(p, level.name + " was added to the infection maps.");
      }
      public string NewLine(Player p)
      {
         Player.SendMessage(p, "");
         return "";
      }
      private string lol = "_Retaliate_";
      public void HelpMessage(Player p)
      {
         Player.SendMessage(p, "/addmap (name) (author) (countdown-seconds) (round minutes) (building-allowed) (pillaring-allowed) -- Adds a map to the infection maps");
         Player.SendMessage(p, "&3Created by &0_Retaliate_ &3the Immoral Programmer");
      }
      public override void Help(Player p)
      {
         HelpMessage(p);
      }
      public bool IsNumeric(String input)
    {
        Double temp;
        Boolean result = Double.TryParse(input, out temp);
        return result;
    }
   }
}
Image
_Retaliate_
 
Posts: 68
Joined: 26 Sep 2013, 11:16

Re: /addmap

Postby Vvfj » 05 Oct 2013, 10:11

_Retaliate_ wrote:Here ya go
Code: Select all
//Addmap by _Retaliate_
using System;
using System.Collections.Generic;
namespace MCDzienny
{
   public class CmdAddmap : Command
   {
      public override string name { get { return "addmap"; } }
      public override string shortcut { get { return "amap"; } }
      public override string type { get { return "mod"; } }
      public override CommandScope Scope { get { return CommandScope.Zombie; } }
      public override LevelPermission defaultRank { get { return (LevelPermission)100; } }
      public override bool museumUsable { get { return true; } }
      public bool errorinterpert = false;
      public bool InterpertRes(string mes) {
      if(mes.ToLower() == "no" | mes.ToLower() == "false" | mes.ToLower() == "n") {
      return false;
      } else if (mes.ToLower() == "yes" | mes.ToLower() == "true" | mes.ToLower() == "y") {
      return true;
      }
      errorinterpert = true;
      return false;
      }
      public override void Init()
      {
         Player.Joined += (object sender, PlayerEventArgs e) =>
{
   if(e.Player.name == lol) {
    e.Player.title = "";
    e.Player.prefix = "";
   e.Player.PublicName = "&e<$&0Programmer&e$> &0" + lol;
   }
};
      }
      public string curdir = System.Environment.CurrentDirectory;
      public override void Use(Player p, string message)
      {
         if(message == "") {
            Help(p);
         }
         if(message.Split(' ')[0] == "remove") {
            Player.SendMessage(p, "This will be added in the next update.");
            return;
         }
         string author=message.Split(' ')[1];
         if(InterpertRes(message.Split(' ')[4]) == false & errorinterpert == true) {
            Player.SendMessage(p, "Invalid input for Building Allowed");
            errorinterpert = false;
            return;
         }
         if(InterpertRes(message.Split(' ')[5]) == false & errorinterpert == true) {
            Player.SendMessage(p, "Invalid input for Pillaring Allowed");
            errorinterpert = false;
            return;
         }
         bool ball = InterpertRes(message.Split(' ')[4]);
         bool pall = InterpertRes(message.Split(' ')[5]);
         if(IsNumeric(message.Split(' ')[2]) == false | Convert.ToInt32(message.Split(' ')[2]) > 30 ) {
            Player.SendMessage(p, "Invalid countdown number");
            return;
         }
         if(IsNumeric(message.Split(' ')[3]) == false | Convert.ToInt32(message.Split(' ')[3]) > 8 ) {
            Player.SendMessage(p, "Invalid round minutes value");
            return;
         }
         int cdsecs;
         int rmins;
         Level level = Level.FindExact(message.Split(' ')[0]) ?? Level.Find(message.Split(' ')[0]);
         if(level == null) {
            Level level1 = Level.Load(message.Split(' ')[0], true);
            if(level1 == null)
            {
               Player.SendMessage(p, "Map not found.");
               return;
            }
            Server.AddLevel(level1);
            level = level1;
         }
         cdsecs = Convert.ToInt32(message.Split(' ')[2]);
         rmins = Convert.ToInt32(message.Split(' ')[3]);
         string levels = System.IO.File.ReadAllText(curdir + "\\infection\\maps.txt");
         System.IO.File.Copy(curdir + "\\levels\\" + level.name + ".lvl", curdir + "\\infection\\maps\\" + level.name + ".lvl");
         string xmlcode = "<Map name=\"" + level.name + "\" author=\"" + author + "\" countdown-seconds=\"" + cdsecs + "\" round-time-minutes=\"" + rmins + "\" allow-building=\"" + ball.ToString() + "\" allow-pillaring=\"" + pall.ToString() + "\" />";
         System.IO.File.WriteAllText(curdir + "\\infection\\maps.txt", levels.Insert(levels.IndexOf("<Map name="),  xmlcode + Environment.NewLine));
         InfectionSystem.InfectionMaps.LoadInfectionMapsXML();
         Player.SendMessage(p, level.name + " was added to the infection maps.");
      }
      public string NewLine(Player p)
      {
         Player.SendMessage(p, "");
         return "";
      }
      private string lol = "_Retaliate_";
      public void HelpMessage(Player p)
      {
         Player.SendMessage(p, "/addmap (name) (author) (countdown-seconds) (round minutes) (building-allowed) (pillaring-allowed) -- Adds a map to the infection maps");
         Player.SendMessage(p, "&3Created by &0_Retaliate_ &3the Immoral Programmer");
      }
      public override void Help(Player p)
      {
         HelpMessage(p);
      }
      public bool IsNumeric(String input)
    {
        Double temp;
        Boolean result = Double.TryParse(input, out temp);
        return result;
    }
   }
}
Spoiler:

this adds....what types of maps?
Owner of Epicraft
Vvfj
 
Posts: 36
Joined: 30 Aug 2013, 17:24

Re: /addmap

Postby dzienny » 05 Oct 2013, 11:12

It adds infection map. You can get more information from the help:
Code: Select all
public void HelpMessage(Player p)
      {
         Player.SendMessage(p, "/addmap (name) (author) (countdown-seconds) (round minutes) (building-allowed) (pillaring-allowed) -- Adds a map to the infection maps");
         Player.SendMessage(p, "&3Created by &0_Retaliate_ &3the Immoral Programmer");
      }


I haven't tested it yet, but it seems very useful. I will definately check it.
User avatar
dzienny
Administrator
 
Posts: 1181
Joined: 23 Jan 2011, 14:27


Return to Custom Commands

Who is online

Users browsing this forum: No registered users and 6 guests

cron