Can someone fix this for me please?
#1

Hey can someone fix this for me please

Script

Код:
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_RED 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_LAVENDER 0xFF00FFAA
#define COLOR_BLUE 0x0000BBAA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_LIGHTBLUEA 0xB5EAFCAA
#define COLOR_ORANGE 0xFF9900AA
#define COLOR_TEAL 0x3BAAC2AA
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
forward CheckpointUpdate();
forward GPRaceCountdown();
forward GPTimer();
forward SaveTimes();
forward LoadTimes();
forward UpdateList(playerid,TimeRec);
new Mototime[MAX_PLAYERS] =0;
new Motocountdown[MAX_PLAYERS] =-1;
new MotoGP[MAX_PLAYERS] = 0;
new MotoGate[MAX_PLAYERS]=0;
#define MAX_POINTS 1
#define MAX_RACE_POINTS 3
new cps = MAX_RACE_POINTS;
#define TT_START 0
enum kinfo{
  Driver[24],
  Time
}
#define CARS 212
new vehicleNames[CARS][] = {
"Landstalker",
"Bravura",
"Buffalo; ",
"Linerunner",
"Pereniel",
"Sentinel ",
"Dumper",
"Firetruck",
"Trashmaster",
"Stretch",
"Manana",
"Infernus",
"Voodoo",
"Pony",
"Mule",
"Cheetah",
"Ambulance",
"Leviathan",
"Moonbeam",
"Esperanto",
"Taxi",
"Washington",
"Bobcat",
"Mr Whoopee",
"BF Injection",
"Hunter",
"Premier",
"Enforcer",
"Securicar",
"Banshee",
"Predator",
"Bus",
"Rhino",
"Barracks",
"Hotknife",
"Trailer",
"Previon",
"Coach",
"Cabbie",
"Stallion",
"Rumpo",
"RC Bandit",
"Romero",
"Packer",
"Monster",
"Admiral",
"Squalo",
"Seasparrow",
"Pizzaboy",
"Tram",
"Trailer",
"Turismo",
"Speeder",
"Reefer",
"Tropic",
"Flatbed",
"Yankee",
"Caddy",
"Solair",
"Berkley's RC Van",
"Skimmer",
"PCJ600",
"Faggio",
"Freeway",
"RC Baron",
"RC Raider",
"Glendale",
"Oceanic",
"Sanchez",
"Sparrow",
"Patriot",
"Quad",
"Coastguard",
"Dinghy",
"Hermes",
"Sabre",
"Rustler",
"ZR3 50",
"Walton",
"Regina",
"Comet",
"BMX",
"Burrito",
"Camper",
"Marquis",
"Baggage",
"Dozer",
"Maverick",
"News Chopper",
"Rancher",
"FBI Rancher",
"Virgo",
"Greenwood",
"Jetmax",
"Hotring",
"Sandking",
"Blista Compact",
"Police Maverick",
"Boxville",
"Benson",
"Mesa",
"RC Goblin",
"Hotring Racer",
"Hotring Racer",
"Bloodring Banger",
"Rancher",
"Super GT",
"Elegant",
"Journey",
"Bike",
"Mountain Bike",
"Beagle",
"Cropdust",
"Stunt",
"Tanker",
"RoadTrain",
"Nebula",
"Majestic",
"Buccaneer",
"Shamal",
"Hydra",
"FCR900",
"NRG500",
"HPV1000",
"Cement Truck",
"Tow Truck",
"Fortune",
"Cadrona",
"FBI Truck",
"Willard",
"Forklift",
"Tractor",
"Combine",
"Feltzer",
"Remington",
"Slamvan",
"Blade",
"Freight",
"Streak",
"Vortex",
"Vincent",
"Bullet",
"Clover",
"Sadler",
"Firetruck",
"Hustler",
"Intruder",
"Primo",
"Cargobob",
"Tampa",
"Sunrise",
"Merit",
"Utility",
"Nevada",
"Yosemite",
"Windsor",
"Monster",
"Monster",
"Uranus",
"Jester",
"Sultan",
"Stratum",
"Elegy",
"Raindance",
"RC Tiger",
"Flash",
"Tahoma",
"Savanna",
"Bandito",
"Freight",
"Trailer",
"Kart",
"Mower",
"Duneride",
"Sweeper",
"Broadway",
"Tornado",
"AT400",
"DFT30",
"Huntley",
"Stafford",
"BF400",
"Newsvan",
"Tug",
"Trailer",
"Emperor",
"Wayfarer",
"Euros",
"Hotdog",
"Club",
"Trailer",
"Trailer",
"Andromada",
"Dodo",
"RC Cam",
"Launch",
"Police Car",
"Police Car",
"Police Car",
"Ranger",
"Picador",
"S.W.A.T.Van",
"Alpha",
"Phoenix",
"Glendale",
"Sadler",
"Luggage Trailer",
"Luggage Trailer",
"Stair Trailer",
"Boxville",
"Farm Plow",
"Utility Trailer"
};
new KartHS[5][kinfo];
new playerCheckpoint[MAX_PLAYERS];
new Float:checkpoints[MAX_POINTS][3] = {
{2495.0449, 2773.0566, 10.8158}
};
new Float:racecheckpoints[MAX_RACE_POINTS][3] = {
{2490.9556, 2773.1326, 10.7968},
{ 2495.0449, 2773.0566, 10.8158},
{ 1097,-119.9460,23.1096}
};
new checkpointType[MAX_POINTS] = {
  TT_START
};
public OnFilterScriptInit()
{
  print("\n Mode:Hi - Created using Pghpunkids Script Creator.\n");
  SetTimer("CheckpointUpdate",1000,1);
  SetTimer("GPRaceCountdown",1000,1);
  SetTimer("GPTimer",1000,1);
  for(new t=0; t<5; t++)
  {
    strmid(KartHS[t][Driver], "None", 0, strlen("None"), 24);
    KartHS[t][Time]=100000;
  }
  if(!fexist("HiTimes.cfg"))
    SaveTimes();
  LoadTimes();
  return 1;
}
public SaveTimes()
{
  print("[race] Hi Times Saved.");
  new File: hFile = fopen("HiTimes.cfg", io_write);
  if (hFile)
  {
    for(new t= 0; t<5; t++)
    {
      new var[32];
      format(var, 32, "%s\n",KartHS[t][Driver]);fwrite(hFile, var);
      format(var, 32, "%d\n",KartHS[t][Time]);fwrite(hFile, var);
    }
  }
  fclose(hFile);
  return 1;
}
public LoadTimes()
{
  print("[race] Hi Times Loaded.");
  new File: file = fopen("HiTimes.cfg", io_read);
  if (file)
  {
    new valtmp[128];
    for(new t=0; t<5; t++)
    {
      fread(file, valtmp);strmid(KartHS[t][Driver], valtmp, 0, strlen(valtmp)-1, 128);DelPrint(valtmp);
      fread(file, valtmp);KartHS[t][Time] = strval(valtmp);DelPrint(valtmp);
    }
  }
  return 1;
}
public OnPlayerDisconnect(playerid,reason)
{
  MotoGP[playerid] =0;
  Mototime[playerid] =0;
  return 1;
}
public OnFilterScriptExit()
{
  return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
  if (strcmp("/race", cmdtext, true, 10) == 0)
  {
    if(getCheckpointType(playerid)!=TT_START)
    {
      SendClientMessage(playerid,COLOR_GREEN,"You must be at the Hi starting location.");
      return 1;
    }
    if(!IsVehicle(playerid))
    {
      new fstr[255];
      format(fstr,sizeof(fstr),"You must be in a %s to participate in this.",vehicleNames[411-400]);
      SendClientMessage(playerid,COLOR_GREEN,fstr);
      return 1;
    }
    SendClientMessage(playerid, COLOR_GREEN,"Starting..");
    SetCameraBehindPlayer(playerid);
    TogglePlayerControllable(playerid,0);
    Motocountdown[playerid] = 6;
    SetPlayerRaceCheckpoint(playerid,0,racecheckpoints[0][0],racecheckpoints[0][1],racecheckpoints[0][2],racecheckpoints[1][0],racecheckpoints[1][1],racecheckpoints[1][2],10);
    DisablePlayerCheckpoint(playerid);
    return 1;
  }
  if (strcmp("/times", cmdtext, true, 10) == 0)
  {
    new kstring[255];
    SendClientMessage(playerid,COLOR_GREEN,"Top 5 Times:");
    for(new z=0; z<5; z++)
    {
      new sec = KartHS[z][Time]%60;
      new mins = (KartHS[z][Time]/60)%60;
      if (strcmp("None",KartHS[z][Driver], true, 10) == 0)
      {
        if(z==0)
          SendClientMessage(playerid,COLOR_GREY,"-No Times Recorded Yet-");
        if(z>0)
          SendClientMessage(playerid,COLOR_GREY,"-End Of Time Sheet-");
        return 1;
      }
      if(strcmp("None",KartHS[z][Driver], true,10) != 0)
      {
        if(sec > 9) {format(kstring,sizeof(kstring),"%d. %s - %d:%d",z+1,KartHS[z][Driver],mins,sec);}
        if(sec < 9) {format(kstring,sizeof(kstring),"%d. %s - %d:0%d",z+1,KartHS[z][Driver],mins,sec);}
        SendClientMessage(playerid,COLOR_GREY,kstring);
      }
    }
    return 1;
  }
  return 0;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
  new sec = Mototime[playerid]%60;
  new mins = (Mototime[playerid]/60)%60;

  if(MotoGP[playerid] == 1)
  {
    MotoGate[playerid]++;
    new on‌e = MAX_RACE_POINTS-1;
    new two = MAX_RACE_POINTS;
    if(MotoGate[playerid] < one)
    {
      DisablePlayerRaceCheckpoint(playerid);
      SetPlayerRaceCheckpoint(playerid,0,racecheckpoints[MotoGate[playerid]][0],racecheckpoints[MotoGate[playerid]][1],racecheckpoints[MotoGate[playerid]][2],racecheckpoints[MotoGate[playerid]+1][0],racecheckpoints[MotoGate[playerid]+1][1],racecheckpoints[MotoGate[playerid]+1][2],10);
      
    }
    if(MotoGate[playerid] == one)
    {
      DisablePlayerRaceCheckpoint(playerid);
      SetPlayerRaceCheckpoint(playerid,1,racecheckpoints[MotoGate[playerid]][0],racecheckpoints[MotoGate[playerid]][1],racecheckpoints[MotoGate[playerid]][2],racecheckpoints[0][0],racecheckpoints[0][1],racecheckpoints[0][2],10);
    }
    if(MotoGate[playerid] == two)
    {
      new TimeRec;
      new Timestr[255];
      new driver[24];
      GetPlayerName(playerid,driver,sizeof(driver));
      format(Timestr,sizeof(Timestr),"%s finished the Hi in %d Mins, %d Seconds.",driver,mins,sec);
      SendClientMessageToAll(COLOR_WHITE,Timestr);
      SendClientMessage(playerid,COLOR_WHITE,"You can view the Top 5 Times with /times.");
      printf(Timestr);
      TimeRec=Mototime[playerid];
      MotoGP[playerid] = 0;
      MotoGate[playerid] = 0;
      DisablePlayerRaceCheckpoint(playerid);
      Mototime[playerid]=0;
      UpdateList(playerid,TimeRec);
    }
  }
  return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
  if(getCheckpointType(playerid)==TT_START)
  {
    if(IsVehicle(playerid) == 1)
    {
      SendClientMessage(playerid,COLOR_GREEN,"You can use /race to start Hi.");
      return 1;
    }
    if(IsVehicle(playerid) == 0)
    {
      SendClientMessage(playerid,COLOR_GREEN,"You must be in a Infernus to participate!");
      return 1;
    }
  }
  return 1;
}

