• Log in or sign up for an account here: https://www.sythe.org/login

Duplicate identifier

  • Thread starter Thread starter schlaften
  • Start date Start date
S

schlaften

Guest
Duplicate identifier
Hey. I get this error when I try to compile the Dodian Essence Minter V1 (http://www.sythe.org/showthread.php?t=361038).
Code:
Line 26: [Error] (34:1): Duplicate identifier 'UpChars' in script C:\Program Files\SCAR 3.15\includes\srl\srl\core\Globals.scar
. I've tried everything. Using old and new versions of Scar, trying it on multiple servers, nothing.

this is what the Globals.scar looks like

Code:
//-----------------------------------------------------------------//
//--               Scar Standard Resource Library                --//
//--               » Global Variables                            --//
//-----------------------------------------------------------------//

{ const SRLVersionNumber;
  Description: Repository Version Number. }
const
  SRLVersionNumber = '3.60';

{ var x, y: Integer;
  Description: Global Mouse Positions. }
var
  x, y: Integer;

{ var Mark, LogOutMark, RandomChatMark, RotateMark, RandomClickMark, PickUpMouseMark, BoredMark, HoverMark, KillScriptMark, LeaveScreenMark, MouseSpeedMark: Integer;
  Description: Timers. }
var
  Mark, LogOutMark, RandomChatMark, RotateMark, RandomClickMark,
    PickUpMouseMark, BoredMark, HoverMark, KillScriptMark, LeaveScreenMark,
    MouseSpeedMark: Integer;

{ var UpChars, SmallChars, StatChars, NpcChars: Integer;
  Description: Character BitMaps. }
var
[COLOR="Red"][B][SIZE="7"] UpChars, SmallChars, StatChars, NpcChars: Integer;[/SIZE][/B][/COLOR]

{ var ST: LongInt;
  Description: Script Start Time. }
var
  ST: LongInt;

{ var FindClient: Boolean;
  Description: Set to True will Auto Find Client with FindWindowbySize. }
var
  FindClient: Boolean;

{ type PPoint;
  Description: A Polar Point. }
type
  PPoint = record
    R, T: Extended;
  end;

{ var Sinearray, Cosearray: Array[0..360] of Extended;
  Description: fill array for Radial- and LinearWalk. }
var
  Sinearray, Cosearray: array[0..360] of Extended;

{ type TUser;
  Description: The User Record. }
type
  TUser = record
    Name: string; // * User Name
    Pass: string; // * User Pass
    Nick: string; // * Screen Name for random detection
    Active: Boolean; // * Set to True if Ok, False if Lost.
    Loc: string; // * User Location
    Skill: string; // * User Action to Perform
    Level: array[0..21] of word;
      // * Levels of all skills. SetIn GetPlayerLevels.
    Ore: string; // * test
    WaitTime: Integer; // * Wait Time for Each User, Good for Autofighters
    Fight: Boolean; // * If we want the Char to randomly fight
    Worked: Integer; // * Time User has worked
    Banked: Integer; // * Number of Banks User has done
    Killed: Integer; // * Number of Kills User has made
    Boolean1: Boolean; // * For reports, etc.
    Boolean2: Boolean; // * For reports, etc.
    Boolean3: Boolean; // * For reports, etc.
    Integer1: Integer; // * For reports, etc.
    Integer2: Integer; // * For reports, etc.
    Integer3: Integer; // * For reports, etc.
    Integer4: Integer; // * For reports, etc.
    String1: string; // * For reports, etc.
    String2: string; // * For reports, etc.
    String3: string; // * For reports, etc.
    Extended1: Extended; // * For reports, etc.
    Extended2: Extended; // * For reports, etc.
    Extended3: Extended; // * For reports, etc.
  end;

{ Level 1 = Attack
  Level 2 = Strength
  Level 3 = Defence
  Level 4 = Range
  Level 5 = Prayer
  Level 6 = Mage
  Level 7 = RuneCrafting
  Level 8 = HP
  Level 9 = Agility
  Level 10 = Herblore
  Level 11 = Thiefing
  Level 12 = Crafting
  Level 13 = Fletching
  Level 14 = Slayer
  Level 15 = Mining
  Level 16 = Smithing
  Level 17 = Fishing
  Level 18 = Cooking
  Level 19 = Firemaking
  Level 20 = Woodcutting
  Level 21 = Farming
}

{ var Players: Array of TUser;
  Description: Array of users. }
var
  Players: array of TUser;

{ var kSecs, kRow, kLastChoice: Integer;
  Description: Used in MessageFriendEvery for data. }
{ var kMessages: Array of String;
  Description: Array of Messages. }
var
  kSecs, kRow, kLastChoice: Integer;
  kMessages: array of string;

{*******************************************************************************
procedure NumberOfPlayers(Number: Integer);
By: BenLand100
Description: Makes the Players array have Number indexes
*******************************************************************************}

procedure NumberOfPlayers(Number: Integer);
begin
  SetArrayLength(Players, Number);
end;

{ var RandomPlayer: Boolean;
  Description: Will Choose a Random Player or a Numberd Player according to True/False at NextPlayer. }
var
  RandomPlayer: Boolean;

{ var CurrentPlayer, HowManyPlayers, NickNameBMP: Integer;
  Description: CurrentPlayer = Arrayindex of Active Player, HowManyPlayers = Length of Player Array, NickNameBMP = Bitmap converted Players[CurrentPlayer].Nick }
var
  CurrentPlayer, HowManyPlayers, NickNameBMP: Integer;

{ var PlayerStartTime: Longint;
  Description: StartTime of Player at Login. }
var
  PlayerStartTime: LongInt;

{ var PlayerCurTime: Longint;
  Description: Player Current Time. }
var
  PlayerCurTime: LongInt;

{ var bmpAdmin, bmpMod, dtmPlant, bmpFreakyForester, Frog, CWindow, Lamp, Damien, NewBox: Integer;
  Description: Global Bitmaps. Need to be Global because of SCAR Memory leaks. }
var
  bmpAdmin, bmpMod, dtmPlant, bmpFreakyForester, Frog, CWindow, Lamp, Damien,
    NewBox: Integer;

{ var RoadColor, WaterColor, BankColor: Integer;
  Description: Three variables you will almost always use. :) }
