21.04.2011, 23:42
(
Последний раз редактировалось HondaCBR; 22.04.2011 в 07:58.
)
Hello, on my server when i start it with no users in scrpiftfiles its fine. then the users register and then when i start server again and user enters that has already registered the server goes off, i assume there is something wrong with loading user files from scirptfiles or something? but why? can some one take a look:
main parts, saving/loading from .ini:
here his the whole map:
main parts, saving/loading from .ini:
pawn Код:
enum pInfo
{
pKey[128],
pAdmin,
pCash,
Float:pPos_x,
Float:pPos_y,
Float:pPos_z,
Float:pHealth,
Float:pSHealth,
pAdjustable,
pReg,
};
public OnPlayerRegister(playerid, password[])
{
if(IsPlayerConnected(playerid))
{
new string3[32];
new playername3[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername3, sizeof(playername3));
format(string3, sizeof(string3), "%s.ini", playername3);
new File: hFile = fopen(string3, io_write);
if (hFile)
{
strmid(PlayerInfo[playerid][pKey], password, 0, strlen(password), 255);
new var[32];
format(var, 32, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
format(var, 32, "AdminLevel=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
format(var, 32, "pSHealth=%.1f\n",PlayerInfo[playerid][pSHealth]);fwrite(hFile, var);
GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);
format(var, 32, "pHealth=%.1f\n",PlayerInfo[playerid][pHealth]);fwrite(hFile, var);
format(var, 32, "Registered=%d\n",PlayerInfo[playerid][pReg]);fwrite(hFile, var);
format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
if ((PlayerInfo[playerid][pPos_x]==0.0 && PlayerInfo[playerid][pPos_y]==0.0 && PlayerInfo[playerid][pPos_z]==0.0))
{
PlayerInfo[playerid][pPos_x] = 1684.9;
PlayerInfo[playerid][pPos_y] = -2244.5;
PlayerInfo[playerid][pPos_z] = 13.5;
}
format(var, 32, "Pos_x=%.1f\n",PlayerInfo[playerid][pPos_x]);fwrite(hFile, var);
format(var, 32, "Pos_y=%.1f\n",PlayerInfo[playerid][pPos_y]);fwrite(hFile, var);
format(var, 32, "Pos_z=%.1f\n",PlayerInfo[playerid][pPos_z]);fwrite(hFile, var);
format(var, 32, "Adjustable=%d\n",PlayerInfo[playerid][pAdjustable]);fwrite(hFile, var);
fclose(hFile);
SendClientMessage(playerid, COLOR_GREEN, "Konto zarejestrowane masz 30 sekund by sie zalogowac, /zaloguj [haslo].");
}
}
return 1;
}
public OnPlayerUpdate(playerid)
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid])
{
new string3[32];
new playername3[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername3, sizeof(playername3));
format(string3, sizeof(string3), "%s.ini", playername3);
new File: hFile = fopen(string3, io_write);
if (hFile)
{
new var[32];
format(var, 32, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
format(var, 32, "AdminLevel=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
format(var, 32, "pSHealth=%.1f\n",PlayerInfo[playerid][pSHealth]);fwrite(hFile, var);
GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);
format(var, 32, "pHealth=%.1f\n",PlayerInfo[playerid][pHealth]);fwrite(hFile, var);
format(var, 32, "Registered=%d\n",PlayerInfo[playerid][pReg]);fwrite(hFile, var);
format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
if ((PlayerInfo[playerid][pPos_x]==0.0 && PlayerInfo[playerid][pPos_y]==0.0 && PlayerInfo[playerid][pPos_z]==0.0))
{
PlayerInfo[playerid][pPos_x] = 1684.9;
PlayerInfo[playerid][pPos_y] = -2244.5;
PlayerInfo[playerid][pPos_z] = 13.5;
}
format(var, 32, "Pos_x=%.1f\n",PlayerInfo[playerid][pPos_x]);fwrite(hFile, var);
format(var, 32, "Pos_y=%.1f\n",PlayerInfo[playerid][pPos_y]);fwrite(hFile, var);
format(var, 32, "Pos_z=%.1f\n",PlayerInfo[playerid][pPos_z]);fwrite(hFile, var);
format(var, 32, "Adjustable=%d\n",PlayerInfo[playerid][pAdjustable]);fwrite(hFile, var);
fclose(hFile);
}
}
}
return 1;
}
public OnPlayerLogin(playerid,password[])
{
new tmp2[256];
new string2[64];
new playername2[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername2, sizeof(playername2));
format(string2, sizeof(string2), "%s.ini", playername2);
new File: UserFile = fopen(string2, io_read);
if ( UserFile )
{
new PassData[256];
new keytmp[256], valtmp[256];
fread( UserFile , PassData , sizeof( PassData ) );
keytmp = ini_GetKey( PassData );
if( strcmp( keytmp , "Key" , true ) == 0 )
{
valtmp = ini_GetValue( PassData );
strmid(PlayerInfo[playerid][pKey], valtmp, 0, strlen(valtmp)-1, 255);
}
if(strcmp(PlayerInfo[playerid][pKey],password, true ) == 0 )
{
new key[ 256 ] , val[ 256 ];
new Data[ 256 ];
while ( fread( UserFile , Data , sizeof( Data ) ) )
{
key = ini_GetKey( Data );
if( strcmp( key , "AdminLevel" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAdmin] = strval( val ); }
if( strcmp( key , "pSHealth" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSHealth] = floatstr( val ); }
if( strcmp( key , "pHealth" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pHealth] = floatstr( val ); }
if( strcmp( key , "Money" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCash] = strval( val ); }
if( strcmp( key , "Pos_x" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPos_x] = floatstr( val ); }
if( strcmp( key , "Pos_y" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPos_y] = floatstr( val ); }
if( strcmp( key , "Pos_z" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPos_z] = floatstr( val ); }
if( strcmp( key , "Registered" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pReg] = strval( val ); }
if( strcmp( key , "Adjustable" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAdjustable] = strval( val ); }
}//end while
fclose(UserFile);//close the file after everything has been read in the while
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "SERWER: Nieprawidlowe haslo.");
fclose(UserFile);
gPlayerLogTries[playerid] += 1;
if(gPlayerLogTries[playerid] == 4) { Ban(playerid); }
return 1;
}
PlayerInfo[playerid][pAdjustable] = 0;
ResetPlayerMoney(playerid);
ConsumingMoney[playerid] = 1;
GivePlayerMoney(playerid,PlayerInfo[playerid][pCash]);
CurrentMoney[playerid] = PlayerInfo[playerid][pCash];
if(PlayerInfo[playerid][pReg] == 0)
{
PlayerInfo[playerid][pSHealth] = 0.0;
PlayerInfo[playerid][pHealth] = 50.0;
PlayerInfo[playerid][pPos_x] = 2246.6;
PlayerInfo[playerid][pPos_y] = -1161.9;
PlayerInfo[playerid][pPos_z] = 1029.7;
PlayerInfo[playerid][pReg] = 1;
GivePlayerMoney(playerid, 5000);
}
format(string2, sizeof(string2), "SERWER: Witaj %s",playername2);
SendClientMessage(playerid, COLOR_WHITE,string2);
printf("%s has logged in.",playername2);
if (PlayerInfo[playerid][pAdmin] > 0)
{
format(string2, sizeof(string2), "SERWER: Jestes zalogowany jako administrator poziomu %d.",PlayerInfo[playerid][pAdmin]);
SendClientMessage(playerid, COLOR_WHITE,string2);
}
gPlayerLogged[playerid] = 1;
SpawnPlayer(playerid);
format(tmp2, sizeof(tmp2), "~w~Witaj ~n~~y~ %s", playername2);
// DateProp(playerid);
GameTextForPlayer(playerid, tmp2, 5000, 1);
SendClientMessage(playerid, COLOR_YELLOW, motd);
}
return 1;
}
Код:
#include <a_samp>
#include <core>
#include <float>
#include <utils>
//#include <morphinc>
//#include <file>
#pragma tabsize 0
#define KEY_HORN 2
#define COLOR_MESSAGE_YELLOW 0xFFDD00AA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_BLUE 0x2641FEAA
#define COLOR_LIGHTRED 0xFF6347AA
#define COLOR_GRAD1 0xB4B5B7FF
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_GRAD3 0xCBCCCEFF
#define COLOR_GRAD4 0xD8D8D8FF
#define COLOR_GRAD5 0xE3E3E3FF
#define COLOR_GRAD6 0xF0F0F0FF
#define COLOR_ORANGE 0xFF830000
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_RED 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA
#define INACTIVE_PLAYER_ID 255
#define l_red 0xFF0000AA
#define l_green 0x33FF33AA
#define NUMVALUES 4
new dollah = 700;
new gPlayerAccount[MAX_PLAYERS];
new ConsumingMoney[MAX_PLAYERS];
new CurrentMoney[MAX_PLAYERS];
new motd[256];
new BRAMA;
new BRAMA2;
new SZLABAN;
new GateState;
new GateState2;
new GateState3;
enum pInfo
{
pKey[128],
pAdmin,
pCash,
Float:pPos_x,
Float:pPos_y,
Float:pPos_z,
Float:pHealth,
Float:pSHealth,
pAdjustable,
pReg,
};
new PlayerInfo[MAX_PLAYERS][pInfo];
new aVehicleNames[212][] =
{
{"Landstalker"},
{"Bravura"},
{"Buffalo"},
{"Linerunner"},
{"Perrenial"},
{"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 1"},
{"Previon"},
{"Coach"},
{"Cabbie"},
{"Stallion"},
{"Rumpo"},
{"RC Bandit"},
{"Romero"},
{"Packer"},
{"Monster"},
{"Admiral"},
{"Squalo"},
{"Seasparrow"},
{"Pizzaboy"},
{"Tram"},
{"Trailer 2"},
{"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"},
{"ZR-350"},
{"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 A"},
{"Hotring Racer B"},
{"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 LA"},
{"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 Flat"},
{"Streak Carriage"},
{"Kart"},
{"Mower"},
{"Duneride"},
{"Sweeper"},
{"Broadway"},
{"Tornado"},
{"AT-400"},
{"DFT-30"},
{"Huntley"},
{"Stafford"},
{"BF-400"},
{"Newsvan"},
{"Tug"},
{"Trailer 3"},
{"Emperor"},
{"Wayfarer"},
{"Euros"},
{"Hotdog"},
{"Club"},
{"Freight Carriage"},
{"Trailer 3"},
{"Andromada"},
{"Dodo"},
{"RC Cam"},
{"Launch"},
{"Police Car (LSPD)"},
{"Police Car (SFPD)"},
{"Police Car (LVPD)"},
{"Police Ranger"},
{"Picador"},
{"S.W.A.T. Van"},
{"Alpha"},
{"Phoenix"},
{"Glendale"},
{"Sadler"},
{"Luggage Trailer A"},
{"Luggage Trailer B"},
{"Stair Trailer"},
{"Boxville"},
{"Farm Plow"},
{"Utility Trailer"}
};
new gPlayerLogged[MAX_PLAYERS];
new gPlayerLogTries[MAX_PLAYERS];
new SkinState;
new Float:PlayerCruiseSpeed[MAX_PLAYERS];
new Float:PlayerHeadingAngle[MAX_PLAYERS];
new CCKey = KEY_ACTION;
new TAXI[9];
new RandomSkins[38] = { 1, 2, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43 };
new RandomSkinsAdmin[4] = { 163, 164, 165, 166 };
new RandomSkinsTaxi[6] = { 7 , 142 , 220 , 262 , 253 , 255 };
forward SendAdminMessage(color, string[]);
//forward DateProp(playerid);
forward OnPlayerLogin(playerid,password[]);
forward OnPlayerUpdate(playerid);
forward OnPlayerRegister(playerid, password[]);
forward Encrypt(string[]);
forward ini_GetKey( line[] );
forward CruiseControl(playerid);
forward TuneVehicle();
forward KickLog(string[]);
forward Spawn(playerid);
forward Timer();
forward kicktimer(playerid);
forward Givecashdelaytimer(playerid);
forward SetPlayerRandomSpawn(playerid);
forward SetupPlayerForClassSelection(playerid);
forward GameModeExitFunc();
forward SendPlayerFormattedText(playerid, const str[], define);
forward public SendAllFormattedText(playerid, const str[], define);
new BRAVURA1;
new BRAVURA2;
new TAMPA1;
new TAMPA2;
new CreatedCars[100];
new CreatedCar = 0;
new Float:gRandomPlayerSpawns[3][4] = {
{2833.4421,1265.7426,10.7773,88.7498},
{2833.4421,1265.7426,10.7773,88.7498},
{2833.4421,1265.7426,10.7773,88.7498}
};
new gActivePlayers[MAX_PLAYERS];
//new gLastGaveCash[MAX_PLAYERS];
main()
{
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
print("\n");
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
}
public Timer()
{
SetWeather(11);
SetWorldTime(13);
}
public kicktimer(playerid)
{
if(gPlayerLogged[playerid] == 1)
{
return 1;
}
else if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_WHITE, "Zostales wyrzucony z serwera, pamietaj: masz 30 sekund by sie zalogowac po dolonczeniu na serwer");
Kick(playerid);
return 1;
}
return 0;
}
public OnPlayerConnect(playerid)
{
new plname[MAX_PLAYER_NAME];
new string[MAX_PLAYER_NAME];
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
SendClientMessage(playerid, COLOR_WHITE, " ");
// SendClientMessage(playerid, COLOR_GREEN, "Wpisz '/pomoc' by zobaczyć listę dostępnych komend.");
gPlayerLogTries[playerid] = 0;
PlayerInfo[playerid][pSHealth] = 0.0;
PlayerInfo[playerid][pHealth] = 50.0;
PlayerInfo[playerid][pPos_x] = 2246.6;
PlayerInfo[playerid][pPos_y] = -1161.9;
PlayerInfo[playerid][pPos_z] = 1029.7;
PlayerInfo[playerid][pAdmin] = 0;
PlayerInfo[playerid][pCash] = dollah;
GivePlayerMoney(playerid,PlayerInfo[playerid][pCash]);
PlayerInfo[playerid][pReg] = 0;
PlayerInfo[playerid][pAdjustable] = 0; //onplayerconnect
ConsumingMoney[playerid] = 0;
CurrentMoney[playerid] = 0;
SetPlayerColor(playerid,COLOR_GRAD2);
GetPlayerName(playerid, plname, sizeof(plname));
format(string, sizeof(string), "%s.ini", plname);
if(fexist(string))
{
gPlayerAccount[playerid] = 1;
SendClientMessage(playerid, COLOR_GREEN, "Masz 30 sekund by sie zalogowac, wpisujac /zaloguj [haslo]");
SetTimerEx("kicktimer", 30000, false, "playerid", playerid);
return 1;
}
else
{
gPlayerAccount[playerid] = 0;
SendClientMessage(playerid, COLOR_GREEN, "Nie posiadasz konta. Zarejestruj sie komenda /zarejestruj [haslo]");
return 1;
}
}
public OnPlayerDisconnect(playerid)
{
gActivePlayers[playerid]--;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new string[256];
new playermoney;
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new cmd[256];
new giveplayerid, moneys, idx;
cmd = strtok(cmdtext, idx);
if (strcmp("/k", cmd, true) == 0)
{
/* new tmp[256];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "WSKAZOWKA: /k [Kolor]");
return 1;
}*/
new Color1[128];
// new Color2[128];
new currentveh;
Color1 = strtok(cmdtext, idx);
// Color2 = strrest(cmdtext, idx);
currentveh = GetPlayerVehicleID(playerid);
if (strval(Color1) > 255)
{
SendClientMessage(playerid, COLOR_RED, "Nie ma takiego koloru");
return 1;
}
/* if (strval(Color2) > 255)
{
SendClientMessage(playerid, COLOR_RED, "Nie ma takiego koloru");
return 1;
}*/
else
{
ChangeVehicleColor(currentveh, strval(Color1), strval(Color1));
return 1;
}
}
if(strcmp(cmd, "/pomoc", true) == 0)
{
SendClientMessage(playerid, COLOR_LIGHTBLUE, "/v(name) /veh(id) /tempomat /skin /taxiskin /k");
if(PlayerInfo[playerid][pAdmin] <= 1 && PlayerInfo[playerid][pAdmin] >= 1)
{
SendClientMessage(playerid, COLOR_RED, "/makeadmin ");//head
}
if(PlayerInfo[playerid][pAdmin] <= 2 && PlayerInfo[playerid][pAdmin] >= 1)
{
SendClientMessage(playerid, COLOR_RED, "/restart /ohelp ");//admin
}
if(PlayerInfo[playerid][pAdmin] <= 3 && PlayerInfo[playerid][pAdmin] >= 1)
{
SendClientMessage(playerid, COLOR_RED, "/kick /a");//moderator
}
SendClientMessage(playerid, COLOR_LIGHTBLUE, "---------------------------------------------");
return 1;
}
// 163, 164, 165, 166
if (strcmp(cmd, "/zarejestruj", true) ==0 )
{
new tmp[256];
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "SERWER: Jestes juz zalogowany.");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s.ini", sendername);
new File: hFile = fopen(string, io_read);
if (hFile)
{
SendClientMessage(playerid, COLOR_YELLOW, "Ta nazwa uzytkownika jest juz zajeta! Prosze wybrac inna.");
fclose(hFile);
return 1;
}
new tmppass[64];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "WSKAZOWKA: /zarejestruj [haslo]");
return 1;
}
strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
Encrypt(tmppass);
OnPlayerRegister(playerid,tmppass);
}
return 1;
}
if (strcmp(cmd, "/zaloguj", true) ==0 )
{
new tmp[256];
if(IsPlayerConnected(playerid))
{
new tmppass[64];
if(gPlayerLogged[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "SERWER: Jestes juz zalogowany.");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "WSKAZOWKA: /zaloguj [haslo]");
return 1;
}
strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
Encrypt(tmppass);
OnPlayerLogin(playerid,tmppass);
if (PlayerInfo[playerid][pAdmin] == 3)
{
SetPlayerColor(playerid,COLOR_RED);
}
if (PlayerInfo[playerid][pAdmin] == 2)
{
SetPlayerColor(playerid,COLOR_ORANGE);
}
if (PlayerInfo[playerid][pAdmin] == 1)
{
SetPlayerColor(playerid,COLOR_GREEN);
}
}
return 1;
}
if(strcmp(cmd, "/dajadmina", true) == 0 || strcmp(cmd, "/makeadmin", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new tmp[256];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "WSKAZOWKA: /makeadmin [ID] [lewel]");
SendClientMessage(playerid, COLOR_GRAD2, "1 = Moderator, 2 = Admin, 3 = Head Admin ");
return 1;
}
new para1;
new level;
para1 = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
level = strval(tmp);
if (PlayerInfo[playerid][pAdmin] >= 3 || IsPlayerAdmin(playerid))
{
if(IsPlayerConnected(para1))
{
if(para1 != INVALID_PLAYER_ID)
{
GetPlayerName(para1, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerInfo[para1][pAdmin] = level;
printf("AdmCmd: %s promowal %s lewel %d admin.", sendername, giveplayer, level);
format(string, sizeof(string), " Zostałeś promowany na admina z lvl %d przez %s", level, sendername);
SendClientMessage(para1, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), " Dałeś %s %d lvl admina.", giveplayer,level);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Nie jesteś uprawniony do użycia tej komendy!");
}
}
return 1;
}
if(strcmp(cmd, "/bb", true) == 0)
{
SetPlayerPos(playerid, 2782.06201172,-2020.32910156,16.02968979);
}
if(strcmp(cmd, "/taxiskin", true) == 0)
{
new rSkinTaxi = random( sizeof( RandomSkinsTaxi ) );
SetPlayerSkin( playerid, RandomSkinsTaxi[ rSkinTaxi ] );
return 1;
}
if(strcmp(cmd, "/online", true) == 0)
{
new tmp[256];
tmp = strtok(cmdtext, idx);
if(IsPlayerAdmin(playerid))
{
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
new rSkinAdmin = random( sizeof( RandomSkinsAdmin ) );
SetPlayerSkin( playerid, RandomSkinsAdmin[ rSkinAdmin ] );
format(string, sizeof(string), "Administrator: %s jest na sluzbie.",sendername);
SendClientMessageToAll(COLOR_LIGHTBLUE, string);
return 1;
}
}
}
}
if(strcmp(cmd, "/tempomat", true) == 0)
{
SendClientMessage(playerid, COLOR_GREEN, "[INFO] Tempomat = Utrzymuje stalą prędkość");
SendClientMessage(playerid, COLOR_GREEN, "W pojeździe: przytrzymaj lewy CTRL by aktywować tempomat...");
SendClientMessage(playerid, COLOR_GREEN, "...puść lewy ctrl lub wciśnij spacje by dezaktywować");
return 1;
}
if(strcmp(cmd, "/skin", true) == 0)
{
new rSkin = random( sizeof( RandomSkins ) );
SetPlayerSkin( playerid, RandomSkins[ rSkin ] );
if(SkinState == 0)
{
SendClientMessage(playerid, COLOR_YELLOW, "[INFO] Dostałeś nowy losowy skin");
SkinState = 1;
}
return 1;
}
if(strcmp(cmd, "/veh", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new tmp[256];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "WSKAZOWKA: /veh [id wozu] [kolor1] [kolor2]");
return 1;
}
new car;
car = strval(tmp);
if(car < 400 || car > 611) { SendClientMessage(playerid, COLOR_GREY, " ID pojazdуw sa od 400 do 611 !"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "WSKAZOWKA: /veh [id wozu] [kolor1] [kolor2]");
return 1;
}
new color1;
color1 = strval(tmp);
if(color1 < 0 || color1 > 256) { SendClientMessage(playerid, COLOR_GREY, " ID kolorow sa od 0 do 255 !"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "WSKAZOWKA: /veh [id wozu] [kolor1] [kolor2]");
return 1;
}
new color2;
color2 = strval(tmp);
if(color2 < 0 || color2 > 256) { SendClientMessage(playerid, COLOR_GREY, " ID kolorow sa od 0 do 255 !"); return 1; }
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid, X,Y,Z);
new carid = CreateVehicle(car, X,Y,Z, 0.0, color1, color2, 60000);
CreatedCars[CreatedCar] = carid;
CreatedCar ++;
format(string, sizeof(string), " Zespawnowales pojazd %d.", carid);
SendClientMessage(playerid, COLOR_GREY, string);
}
return 1;
}
if(strcmp(cmd, "/admin", true) == 0 || strcmp(cmd, "/a", true) == 0)
{
if(IsPlayerConnected(playerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "WSKAZOWKA: (/a)dmin [tekst]");
return 1;
}
if (PlayerInfo[playerid][pAdmin] == 3)
{
format(string, sizeof(string), "Head Admin %s: %s", sendername, result);
SendAdminMessage(COLOR_BLUE, string);
}
if (PlayerInfo[playerid][pAdmin] == 2)
{
format(string, sizeof(string), "Admin %s: %s", sendername, result);
SendAdminMessage(COLOR_BLUE, string);
}
if (PlayerInfo[playerid][pAdmin] == 1)
{
format(string, sizeof(string), "Moderator %s: %s", sendername, result);
SendAdminMessage(COLOR_BLUE, string);
}
printf("Admin %s: %s", sendername, result);
}
return 1;
}
if(strcmp(cmd, "/kick", true) == 0)
{
if(IsPlayerAdmin(playerid))
{
if(IsPlayerConnected(playerid) || PlayerInfo[playerid][pAdmin] >= 1)
{
new tmp[256];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "WSKAZOWKA: /kick [ID] [powуd]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "WSKAZOWKA: /kick [ID] [powуd]");
return 1;
}
new year, month,day;
getdate(year, month, day);
format(string, sizeof(string), "AdmCmd: %s został wyrzucony przez %s, Powуd: %s (%d-%d-%d)", giveplayer, sendername, (result),month,day,year);
KickLog(string);
format(string, sizeof(string), "Zostałes wyrzucony przez Administratora: %s, Powуd: %s", sendername, (result));
SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
Kick(giveplayerid);
format(string, sizeof(string), "* %s został wyrzucony przez Administratora: %s, Powуd: %s", giveplayer, sendername, (result));
SendClientMessageToAll(COLOR_LIGHTRED, string);
return 1;
}
}
}
else
{
format(string, sizeof(string), " %d nie jest aktywnym graczem.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
}
if (strcmp("/restart", cmdtext, true, 8 ) == 0)
{
if(IsPlayerConnected(playerid) || PlayerInfo[playerid][pAdmin] >= 2)
GameTextForAll("~g~RESTART ~r~SERVERA ",10000,5);
SendRconCommand("reloadfs oed");
SendRconCommand("reloadfs bb");
SendRconCommand("gmx");
SendRconCommand("reloadfs oed");
SendRconCommand("reloadfs bb");
for(new i = 0; i < MAX_PLAYERS; i++) ClearChat(i);
return 1;
}
if(strcmp(cmd, "/v", true, 10) == 0)
{
new String[200];
new tmp[256];
new Float:x, Float:y, Float:z;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, l_red, "Nie podałeś nazwy Auta");
new vehicle = GetVehicleModelIDFromName(tmp);
if(vehicle < 400 || vehicle > 611) return SendClientMessage(playerid, l_red, "Nie ma takiego Auta!");
new Float:a;
GetPlayerFacingAngle(playerid, a);
GetPlayerPos(playerid, x, y, z);
if(IsPlayerInAnyVehicle(playerid) == 1)
{
GetXYInFrontOfPlayer(playerid, x, y, 8);
}
else
{
GetXYInFrontOfPlayer(playerid, x, y, 5);
}
new PlayersVehicle = CreateVehicle(vehicle, x, y, z, a+90, -1, -1, -1);
LinkVehicleToInterior(PlayersVehicle, GetPlayerInterior(playerid));
format(String, sizeof(String), "Ze spawnowałeś sobie %s", aVehicleNames[vehicle - 400]);
SendClientMessage(playerid, l_green, String);
return 1;
}
if(strcmp(cmd, "/givecash", true) == 0) {
new tmp[256];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /givecash [playerid] [amount]");
return 1;
}
giveplayerid = strval(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /givecash [playerid] [amount]");
return 1;
}
moneys = strval(tmp);
if (IsPlayerConnected(giveplayerid)) {
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
playermoney = GetPlayerMoney(playerid);
if (moneys > 0 && playermoney >= moneys) {
GivePlayerMoney(playerid, (0 - moneys));
GivePlayerMoney(giveplayerid, moneys);
format(string, sizeof(string), "You have sent %s(player: %d), $%d.", giveplayer,giveplayerid, moneys);
SendClientMessage(playerid, COLOR_YELLOW, string);
format(string, sizeof(string), "You have recieved $%d from %s(player: %d).", moneys, sendername, playerid);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
printf("%s(playerid:%d) has transfered %d to %s(playerid:%d)",sendername, playerid, moneys, giveplayer, giveplayerid);
}
else {
SendClientMessage(playerid, COLOR_YELLOW, "Invalid transaction amount.");
}
}
else {
format(string, sizeof(string), "%d is not an active player.", giveplayerid);
SendClientMessage(playerid, COLOR_YELLOW, string);
}
return 1;
}
return 1;
}
public OnPlayerSpawn(playerid)
{
SetPlayerInterior(playerid,0);
SetPlayerRandomSpawn(playerid);
SetPlayerFacingAngle(playerid,88.7498);
new rSkin = random( sizeof( RandomSkins ) );
SetPlayerSkin( playerid, RandomSkins[ rSkin ] );
// SetTimerEx("kicktimer", 30000, false, "playerid", playerid);
return 1;
}
public SetPlayerRandomSpawn(playerid)
{
new rand = random(sizeof(gRandomPlayerSpawns));
SetPlayerPos(playerid, gRandomPlayerSpawns[rand][0], gRandomPlayerSpawns[rand][1], gRandomPlayerSpawns[rand][2]);
new rSkin = random( sizeof( RandomSkins ) );
SetPlayerSkin( playerid, RandomSkins[ rSkin ] );
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
new playercash;
if(killerid == INVALID_PLAYER_ID) {
SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
ResetPlayerMoney(playerid);
} else {
SendDeathMessage(killerid,playerid,reason);
SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
playercash = GetPlayerMoney(playerid);
if (playercash > 0) {
GivePlayerMoney(killerid, playercash);
ResetPlayerMoney(playerid);
}
else
{
}
}
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerCameraPos(playerid,2886.1438,922.0653,10.7500);
SetPlayerCameraLookAt(playerid,2886.1438,915.0653,10.7500);
SetTimerEx("Spawn", 10, false, "i", playerid);
return 1;
}
public SetupPlayerForClassSelection(playerid)
{
SpawnPlayer(playerid);
}
public GameModeExitFunc()
{
GameModeExit();
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
SendClientMessageToAll(0xFFFF00AA, " ");
GameTextForAll("~g~RESTART ~r~SERVERA ",8000,5);
new playerid;
SetPlayerCameraPos(playerid,2886.1438,922.0653,10.7500);
SetPlayerCameraLookAt(playerid,2886.1438,912.0653,10.7500);
}
public OnVehicleSpawn(vehicleid)
{
SetTimer("TuneVehicle",1000,0);
}
public OnGameModeInit()
{
SkinState = 0;
BRAVURA1 = AddStaticVehicle(401,2764.9573,1278.4604,10.5295,270.1373,6,3);
BRAVURA2 = AddStaticVehicle(401,2765.0388,1281.7991,10.4870,270.1576,154,154);
TAMPA1 = AddStaticVehicle(549,2784.6060,1295.3046,10.5061,180.0664,43,43);
TAMPA2 = AddStaticVehicle(549,2788.7888,1295.3291,10.5462,180.1065,3,3);
TuneVehicle();
SetGameModeText("Budowanie v1.0");
UsePlayerPedAnims();
ShowPlayerMarkers(1);
ShowNameTags(1);
EnableStuntBonusForAll(0);
EnableTirePopping(1);
AllowInteriorWeapons(1);
TAXI[0] = AddStaticVehicle(420,1909.8508,2290.1101,10.6003,90.6418,6,1); // taxi
TAXI[1] = AddStaticVehicle(420,1909.9154,2295.2786,10.6000,90.2000,6,1); // taxi
TAXI[2] = AddStaticVehicle(420,1909.8638,2305.7234,10.5991,88.3554,6,1); // taxi
TAXI[3] = AddStaticVehicle(420,1910.1022,2300.6621,10.5994,91.1927,6,1); // taxi
TAXI[4] = AddStaticVehicle(420,1910.0012,2316.0735,10.5992,89.4640,6,1); // taxi
TAXI[5] = AddStaticVehicle(438,1909.8601,2325.7739,10.8256,88.4350,6,76); // cab
TAXI[6] = AddStaticVehicle(438,1909.6829,2320.6853,10.8259,90.5179,6,76); // cab
TAXI[7] = AddStaticVehicle(437,1890.4349,2331.4309,10.9537,180.8282,79,7); // coach
TAXI[8] = AddStaticVehicle(437,1890.7509,2306.0757,10.9536,180.1872,79,7); // coach
AddStaticPickup(371, 15, 1710.3359,1614.3585,10.1191); //para
AddStaticPickup(371, 15, 1964.4523,1917.0341,130.9375); //para
AddStaticPickup(371, 15, 2055.7258,2395.8589,150.4766); //para
AddStaticPickup(371, 15, 2265.0120,1672.3837,94.9219); //para
AddStaticPickup(371, 15, 2265.9739,1623.4060,94.9219); //para
SetTimer("Timer", 1000, 1);
//naczepy
AddStaticVehicle(435,890.2955,2263.0659,11.4453,114.8496,1,1); // trailer 1
AddStaticVehicle(435,889.8826,2257.6775,11.4454,113.9580,1,1); // trailer 2
AddStaticVehicle(435,889.9868,2253.0386,11.4453,115.7667,1,1); // trailer 3
AddStaticVehicle(435,889.9776,2248.1206,11.4453,115.8035,1,1); // trailer 4
AddStaticVehicle(435,890.0465,2243.0415,11.4453,115.4748,1,1); // trailer 5
AddStaticVehicle(435,889.9307,2237.4255,11.4454,115.4793,1,1); // trailer 6
AddStaticVehicle(435,889.9754,2232.3611,11.4452,115.6060,1,1); // trailer 7
AddStaticVehicle(435,889.8818,2227.2524,11.4445,115.0341,1,1); // trailer 8
AddStaticVehicle(435,890.0737,2222.1667,11.4459,115.9608,1,1); // trailer 9
AddStaticVehicle(435,889.6500,2217.0618,11.4454,115.2409,1,1); // trailer 10
AddStaticVehicle(435,889.5466,2211.7756,11.4447,114.9839,1,1); // trailer 11
AddStaticVehicle(435,890.1449,2207.0774,11.4453,115.7074,1,1); // trailer 12
AddStaticVehicle(435,890.0661,2202.0540,11.4444,114.5860,1,1); // trailer 13
AddStaticVehicle(435,890.2903,2196.8833,11.4452,115.5385,1,1); // trailer 14
AddStaticVehicle(435,890.1369,2191.7124,11.4461,114.9099,1,1); // trailer 15
AddStaticVehicle(450,864.9286,2265.3818,11.4470,62.8804,1,1); // trailer drugi rzad 1
AddStaticVehicle(450,864.8787,2259.9829,11.4462,62.3468,1,1); // trailer drugi rzad 2
AddStaticVehicle(450,864.7479,2254.3064,11.4476,63.3529,1,1); // trailer drugi rzad 3
AddStaticVehicle(450,864.3688,2249.1716,11.4471,64.7268,1,1); // trailer drugi rzad 4
AddStaticVehicle(450,864.1197,2243.9722,11.4463,64.0886,1,1); // trailer drugi rzad 5
AddStaticVehicle(450,864.3157,2238.5747,11.4468,63.9716,1,1); // trailer drugi rzad 6
AddStaticVehicle(450,864.2667,2232.8206,11.4451,64.6235,1,1); // trailer drugi rzad 7
AddStaticVehicle(584,864.2812,2227.5928,11.4457,64.5106,1,1); // trailer drugi rzad 8
AddStaticVehicle(584,864.3719,2222.8984,11.4450,63.2765,1,1); // trailer drugi rzad 9
AddStaticVehicle(584,864.0569,2217.9324,11.4475,65.4710,1,1); // trailer drugi rzad 10
AddStaticVehicle(584,863.3739,2213.0132,11.4458,65.4707,1,1); // trailer drugi rzad 11
AddStaticVehicle(584,863.5406,2207.5183,11.4457,65.4725,1,1); // trailer drugi rzad 12
AddStaticVehicle(584,863.6143,2202.2527,11.4455,65.4723,1,1); // trailer drugi rzad 13
AddStaticVehicle(584,863.7573,2196.2927,11.4457,65.0124,1,1); // trailer drugi rzad 14
AddStaticVehicle(584,863.4696,2191.2573,11.4453,65.0125,1,1); // trailer drugi rzad 15
//basketball 2782.06201172,-2020.32910156,16.02968979
CreateObject(14795,2795.14721680,-2005.15844727,17.69060135,0.00000000,0.00000000,0.00000000); //object(genint3_smashtv) (1)
CreateObject(14795,2768.27197266,-2034.86376953,17.69060135,0.00000000,0.00000000,180.00000000); //object(genint3_smashtv) (2)
CreateObject(4058,2781.45654297,-2020.84387207,52.52371979,0.00000000,180.00000000,356.00000000); //object(fighotblok2_lan) (1)
CreateObject(945,2782.06201172,-2020.32910156,29.02968979,0.00000000,0.00000000,0.00000000); //object(ws_cf_lamps) (1)
CreateObject(945,2773.81005859,-2020.53479004,29.02968979,0.00000000,0.00000000,0.00000000); //object(ws_cf_lamps) (2)
CreateObject(945,2773.78906250,-2024.03417969,29.02968979,0.00000000,0.00000000,0.00000000); //object(ws_cf_lamps) (3)
CreateObject(945,2773.83447266,-2016.28417969,29.02968979,0.00000000,0.00000000,0.00000000); //object(ws_cf_lamps) (4)
CreateObject(945,2782.08398438,-2016.32849121,29.02968979,0.00000000,0.00000000,0.00000000); //object(ws_cf_lamps) (5)
CreateObject(945,2782.03857422,-2024.07812500,29.02968979,0.00000000,0.00000000,0.00000000); //object(ws_cf_lamps) (6)
CreateObject(945,2789.28808594,-2024.11706543,29.02968979,0.00000000,0.00000000,0.00000000); //object(ws_cf_lamps) (7)
CreateObject(945,2789.31005859,-2020.36621094,29.02968979,0.00000000,0.00000000,0.00000000); //object(ws_cf_lamps) (8)
CreateObject(945,2789.33300781,-2016.36621094,29.02968979,0.00000000,0.00000000,0.00000000); //object(ws_cf_lamps) (9)
CreateObject(18553,2782.41772461,-2006.51831055,13.84663391,0.00000000,0.00000000,270.00000000); //object(count_ammundoor) (1)
//basketball
//objects
CreateObject(7191,897.87060547,2212.79370117,11.79499054,0.00000000,0.00000000,0.00000000); //object(vegasnnewfence2b) (1)
CreateObject(7191,897.88940430,2257.21752930,11.79499054,0.00000000,0.00000000,0.00000000); //object(vegasnnewfence2b) (2)
CreateObject(7033,892.71813965,2292.33056641,14.33408356,0.00000000,0.00000000,88.00000000); //object(vgnhsegate02) (1)
CreateObject(979,870.93542480,2260.11425781,10.66053295,0.00000000,0.00000000,269.00000000); //object(sub_roadleft) (1)
CreateObject(979,870.75738525,2250.82177734,10.66053295,0.00000000,0.00000000,268.99475098); //object(sub_roadleft) (2)
CreateObject(979,870.59112549,2241.49243164,10.66053295,0.00000000,0.00000000,268.99475098); //object(sub_roadleft) (3)
CreateObject(979,870.44079590,2232.28955078,10.66053295,0.00000000,0.00000000,268.99475098); //object(sub_roadleft) (4)
CreateObject(979,870.30871582,2223.10986328,10.66053295,0.00000000,0.00000000,268.99475098); //object(sub_roadleft) (5)
CreateObject(979,870.14868164,2214.05322266,10.66053295,0.00000000,0.00000000,268.99475098); //object(sub_roadleft) (6)
CreateObject(979,869.98980713,2204.89404297,10.66053295,0.00000000,0.00000000,268.99475098); //object(sub_roadleft) (7)
CreateObject(979,869.85748291,2195.65966797,10.66053295,0.00000000,0.00000000,268.99475098); //object(sub_roadleft) (8)
CreateObject(979,869.72558594,2186.45117188,10.66053295,0.00000000,0.00000000,268.99475098); //object(sub_roadleft) (9)
CreateObject(7191,884.81469727,2172.91137695,11.79499054,0.00000000,0.00000000,322.00000000); //object(vegasnnewfence2b) (3)
CreateObject(7191,853.17584229,2167.96215820,11.79499054,0.00000000,0.00000000,233.99829102); //object(vegasnnewfence2b) (4)
CreateObject(7191,835.08367920,2202.91918945,11.79499054,0.00000000,0.00000000,179.99780273); //object(vegasnnewfence2b) (5)
CreateObject(7191,835.19982910,2247.42626953,11.79499054,0.00000000,0.00000000,179.99450684); //object(vegasnnewfence2b) (6)
CreateObject(7191,838.94458008,2290.84228516,11.79499054,0.00000000,0.00000000,169.99450684); //object(vegasnnewfence2b) (7)
CreateObject(7191,864.63574219,2308.82446289,11.79499054,0.00000000,0.00000000,79.99438477); //object(vegasnnewfence2b) (8)
CreateObject(979,875.57983398,2291.89990234,10.66053295,0.00000000,0.00000000,184.99475098); //object(sub_roadleft) (10)
CreateObject(979,869.64465332,2269.17187500,10.66053295,0.00000000,0.00000000,286.99035645); //object(sub_roadleft) (11)
CreateObject(979,867.36877441,2278.30810547,10.66053295,0.00000000,0.00000000,280.99035645); //object(sub_roadleft) (12)
CreateObject(979,868.62756348,2287.05102539,10.66053295,0.00000000,0.00000000,242.98632812); //object(sub_roadleft) (13)
CreateObject(979,870.93457031,2260.11425781,10.66053295,0.00000000,0.00000000,268.99475098); //object(sub_roadleft) (14)
CreateObject(1237,902.87249756,2290.68627930,9.69153214,0.00000000,0.00000000,0.00000000); //object(strtbarrier01) (1)
CreateObject(1237,905.63031006,2290.32861328,9.81216812,0.00000000,0.00000000,0.00000000); //object(strtbarrier01) (2)
CreateObject(1237,907.90710449,2288.60278320,9.78820419,0.00000000,0.00000000,0.00000000); //object(strtbarrier01) (3)
CreateObject(1237,909.66650391,2286.84326172,9.74995995,0.00000000,0.00000000,0.00000000); //object(strtbarrier01) (4)
CreateObject(1237,911.30444336,2284.31762695,9.69507599,0.00000000,0.00000000,0.00000000); //object(strtbarrier01) (5)
CreateObject(1237,912.54260254,2281.32373047,9.82031250,0.00000000,0.00000000,0.00000000); //object(strtbarrier01) (6)
CreateObject(7191,912.61584473,2259.10351562,11.79499054,0.00000000,0.00000000,0.00000000); //object(vegasnnewfence2b) (9)
CreateObject(7191,912.65234375,2226.37426758,11.79499054,0.00000000,0.00000000,0.00000000); //object(vegasnnewfence2b) (10)
BRAMA = CreateObject(988,909.42535400,2203.85546875,10.67964840,0.00000000,0.00000000,0.00000000); //object(ws_apgate) (1)
BRAMA2 = CreateObject(988,903.96264648,2203.84350586,10.67964840,0.00000000,0.00000000,0.00000000); //object(ws_apgate) (2)
CreateObject(8407,899.55017090,2204.06250000,11.29568005,0.00000000,0.00000000,184.00000000); //object(carparkhut01_lvs) (1)
CreateObject(979,865.40539551,2187.85961914,10.66053295,0.00000000,0.00000000,154.24475098); //object(sub_roadleft) (15)
CreateObject(979,865.49420166,2193.13330078,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (16)
CreateObject(979,865.58258057,2198.38281250,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (17)
CreateObject(979,865.67468262,2203.88281250,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (18)
CreateObject(979,865.76403809,2209.23144531,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (19)
CreateObject(979,865.85632324,2214.73144531,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (20)
CreateObject(979,865.93804932,2219.63085938,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (21)
CreateObject(979,866.01751709,2224.38085938,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (22)
CreateObject(979,866.10504150,2229.63085938,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (23)
CreateObject(979,866.19293213,2234.88085938,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (24)
CreateObject(979,866.28808594,2240.58593750,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (25)
CreateObject(979,866.37579346,2245.78417969,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (26)
CreateObject(979,866.46368408,2251.03027344,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (27)
CreateObject(979,866.55462646,2256.48144531,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (28)
CreateObject(979,866.64398193,2261.82910156,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (29)
CreateObject(979,866.89886475,2267.24340820,10.66053295,0.00000000,0.00000000,154.24255371); //object(sub_roadleft) (30)
CreateObject(979,890.18591309,2265.55493164,10.66053295,0.00000000,0.00000000,204.24255371); //object(sub_roadleft) (31)
CreateObject(979,890.15863037,2260.30468750,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (32)
CreateObject(979,890.13342285,2255.50195312,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (33)
CreateObject(979,890.10797119,2250.58349609,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (34)
CreateObject(979,890.08142090,2245.53125000,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (35)
CreateObject(979,890.11694336,2240.28125000,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (36)
CreateObject(979,890.15380859,2234.78125000,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (37)
CreateObject(979,890.18579102,2230.03125000,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (38)
CreateObject(979,890.22143555,2224.78125000,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (39)
CreateObject(979,890.25488281,2219.78125000,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (40)
CreateObject(979,890.28906250,2214.78125000,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (41)
CreateObject(979,890.32385254,2209.68066406,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (42)
CreateObject(979,890.35742188,2204.68066406,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (43)
CreateObject(979,890.39147949,2199.67968750,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (44)
CreateObject(979,890.42626953,2194.48046875,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (45)
CreateObject(979,890.46166992,2189.23046875,10.66053295,0.00000000,0.00000000,204.24133301); //object(sub_roadleft) (46)
CreateObject(966,899.66107178,2295.16821289,9.82031250,0.00000000,0.00000000,268.25000000); //object(bar_gatebar01) (1)
SZLABAN = CreateObject(968,899.74218750,2295.07055664,10.69531441,0.00000000,90.25021362,88.50000000); //object(barrierturn) (1)
//objects
return 1;
}
public SendPlayerFormattedText(playerid, const str[], define)
{
new tmpbuf[256];
format(tmpbuf, sizeof(tmpbuf), str, define);
SendClientMessage(playerid, 0xFF004040, tmpbuf);
}
public SendAllFormattedText(playerid, const str[], define)
{
new tmpbuf[256];
format(tmpbuf, sizeof(tmpbuf), str, define);
SendClientMessageToAll(0xFFFF00AA, tmpbuf);
}
public Spawn(playerid)
{
SpawnPlayer(playerid);
}
public KickLog(string[])
{
new entry[256];
format(entry, sizeof(entry), "%s\n",string);
new File:hFile;
hFile = fopen("kick.log", io_append);
fwrite(hFile, entry);
fclose(hFile);
}
public OnPlayerEnterVehicle(playerid, vehicleid)
{
if(vehicleid == TAXI[playerid])
{
if(GetPlayerSkin(playerid) == 299 || GetPlayerSkin(playerid) == 7 || GetPlayerSkin(playerid) == 142 || GetPlayerSkin(playerid) == 220 || GetPlayerSkin(playerid) == 262 || GetPlayerSkin(playerid) == 253 || GetPlayerSkin(playerid) == 255)
{
return 1;
}
else
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, COLOR_RED, "Nie jestes taxowkarzem!");
return 1;
}
}
return 0;
}
public TuneVehicle()
{
AddVehicleComponent(BRAVURA1, 1019);// twin exhaust
AddVehicleComponent(BRAVURA1, 1013);// Round fog lamps
AddVehicleComponent(BRAVURA1, 1010);// 10x nitro
AddVehicleComponent(BRAVURA1, 1006);// Roof scope
AddVehicleComponent(BRAVURA1, 1001);// Spoiler Win
AddVehicleComponent(BRAVURA1, 1017);// side skirts right
AddVehicleComponent(BRAVURA1, 1007);// side skirts left
AddVehicleComponent(BRAVURA1, 1074);// wheels mega
AddVehicleComponent(BRAVURA1, 1087);// hydraulics
AddVehicleComponent(BRAVURA1, 1086);// stereo boost
AddVehicleComponent(BRAVURA2, 1019);// twin exhaust
AddVehicleComponent(BRAVURA2, 1013);// Round fog lamps
AddVehicleComponent(BRAVURA2, 1010);// 10x nitro
AddVehicleComponent(BRAVURA2, 1006);// Roof scope
AddVehicleComponent(BRAVURA2, 1001);// Spoiler Win
AddVehicleComponent(BRAVURA2, 1017);// side skirts right
AddVehicleComponent(BRAVURA2, 1007);// side skirts left
AddVehicleComponent(BRAVURA2, 1074);// wheels mega
AddVehicleComponent(BRAVURA2, 1087);// hydraulics
AddVehicleComponent(BRAVURA2, 1086);// stereo boost
AddVehicleComponent(TAMPA1, 1097);// 10x nitro
AddVehicleComponent(TAMPA2, 1097);// 10x nitro
return 1;
}
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys & KEY_HORN)
{
if(IsPlayerInRangeOfPoint(playerid, 10.0,899.74218750,2295.07055664,10.69531441))
{
if(GateState == 0)
{
MoveObject(SZLABAN, 899.74218750,2295.07055664,7.69531441,3);
GateState = 1;
}
else if(GateState == 1)
{
MoveObject(SZLABAN, 899.74218750,2295.07055664,10.69531441,3);
GateState = 0;
}
}
if(IsPlayerInRangeOfPoint(playerid, 10.0,909.42535400,2203.85546875,10.67964840))
{
if(GateState2 == 0)
{
MoveObject(BRAMA, 911.71289062,2206.31689453,10.67964840,3);
GateState2 = 1;
}
else if(GateState2 == 1)
{
MoveObject(BRAMA, 909.42535400,2203.85546875,10.67964840,3);
GateState2 = 0;
}
}
if(IsPlayerInRangeOfPoint(playerid, 10.0,903.96264648,2203.84350586,10.67964840))
{
if(GateState3 == 0)
{
MoveObject(BRAMA2, 902.28479004,2206.35546875,10.67964840,3);
GateState3 = 1;
}
else if(GateState3 == 1)
{
MoveObject(BRAMA2, 903.96264648,2203.84350586,10.67964840,3);
GateState3 = 0;
}
}
}
if ((newkeys & CCKey) && !(oldkeys & CCKey) && IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
new vid = GetPlayerVehicleID(playerid);
if (GetVehicleSpeed(vid) == 0) return false;
new Float:x, Float:y, Float:z;
GetVehicleVelocity(vid, x, y, z);
GetVehicleZAngle(vid, PlayerHeadingAngle[playerid]);
DistanceFlat(0, 0, x, y, PlayerCruiseSpeed[playerid]);
SetTimerEx("CruiseControl", 500, false, "d", playerid);
}
else if (PlayerCruiseSpeed[playerid] != 0.00 && (newkeys & KEY_HANDBRAKE))
{
PlayerCruiseSpeed[playerid] = 0.00;
}
return 1;
}
public OnPlayerRegister(playerid, password[])
{
if(IsPlayerConnected(playerid))
{
new string3[32];
new playername3[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername3, sizeof(playername3));
format(string3, sizeof(string3), "%s.ini", playername3);
new File: hFile = fopen(string3, io_write);
if (hFile)
{
strmid(PlayerInfo[playerid][pKey], password, 0, strlen(password), 255);
new var[32];
format(var, 32, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
format(var, 32, "AdminLevel=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
format(var, 32, "pSHealth=%.1f\n",PlayerInfo[playerid][pSHealth]);fwrite(hFile, var);
GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);
format(var, 32, "pHealth=%.1f\n",PlayerInfo[playerid][pHealth]);fwrite(hFile, var);
format(var, 32, "Registered=%d\n",PlayerInfo[playerid][pReg]);fwrite(hFile, var);
format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
if ((PlayerInfo[playerid][pPos_x]==0.0 && PlayerInfo[playerid][pPos_y]==0.0 && PlayerInfo[playerid][pPos_z]==0.0))
{
PlayerInfo[playerid][pPos_x] = 1684.9;
PlayerInfo[playerid][pPos_y] = -2244.5;
PlayerInfo[playerid][pPos_z] = 13.5;
}
format(var, 32, "Pos_x=%.1f\n",PlayerInfo[playerid][pPos_x]);fwrite(hFile, var);
format(var, 32, "Pos_y=%.1f\n",PlayerInfo[playerid][pPos_y]);fwrite(hFile, var);
format(var, 32, "Pos_z=%.1f\n",PlayerInfo[playerid][pPos_z]);fwrite(hFile, var);
format(var, 32, "Adjustable=%d\n",PlayerInfo[playerid][pAdjustable]);fwrite(hFile, var);
fclose(hFile);
SendClientMessage(playerid, COLOR_GREEN, "Konto zarejestrowane masz 30 sekund by sie zalogowac, /zaloguj [haslo].");
}
}
return 1;
}
public OnPlayerUpdate(playerid)
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid])
{
new string3[32];
new playername3[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername3, sizeof(playername3));
format(string3, sizeof(string3), "%s.ini", playername3);
new File: hFile = fopen(string3, io_write);
if (hFile)
{
new var[32];
format(var, 32, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
format(var, 32, "AdminLevel=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
format(var, 32, "pSHealth=%.1f\n",PlayerInfo[playerid][pSHealth]);fwrite(hFile, var);
GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);
format(var, 32, "pHealth=%.1f\n",PlayerInfo[playerid][pHealth]);fwrite(hFile, var);
format(var, 32, "Registered=%d\n",PlayerInfo[playerid][pReg]);fwrite(hFile, var);
format(var, 32, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
if ((PlayerInfo[playerid][pPos_x]==0.0 && PlayerInfo[playerid][pPos_y]==0.0 && PlayerInfo[playerid][pPos_z]==0.0))
{
PlayerInfo[playerid][pPos_x] = 1684.9;
PlayerInfo[playerid][pPos_y] = -2244.5;
PlayerInfo[playerid][pPos_z] = 13.5;
}
format(var, 32, "Pos_x=%.1f\n",PlayerInfo[playerid][pPos_x]);fwrite(hFile, var);
format(var, 32, "Pos_y=%.1f\n",PlayerInfo[playerid][pPos_y]);fwrite(hFile, var);
format(var, 32, "Pos_z=%.1f\n",PlayerInfo[playerid][pPos_z]);fwrite(hFile, var);
format(var, 32, "Adjustable=%d\n",PlayerInfo[playerid][pAdjustable]);fwrite(hFile, var);
fclose(hFile);
}
}
}
return 1;
}
/*public DateProp(playerid)
{
new playername[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername, sizeof(playername));
new curdate = getdate();
for(new h = 0; h < sizeof(HouseInfo); h++)
{
if (strcmp(playername, HouseInfo[h][hOwner], true) == 0)
{
HouseInfo[h][hDate] = curdate;
OnPropUpdate();
}
}
return 1;
}*/
public OnPlayerLogin(playerid,password[])
{
new tmp2[256];
new string2[64];
new playername2[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername2, sizeof(playername2));
format(string2, sizeof(string2), "%s.ini", playername2);
new File: UserFile = fopen(string2, io_read);
if ( UserFile )
{
new PassData[256];
new keytmp[256], valtmp[256];
fread( UserFile , PassData , sizeof( PassData ) );
keytmp = ini_GetKey( PassData );
if( strcmp( keytmp , "Key" , true ) == 0 )
{
valtmp = ini_GetValue( PassData );
strmid(PlayerInfo[playerid][pKey], valtmp, 0, strlen(valtmp)-1, 255);
}
if(strcmp(PlayerInfo[playerid][pKey],password, true ) == 0 )
{
new key[ 256 ] , val[ 256 ];
new Data[ 256 ];
while ( fread( UserFile , Data , sizeof( Data ) ) )
{
key = ini_GetKey( Data );
if( strcmp( key , "AdminLevel" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAdmin] = strval( val ); }
if( strcmp( key , "pSHealth" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pSHealth] = floatstr( val ); }
if( strcmp( key , "pHealth" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pHealth] = floatstr( val ); }
if( strcmp( key , "Money" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pCash] = strval( val ); }
if( strcmp( key , "Pos_x" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPos_x] = floatstr( val ); }
if( strcmp( key , "Pos_y" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPos_y] = floatstr( val ); }
if( strcmp( key , "Pos_z" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pPos_z] = floatstr( val ); }
if( strcmp( key , "Registered" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pReg] = strval( val ); }
if( strcmp( key , "Adjustable" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pAdjustable] = strval( val ); }
}//end while
fclose(UserFile);//close the file after everything has been read in the while
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "SERWER: Nieprawidlowe haslo.");
fclose(UserFile);
gPlayerLogTries[playerid] += 1;
if(gPlayerLogTries[playerid] == 4) { Ban(playerid); }
return 1;
}
PlayerInfo[playerid][pAdjustable] = 0;
ResetPlayerMoney(playerid);
ConsumingMoney[playerid] = 1;
GivePlayerMoney(playerid,PlayerInfo[playerid][pCash]);
CurrentMoney[playerid] = PlayerInfo[playerid][pCash];
if(PlayerInfo[playerid][pReg] == 0)
{
PlayerInfo[playerid][pSHealth] = 0.0;
PlayerInfo[playerid][pHealth] = 50.0;
PlayerInfo[playerid][pPos_x] = 2246.6;
PlayerInfo[playerid][pPos_y] = -1161.9;
PlayerInfo[playerid][pPos_z] = 1029.7;
PlayerInfo[playerid][pReg] = 1;
GivePlayerMoney(playerid, 5000);
}
format(string2, sizeof(string2), "SERWER: Witaj %s",playername2);
SendClientMessage(playerid, COLOR_WHITE,string2);
printf("%s has logged in.",playername2);
if (PlayerInfo[playerid][pAdmin] > 0)
{
format(string2, sizeof(string2), "SERWER: Jestes zalogowany jako administrator poziomu %d.",PlayerInfo[playerid][pAdmin]);
SendClientMessage(playerid, COLOR_WHITE,string2);
}
gPlayerLogged[playerid] = 1;
SpawnPlayer(playerid);
format(tmp2, sizeof(tmp2), "~w~Witaj ~n~~y~ %s", playername2);
// DateProp(playerid);
GameTextForPlayer(playerid, tmp2, 5000, 1);
SendClientMessage(playerid, COLOR_YELLOW, motd);
}
return 1;
}
GetVehicleSpeed(vehicleid)
{
new Float:Vx, Float:Vy, Float:Vz;
GetVehicleVelocity(vehicleid, Vx, Vy, Vz);
new Float:rtn;
rtn = floatsqroot(floatpower(Vx*100,2) + floatpower(Vy*100,2));
rtn = floatsqroot(floatpower(rtn,2) + floatpower(Vz*100,2));
return floatround(rtn);
}
DistanceFlat(Float:ax, Float:ay, Float:bx,Float:by, &Float:distance)
{
distance = floatsqroot(floatpower(bx-ax,2)+floatpower(by-ay,2));
return floatround(distance);
}
public CruiseControl(playerid)
{
new vid = GetPlayerVehicleID(playerid);
new Float:x, Float:y, Float:z;
GetVehicleVelocity(vid, x, y, z);
new keys, ud, lr;
GetPlayerKeys(playerid, keys, ud, lr);
new Float:angle, Float:heading, Float:speed;
GetVehicleZAngle(vid, angle);
GetVehicleHeadingAngle(vid, heading);
DistanceFlat(0, 0, x, y, speed);
if (!(keys & CCKey) || PlayerCruiseSpeed[playerid] == 0.00 ||
GetPlayerState(playerid) != PLAYER_STATE_DRIVER ||
(speed < 0.7 * PlayerCruiseSpeed[playerid]) ||
z > 1 ||
(floatabs(angle - heading) > 50 && floatabs(angle - heading) < 310))
{
PlayerCruiseSpeed[playerid] = 0.00;
return false;
}
GetVehicleZAngle(vid, PlayerHeadingAngle[playerid]);
GetXYVelocity(vid, x, y, PlayerCruiseSpeed[playerid]);
SetVehicleVelocity(vid, x, y, z);
return SetTimerEx("CruiseControl", 500, false, "d", playerid);
}
GetXYVelocity(vehicleid, &Float:x, &Float:y, Float:speed)
{
new Float:a;
x = 0.0;
y = 0.0;
GetVehicleZAngle(vehicleid, a);
x += (speed * floatsin(-a, degrees));
y += (speed * floatcos(-a, degrees));
}
GetAngleToXY(Float:X, Float:Y, Float:CurrentX, Float:CurrentY, &Float:Angle)
{
Angle = atan2(Y-CurrentY, X-CurrentX);
Angle = floatsub(Angle, 90.0);
if(Angle < 0.0) Angle = floatadd(Angle, 360.0);
}
GetVehicleHeadingAngle(vehicleid, &Float:a)
{
new Float:x, Float:y, Float:z;
GetVehicleVelocity(vehicleid, x, y, z);
GetAngleToXY(x, y, 0, 0, a);
}
stock ClearChat(playerid)
{
for (new a = 0; a < 150; a++)
{
SendClientMessage(playerid, 0xFFFF00AA, " ");
}
}
GetVehicleModelIDFromName(vname[])
{
for(new i = 0; i < 211; i++)
{
if(strfind(aVehicleNames[i], vname, true) != -1)
return i + 400;
}
return -1;
}
stock ini_GetKey( line[] )
{
new keyRes[256];
keyRes[0] = 0;
if ( strfind( line , "=" , true ) == -1 ) return keyRes;
strmid( keyRes , line , 0 , strfind( line , "=" , true ) , sizeof( keyRes) );
return keyRes;
}
stock ini_GetValue( line[] )
{
new valRes[256];
valRes[0]=0;
if ( strfind( line , "=" , true ) == -1 ) return valRes;
strmid( valRes , line , strfind( line , "=" , true )+1 , strlen( line ) , sizeof( valRes ) );
return valRes;
}
public Encrypt(string[])
{
for(new x=0; x < strlen(string); x++)
{
string[x] += (3^x) * (x % 15);
if(string[x] > (0xff))
{
string[x] -= 256;
}
}
return 1;
}
public SendAdminMessage(color, string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pAdmin] >= 1)
{
SendClientMessage(i, color, string);
}
}
}
}
stock GetXYInFrontOfPlayer(playerid, &Float:x2, &Float:y2, Float:distance)
{
new Float:a;
GetPlayerPos(playerid, x2, y2, a);
GetPlayerFacingAngle(playerid, a);
if(GetPlayerVehicleID(playerid))
{
GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
}
x2 += (distance * floatsin(-a, degrees));
y2 += (distance * floatcos(-a, degrees));
}

