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)); }