var
  RoadColor, WaterColor, BankColor: Integer;

{ var LampSkill: String;
  Description: Set Lamp skill. }
var
  LampSkill: string;

{ var TheFile: Integer;
  Description: Use to log chat to file. See SaveToChatLog. }
var
  TheFile: Integer;

{ var OldLine, NewLine, TheLine, TheName: String;
  Description: ChatLog vars. }
var
  OldLine, NewLine, TheLine, TheName: string;

{ const MMCX, MMCY;
  Description: MiniMap Centre Point. }
const
  MMCX = 648;
  MMCY = 86;

{ const MMX1, MMY1, MMX2, MMY2;
  Description: MiniMap Edge Points. }
const
  MMX1 = 570;
  MMY1 = 5;
  MMX2 = 735;
  MMY2 = 166;

{ const MSX1, MSY1, MSX2, MSY2;
  Description: Main Screen EdgePoints. }
const
  MSX1 = 5;
  MSY1 = 5;
  MSX2 = 515;
  MSY2 = 338;

{ const MSCX, MSCY;
  Description: Main Screen Centre Points. }
const
  MSCX = 255;
  MSCY = 166;

{ const MIX1, MIY1, MIX2, MIY2;
  Description: Inventory EdgePoints. }
const
  MIX1 = 555;
  MIY1 = 205;
  MIX2 = 740;
  MIY2 = 464;

{ const MICX, MICY;
  Description: Inventory Centre Points. }
const
  MICX = 370;
  MICY = 232;

{ const MCX1, MCY1, MCX2, MCY2;
  Description: Chat Screen EdgePoints. }
const
  MCX1 = 4;
  MCY1 = 342;
  MCX2 = 505;
  MCY2 = 460;

{ const MCCX, MCCY;
  Description: Chat Screen Centre Points. }
const
  MCCX = 252;
  MCCY = 230;

//****************************************************************************//
// * I tried to make these Bitmaps Local, but I got after a couple of hours
// *  running scripts, CTB and DB handle errors. So sorry, declared them global
//****************************************************************************//

{*******************************************************************************
procedure LoadSRLBitMaps;
By: SRL Dev Team
Description: Loads SRL Bitmaps into memory.
*******************************************************************************}

procedure LoadSRLBitMaps;
begin
  bmpMod := BitmapFromString(9, 6, 'z78DA733472A41B74350041' +
    '08DB0009E012B13407414C5DF8D994E8220F0200F59E4633');
  bmpAdmin := BitmapFromString(9, 6, 'z78DA7333777333B070A3' +
    '0F0904162610B60112C025E26266E96A6488A90B3F9B125DE4910' +
    '0A83249DE');
  bmpFreakyForester := BitmapFromString(106, 2, 'z78DAA552410AC0' +
    '3008FBD23618B8A3C2FEFFA531BA4346D406DA8394D8468DB1ED3' +
    'DE11EE67A34F885F7B8FCB47DC4817F59C07B36442A3C41C2EFEB' +
    'E0F8CBB63C2BB1EF61D215E3BADAF437C9221BEC455295AA24B57' +
    '846A57FE2A9365EB1252FD163E4C0C48DC456EAAC7812676FA75B' +
    'F21E5499F00B0E54F6B8C2D96BD8EBD0D7D555AD781E9D382154');

  Frog := BitmapFromString(30, 2, 'z78DA73727274B534B23000012' +
    '74747270B47E249645DB84C808A836D4126C91447321317498C9B' +
    '5154426CC160633119C355982EC4A51E00B445523B');

  CWindow := BitmapFromString(66, 8, 'z78DA33304000372460' +
    '800170890F1420C63DB473333D4D264664342E06CACCE11117D4F' +
    '2C5E08C0BFC251BA61A4ACCA145BE20C66DD4F205EDFC4EAD928D' +
    '76BA06BF083DE382F8D432506963A04488610FCE5C408C69F87D3' +
    '454E28276651D754B636A95F994E76E5AD49E002F369293');
  Lamp := BitmapFromString(6, 6,
    '81800E79780E84830E00000100000100000179780E75740E000001' +
    '000001C3C118B5B3156E6D0E525209000001302020000001000001' +
    '696809484709000001302020544A3B302020000001000001302020' +
    '302020544A3B564D42302020302020302020544A3B544A3B564D42' +
    '');
  dtmPlant := DTMFromString('78DA6354636060306100031E08C5D092B0824' +
    '103483302F17F2060D404323450D5046671C2D58000A31690B046' +
    '5533ABE0305C0D18EB00092DDCE630013100D4CB0B1F');
  Damien := BitmapFromString(27, 1, 'z78DAB3300001272747574B2' +
    '3274747270B4708690111C71481A8442231C58911214616220E00' +
    'D7022518');
  NewBox := BitmapFromString(6, 6, 'z78DA8DCAC10DC0200C03C095' +
    'A2C4317C5D28FB8F54DA3E1112B1740F3B2528AA6C8C0C0B5B7B6' +
    'F2E571203E34476BE77601A04FDAE6BBD2B663E7181E0EEE70163' +
    'FD2FF4');
