Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Includes
- #include <a_samp>
- #include <ocmd>
- #include <sscanf2>
- #include <a_mysql>
- //Farben
- #define COLOR_RED 0xFF0000FF
- #define COLOR_WHITE 0xFFFFFFFF
- #define COLOR_BLUE 0x000FFFFF
- //Dialoge
- #define DIALOG_REGISTER 1
- #define DIALOG_LOGIN 2
- #define DIALOG_AUTOHAUS 3
- //MySQL
- #define db_host "127.0.0.1"
- #define db_user "samp"
- #define db_pass "eeee"
- #define db_db "samp"
- //enums
- enum playerInfo{
- eingeloggt,
- level,
- db_id,
- alevel,
- fraktion,
- rang,
- spawnchange
- }
- enum buildingsEnum{
- Float:b_x,
- Float:b_y,
- Float:b_z,
- Float:b_ix,
- Float:b_iy,
- Float:b_iz,
- b_interior,
- b_shopname[15]
- }
- enum carEnum{
- id_x,
- model,
- besitzer,
- Float:c_x,
- Float:c_y,
- Float:c_z,
- Float:c_r,
- db_id
- }
- enum autohausEnum{
- Float:s_x,
- Float:s_y,
- Float:s_z,
- Float:s_r
- }
- enum autohauscarEnum{
- model,
- Float:c_x,
- Float:c_y,
- Float:c_z,
- Float:c_r,
- c_preis,
- ah_id,
- id_x
- }
- enum fraktEnum{
- f_name[128],
- Float:f_x,
- Float:f_y,
- Float:f_z,
- Float:f_r,
- f_inter,
- f_world,
- f_color
- }
- //Globale Variablen
- new dbhandle;
- new sInfo[MAX_PLAYERS][playerInfo];
- new fInfo[][fraktEnum] = {
- {"Zivilist", 0.0, 0.0, 0.0, 0.0, 0, 0, COLOR_WHITE},
- {"LSPD", 1530.9622,-1677.6875,5.8906,268.587, 0, 0, COLOR_BLUE},
- {"Grove Street", 2491.3042,-1692.0360,14.7656,1.504, 0, 0, COLOR_WHITE},
- {"Ballas", 2575.5115,-1070.5188,69.5704,82.133, 0, 0, COLOR_WHITE},
- {"Vagos", 2006.8923,-1115.7986,27.1250,88.152, 0, 0, COLOR_WHITE},
- {"LCM", 2489.9199,923.3309,11.0234,97.800, 0, 0, COLOR_WHITE},
- {"Yakuza", 2597.8818,1900.0507,11.0234,181.469, 0, 0, COLOR_WHITE},
- {"Triaden", 1456.9742,2773.5061,10.8203,267.550, 0, 0, COLOR_WHITE}
- };
- new bInfo[][buildingsEnum] = {
- {1199.3927,-918.2098,43.1218,363.1013,-75.3195,1001.5078,10,"FDBURG"},//BSN
- {1368.9250,-1279.5109,13.5469,315.8116,-143.6637,999.6016,7,"AMMUN3"}//Ammu
- };
- new cInfo[50][carEnum];
- new ahInfo[][autohausEnum] = {
- {2118.7808,-1155.9178,23.7311,347.9237},//id: 0 1. Bikeshop
- {737.3469,-1346.7604,13.2856,270.4983}//id: 1 1. Autohaus
- };
- new ahCars[][autohauscarEnum] = {
- {522,2135.6465,-1126.0907,25.0781,84.3836,50000,0},
- {462,2135.0784,-1128.7626,25.2092,83.5603,30000,0},
- {461,2134.7361,-1130.8929,25.2581,83.0844,35000,0},
- {480,736.5851,-1333.7145,13.3169,180.3495,15000,1}
- };
- new sekunden_timer;
- new autosOhneMotor[] = {509,510,481};
- new Text:uhrzeitLabel;
- //Forwards
- forward OnUserCheck(playerid);
- forward OnPasswordResponse(playerid);
- forward carSavedToDB(carid);
- forward OnPlayerCarsLoad(playerid);
- forward sekunde();
- forward unfreezePlayer(playerid);
- main()
- {
- }
- public OnGameModeInit()
- {
- SetGameModeText("German - Reallife 0.3z");
- AddPlayerClass(59,1715.0729,-1911.8328,13.5665,2.7170,WEAPON_DEAGLE,500,0,0,0,0);
- DisableInteriorEnterExits();
- ManualVehicleEngineAndLights();
- EnableStuntBonusForAll(0);
- //Gebäude laden
- for(new i=0; i<sizeof(bInfo); i++)
- {
- CreatePickup(1239,1,bInfo[i][b_x],bInfo[i][b_y],bInfo[i][b_z],0);
- Create3DTextLabel("Zum Betreten /enter",COLOR_RED,bInfo[i][b_x],bInfo[i][b_y],bInfo[i][b_z],10,0,1);
- }
- //Autos erstellen
- AddStaticVehicle(522,1724.8495,-1924.4739,13.1409,2.9441,3,8); // nrg
- //Autohäuser laden
- for(new i=0; i<sizeof(ahCars); i++)
- {
- ahCars[i][id_x]=AddStaticVehicle(ahCars[i][model],ahCars[i][c_x],ahCars[i][c_y],ahCars[i][c_z],ahCars[i][c_r],-1,-1);
- }
- //Textdraws
- uhrzeitLabel = TextDrawCreate(553.000000, 34.000000, "00:00");
- TextDrawBackgroundColor(uhrzeitLabel, 255);
- TextDrawFont(uhrzeitLabel, 2);
- TextDrawLetterSize(uhrzeitLabel, 0.500000, 1.200000);
- TextDrawColor(uhrzeitLabel, -16776961);
- TextDrawSetOutline(uhrzeitLabel, 0);
- TextDrawSetProportional(uhrzeitLabel, 1);
- TextDrawSetShadow(uhrzeitLabel, 1);
- //Timer
- sekunden_timer = SetTimer("sekunde",1000,true);
- //MySQL
- dbhandle = mysql_connect(db_host,db_user,db_db,db_pass);
- return 1;
- }
- public OnGameModeExit()
- {
- mysql_close(dbhandle);
- return 1;
- }
- public sekunde()
- {
- new string[128];
- for(new i=0; i<MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i))continue;
- if(!IsPlayerInAnyVehicle(i))continue;
- format(string,sizeof(string),"%ikm/h", getPlayerSpeed(i));
- GameTextForPlayer(i, string, 1000,3);
- }
- new hour, minute, second;
- gettime(hour, minute, second);
- format(string,sizeof(string),"%02d:%02d",hour, minute);
- TextDrawSetString(uhrzeitLabel, string);
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerPos(playerid,1715.0729,-1911.8328,13.5665);
- SetPlayerCameraPos(playerid, 1714.8402,-1908.1653,13.5666);
- SetPlayerCameraLookAt(playerid, 1715.0729,-1911.8328,13.5665);
- SetPlayerFacingAngle(playerid,2.7170);
- return 1;
- }
- public OnUserCheck(playerid)
- {
- new num_rows,num_fields;
- cache_get_data(num_rows,num_fields,dbhandle);
- if(num_rows==0)
- {
- //Registrierung
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registierung","Es wurde kein Account unter diesem Namen gefunden bitte Registriere dich:","OK","Abbrechen");
- }
- else
- {
- //Login
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","German Reallife\nDein Account wurde in der Datenbank gefunden bitte Logge dich ein:","OK","Abbrechen");
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- new nachricht[128];
- format(nachricht,sizeof(nachricht),"Du bist mit der ID %i verbunden.",playerid);
- SendClientMessage(playerid,COLOR_RED,nachricht);
- //Login und Register
- new name[MAX_PLAYER_NAME],query[128];
- GetPlayerName(playerid,name,sizeof(name));
- format(query,sizeof(query),"SELECT id FROM user WHERE username='%s'",name);
- mysql_function_query(dbhandle,query,true,"OnUserCheck","i",playerid);
- //Texdraws anzeigen
- TextDrawShowForPlayer(playerid, uhrzeitLabel);
- //Spielefarbe setzten
- SetPlayerColor(playerid, COLOR_WHITE);
- return 1;
- }
- savePlayer(playerid)
- {
- if(sInfo[playerid][eingeloggt]==0)return 1;
- //Speichern level,money
- new query[456];
- format(query,sizeof(query),"UPDATE user SET level='%i',money='%i',alevel='%i',fraktion='%i',rang='%i',hitsound='%i',spawnchange='%i' WHERE id='%i'",sInfo[playerid][level],
- GetPlayerMoney(playerid),sInfo[playerid][alevel],sInfo[playerid][fraktion],sInfo[playerid][rang],sInfo[playerid][spawnchange],GetPVarInt(playerid, "Hitsound"),sInfo[playerid][db_id]);
- mysql_function_query(dbhandle,query,false,"","");
- return 1;
- }
- resetPlayer(playerid)
- {
- for(new i=0; i<sizeof(sInfo[]); i++)
- {
- sInfo[playerid][playerInfo:i]=0;
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- for(new i=0; i<sizeof(cInfo); i++)
- {
- if(cInfo[i][id_x]==0)continue;
- if(cInfo[i][besitzer]!=sInfo[playerid][db_id])continue;
- GetVehiclePos(cInfo[i][id_x],cInfo[i][c_x],cInfo[i][c_y],cInfo[i][c_z]);
- GetVehicleZAngle(cInfo[i][id_x],cInfo[i][c_r]);
- new query[256];
- format(query,sizeof(query),"UPDATE autos SET x='%f',y='%f',z='%f',r='%f' WHERE id='%i'",cInfo[i][c_x],cInfo[i][c_y],cInfo[i][c_z],cInfo[i][c_r],cInfo[i][db_id]);
- mysql_function_query(dbhandle,query,false,"","");
- DestroyVehicle(cInfo[i][id_x]);
- cInfo[i][id_x]=0;
- }
- savePlayer(playerid);
- resetPlayer(playerid);
- return 1;
- }
- isPlayerInFrakt(playerid, f_id){
- if(sInfo[playerid][fraktion]==f_id)return 1;
- return 0;
- }
- public OnPlayerSpawn(playerid)
- {
- if(!isPlayerInFrakt(playerid, 0)){
- if(sInfo[playerid][spawnchange]==1)
- {
- new fID;
- fID = sInfo[playerid][fraktion];
- SetPlayerPos(playerid, fInfo[fID][f_x],fInfo[fID][f_y],fInfo[fID][f_z]);
- SetPlayerFacingAngle(playerid, fInfo[fID][f_r]);
- SetPlayerInterior(playerid, fInfo[fID][f_inter]);
- SetPlayerVirtualWorld(playerid, fInfo[fID][f_world]);
- SetPlayerColor(playerid, fInfo[fID][f_color]);
- }
- }
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- return 1;
- }
- getPlayerSpeed(playerid)
- {
- new Float:x, Float:y, Float:z, Float:rtn;
- if(IsPlayerInAnyVehicle(playerid))
- {
- GetVehicleVelocity(GetPlayerVehicleID(playerid), x, y, z);
- }
- else
- {
- GetPlayerVelocity(playerid, x, y, z);
- }
- //rtn = wurzel(x*x + y*y + z*z);
- rtn = floatsqroot(x*x + y*y + z*z);
- return floatround(rtn * 100 * 1.61);
- }
- public carSavedToDB(carid)
- {
- cInfo[carid][db_id]=cache_insert_id(dbhandle);
- return 1;
- }
- saveCarToDB(playerid,carid)
- {
- new query[128];
- format(query,sizeof(query),"INSERT INTO autos (besitzer,model,x,y,z,r) VALUES ('%i','%i','%f','%f','%f','%f')",sInfo[playerid][db_id],cInfo[carid][model],cInfo[carid][c_x],cInfo[carid][c_y],cInfo[carid][c_z],cInfo[carid][c_r]);
- mysql_function_query(dbhandle,query,true,"carSavedToDB","i",carid);
- return 1;
- }
- createPlayerCar(playerid,modelid,Float:x,Float:y,Float:z,Float:r)
- {
- for(new i=0; i<sizeof(cInfo); i++)
- {
- if(cInfo[i][id_x]!=0)continue;
- cInfo[i][besitzer]=sInfo[playerid][db_id];
- cInfo[i][c_x]=x;
- cInfo[i][c_y]=y;
- cInfo[i][c_z]=z;
- cInfo[i][c_r]=r;
- cInfo[i][model]=modelid;
- cInfo[i][id_x] = CreateVehicle(modelid,x,y,z,r,-1,-1,-1);
- new string[128];
- format(string,sizeof(string),"Das Auto cInfo[%i] wurde erstellt.",i);
- SendClientMessageToAll(COLOR_RED,string);
- saveCarToDB(playerid,i);
- return 1;
- }
- return 1;
- }
- public unfreezePlayer(playerid)
- {
- TogglePlayerControllable(playerid,true);
- return 1;
- }
- public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
- {
- if((playerid != INVALID_PLAYER_ID && issuerid != playerid) && GetPVarInt(playerid, "Hitsound") == 1) {
- PlayerPlaySound(issuerid, 17802, 0.0, 0.0, 0.0);
- }
- return 1;
- }
- getPlayerName(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, sizeof(name));
- return name;
- }
- //Befehle
- ocmd:spawnchange(playerid, params[])
- {
- if(isPlayerInFrakt(playerid, 0))return SendClientMessage(
- playerid, COLOR_WHITE, "Du bist in keiner Fraktion.");
- if(sInfo[playerid][spawnchange]==0)
- {
- sInfo[playerid][spawnchange]=1;
- }
- if(sInfo[playerid][spawnchange]==1)
- {
- sInfo[playerid][spawnchange]=0;
- }
- SendClientMessage(playerid,COLOR_WHITE, "Spawn geändert.");
- return 1;
- }
- ocmd:makeleader(playerid, params[])
- {
- if(!isAdmin(playerid, 3))return SendClientMessage(playerid,
- COLOR_WHITE, "Dein Adminrang ist zu niedrig.");
- new pID, fID;
- if(sscanf(params,"ui",pID,fID))return SendClientMessage(playerid,
- COLOR_WHITE, "INFO: /makeleader [playerid] [fraktid]");
- if(fID >= sizeof(fInfo))return SendClientMessage(playerid,
- COLOR_RED, "Fraktion existiert nicht.");
- sInfo[pID][fraktion] = fID;
- sInfo[pID][rang] = 6;
- new string[128];
- format(string,sizeof(string),
- "%s hat dich zum Leader der Fraktion %s gemacht",
- getPlayerName(playerid), fInfo[fID][f_name]);
- SendClientMessage(pID, COLOR_WHITE, string);
- SendClientMessage(playerid, COLOR_WHITE, "Du hast einen Spieler zum Leader gemacht.");
- savePlayer(pID);
- return 1;
- }
- ocmd:hitsound(playerid)
- {
- if(GetPVarInt(playerid, "Hitsound") == 0) {
- SendClientMessage(playerid, -1, "Du hast den Hitsound angeschalten!");
- SetPVarInt(playerid, "Hitsound", 1);
- }
- else {
- SendClientMessage(playerid, -1, "Du hast den Hitsound ausgeschaltet!");
- SetPVarInt(playerid, "Hitsound", 0);
- }
- return 1;
- }
- ocmd:freezeme(playerid,params[])
- {
- TogglePlayerControllable(playerid,false);
- SetTimerEx("unfreezePlayer",3000,false,"i",playerid);
- return 1;
- }
- ocmd:stoptimer(playerid,params[])
- {
- KillTimer(sekunden_timer);
- return 1;
- }
- ocmd:licht(playerid,params[])
- {
- if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)return
- SendClientMessage(playerid,COLOR_RED,"Du bist nicht der Fahrer eines Fahrzeugs.");
- new vID=GetPlayerVehicleID(playerid),
- tmp_engine,
- tmp_lights,
- tmp_alarm,
- tmp_doors,
- tmp_bonnet,
- tmp_boot,
- tmp_objective;
- //Motor an/ausschalten
- GetVehicleParamsEx(vID, tmp_engine, tmp_lights, tmp_alarm, tmp_doors, tmp_bonnet, tmp_boot, tmp_objective);
- if(tmp_lights==1){
- tmp_lights = 0;
- }else{
- tmp_lights = 1;
- }
- SetVehicleParamsEx(vID, tmp_engine, tmp_lights, tmp_alarm, tmp_doors, tmp_bonnet, tmp_boot, tmp_objective);
- return 1;
- }
- ocmd:motor(playerid,params[])
- {
- if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)return
- SendClientMessage(playerid,COLOR_RED,"Du bist nicht der Fahrer eines Fahrzeugs.");
- new vID=GetPlayerVehicleID(playerid),
- tmp_engine,
- tmp_lights,
- tmp_alarm,
- tmp_doors,
- tmp_bonnet,
- tmp_boot,
- tmp_objective;
- //Motor an/ausschalten
- GetVehicleParamsEx(vID, tmp_engine, tmp_lights, tmp_alarm, tmp_doors, tmp_bonnet, tmp_boot, tmp_objective);
- if(tmp_engine==1){
- tmp_engine = 0;
- }else{
- tmp_engine = 1;
- }
- SetVehicleParamsEx(vID, tmp_engine, tmp_lights, tmp_alarm, tmp_doors, tmp_bonnet, tmp_boot, tmp_objective);
- return 1;
- }
- ocmd:deletecar(playerid,params[])
- {
- if(!isAdmin(playerid,2))return SendClientMessage(playerid,COLOR_RED,"Dein Adminrang ist zu niedrig.");
- if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,COLOR_RED,"Du bist in keinem Fahrzeug(?)");
- DestroyVehicle(GetPlayerVehicleID(playerid));
- return 1;
- }
- ocmd:cveh(playerid,params[])
- {
- if(!isAdmin(playerid,2))return SendClientMessage(playerid,COLOR_RED,"Dein Adminrang ist zu niedrig.");
- new mID,pID;
- if(sscanf(params,"ui",pID,mID))return SendClientMessage(playerid,COLOR_RED,"INFO: /cveh [id] [model]");
- if(mID<400||mID>611)return SendClientMessage(playerid,COLOR_RED,"Ungültiges Model.");
- new Float:xc,Float:yc,Float:zc,Float:rc;
- GetPlayerPos(pID,xc,yc,zc);
- GetPlayerFacingAngle(pID,rc);
- createPlayerCar(pID,mID,xc,yc,zc,rc);
- return 1;
- }
- ocmd:exit(playerid,params[])
- {
- for(new i=0; i<sizeof(bInfo); i++)
- {
- if(GetPlayerVirtualWorld(playerid)!=i)continue;
- if(!IsPlayerInRangeOfPoint(playerid,2,bInfo[i][b_ix],bInfo[i][b_iy],bInfo[i][b_iz]))continue;
- SetPlayerPos(playerid,bInfo[i][b_x],bInfo[i][b_y],bInfo[i][b_z]);
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorld(playerid,0);
- return 1;
- }
- return 1;
- }
- ocmd:enter(playerid,params[])
- {
- for(new i=0; i<sizeof(bInfo); i++)
- {
- if(!IsPlayerInRangeOfPoint(playerid,2,bInfo[i][b_x],bInfo[i][b_y],bInfo[i][b_z]))continue;
- SetPlayerPos(playerid,bInfo[i][b_ix],bInfo[i][b_iy],bInfo[i][b_iz]);
- SetPlayerInterior(playerid,bInfo[i][b_interior]);
- SetPlayerVirtualWorld(playerid,i);
- SetPlayerShopName(playerid,bInfo[i][b_shopname]);
- return 1;
- }
- return 1;
- }
- ocmd:selbstmord(playerid,params[])
- {
- SetPlayerHealth(playerid,-100);
- SendClientMessage(playerid,COLOR_RED,"Du hast Selbstmord begangen");
- return 1;
- }
- ocmd:makeadmin(playerid,params[])
- {
- if(!isAdmin(playerid,3))return SendClientMessage(playerid,COLOR_RED,"Dein Adminrang ist zu niedrig");
- new pID,a_level;
- if(sscanf(params,"ui",pID,a_level))return SendClientMessage(playerid,COLOR_RED,"INFO: /makeadmin [spielerid] [adminrank]");
- sInfo[pID][alevel]=a_level;
- savePlayer(pID);
- SendClientMessage(pID,COLOR_RED,"Dein Adminrang wurde geändert.");
- SendClientMessage(playerid,COLOR_RED,"Du hast den Adminrang geändert.");
- return 1;
- }
- isAdmin(playerid,a_level)
- {
- if(sInfo[playerid][alevel]>=a_level)return 1;
- return 0;
- }
- ocmd:w(playerid,params[])
- {
- if(!isAdmin(playerid,1))return SendClientMessage(playerid,COLOR_RED,"Dein Adminrang ist zu niedrig");
- new pID,text[128];
- if(sscanf(params,"us[128]",pID,text))return SendClientMessage(playerid,COLOR_RED,"INFO: /w(whisper) [playerid] [text]");
- SendClientMessage(pID,COLOR_RED,text);
- return 1;
- }
- ocmd:restart(playerid,params[])
- {
- if(!isAdmin(playerid,1))return SendClientMessage(playerid,COLOR_RED,"Dein Adminrang ist zu niedrig");
- SendRconCommand("gmx");
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- return 0;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- if(newstate==PLAYER_STATE_DRIVER)
- {
- new vID=GetPlayerVehicleID(playerid);
- new vModel=GetVehicleModel(vID);
- for(new i=0; i<sizeof(autosOhneMotor); i++)
- {
- if(autosOhneMotor[i]!=vModel)continue;
- new tmp_engine,
- tmp_lights,
- tmp_alarm,
- tmp_doors,
- tmp_bonnet,
- tmp_boot,
- tmp_objective;
- //Motor an/ausschalten
- GetVehicleParamsEx(vID, tmp_engine, tmp_lights, tmp_alarm, tmp_doors, tmp_bonnet, tmp_boot, tmp_objective);
- SetVehicleParamsEx(vID, 1, tmp_lights, tmp_alarm, tmp_doors, tmp_bonnet, tmp_boot, tmp_objective);
- }
- for(new i=0; i<sizeof(ahCars); i++)
- {
- if(ahCars[i][id_x]!=vID)continue;
- //Verkaufsprozess
- SetPVarInt(playerid,"buyCarID",i);
- new string[256];
- format(string,sizeof(string),"Möchten sie das Fahrzeug für %i$ kaufen?",ahCars[i][c_preis]);
- ShowPlayerDialog(playerid,DIALOG_AUTOHAUS,DIALOG_STYLE_MSGBOX,"Kauf bestaetigen",string,"Ja","Nein");
- break;
- }
- return 1;
- }
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerEnterRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnRconCommand(cmd[])
- {
- return 1;
- }
- public OnPlayerRequestSpawn(playerid)
- {
- return 1;
- }
- public OnObjectMoved(objectid)
- {
- return 1;
- }
- public OnPlayerObjectMoved(playerid, objectid)
- {
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- return 1;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- return 1;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- return 1;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- return 1;
- }
- public OnPlayerExitedMenu(playerid)
- {
- return 1;
- }
- public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
- {
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if(newkeys & KEY_YES)
- {
- //Enterbefehl
- ocmd_enter(playerid,"");
- return 1;
- }
- if(newkeys & KEY_NO)
- {
- //Exitbefehl
- ocmd_exit(playerid,"");
- return 1;
- }
- return 1;
- }
- public OnRconLoginAttempt(ip[], password[], success)
- {
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- return 1;
- }
- public OnPlayerStreamIn(playerid, forplayerid)
- {
- return 1;
- }
- public OnPlayerStreamOut(playerid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamIn(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamOut(vehicleid, forplayerid)
- {
- return 1;
- }
- SetPlayerMoney(playerid,money)
- {
- ResetPlayerMoney(playerid);
- GivePlayerMoney(playerid,money);
- return 1;
- }
- getFreeCarID()
- {
- for(new i=0; i<sizeof(cInfo); i++)
- {
- if(cInfo[i][id_x]==0)return i;
- }
- return 0;
- }
- public OnPlayerCarsLoad(playerid)
- {
- new num_fields,num_rows;
- cache_get_data(num_rows,num_fields,dbhandle);
- if(!num_rows)return 1;
- for(new i=0; i<num_rows; i++)
- {
- new id=getFreeCarID();
- cInfo[id][model]=cache_get_field_content_int(i,"model",dbhandle);
- cInfo[id][besitzer]=cache_get_field_content_int(i,"besitzer",dbhandle);
- cInfo[id][c_x]=cache_get_field_content_float(i,"x",dbhandle);
- cInfo[id][c_y]=cache_get_field_content_float(i,"y",dbhandle);
- cInfo[id][c_z]=cache_get_field_content_float(i,"z",dbhandle);
- cInfo[id][c_r]=cache_get_field_content_float(i,"r",dbhandle);
- cInfo[id][db_id]=cache_get_field_content_int(i,"id",dbhandle);
- cInfo[id][id_x]=CreateVehicle(cInfo[id][model],cInfo[id][c_x],cInfo[id][c_y],cInfo[id][c_z],cInfo[id][c_r],-1,-1,-1);
- }
- return 1;
- }
- loadPlayerCars(playerid)
- {
- new query[128];
- format(query,sizeof(query),"SELECT * FROM autos WHERE besitzer='%i'",sInfo[playerid][db_id]);
- mysql_function_query(dbhandle,query,true,"OnPlayerCarsLoad","i",playerid);
- return 1;
- }
- public OnPasswordResponse(playerid)
- {
- new num_fields,num_rows;
- cache_get_data(num_rows,num_fields,dbhandle);
- if(num_rows==1)
- {
- //Passwort richtig //Spieler laden
- sInfo[playerid][eingeloggt] = 1;
- sInfo[playerid][level] = cache_get_field_content_int(0,"level",dbhandle);
- SetPlayerScore(playerid,sInfo[playerid][level]);
- sInfo[playerid][db_id] = cache_get_field_content_int(0,"id",dbhandle);
- SetPlayerMoney(playerid,cache_get_field_content_int(0,"money",dbhandle));
- sInfo[playerid][alevel] = cache_get_field_content_int(0,"alevel",dbhandle);
- sInfo[playerid][fraktion] = cache_get_field_content_int(0,"fraktion",dbhandle);
- sInfo[playerid][rang] = cache_get_field_content_int(0,"rang",dbhandle);
- sInfo[playerid][spawnchange] = cache_get_field_content_int(0,"spawnchange",dbhandle);
- SetPVarInt(playerid, "Hitsound", cache_get_field_content_int(0,"hitsound",dbhandle));
- loadPlayerCars(playerid);
- }
- else
- {
- //Passwort falsch
- SendClientMessage(playerid,COLOR_RED,"Das eingegebene Passwort ist falsch.");
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","German Reallife\nDein Account wurde in der Datenbank gefunden bitte Logge dich ein:","OK","Abbrechen");
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid==DIALOG_AUTOHAUS)
- {
- if(response)
- {
- //Auto/Bike verkauf
- new id=GetPVarInt(playerid,"buyCarID");
- if(GetPlayerMoney(playerid)<ahCars[id][c_preis])
- {
- SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Geld.");
- RemovePlayerFromVehicle(playerid);
- return 1;
- }
- GivePlayerMoney(playerid,-ahCars[id][c_preis]);
- createPlayerCar(playerid,ahCars[id][model],ahInfo[ahCars[id][ah_id]][s_x],ahInfo[ahCars[id][ah_id]][s_y],ahInfo[ahCars[id][ah_id]][s_z],ahInfo[ahCars[id][ah_id]][s_r]);
- SendClientMessage(playerid,COLOR_RED,"Herlichen Glückwünsch zum neuen Immobil");
- RemovePlayerFromVehicle(playerid);
- }
- else
- {
- RemovePlayerFromVehicle(playerid);
- SendClientMessage(playerid,COLOR_RED,"Dann nicht");
- }
- return 1;
- }
- if(dialogid==DIALOG_LOGIN)
- {
- if(response)
- {
- new name[MAX_PLAYER_NAME],query[128],passwort[35];
- GetPlayerName(playerid,name,sizeof(name));
- if(strlen(inputtext)>0)
- {
- mysql_escape_string(inputtext,passwort,dbhandle);
- format(query,sizeof(query),"SELECT * FROM user WHERE username='%s' AND password=MD5('%s')",name,passwort);
- mysql_function_query(dbhandle,query,true,"OnPasswordResponse","i",playerid);
- }
- else
- {
- //Keine Eingabe
- SendClientMessage(playerid,COLOR_RED,"Gibt bitte dein Passwort ein.");
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","German Reallife\nDein Account wurde in der Datenbank gefunden bitte Logge dich ein:","OK","Abbrechen");
- }
- }
- else
- {
- Kick(playerid);
- }
- return 1;
- }
- if(dialogid==DIALOG_REGISTER)
- {
- if(response)
- {
- new name[MAX_PLAYER_NAME],query[128],passwort[35];
- GetPlayerName(playerid,name,sizeof(name));
- if(strlen(inputtext)>3)
- {
- //Registierungsfunktion
- mysql_escape_string(inputtext,passwort,dbhandle);
- format(query,sizeof(query),"INSERT INTO user (username,password) VALUES ('%s',MD5('%s')) ",name,passwort);
- mysql_function_query(dbhandle,query,false,"","");
- }
- else
- {
- //Kleiner als 4 Zeichen
- SendClientMessage(playerid,COLOR_RED,"Dein Password muss mindestens 4 Zeichen lang sein");
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registierung","Es wurde kein Account unter diesem Namen gefunden bitte Registriere dich:","OK","Abbrechen");
- }
- }
- else
- {
- Kick(playerid);
- }
- return 1;
- }
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment