Difference between revisions of "Manual:DIL Manual/cmdptr"

From DikuMUD Wiki
Jump to navigation Jump to search
(XML import)
 
Line 1: Line 1:
 
+
==cmdptr==
 
+
'''cmdptr fields'''
<span id="cptr"></span>
 
'''Type:  '''<i><!--CODE-->cmdptr</i><!--ENDCODE-->
 
'''cmdptr fields'''
 
  
  
Line 22: Line 19:
  
  
  The cmdptr can be used to search the command list or display all the commands.
+
The cmdptr can be used to search the command list or display all the commands.
I0t is also now possible to sort the commands by type by defining your own command
+
It is also now possible to sort the commands by type by defining your own command
types and using the type field to sort on.
+
types and using the type field to sort on.
  
  In order to get the first command in the list you use the following function:
+
In order to get the first command in the list you use the following function:
'''Function:  '''<i><!--CODE-->chead();</i><!--ENDCODE-->
 
If you want to get a specific command then you use the following function:
 
'''Function:  '''<i><!--CODE-->cmdptr := getcommand (s : string );</i><!--ENDCODE-->
 
'''Example:'''
 
<i><!--CODE-->
 
---~---~---~---~---~---~---~---~---
 
  
  dilbegin cmdtst(arg : string);
+
'''Function: '''chead();
var
+
If you want to get a specific command then you use the following function:
  cmd : cmdptr;
+
'''Function: '''cmdptr := getcommand (s : string );
  st : string;
 
  
code
+
===Example===
{
+
 
 +
  dilbegin cmdtst(arg : string);
 +
  var
 +
    cmd : cmdptr;
 +
    st : string;
 +
  code
 +
  {
 
     cmd := chead();
 
     cmd := chead();
 
+
    while (cmd)
  while (cmd)
+
    {
        {
+
      st := cmd.name + " " + itoa(cmd.level) + " " + itoa(cmd.type) + " " +
        st := cmd.name + " " + itoa(cmd.level) + " " + itoa(cmd.type) + " " +
+
      itoa(cmd.loglevel) + " " + itoa(cmd.position);
        itoa(cmd.loglevel) + " " + itoa(cmd.position);
+
      act("CMD: $2t", A_ALWAYS, self, st, null, TO_CHAR);
        act("CMD: $2t", A_ALWAYS, self, st, null, TO_CHAR);
+
      cmd := cmd.next;
        cmd := cmd.next;
+
    }
        }
+
    cmd:=getcommand("kick");
 
+
    sendtext ("You must be "+itoa(cmd.level+" to use kick&amp;n",self);
        cmd:=getcommand("kick");
+
    quit;
        sendtext ("You must be "+itoa(cmd.level+" to use kick&amp;n",self);
+
  }
 
+
  dilend
            quit;
 
}
 
dilend
 
 
 
---~---~---~---~---~---~---~---~---
 
 
 
</i><!--ENDCODE-->
 
 
 
 
 
---~---~---~---~---~---~---~---~---
 

Revision as of 10:49, 29 November 2025

cmdptr

cmdptr fields


name
            string - command name
type
            integer - command type like social or skill or just command
level
            integer - minimum level to use command
loglevel
            integer - level of character that can see the log 0 for no logs
position
            integer - minimum position to use command
next
            cmdptr - pointer to the next cmdptr
previous
            cmdptr - pointer to the previous cmdptr


The cmdptr can be used to search the command list or display all the commands. It is also now possible to sort the commands by type by defining your own command types and using the type field to sort on.

In order to get the first command in the list you use the following function:

Function: chead(); If you want to get a specific command then you use the following function: Function: cmdptr := getcommand (s : string );

Example

 dilbegin cmdtst(arg : string);
 var
   cmd : cmdptr;
   st : string;
 code
 {
   cmd := chead();
   while (cmd)
   {
     st := cmd.name + " " + itoa(cmd.level) + " " + itoa(cmd.type) + " " +
     itoa(cmd.loglevel) + " " + itoa(cmd.position);
     act("CMD: $2t", A_ALWAYS, self, st, null, TO_CHAR);
     cmd := cmd.next;
   }
   cmd:=getcommand("kick");
   sendtext ("You must be "+itoa(cmd.level+" to use kick&n",self);
   quit;
 }
 dilend