Difference between revisions of "TFile.Exists"

From Soldat Community Wiki
Jump to: navigation, search
m
m (Example: Removed invalid semicolon)
 
Line 13: Line 13:
 
   try
 
   try
 
     if File.Exists('~/' + Text + '.ini') then
 
     if File.Exists('~/' + Text + '.ini') then
       Player.WriteConsole('Yup, config for that map exists', $FFFFFFFF);
+
       Player.WriteConsole('Yup, config for that map exists', $FFFFFFFF)
 
     else
 
     else
 
       Player.WriteConsole('Sorry, this config for this map doesn''t exist', $FFFFFFFF);
 
       Player.WriteConsole('Sorry, this config for this map doesn''t exist', $FFFFFFFF);

Latest revision as of 16:05, 29 July 2013

function Exists(const Source: string): Boolean
 Source: a path to a file to check access for
 Result: Whenever file exists or not

Description

This function checks whenever file pointed by Source exists on hard drive. If the path is out of script's sandbox, EAccessViolation exception is thrown.

Example

procedure OnPlayerCommand(Player: TActivePlayer; Text: string);
begin
  // Assuming config Sandboxed=2 (default)
  Delete(Text, 1, 1); // remove command's slash
  try
    if File.Exists('~/' + Text + '.ini') then
      Player.WriteConsole('Yup, config for that map exists', $FFFFFFFF)
    else
      Player.WriteConsole('Sorry, this config for this map doesn''t exist', $FFFFFFFF);
  except    
    Player.WriteConsole('Wrong path (you added ../ a few times, didn''t you?)', $FFFFFFFF);
  end;
end;