end;

{ type TBox;
  Description: A box defined by the left upper and bottom right coordinates. }
type
  TBox = record
    x1, y1, x2, y2: Integer;
  end;

{ type TBoxArray;
  Description: An array of TBox'es. }
type
  TBoxArray = array of TBox;

// * ANTIBAN CONSTANT

{ const KillScriptTime;
  Description: Used in the preset AntiBan; procedure to kill the script after chosen hours, leave as 0 to not kill the script. }
const
  KillScriptTime = 0;

// * Antirandom const
{ var UseSandwichSolver, UseBoxSolver, UseCerterSolve: Boolean;
  Description: For Slower Computers you may turn off and it will use other means to solve or logout. }
var
  UseSandwichSolver, UseBoxSolver, UseCerterSolver: Boolean;

{ var Screenshots: Boolean;
  Description: If you want the script to save screenshots of random events. }
var
  Screenshots: Boolean;

{ var CheckHpFirst: Boolean;
  Description: If you want the script to look at the hp and see that it's been lowered before it runs away from a fight. }
var
  CheckHpFirst: Boolean;

{ var ReinCarnate: Boolean;
  Description: If you want your Status to stay True when you die. (Autofighters) }
var
  ReinCarnate: Boolean;

//* Logout
{ var LogTimeOut: Boolean;
  Description: If you want to let Runescape timeout not actually logging out. }
var
  LogTimeOut: Boolean;

//* Roadwalk
{ var DebugRadialRoad: Boolean;
  Description: Shows Debug Info on RRW. }
var
  DebugRadialRoad: Boolean;

//* Mouse
{ var BenMouse: Boolean;
  Description: Use BenLand100 Spline Algorhythm. }
{ var MouseSpeed: Integer;
  Description: The variable containing the mousespeed. }
var
  BenMouse: Boolean;
  MouseSpeed: Integer;

//* Users
{ var FileName: String;
  Description: Filename to save and load users from. }
var
  FileName: string;

{ var PasswordChar: Boolean;
  Description: Decides to hide user manager passwords with '*' }
var
  PasswordChar: Boolean;

{ var FormCanvas: TCanvas;
  Description: Scripter can place image to be shown in the user manager }
var
  FormCanvas: TCanvas;

{ var FormColor: Integer;
  Description: Scripter can choose the background color in the user manager }
var
  FormColor: Integer;
  
{ var SRLID, SRLPassword: String;
  Description: User ID and Password for connection to Database }

var
  SRLID, SRLPassword : String;
  
{ var Plants, Lamps, NOLamps, Fights, Talks, Deaths,  Certers, NOCerters, Sandwiches, NOSandwiches, NOForester, Ricks, Dwarfs, Caps, Oldmen, Trades, NOTrades, Mods, Mimes, Mazes, ScapeRunes, EntsAvoided, Whirlpools, RodsFound, AxeAttaches, Birdsnest, PickAxeAttached, Jekylls, SGuard, Frogs, NOFrogs, Newboxes, NONewboxes: Integer;
  Description: Random Handler Counters. }
var
  Plants, Lamps, NOLamps, Fights, Talks, Deaths, Certers, NOCerters,
    Sandwiches, NOSandwiches, NOForester, Ricks, Dwarfs, Caps, Oldmen,
    Trades, NOTrades, Mods, Mimes, Mazes, ScapeRunes, EntsAvoided,
    Whirlpools, RodsFound, AxeAttaches, Birdsnest, PickAxeAttached, Jekylls,
    SGuard, Frogs, NOFrogs, Newboxes, NONewboxes: Integer;

{ var Banks: Integer;
  Description: Number of succesful banking operations performed. }
var
  Banks: Integer; // Number of succesful banks perfomred.
 
Runescape Gamblingrunescape gambling
Back
Top