stock PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
  new Float:oldposx, Float:oldposy, Float:oldposz;
  new Float:tempposx, Float:tempposy, Float:tempposz;
  GetPlayerPos(playerid, oldposx, oldposy, oldposz);
  tempposx = (oldposx -x);
  tempposy = (oldposy -y);
  tempposz = (oldposz -z);
  if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
  {
    return 1;
  }
  return 0;
}
public UpdateList(playerid, TimeRec)
{
  new driver[24];
  GetPlayerName(playerid,driver,sizeof(driver));
  if(KartHS[0][Time] > TimeRec)
  {
    KartHS[4][Time] = KartHS[3][Time];
    strmid(KartHS[4][Driver],KartHS[3][Driver],0,sizeof(driver),24);
    KartHS[3][Time] = KartHS[2][Time];
    strmid(KartHS[3][Driver],KartHS[2][Driver],0,sizeof(driver),24);
    KartHS[2][Time] = KartHS[1][Time];
    strmid(KartHS[2][Driver],KartHS[1][Driver],0,sizeof(driver),24);
    KartHS[1][Time] = KartHS[0][Time];
    strmid(KartHS[1][Driver],KartHS[0][Driver],0,sizeof(driver),24);
    KartHS[0][Time] = TimeRec;
    strmid(KartHS[0][Driver],driver,0,sizeof(driver),24);
    SendClientMessage(playerid,COLOR_GREY,"Your Time Was 1st Overall!");
  }
  else if(KartHS[1][Time] > TimeRec)
  {
    KartHS[4][Time] = KartHS[3][Time];
    strmid(KartHS[4][Driver],KartHS[3][Driver],0,sizeof(driver),24);
    KartHS[3][Time] = KartHS[2][Time];
    strmid(KartHS[3][Driver],KartHS[2][Driver],0,sizeof(driver),24);
    KartHS[2][Time] = KartHS[1][Time];
    strmid(KartHS[2][Driver],KartHS[1][Driver],0,sizeof(driver),24);
    KartHS[1][Time] = TimeRec;
    strmid(KartHS[1][Driver],driver,0,sizeof(driver),24);
    SendClientMessage(playerid,COLOR_GREY,"Your Time Was 2nd Overall!");
  }
  else if(KartHS[2][Time] > TimeRec)
  {
    KartHS[4][Time] = KartHS[3][Time];
    strmid(KartHS[4][Driver],KartHS[3][Driver],0,sizeof(driver),24);
    KartHS[3][Time] = KartHS[2][Time];
    strmid(KartHS[3][Driver],KartHS[2][Driver],0,sizeof(driver),24);
    KartHS[2][Time] = TimeRec;
    strmid(KartHS[2][Driver],driver,0,sizeof(driver),24);
    SendClientMessage(playerid,COLOR_GREY,"Your Time Was 3rd Overall!");
  }
  else if(KartHS[3][Time] > TimeRec)
  {
    KartHS[4][Time] = KartHS[3][Time];
    strmid(KartHS[4][Driver],KartHS[3][Driver],0,sizeof(driver),24);
    KartHS[3][Time] = TimeRec;
    strmid(KartHS[3][Driver],driver,0,sizeof(driver),24);
    SendClientMessage(playerid,COLOR_GREY,"Your Time Was 4th Overall!");
  }
  else if(KartHS[4][Time] > TimeRec)
  {
    KartHS[4][Time] = TimeRec;
    strmid(KartHS[4][Driver],driver,0,sizeof(driver),24);
    SendClientMessage(playerid,COLOR_GREY,"Your Time Was 5th Overall!");
  }
  SaveTimes();
  LoadTimes();
  return 1;
}
public CheckpointUpdate()
{
  for(new i; i<MAX_PLAYERS; i++)
  {
    if(MotoGP[i] == 0)
    {
      for(new j=0; j < 1; j++) {
        if(PlayerToPoint(25,i,checkpoints[j][0],checkpoints[j][1],checkpoints[j][2])) {
          if(playerCheckpoint[i]!=j) {
            DisablePlayerCheckpoint(i);
            SetPlayerCheckpoint(i, checkpoints[j][0],checkpoints[j][1],checkpoints[j][2],5);
            playerCheckpoint[i] = j;
          }
        } else {
          if(playerCheckpoint[i]==j) {
            DisablePlayerCheckpoint(i);
            playerCheckpoint[i] = 999;
          }
        }
      }
    }
  }
}
stock IsVehicle(playerid)
{
  new model = GetPlayerVehicleID(playerid);
  model = GetVehicleModel(model);
  if(model == 411)
    return 1;
  else
    return 0;
}
stock getCheckpointType(playerID) {
  if(playerCheckpoint[playerID] != 999)
    return checkpointType[playerCheckpoint[playerID]];
  else return -1;
}

public GPRaceCountdown()
{
  for(new x=0; x<MAX_PLAYERS; x++)
  {
    if(Motocountdown[x] > 0)
    {
      new time[3];
      Motocountdown[x]--;
      format(time,sizeof(time),"%d",Motocountdown[x]);
      GameTextForPlayer(x,time,1200,3);
    }
    if(Motocountdown[x] == 0)
    {
      GameTextForPlayer(x,"GO!",1200,3);
      TogglePlayerControllable(x,1);
      Motocountdown[x]--;
      Mototime[x]=0;
      MotoGP[x]=1;
    }
  }
}
public GPTimer()
{
  for(new i=0; i<MAX_PLAYERS; i++)
  {
    new progress[255];
    new sec = Mototime[i]%60;
    new mins = (Mototime[i]/60)%60;
    if(MotoGP[i] == 1)
    {
      Mototime[i]++;
      
      if(sec > 9 ) { format(progress,sizeof(progress),"~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~b~Race %d/%d Checkpoints Achieved. Current Time: %d:%d",MotoGate[i],cps,mins,sec);}
      if(sec <10 ) { format(progress,sizeof(progress),"~n~~n~~n~~n~~n~~n~~n~~n~~n~~n~~b~Race: %d/%d Checkpoints Achieved. Current Time: %d:0%d",MotoGate[i],cps,mins,sec);}
      GameTextForPlayer(i,progress,1200,3);
    }
  }
}
stock DelPrint(string1[])
{
  strmid(string1, string1, 0, strlen(string1)-1, 255);
  printf("%s", string1);
  return 1;
}
public OnPlayerConnect(playerid)
{
  MotoGP[playerid] = 0;
  Mototime[playerid] = 0;
  return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
    if (MotoGP[playerid] == 1 && (newstate == 1 && oldstate == 2))
    {
        new name[24];
        new fstr[255];
        GetPlayerName(playerid,name,sizeof(name));
        format(fstr,sizeof(fstr),"%s has failed the test",name);
        SendClientMessageToAll(COLOR_WHITE,fstr);
        MotoGP[playerid] = 0;
        MotoGate[playerid] = 0;
        DisablePlayerRaceCheckpoint(playerid);
        Mototime[playerid]=0;
    }
    return 1;
}
Errors:

Код:
error 017: undefined symbol "MAX_PLAYERS"
error 017: undefined symbol "MAX_PLAYERS"
error 017: undefined symbol "MAX_PLAYERS"
error 017: undefined symbol "MAX_PLAYERS"
error 017: undefined symbol "MAX_PLAYERS"
error 009: invalid array size (negative, zero or out of bounds)
error 070: rational number support was not enabled
warning 235: public function lacks forward declaration (symbol "OnFilterScriptInit")
error 017: undefined symbol "print"
error 017: undefined symbol "SetTimer"
error 017: undefined symbol "SetTimer"
error 017: undefined symbol "SetTimer"
error 017: undefined symbol "strmid"
error 017: undefined symbol "fexist"
error 017: undefined symbol "print"
error 017: undefined symbol "fopen"
warning 213: tag mismatch
error 017: undefined symbol "format"
error 017: undefined symbol "fwrite"
error 017: undefined symbol "fwrite"
error 017: undefined symbol "fclose"
error 017: undefined symbol "print"
error 017: undefined symbol "fopen"
warning 213: tag mismatch
error 017: undefined symbol "fread"
error 017: undefined symbol "strmid"
error 017: undefined symbol "fread"
Reply
#2

add to the top

pawn Код:
#include <a_samp>
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)