21.06.2010, 02:03
its not my filterscript i edit it i removed fuel system + location and some commands
my code
C:\DOCUME~1\ghsdg\Desktop\missions\filterscripts\F Speed.pwn(119) : error 003: declaration of a local variable must appear in a compound block
C:\DOCUME~1\ghsdg\Desktop\missions\filterscripts\F Speed.pwn(119) : error 033: array must be indexed (variable "Speed")
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
2 Errors.
my code
Код:
#include <a_samp>
#include <utils>
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
#define SendFormattedMessage(%0,%1,%2) do{new _str[128]; format(_str,128,%2); SendClientMessage(%0,%1,_str);}while(FALSE)
#pragma unused IsNumeric
#pragma unused ReturnUser
#pragma unused Vehicle
enum pSpeed
{
Text:Speedom,
ShowSpeed,
Float:OldCoordsX,
Float:OldCoordsY
};
new Speed[MAX_PLAYERS][pSpeed];
new Vehicle[MAX_VEHICLES];
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_ORANGE 0xFF9900AA
#define SPAWN_GAS_MIN 35
#define SPAWN_GAS_MAX 100
#define MAX_START_TIME 3
forward Speedometer(playerid);
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
new VehiclesName[][] = {
"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","PCJ-600","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","FCR-900","NRG-500","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 A",
"Monster B","Uranus","Jester","Sultan","Stratum","Elegy","Raindance","RC Tiger","Flash","Tahoma","Savanna","Bandito","Freight","Trailer",
"Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley","Stafford","BF-400","Newsvan","Tug","Trailer","Emperor",
"Wayfarer","Euros","Hotdog","Club","Trailer B","Trailer C","Andromada","Dodo","RC Cam","Launch","Police Car","Police Car",
"Police Car","Police Ranger","Picador","S.W.A.T.","Alpha","Phoenix","Glendale","Sadler","Luggage Trailer","Luggage Trailer",
"Stair Trailer","Boxville","Farm Plow","Utility Trailer"
};
public OnFilterScriptInit()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
Speed[i][ShowSpeed] = 1;
Speed[i][Speedom] = TextDrawCreate(506.000000,351.000000,"_");
TextDrawUseBox(Speed[i][Speedom],1);
TextDrawBoxColor(Speed[i][Speedom],0x00000065);
TextDrawTextSize(Speed[i][Speedom],625.000000,0.000000);
TextDrawAlignment(Speed[i][Speedom],0);
TextDrawBackgroundColor(Speed[i][Speedom],0x000000FF);
TextDrawFont(Speed[i][Speedom],2);
TextDrawLetterSize(Speed[i][Speedom],0.25,1.0);
TextDrawColor(Speed[i][Speedom],0xFFFFFFFF);
TextDrawSetOutline(Speed[i][Speedom],1);
TextDrawSetProportional(Speed[i][Speedom],1);
TextDrawSetShadow(Speed[i][Speedom],1);
SetTimerEx("Speedometer",1000,true,"i",i);
}
return 1;
}
public OnFilterScriptExit()
{
for(new i = 0; i <MAX_PLAYERS; i++)
{
TextDrawDestroy(Text:Speed[i][Speedom]);
}
}
public OnPlayerCommandText(playerid,cmdtext[])
{
dcmd(speed,5,cmdtext);
return false;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == PLAYER_STATE_ONFOOT)
{
TextDrawHideForPlayer(playerid, Speed[playerid][Speedom]);
}
return true;
}
public Speedometer(playerid)
{
new State = GetPlayerState(playerid);
if(State == PLAYER_STATE_DRIVER && IsPlayerInAnyVehicle(playerid))
{
if(Speed[playerid][ShowSpeed] == 1)
{
#define MULTIPLY_SPEED 4
new vehicleid = GetPlayerVehicleID(playerid);
new VehicleModel = GetVehicleModel(vehicleid);
new Float:x, Float:y, Float:z, Float:health, string[256];
GetPlayerPos(playerid, x, y, z); GetVehicleHealth(vehicleid, health);
new Float:Dis = floatsqroot(floatpower(floatabs(floatsub(Speed[playerid][OldCoordsX],x)),2) + floatpower(floatabs(floatsub(Speed[playerid][OldCoordsY],y)),2));
if(VehicleModel==509||VehicleModel==481||VehicleModel==510) { SetVehicleHealth(GetPlayerVehicleID(playerid), 1000); }
if(VehicleModel==520||VehicleModel==476||VehicleModel==593||VehicleModel==553||VehicleModel==513||VehicleModel==512||VehicleModel==577||VehicleModel==592||VehicleModel==511||VehicleModel==539||VehicleModel==464||VehicleModel==519)
new Speed = (floatround(Dis)*MULTIPLY_SPEED);
new Sspeed[15];
format(string,sizeof(string),"~B~Vehicle:~n~~w~%s~n~~B~Speed: %s~n~~B~Health: ~W~%.1f~n~" ,VehiclesName[GetVehicleModel(vehicleid)-400], Sspeed, health/10);
TextDrawSetString(Speed[playerid][Speedom], string);
TextDrawShowForPlayer(playerid, Speed[playerid][Speedom]);
Speed[playerid][OldCoordsX] = x; Speed[playerid][OldCoordsY] = y;
} else { TextDrawHideForPlayer(playerid, Speed[playerid][Speedom]); }
}
return true;
}
stock Random(min, max)
{
new a = random(max - min) + min;
return a;
}
stock GetName(playerid)
{
new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name));
return name;
}
public 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 true; }
return false;
}
dcmd_speed(playerid,params[]){
#pragma unused params
if(IsPlayerConnected(playerid)){
if(!strlen(params)) return SendClientMessage(playerid, COLOR_WHITE, "[USAGE]: /speed [on/off]");
if(strcmp(params,"on",true) == 0) { Speed[playerid][ShowSpeed]= 1; GameTextForPlayer(playerid,"~w~Speedometer ~g~On",2000,3); }
if(strcmp(params,"off",true) == 0) { Speed[playerid][ShowSpeed] = 0; GameTextForPlayer(playerid,"~w~Speedometer ~r~Off",2000,3); }
}
return true;
}
C:\DOCUME~1\ghsdg\Desktop\missions\filterscripts\F Speed.pwn(119) : error 033: array must be indexed (variable "Speed")
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
2 Errors.

