It is currently April 25th, 2018, 6:18 pm


All times are UTC




Post new topic Reply to topic  [ 4 posts ] 
Author Message
 Post subject: [FemtoCraft] Help Command
PostPosted: March 2nd, 2012, 10:58 am 
User avatar

Joined: January 18th, 2012, 6:16 am
Posts: 14
THIS IS NOT FCRAFT. THIS IS FRAGMER'S OTHER(better) SERVER SOFTWARE, FemtoCraft!

It's pretty self-explanatory. It adds Help Information to the command "Help". It's very easy to add help information to new commands, or edit existing ones. You're going to need add this under switch( command ) { in Commands.cs:
Code:
                case "help":
                case "h":
                    Help(player, param);
                    break;


Now go down near static void OpsHandler( [NotNull] Player player ) { in Commands.cs and paste this above it:
Code:
        static void Help([NotNull] Player player, String cmd)
        {
            if (String.IsNullOrWhiteSpace(cmd))
            {
                player.Message("&eTo use Help, type &9/help <command>");
                return;
            }
            else
            {
                HelpCommand.Parse(player, cmd);
            }
        }


Now you may be getting errors such as "The Type or Namespace 'HelpCommand' is not found", but ignore it temporarily.

Now create a new class named HelpCommand.cs and post this within it:
Show
Code:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using JetBrains.Annotations;

namespace FemtoCraft {
    static class HelpCommand {
        public static void Parse([NotNull] Player player, [NotNull] string command)
        {
            if (player == null) throw new ArgumentNullException("player");
            if (command == null) throw new ArgumentNullException("command");
            string Info;
            string Usage;
            string cmd = command;
            bool OpCmd;

            switch (command)
            {
                case "help":
                case "h":
                    Info = "Gives useful information the specified command.";
                    Usage = "/h <command>&e, &9/help <command>";
                    OpCmd = false;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "ops":
                    Info = "Shows a list of the OPs.";
                    Usage = "/ops";
                    OpCmd = false;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "op":
                    Info = "Promotes the specified player to OP.";
                    Usage = "/op <player>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "deop":
                    Info = "Demoted the specified player from OP.";
                    Usage = "/deop <player>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "kick":
                case "k":
                    Info = "Kicks the specified player from the Server.";
                    Usage = "/k <player>&e, &9/kick <player>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "ban":
                    Info = "Bans the specified player from the Server, disallowing him/her to reconnect.";
                    Usage = "/ban <player>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "unban":
                    Info = "Unbans the specified player from the Server, allowing the banned player to reconnect again.";
                    Usage = "/unban <player>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "banip":
                    Info = "Bans the specified IP Address from the server, disallowing anyone accessing from that IP Address to reconnect.";
                    Usage = "/banip <IP>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "unbanip":
                    Info = "Unbans the specified IP Address from the server, allowing anyone accessing from that IP to reconnect again.";
                    Usage = "/unbanip <IP>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "solid":
                case "s":
                    Info = "Allows the player to place Admincrete while equipping a Stone Block.";
                    Usage = "/s&e, &9/solid";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "water":
                case "w":
                    Info = "Allows the player to place Water blocks while equipping a Blue Block.";
                    Usage = "/w&e, &9/water";
                    OpCmd = false;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "lava":
                case "l":
                    Info = "Allows the player to place Lava blocks while equipping a Red Block.";
                    Usage = "/l&e, &9/lava";
                    OpCmd = false;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "grass":
                case "g":
                    Info = "Allows the player to place Grass blocks while equipping a Dirt Block.";
                    Usage = "/g&e, &9/grass";
                    OpCmd = false;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "say":
                case "broadcast":
                    Info = "Globally broadcasts a message to every player connected to the server.";
                    Usage = "/broadcast <message>&e, &9/say <message>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "tp":
                case "teleport":
                    Info = "Teleports you to the specified player.";
                    Usage = "/tp <player>&e, &9/teleport <player>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "bring":
                    Info = "Teleports the specified player to you.";
                    Usage = "/bring <player>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "setspawn":
                    Info = "Sets the spawnpoint of the map to the absolute position the time you used the command.";
                    Usage = "/setspawn";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "whitelist":
                    Info = "Lists everyone who is whitelisted.";
                    Usage = "/whitelist";
                    OpCmd = false;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "whitelistadd":
                    Info = "Adds the specified player to the whitelist.";
                    Usage = "/whitelistadd <player>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "whitelistremove":
                    Info = "Removes the specified player from the whitelist.";
                    Usage = "/whitelistremove <player>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "load":
                    Info = "Loads the specified map to the server.";
                    Usage = "/load <filename>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "save":
                    Info = "Force Saves the map to the specified file.";
                    Usage = "/save <filename>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "physics":
                    Info = "Shows the enabled physics options on the server.";
                    Usage = "/physics&e, &9/physics <on|off>&e, &9/physics <module>";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "p":
                case "paint":
                    Info = "Automatically replaces deleted blocks with the block equipped.";
                    Usage = "/p&e, &9/paint";
                    OpCmd = false;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "players":
                    Info = "Shows a list of all the current players online.";
                    Usage = "/players";
                    OpCmd = false;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;

                case "gen":
                    Info = "Generates a new map.";
                    Usage = "/gen";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
                case "genflat":
                    Info = "Generates a new flat map.";
                    Usage = "";
                    OpCmd = true;
                    Help(player, cmd, Info, Usage, OpCmd);
                    break;
            }

        }
        static void Help([NotNull] Player player, String cmd, String Info, String Usage, bool OpCmd) {
            player.Message("&eInformation on &9" + cmd + "&e: ");
            if (String.IsNullOrWhiteSpace(Usage))
            {
                player.Message("&eUsage: &7unknown?");
            }
            else
            {
                player.Message("&eUsage: &9" + Usage);
            }
            if (OpCmd != true)
            {
                player.Message("&eOP Command: &cFalse");
            }
            else
            {
                player.Message("&eOP Command: &aTrue");
            }
            if (!String.IsNullOrWhiteSpace(Info))
            {
                player.Message("&eInfo: &9" + Info);
            }
            else if(String.IsNullOrWhiteSpace(Info)){
                player.Message("&eNo Information on the command \"" + cmd + "\".");
            }
        }
    }
}


Now build the solution, and viola!

I'd like to thank fragmer for helping me stop herping the derp :D.

- Moose


Top
Offline Profile  
Reply with quote  
 Post subject: Re: [FemtoCraft] Help Command
PostPosted: March 14th, 2012, 9:32 pm 
User avatar

Joined: December 21st, 2011, 5:57 pm
Posts: 41
Ok its a another software .
But why you post it in fcraft server software ?

You can pm Fragmer!

_________________
[url][soundcloud]<iframe width="580" height="170" frameborder="0" src="http://now.in/radio_player/myhubba?bg_color=%23FFC552"></iframe>[/soundcloud][/url]


Top
Offline Profile  
Reply with quote  
 Post subject: Re: [FemtoCraft] Help Command
PostPosted: March 14th, 2012, 10:04 pm 

Joined: August 21st, 2011, 6:31 am
Posts: 280
Location: United Kingdom
I think he was posting it in the 'Modding' section of the fCraft forums so he could share his modifications with the fCraft community, since a lot of people use/follow fragmer's work.

I am unable to confirm this :wink:

_________________
You cannot use certain BBCodes: [img].


Top
Offline Profile  
Reply with quote  
 Post subject: Re: [FemtoCraft] Help Command
PostPosted: March 14th, 2012, 11:40 pm 
fCraft Developer
User avatar

Joined: May 21st, 2011, 10:53 pm
Posts: 1386
Well, since no one actually uses FemtoCraft except me and Moose... And since FemtoCraft shares some code with fCraft... I figured - why not post FemtoCraft mods here? :P


Top
Offline Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 4 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Theme created StylerBB.net