Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // created by Logan Adams 2012
- // © by Logan Adams 2012
- // Info: Es ist verboten die Credits zu löschen
- // Wer die Credits löscht wird mit einem schlechten Gewissen bestraft!
- //Includes
- #include <a_samp>
- #include <Dini>
- #include <MD5>
- #include <Ocmd>
- #include <streamer>
- #include <a_mysql>
- #include <sscanf2>
- #include <rft_mysql>
- //Farben
- #define ROT 0xF50000FF
- #define BLAU 0x1400FFFF
- #define GELB 0xFFFF00FF
- #define GRÜN 0x19FF00FF
- #define TÜRKIS 0x00FFFFFF
- #define SCHWARZ 0x000000FF
- #define WEISS 0xFEFEFEFF
- #define GOLD 0xFFC800FF
- #define PINK 0xFF0055FF
- #define LILA 0xC800FFFF
- #define GRAU 0xAAAAAAFF
- //Dialoge und andere Defines
- #define DIALOG_REGISTER 1
- #define DIALOG_LOGIN 2
- #define TACHOTIMER 1000
- #define MAX_SERVER_NAMEN 3
- #define DIALOG_RADIO 4
- #define DIALOG_FIGHT 5
- //Variablen
- new Float:X1[MAX_PLAYERS],Float:Y1[MAX_PLAYERS],Float:Z1[MAX_PLAYERS];
- new Float:X2[MAX_PLAYERS],Float:Y2[MAX_PLAYERS],Float:Z2[MAX_PLAYERS];
- new SN[MAX_SERVER_NAMEN][64] = {{"~g~Mein Tutorial~r~ Server"},{"~y~Server noch im~b~ Scriptaufbau..."},{"~w~Besucht McBastard112's~r~ YouTube Kanal!"}};
- new Text:ServerNamen;
- new engine,lights,alarm,doors,bonnet,boot,objective;
- new bool:Motor[MAX_VEHICLES] = false;
- new zaehler;
- forward ServerNamenTimer();
- new pdgate;
- new PingWarns[MAX_PLAYERS];
- forward pdtortimer();
- forward CheckPing();
- new Text:Uhr;
- forward UpdateUhr();
- forward Banntimer();
- new Text:Tacho[MAX_PLAYERS];
- forward UpdateTacho();
- new Aond[MAX_PLAYERS] = 0;
- new spawnskins[30]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30};
- new Frakcar[1];
- new Fahrzeugname[][] =
- {
- "Landstalker",
- "Bravura",
- "Buffalo",
- "Linerunner",
- "Pereniel",
- "Sentinel",
- "Dumper",
- "Firetruck",
- "Trashmaster",
- "Stretch",
- "Manana",
- "Infernus",
- "Voodoo",
- "Pony",
- "Mule",
- "Cheetah",
- "Ambulance",
- "Leviathan",
- "Moonbeam",
- "Esperanto",
- "Taxi",
- "Washington",
- "Bobcat",
- "Mr Whoopee",
- "BF Injection",
- "Hunter",
- "Premier",
- "Enforcer",
- "Securicar",
- "Banshee",
- "Predator",
- "Bus",
- "Rhino",
- "Barracks",
- "Hotknife",
- "Trailer",
- "Previon",
- "Coach",
- "Cabbie",
- "Stallion",
- "Rumpo",
- "RC Bandit",
- "Romero",
- "Packer",
- "Monster Truck",
- "Admiral",
- "Squalo",
- "Seasparrow",
- "Pizzaboy",
- "Tram",
- "Trailer",
- "Turismo",
- "Speeder",
- "Reefer",
- "Tropic",
- "Flatbed",
- "Yankee",
- "Caddy",
- "Solair",
- "RC Van",
- "Skimmer",
- "PCJ-600",
- "Roller",
- "Freeway",
- "RC Baron",
- "RC Raider",
- "Glendale",
- "Oceanic",
- "Sanchez",
- "Sparrow",
- "Patriot",
- "Quad",
- "Coastguard",
- "Dinghy",
- "Hermes",
- "Sabre",
- "Rustler",
- "ZR-350",
- "Walton",
- "Regina",
- "Comet",
- "Fahrrad",
- "Burrito",
- "Camper",
- "Marquis",
- "Baggage",
- "Dozer",
- "Maverick",
- "News Chopper",
- "Rancher",
- "FBI Rancher",
- "Virgo",
- "Greenwood",
- "Jetmax",
- "Hotring",
- "Sandking",
- "Blista Compact",
- "Police Maverick",
- "Boxville",
- "Benson",
- "Mesa",
- "RC Goblin",
- "Hotring Racer",
- "Hotring Racer",
- "Bloodring Banger",
- "Rancher",
- "Super GT",
- "Elegant",
- "Journey",
- "Bike",
- "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",
- "Traktor",
- "Combine",
- "Feltzer",
- "Remington",
- "Slamvan",
- "Blade",
- "Freight",
- "Streak",
- "Vortex",
- "Vincent",
- "Bullet",
- "Clover",
- "Sadler",
- "Firetruck",
- "Hustler",
- "Intruder",
- "Primo",
- "Cargobob",
- "Tampa",
- "Sunrise",
- "Merit",
- "Utility",
- "Nevada",
- "Yosemite",
- "Windsor",
- "Monster Truck",
- "Monster Truck",
- "Uranus",
- "Jester",
- "Sultan",
- "Stratum",
- "Elegy",
- "Raindance",
- "RC Tiger",
- "Flash",
- "Tahoma",
- "Savanna",
- "Bandito",
- "Freight",
- "Trailer",
- "Kart",
- "Mower",
- "Duneride",
- "Sweeper",
- "Broadway",
- "Tornado",
- "AT-400",
- "DFT-30",
- "Huntley",
- "Stafford",
- "BF-400",
- "Newsvan",
- "Tug",
- "Trailer",
- "Emperor",
- "Wayfarer",
- "Euros",
- "Hotdog",
- "Club",
- "Trailer",
- "Trailer",
- "Andromada",
- "Dodo",
- "RC Cam",
- "Launch",
- "Polizeiwagen",
- "Polizeiwagen",
- "Polizeiwagen",
- "Cop Ranger",
- "Picador",
- "SWAT Van",
- "Alpha",
- "Phoenix",
- "Glendale",
- "Sadler",
- "Luggage Trailer",
- "Luggage Trailer",
- "Stair Trailer",
- "Boxville",
- "Farm Plow",
- "Utility Trailer"
- };
- enum SpielerDaten
- {
- pName[MAX_PLAYER_NAME],
- pLevel,
- pGeld,
- Float:pHealth,
- pBanned,
- pFraktion,
- pAdminlevel
- }
- //Enum Define
- new SpielerInfo[MAX_PLAYERS][SpielerDaten];
- main()
- {
- print("\n----------------------------------");
- print(" Tutorial Gamemode");
- print("----------------------------------\n");
- }
- public OnGameModeInit()
- {
- ManualVehicleEngineAndLights();
- for(new i= 0;i<MAX_VEHICLES;i++)
- {
- GetVehicleParamsEx(i,engine,lights,alarm,doors,bonnet,boot,objective);
- SetVehicleParamsEx(i,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
- Motor[i] = false;
- }
- for( new x = 0;x<GetMaxPlayers();x++)
- {
- Tacho[x] = TextDrawCreate(228.0000, 338.0000,"Blub");
- TextDrawLetterSize(Tacho[x],0.4,1.1);
- TextDrawFont(Tacho[x],1);
- TextDrawSetShadow(Tacho[x],2);
- TextDrawSetOutline(Tacho[x],1);
- TextDrawUseBox(Tacho[x],1);
- TextDrawTextSize(Tacho[x],441.0000,727.0000);
- }
- SetTimer("ServerNamenTimer",10000,1);
- SetTimer("UpdateTacho",TACHOTIMER,1);
- SetTimer("CheckPing",4000,true);
- printf("Es wurden %d Objekte erfolgreich gestreamt.",CountDynamicObjects());
- pdgate = CreateDynamicObject(975, 1548.900024, -1622.400024, 14.100000, 0.000000, 0.000000, 265.250000);
- SetGameModeText("Tutorial Gamemode");
- AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
- AddStaticVehicleEx(4,1958.3783, 1343.1572, 15.3746,0,1,1,1);
- //Spawn-Beschriftung
- Create3DTextLabel("Willkommen am Noobspawn",GELB,1249.5454,-906.6514,46.6016,10.0,0);
- Uhr = TextDrawCreate(545.000000,21.000000,"Hier steht nichts");
- TextDrawBackgroundColor(Uhr,255);
- TextDrawFont(Uhr,3);
- TextDrawLetterSize(Uhr,0.52,2.29999);
- TextDrawColor(Uhr,-1);
- TextDrawSetOutline(Uhr,0);
- TextDrawSetProportional(Uhr,1);
- TextDrawSetShadow(Uhr,1);
- SetTimer("UpdateUhr",500,1);
- ServerNamen = TextDrawCreate(251.0000,6.0000,"Logan's Testserver");
- TextDrawBackgroundColor(ServerNamen,WEISS);
- TextDrawSetShadow(ServerNamen,1);
- TextDrawLetterSize(ServerNamen,0.5,1.2);
- SetTimer("ServerNamenTimer",15000,1);
- ServerNamen = TextDrawCreate(251.0000,6.0000,"Testserver");
- TextDrawBackgroundColor(ServerNamen,WEISS);
- TextDrawSetShadow(ServerNamen,1);
- TextDrawLetterSize(ServerNamen,0.5,1.2);
- Frakcar[0] = AddStaticVehicle(596,1238.2861,-890.9871,42.6031,96.0572,0,1);
- CreateDynamicPickup(1239,1,1481.1127,-1772.1567,18.7958,-1);
- CreateDynamic3DTextLabel("Stadthalle\nEingang",ROT,1481.1127,-1772.1567,18.7958,20.0,-1,0);
- CreateDynamicPickup(1239,1,388.8416,173.7418,1008.3828,-1);
- CreateDynamic3DTextLabel("Stadthalle\nAusgang",ROT,388.8416,173.7418,1008.3828,-1,0);
- DisableInteriorEnterExits();
- UsePlayerPedAnims();
- r_mysql_Connect_To_Database("localhost","root","","gta");
- return 1;
- }
- public OnGameModeExit()
- {
- SaveAllCurrentOnlinePlayers();
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetSpawnInfo(playerid,0,spawnskins[random(sizeof(spawnskins))],1958.3783, 1343.1572, 15.3746,0,0,0,0,0,0,0);
- SpawnPlayer(playerid);
- return 1;
- }
- ocmd:killmyself(playerid,params[])
- {
- #pragma unused params
- SetPlayerHealth(playerid,0);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- TextDrawShowForAll(ServerNamen);
- TextDrawShowForAll(Uhr);
- SetPlayerVirtualWorld(playerid,0);
- if(IsPlayerNPC(playerid))return 1;
- if(mysql_CheckAccount(playerid) == 1)
- {
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login Vorgang","Herzlich Willkommen zurück auf meinem Server!\nGib bitte unten dein Passwort ein","Login","Abbrechen");
- }
- else if(mysql_CheckAccount(playerid) == 0)
- {
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Register Vorgang","Herzlich Willkommen.\nBevor du loslegen kannst musst du dich zuerst registrieren.\nGib unten dein gewünschtes Passwort an!","Register","Abbrechen");
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- TextDrawHideForAll(ServerNamen);
- TextDrawHideForAll(Uhr);
- if(GetPVarInt(playerid,"eingeloggt") == 1)
- {
- SpielerSpeichern(playerid);
- DeletePVar(playerid,"eingeloggt");
- }
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- SetPlayerPos(playerid,1249.5454,-906.6514,46.6016);
- SetPlayerFacingAngle(playerid,187.7627);
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- StopAudioStreamForPlayer(playerid);
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
- SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
- Motor[vehicleid] = false;
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- new string[128];
- format(string,128,"%s sagt: %s",SpielerName(playerid),text);
- for(new i = 0;i<GetMaxPlayers();i ++)
- {
- new Float:X,Float:Y,Float:Z;
- GetPlayerPos(playerid,X,Y,Z);
- if(IsPlayerInRangeOfPoint(i,7.0,X,Y,Z))
- {
- SendClientMessage(i,WEISS,string);
- return 0;
- }
- }
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- return 0;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- SendClientMessage(playerid,GRÜN,"Info: Mit /radio kannst du das Radio anschalten");
- if(GetVehicleModel(vehicleid) == 509 || GetVehicleModel(vehicleid) == 481 || GetVehicleModel(vehicleid) == 510)
- {
- GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
- SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
- }
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- StopAudioStreamForPlayer(playerid);
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- if(newstate == PLAYER_STATE_DRIVER)
- {
- for(new i = 0;i< sizeof(Frakcar);i++)
- {
- if(GetPlayerVehicleID(playerid) == Frakcar[i])
- {
- if(SpielerInfo[playerid][pFraktion] != 1)
- {
- RemovePlayerFromVehicle(playerid);
- SendClientMessage(playerid,ROT,"Du bist nicht in der richtigen Fraktion");
- }
- }
- }
- }
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- DisablePlayerCheckpoint(playerid);
- DisablePlayerRaceCheckpoint(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_SECONDARY_ATTACK)
- {
- if(IsPlayerInRangeOfPoint(playerid,5,1481.1127,-1772.1567,18.7958)) // Stadthallen Eingang in LS
- {
- SetPlayerInterior(playerid,3);
- SetPlayerPos(playerid,381.5300,173.8850,1008.3828);
- SetPlayerFacingAngle(playerid,88.6742);
- SetCameraBehindPlayer(playerid);
- }
- if(IsPlayerInRangeOfPoint(playerid,5,388.8416,173.7418,1008.3828))
- {
- SetPlayerInterior(playerid,0);
- SetPlayerPos(playerid,1481.4847,-1767.7715,18.7958);
- SetPlayerFacingAngle(playerid,0.3344);
- SetCameraBehindPlayer(playerid);
- }
- }
- 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;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == DIALOG_LOGIN)
- {
- if(response == 0)
- {
- SendClientMessage(playerid,ROT,"Du hast den Login Vorgang abgebrochen und wirst deshalb nun gekickt!");
- Kick(playerid);
- }
- if(response == 1)
- {
- if(!strlen(inputtext))
- {
- SendClientMessage(playerid,ROT,"Du musst auch ein Passwort angeben!");
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Gib unten dein korrektes Passwort ein!","Login","Abbrechen");
- return 1;
- }
- else if(!strcmp(inputtext,mysql_ReturnPasswort(SpielerName(playerid)),true))
- {
- SpielerLaden(playerid);
- SetPVarInt(playerid,"eingeloggt",1);
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das Passwort war leider falsch!\nGib unten dein korrektes Passwort ein!","Login","Abbrechen");
- }
- }
- }
- if(dialogid == DIALOG_REGISTER)
- {
- if(response == 0)
- {
- SendClientMessage(playerid,ROT,"Du hast den Vorgang abgebrochen und wirst gekickt!");
- Kick(playerid);
- return 1;
- }
- if(response == 1)
- {
- if(!strlen(inputtext))
- {
- SendClientMessage(playerid,ROT,"Dein Passwort war nicht lang genug!\nBitte versuche es erneut!");
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Register","Herzlich Willkommen.\n Da dies dein 1.Besuch bei uns ist, musst du dich zuerst registrieren.\nGib bitte unten dein gewünschtes Passwort ein!","Register","Abbrechen");
- return 1;
- }
- else
- {
- CreateAccount(playerid,inputtext); // Erstellen eines Accounts
- SetPVarInt(playerid,"eingeloggt",1);
- return 1;
- }
- }
- }
- switch(dialogid)
- {
- case DIALOG_RADIO:
- {
- if(!response)
- {
- SendClientMessage(playerid,ROT,"Du hast das Radio ausgeschaltet");
- StopAudioStreamForPlayer(playerid);
- }
- switch(listitem)
- {
- case 0:
- {
- PlayAudioStreamForPlayer(playerid,"http://listen.technobase.fm/dsl.asx");
- SendClientMessage(playerid,GRÜN,"Du hörst Technobase.FM");
- }
- case 1:
- {
- PlayAudioStreamForPlayer(playerid,"http://listen.HardBase.FM/aacplus.pls");
- SendClientMessage(playerid,GRÜN,"Du hörst Hardbase.FM");
- }
- case 2:
- {
- PlayAudioStreamForPlayer(playerid,"http://listen.ClubTime.FM/aacplus.pls");
- SendClientMessage(playerid,GRÜN,"Du hörst Clubtime.FM");
- }
- }
- }
- case DIALOG_FIGHT:
- {
- switch(listitem)
- {
- case 0:
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_NORMAL);
- GivePlayerMoney(playerid,-50);
- SendClientMessage(playerid,GRÜN,"Erfolg: Du hast den Fightstyle 'Normal' erlernt");
- }
- case 1:
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_BOXING);
- GivePlayerMoney(playerid,-200);
- SendClientMessage(playerid,GRÜN,"Erfolg: Du hast den Fightstyle 'Boxing' erlernt");
- }
- case 2:
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_KUNGFU);
- GivePlayerMoney(playerid,-250);
- SendClientMessage(playerid,GRÜN,"Erfolg: Du hast den Fightstyle 'Kungfu' erlernt");
- }
- case 3:
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_KNEEHEAD);
- GivePlayerMoney(playerid,-300);
- SendClientMessage(playerid,GRÜN,"Erfolg: Du hast den Fightstyle 'Kneehead' erlernt");
- }
- case 4:
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_GRABKICK);
- GivePlayerMoney(playerid,-400);
- SendClientMessage(playerid,GRÜN,"Erfolg: Du hast den Fightstyle 'Grabkick' erlernt");
- }
- case 5:
- {
- SetPlayerFightingStyle(playerid,FIGHT_STYLE_ELBOW);
- GivePlayerMoney(playerid,-500);
- SendClientMessage(playerid,GRÜN,"Erfolg: Du hast den Fightstyle 'Elbow' erlernt");
- }
- }
- }
- }
- return 0;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- //SpielerName-Stock
- stock SpielerName(playerid)
- {
- new GetName[MAX_PLAYER_NAME];
- GetPlayerName(playerid,GetName,sizeof(GetName));
- return GetName;
- }
- //SpielerLaden-Stock
- stock SpielerLaden(playerid)
- {
- if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
- {
- GetPlayerName(playerid,SpielerInfo[playerid][pName],MAX_PLAYER_NAME);
- if(r_LoadSQLEntrance("accounts","Name",SpielerInfo[playerid][pName]))
- {
- SpielerInfo[playerid][pLevel] = r_mysql_GetInt("Level");
- SpielerInfo[playerid][pHealth] = r_mysql_GetFloat("Health");
- SpielerInfo[playerid][pAdminlevel] = r_mysql_GetInt("Adminlevel");
- SpielerInfo[playerid][pFraktion] = r_mysql_GetInt("Fraktion");
- SpielerInfo[playerid][pGeld] = r_mysql_GetInt("Geld");
- SpielerInfo[playerid][pBanned] = r_mysql_GetInt("Banned");
- GivePlayerMoney(playerid,SpielerInfo[playerid][pGeld]);
- SetPlayerScore(playerid,SpielerInfo[playerid][pLevel]);
- printf("[MySQL]Spielerdaten vom Spieler %s erfolgreich aus der Datenbank geladen[MySQL]",SpielerName(playerid));
- if(SpielerInfo[playerid][pBanned] == 1)
- {
- SendClientMessage(playerid,ROT,"Dieser Spieleraccount wurde von einem Administrator gebannt.");
- SendClientMessage(playerid,ROT,"Du kannst nicht mehr mit diesem Account spielen.");
- SendClientMessage(playerid,ROT,"Du darfst dir auch nicht unerlaubt einen neuen Account erstellen, das ist Multiaccounting und führt zu einem Range-Bann.");
- SendClientMessage(playerid,ROT,"Bei Fragen oder Einwänden melde dich im Forum oder im TS³ bei einem Admin.");
- SendClientMessage(playerid,ROT,"Du wirst jetzt nach 3 Sekunden gekickt.");
- SetTimer("Banntimer",3000,false);
- }
- r_UnloadSQLEntrance();
- }
- }
- return 1;
- }
- //SpielerSPeichern-Stock
- stock SpielerSpeichern(playerid)
- {
- if(GetPVarInt(playerid,"eingeloggt") == 1)
- {
- GetPlayerName(playerid,SpielerInfo[playerid][pName],MAX_PLAYER_NAME);
- if(r_LoadSQLEntrance("accounts","Name",SpielerInfo[playerid][pName]))
- {
- r_mysql_SetInt("Level",SpielerInfo[playerid][pLevel]);
- r_mysql_SetInt("Geld",SpielerInfo[playerid][pGeld]);
- r_mysql_SetInt("Fraktion",SpielerInfo[playerid][pFraktion]);
- r_mysql_SetFloat("Health",SpielerInfo[playerid][pHealth]);
- r_mysql_SetInt("Banned",SpielerInfo[playerid][pBanned]);
- r_mysql_SetInt("Adminlevel",SpielerInfo[playerid][pAdminlevel]);
- printf("[MySQL]Spielerdaten vom Spieler %s erfolgreich in der Datenbank gespeichert.[MySQL]",SpielerName(playerid));
- r_UnloadSQLEntrance();
- }
- }
- return 1;
- }
- //Admin-Stock
- stock IstSpielerAdmin(playerid,level)
- {
- if(SpielerInfo[playerid][pAdminlevel] >=level)return 1;
- return 0;
- }
- //OCMD-Befehle
- ocmd:su(playerid,params[])
- {
- new pID,anzahl,grund[20],string[128],string2[128];
- if(!IsPlayerMember(playerid,1)) return SendClientMessage(playerid,ROT,"Nur Cops dürfen das.");
- if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Der angegebene Spieler ist nicht connected");
- if(sscanf(params,"uis",pID,anzahl,grund))return SendClientMessage(playerid,ROT,"Benutzung: /su [Name/ID] [Anzahl] [Grund]");
- if(IsPlayerMember(playerid,1))
- {
- SetPlayerWantedLevel(pID,GetPlayerWantedLevel(pID)+anzahl);
- format(string,sizeof(string),"Du hast %s %i Wanteds gegeben. Grund: %s",SpielerName(pID),anzahl,grund);
- format(string2,sizeof(string2),"Officer %s hat dir %i Wanteds gegeben. Grund: %s",SpielerName(playerid),anzahl,grund);
- SendClientMessage(playerid,GRÜN,string);
- SendClientMessage(pID,ROT,string2);
- SpielerSpeichern(playerid);
- SpielerSpeichern(pID);
- return 1;
- }
- return 1;
- }
- ocmd:setmember(playerid,params[])
- {
- new pID,frakid,string[128];
- if(!IstSpielerAdmin(playerid,5))return SendClientMessage(playerid,ROT,"Zugriff verweigert. Benötigter Rang: Fulladmin");
- if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Der angegebene Spieler ist nicht connected");
- if(sscanf(params,"ui",pID,frakid))return SendClientMessage(playerid,ROT,"Benutzung: /setmember [Name/Playerid] [Fraktionsid]");
- if(IstSpielerAdmin(playerid,5))
- {
- SpielerInfo[pID][pFraktion] = frakid;
- format(string,128,"[AdmCmd] Fulladmin %s hat %s in die Fraktion %i gesetzt",SpielerName(playerid),SpielerName(pID),frakid);
- SendClientMessageToAll(ROT,string);
- SpielerSpeichern(playerid);
- SpielerSpeichern(pID);
- }
- return 1;
- }
- ocmd:tor(playerid,params[])
- {
- #pragma unused params
- if(IsPlayerInRangeOfPoint(playerid,5,1548.900024, -1622.400024, 14.100000))
- {
- MoveDynamicObject(pdgate,1548.900024, -1622.400024-10, 14.100000,2);
- SetTimer("pdtortimer",10000,0);
- SendClientMessage(playerid,ROT,"Das Tor wird sich nach 10 Sekunden automatisch schließen!");
- return 1;
- }
- else
- {
- SendClientMessage(playerid,ROT,"Du bist nicht nahe genung am Tor!");
- return 1;
- }
- }
- public pdtortimer()
- {
- MoveDynamicObject(pdgate,1548.900024, -1622.400024, 14.100000,2);
- return 1;
- }
- ocmd:ban(playerid,params[])
- {
- new pID,string[128],grund[128];
- if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Der angegebene Spieler ist nicht connected!");
- if(sscanf(params,"us",pID))return SendClientMessage(playerid,ROT,"Benutzung: /ban [ID] [Grund]");
- if(IstSpielerAdmin(playerid,2))
- {
- SpielerInfo[pID][pBanned] = 1;
- format(string,sizeof(string),"[AdmCmd] %s hat %s permanent vom Server gebannt. Grund: %s",SpielerName(playerid),SpielerName(pID),grund);
- SendClientMessageToAll(ROT,string);
- FreezePlayer(pID);
- Kick(pID);
- SpielerSpeichern(playerid);
- SpielerSpeichern(pID);
- }
- else
- {
- SendClientMessage(playerid,ROT,"Dein Adminlevel ist zu niedrig");
- return 1;
- }
- return 1;
- }
- ocmd:changefightstyle(playerid,parmas[])
- {
- ShowPlayerDialog(playerid,DIALOG_FIGHT,DIALOG_STYLE_LIST,"Fightstyle auswählen","Normal\r\nBoxing\r\nKungfu\r\nKneehead\r\nGrabkick\r\nElbow","OK","Quit");
- return 1;
- }
- ocmd:kick(playerid,params[])
- {
- new pID,string[128],grund[128];
- if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Der angegebene Spieler ist nicht connected!");
- if(sscanf(params,"us",pID,grund))return SendClientMessage(playerid,ROT,"Benutzung: /kick [ID] [Grund]");
- if(IstSpielerAdmin(playerid,1))
- {
- format(string,sizeof(string),"[AdmCmd] %s hat %s vom Server gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),grund);
- SendClientMessageToAll(ROT,string);
- Kick(pID);
- FreezePlayer(pID);
- SpielerSpeichern(playerid);
- SpielerSpeichern(pID);
- }
- else
- {
- SendClientMessage(playerid,ROT,"Dein Adminlevel ist zu niedrig");
- return 1;
- }
- return 1;
- }
- ocmd:goto(playerid,params[])
- {
- new pID,string[128],string2[128];
- if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Der angegebene Spieler ist nicht connected!");
- if(sscanf(params,"u",pID))return SendClientMessage(playerid,ROT,"Benutzung: /goto [ID]");
- if(IstSpielerAdmin(playerid,1))
- {
- new Float:x,Float:y,Float:z,Float:angle;
- GetPlayerPos(pID,x,y,z);
- GetPlayerFacingAngle(pID,angle);
- SetPlayerPos(playerid,x+1,y,z);
- SetPlayerFacingAngle(playerid,angle);
- format(string,sizeof(string),"[AdmCmd] %s hat sich zu dir teleportiert",SpielerName(playerid));
- format(string2,sizeof(string2),"[AdmCmd] Du hast dich erfolgreich zum Spieler %s teleportiert",SpielerName(pID));
- SendClientMessage(pID,ROT,string);
- SendClientMessage(playerid,ROT,string2);
- return 1;
- }
- return 1;
- }
- ocmd:setadmin(playerid,params[])
- {
- new pID,rang,string[128];
- if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Der angegebene Spieler ist nicht connected!");
- if(sscanf(params,"ui",pID,rang))return SendClientMessage(playerid,ROT,"Benutzung: /setadmin [ID] [Adminlevel]");
- if( rang <0 || rang > 3)return SendClientMessage(playerid,ROT,"Das Adminlevel muss zwischen 1 und 3 sein");
- if(IstSpielerAdmin(playerid,3))
- {
- SpielerInfo[pID][pAdminlevel] = rang;
- format(string,sizeof(string),"[AdmCmd] %s wurde von %s ins Adminteam mit dem Adminlevel %i gesetzt",SpielerName(pID),SpielerName(playerid),rang);
- SendClientMessageToAll(ROT,string);
- SpielerSpeichern(playerid);
- return 1;
- }
- else
- {
- SendClientMessage(playerid,ROT,"Zugriff verweigert. Benötigter Rang : Head Admin");
- return 1;
- }
- }
- //Freeze-Stock
- stock FreezePlayer(playerid)
- {
- TogglePlayerControllable(playerid,0);
- return 1;
- }
- //Unfreeze Stock
- stock UnFreezePlayer(playerid)
- {
- TogglePlayerControllable(playerid,1);
- return 1;
- }
- ocmd:heal(playerid,params[])
- {
- new pID,string[128],string2[128];
- if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Der angegebene Spieler ist nicht connected!");
- if(sscanf(params,"u",pID))return SendClientMessage(playerid,ROT,"Benutzung: /heal [ID]");
- SetPlayerHealth(playerid,100.0);
- format(string,sizeof(string),"Du hast den Spieler %s erfolgreich geheilt",SpielerName(pID));
- format(string2,sizeof(string2),"Du wurdest vom Spieler %s geheilt",SpielerName(playerid));
- SendClientMessage(playerid,GRÜN,string);
- SendClientMessage(pID,GRÜN,string2);
- return 1;
- }
- //Fraktionsabfrage
- stock IsPlayerMember(playerid,frakid)
- {
- if(SpielerInfo[playerid][pFraktion] == frakid)return 1;
- return 0;
- }
- public CheckPing()
- {
- for(new i = 0;i<GetMaxPlayers();i++)
- {
- if(GetPlayerPing(i) > 250)
- {
- PingWarns[i] ++;
- SendClientMessage(i,ROT,"Warnung erhalten. Grund: Zu hoher Ping. Info: Nach 5 Ping-Warnungen folgt ein Kick.");
- }
- if(PingWarns[i] > 5)
- {
- SendClientMessage(i,ROT,"[AdmCmd] %s wurde vom Serversystem automatisch gekicket. Grund: Zu hoher Ping (über 250)");
- Kick(i);
- }
- }
- return 1;
- }
- ocmd:veh(playerid,params[])
- {
- new Float:vehx,Float:vehy,Float:vehz;
- new vehid,cc1,cc2,string[128];
- if(sscanf(params,"iii",vehid,cc1,cc2))return SendClientMessage(playerid, ROT,"Benutzung: /veh [Vehicle ID] [Farbe 1] [Farbe 2]");
- if(IstSpielerAdmin(playerid,5))
- {
- GetPlayerPos(playerid,vehx,vehy,vehz);
- new carid = CreateVehicle(vehid,vehx,vehy,vehz,3,cc1,cc2,-1);
- SetVehicleNumberPlate(carid,"~>Admin<~");
- PutPlayerInVehicle(playerid, carid, 0);
- format(string,sizeof(string),"[AdmCmd] Du hast ein Admincar gespawnt! (FahrzeugID :%d)",GetVehicleModel(GetPlayerVehicleID(playerid)));
- SendClientMessage(playerid,ROT,string);
- }
- else
- {
- SendClientMessage(playerid,ROT,"Zugriff verweigert.Benötigter Rang: {FF0023}FullAdmin");
- }
- return 1;
- }
- public UpdateUhr()
- {
- new stunde,minute,sekunde,uhrstring[9];
- gettime(stunde,minute,sekunde);
- format(uhrstring,9,"%02d:%02d:%02d",stunde,minute,sekunde);
- TextDrawSetString(Uhr,uhrstring);
- }
- public UpdateTacho()
- {
- for(new x = 0;x<GetMaxPlayers();x++)
- {
- if(IsPlayerConnected(x) && GetPlayerState(x) == PLAYER_STATE_DRIVER && !IsPlayerNPC(x))
- {
- new Float:Strecke,Float:Geschwindigkeit;
- GetVehiclePos(GetPlayerVehicleID(x),X1[x],Y1[x],Z1[x]);
- Strecke = floatsqroot(floatpower(floatabs(floatsub(X1[x],X2[x])),2)+floatpower(floatabs(floatsub(Y1[x],Y2[x])),2)+floatpower(floatabs(floatsub(Z1[x],Z2[x])),2));
- Geschwindigkeit = (Strecke / (TACHOTIMER/1000)) * 3.6;
- new String[80];
- format(String,80,"Geschwindigkeit: ~b~%d km/h ~n~Fahrzeugtyp: ~r~%s",floatround(Geschwindigkeit),Fahrzeugname[GetVehicleModel(GetPlayerVehicleID(x))-400]);
- TextDrawSetString(Tacho[x],String);
- GetVehiclePos(GetPlayerVehicleID(x),X2[x],Y2[x],Z2[x]);
- TextDrawShowForPlayer(x,Tacho[x]);
- }
- else
- {
- TextDrawHideForPlayer(x,Tacho[x]);
- }
- }
- return 1;
- }
- public ServerNamenTimer()
- {
- new string[128];
- format(string,128,"%s",SN[zaehler]);
- zaehler += 1;
- TextDrawSetString(ServerNamen,string);
- if(zaehler >= MAX_SERVER_NAMEN)
- {
- zaehler = 0;
- }
- return 1;
- }
- ocmd:aduty(playerid,params[])
- {
- new Text3D:ADuty[MAX_PLAYERS],nachricht[128];
- new Float:X,Float:Y,Float:Z;
- if(!IstSpielerAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist kein Admin");
- if(IstSpielerAdmin(playerid,1))
- {
- if(Aond[playerid] == 0)
- {
- GetPlayerPos(playerid,X,Y,Z);
- ADuty[playerid] = Create3DTextLabel("Admin im Dienst. DM verboten!",ROT,X,Y,Z,50.0,0,0);
- format(nachricht,128,"%s hat sich als Admin angemeldet",SpielerName(playerid));
- SendClientMessageToAll(GRÜN,nachricht);
- Attach3DTextLabelToPlayer(ADuty[playerid],playerid,0.0,0.0,0.75);
- Aond[playerid] = 1;
- }
- }
- else
- {
- Delete3DTextLabel(ADuty[playerid]);
- format(nachricht,128,"%s hat sich als Admin abgemeldet",SpielerName(playerid));
- Aond[playerid] = 0;
- SendClientMessageToAll(GRÜN,nachricht);
- }
- return 1;
- }
- ocmd:radio(playerid,params[])
- {
- #pragma unused params
- if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
- {
- ShowPlayerDialog(playerid,DIALOG_RADIO,DIALOG_STYLE_LIST,"Radio - Sender","Technobase.FM\nHardbase.FM\nClubtime.FM","OK","Quit");
- }
- else if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
- {
- SendClientMessage(playerid,ROT,"Du bist kein Fahrer");
- }
- else
- {
- SendClientMessage(playerid,ROT,"Du bist in keinem Auto");
- }
- return 1;
- }
- ocmd:stadthalle(playerid,params[])
- {
- #pragma unused params
- if(!IstSpielerAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Adminlevel zu niedrig");
- if(IstSpielerAdmin(playerid,1))
- {
- SetPlayerPos(playerid,1481.1127,-1772.1567,18.7958);
- SendClientMessage(playerid,ROT,"Erfolgreich zur Stadthalle teleportiert");
- }
- return 1;
- }
- stock mysql_CheckAccount(playerid)
- {
- new Query[128],Name[MAX_PLAYER_NAME],count;
- GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
- mysql_real_escape_string(Name, Name);
- format(Query, sizeof(Query), "SELECT * FROM `accounts` WHERE `Name` = '%s'", Name);
- mysql_query(Query);
- mysql_store_result();
- count = mysql_num_rows();
- mysql_free_result();
- return count;
- }
- stock CreateAccount(playerid, pass[])
- {
- new query[256],Name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
- mysql_real_escape_string(Name,Name);
- mysql_real_escape_string(pass,pass);
- format(query, sizeof(query), "INSERT INTO `accounts` (`Name`, `Passwort`) VALUES ('%s', '%s')", Name, pass);
- mysql_query(query);
- return true;
- }
- stock mysql_ReturnPasswort(Name[])
- {
- new query[130], Get[130];
- mysql_real_escape_string(Name, Name);
- format(query, 128, "SELECT `passwort` FROM `accounts` WHERE `Name` = '%s'", Name);
- mysql_query(query);
- mysql_store_result();
- mysql_fetch_row(Get);
- mysql_free_result();
- return Get;
- }
- stock CountDownForPlayer(playerid, seconds, freeze, style=1) //By Gabriel "Larcius" Cordes
- {
- if(IsPlayerConnected(playerid))
- {
- if(!Counters[playerid][Down][Style])
- {
- Counters[playerid][Down][TextID]=0;
- }
- else if(Counters[playerid][Down][Style]!=style)
- {
- TextDrawDestroy(Text:Counters[playerid][Down][TextID]);
- }
- if(freeze==0 || style==0)
- {
- TogglePlayerControllable2(playerid, 1, FREEZE_COUNTDOWN);
- }
- else if(freeze)
- {
- TogglePlayerControllable2(playerid, 0, FREEZE_COUNTDOWN);
- SetCameraBehindPlayer(playerid);
- }
- Counters[playerid][Down][Style]=style;
- Counters[playerid][Down][Time]=seconds;
- return 1;
- }
- return 0;
- }
- stock CountDownForAll(seconds, freeze, style=1)
- {
- new ret=0;
- for(new i=0; i<GetMaxPlayers(); i++)
- {
- if(CountDownForPlayer(i, seconds, freeze, style))
- {
- ret++;
- }
- }
- return ret;
- }
- stock IsNumeric(const string[])
- {
- new length=strlen(string);
- if(length==0)
- {
- return 0;
- }
- for (new i=0; i<length; i++)
- {
- if (!((string[i] <= '9' && string[i] >= '0') || (i==0 && (string[i]=='-' || string[i]=='+'))))
- {
- return false;
- }
- }
- return 0;
- }
- public Banntimer()
- {
- for(new x=0;x<GetMaxPlayers();x++)
- {
- Kick(x);
- }
- }
- stock SaveAllCurrentOnlinePlayers()
- {
- for(new x = 0;x<GetMaxPlayers();x++)
- {
- if(GetPVarInt(x,"eingeloggt") == 1 && IsPlayerConnected(x) && !IsPlayerNPC(x))
- {
- GetPlayerName(x,SpielerInfo[x][pName],MAX_PLAYER_NAME);
- if(r_LoadSQLEntrance("accounts","Name",SpielerInfo[x][pName]))
- {
- r_mysql_SetInt("Level",SpielerInfo[x][pLevel]);
- r_mysql_SetInt("Geld",SpielerInfo[x][pGeld]);
- r_mysql_SetInt("Fraktion",SpielerInfo[x][pFraktion]);
- r_mysql_SetFloat("Health",SpielerInfo[x][pHealth]);
- r_mysql_SetInt("Banned",SpielerInfo[x][pBanned]);
- r_mysql_SetInt("Adminlevel",SpielerInfo[x][pAdminlevel]);
- printf("[MySQL]Spielerdaten von allen Spielern erfolgreich in der Datenbank gespeichert.[MySQL]",SpielerName(x));
- r_UnloadSQLEntrance();
- }
- }
- }
- return 1;
- }
- ocmd:motor(playerid,params[])
- {
- if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
- {
- new vehicleid = GetPlayerVehicleID(playerid);
- if(GetVehicleModel(vehicleid) == 509 || GetVehicleModel(vehicleid) == 481 || GetVehicleModel(vehicleid) == 510)
- {
- SendClientMessage(playerid,ROT,"In einem Fahrrad gibt es keinen Motor!");
- Motor[vehicleid] = false;
- }
- else if(Motor[vehicleid] == false)
- {
- GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
- SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
- SendClientMessage(playerid,ROT,"Motor erfolgreich eingeschaltet.");
- Motor[vehicleid] = true;
- }
- else
- {
- GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
- SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
- SendClientMessage(playerid,ROT,"Motor erfolgreich ausgeschaltet.");
- Motor[vehicleid] = false;
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement