Menu

Objetos

Array

Objetos disponibles:


Reg

Trabaja con claves del registro; los datos quedaran guardados aunque el server reinicie o sea reinstalado.

Metodos:

Clear: Boolean
Exists(key: AnsiString): Boolean
Delete(key: AnsiString): Boolean
GetKeys: TStringList
GetValue(Key:ansistring):ansistring
SetValue(key,value: AnsiString):boolean

Ejemplo:

var//Declaracion de varianles globales.
 list: Tstringlist;
 i: integer;

begin//Comienzo.

 if Reg.Setvalue('key1','valor1(2)') then //Guardo un valor en 'Key1'
   print('se cargo el valor (Y)')
 else
   print('No se cargo el valor (N)');

 if reg.exists('key1') then //verifico si exsiste la clave 'key1'
   print('existe con el valor: '+reg.getvalue('key1'));

 list:= Reg.getkeys; //Creo una lista con todas las claves
  if list <> nil then
 for i:=0 to list.count-1 do
   print('valor '+inttostr(i)+': '+list[i]);

 if Reg.delete('key1') then //Borro la clave 'key1'
   print('se borro el valor (Y)');

 if reg.clear then //Borro todas las claves.
   print('se borro lista')
 else
   print('no se borro lista');

end.

Room

Propiedades:

Users:      Integer     R    {cantidad de usuarios}
Bans:       integer     R   {cantidad de bans}
Port:       Word        R   
Hashlink:   Ansistring  R   
externalIP: Ansistring  R
Name:       Ansistring  R
lang:       Ansistring  R
Version:    Ansistring  R
StartTime   TDateTime   R
onTime  Ansistring  R
Topic       Ansistring  RW
Url     Ansistring  RW
Urltag      Ansistring  RW

Metodos:

SendHtml(tag: Ansistring)
procedure SendScribble(Scb: TScribble)

Ejemplo:

procedure  onCommand (us: TUser; cmd, args: AnsiString; PV:boolean);
begin
  if cmd = 'topic' then //comando /cmd <topic>
    Room.topic:= args
  if cmd = 'url' then //comando /url <url>espacio<urltag>
  begin
   Room.url:= Copy(args,1,Pos(' ',args)-1);
   Room.urltag:= Copy(args,Pos(' ',args)+1, 100);
  end; 
  if cmd = 'info' then 
  begin
    printu(us,'Nombre de la sala: '+room.name);
    printu(us,'Hashlink: '+room.haslink);
    printu(us,'Cantidad de usuarios: '+room.users);
    printu(us,'Cantidad de usuarios baneados: '+room.bans);
    printu(us,'version del servidor: '+room.version);
  end;
end;

File

Metodos:

Append(fname,text: AnsiString):Boolean
Exist(fname:AnsiString):Boolean
Load(fname:AnsiString): AnsiString
Save(fname,text:AnsiString):Boolean

Ejemplo:

var
Lista: TStringList;

procedure onLoad();
var
i: Integer;
begin
  Lista:= Tstringlist.create;
  if file.exist('miArchivo.txt') then
     Lista.text:= file.load('miArchivo.txt'); //Cargo el archivo en un stringlist.
 for i:=0 to Lista.count-1 do
 begin
   Print(Lista[i]); //Imprimo cada renglon del archivo.
 end;
end;
procedure userjoin(us:TUser);
begin
  if Lista.indexof(us.name)=0 then
  begin
    Lista.Add(us.name); //Agrego el nombre del usuario a la lista.
    file.Append('miArchivo.txt',us.name); //Agrego el nombre del usuario al archivo.
  end; 
end;
procedure  onCommand (us: TUser; cmd, args: AnsiString; PV:boolean);
begin
  if cmd = 'guardar' then
    file.save('miArchivo.txt',Lista.txt);//Sobreescribo el archivo con todo el contenido de la lista
end;