- //DM-Selfmade Script by Addi und Revolution Copyright (c): 2012
- //Includes
- #include <a_samp>
- #include <dini>
- #include <dutils>
- #include <ocmd>
- //Defines
- #define DIALOG_NAVI 1
- #define DIALOG_REGISTER 2
- #define DIALOG_LOGIN 3
- //Farben
- #define GELB 0xFFFF00FF
- #define ROT 0xFF2800FF
- #define BLAU 0x000FFFFF
- #define WHITE 0xF0F0F0FF
- #define GRAU 0xB4B4B4FF
- #define GRUEN 0x00FF14FF
- #define LILA 0x9300E1FF
- #define WEINROT 0x730000FF
- #define HELLGRUEN 0x00FFAAFF
- #define PINK 0xFF00C3FF
- //Enter
- new ammu_enter;
- //exit
- new ammu_exit;
- //Waffeb zum Kaufen
- new ak_buypoint;
- new granaten_buypoint;
- new shotgun_buypoint;
- //Textdraws
- new Text:Army;
- new Text:Gangster;
- new Text:ArmyPunkteText;
- new Text:GangsterPunkteText;
- new Text:DMServer;
- //TeamNamen
- #define fraktname1 "Army"
- #define fraktname2 "Gangster"
- //Spawns für Teams
- #define armyspawn 1758.7849,-2056.2927,13.5837
- #define gangsterspawn 1955.8729,-1120.7222,26.8482
- //Team Variabeln
- new GangsterPunkte;
- new ArmyPunkte;
- new pTeam[MAX_PLAYERS];
- //gangzonen
- new gangsterzone;
- new armyzone;
- main()
- {
- print("\n----------------------------------");
- print(" Selfmade Script erfolgreich geladen");
- print("----------------------------------\n");
- }
- public OnGameModeInit()
- {
- EnableStuntBonusForAll(0);
- DisableInteriorEnterExits();
- UsePlayerPedAnims();
- SetGameModeText("Army vs. Gangster");
- AddPlayerClass(287, 1758.7849,-2056.2927,13.5837,183.6016, 4, 1, 24, 500, 31, 500);
- AddPlayerClass(195, 1955.8729,-1120.7222,26.8482,184.2518, 4, 1, 24, 500, 31, 500);
- SetVehicleNumberPlate(CreateVehicle(560,1948.0400,-1130.2969,25.3039,90.2663,86,86,-1),"Gangster"); // Gangcar1
- SetVehicleNumberPlate(CreateVehicle(560,1936.1384,-1130.4186,25.0040,90.4356,86,86,-1),"Gangster"); // Gangcar2
- SetVehicleNumberPlate(CreateVehicle(560,1953.4805,-1141.5166,25.4382,89.5188,86,86,-1),"Gangster"); // Gangcar3
- AddStaticVehicle(522,1934.7457,-1120.6115,26.0490,176.4532,86,86); // Bike1
- AddStaticVehicle(522,1934.0336,-1120.1554,26.0546,180.1703,86,86); // Bike2
- AddStaticVehicle(522,1933.2983,-1120.4703,26.0321,177.1304,86,86); // Bike3
- AddStaticVehicle(522,1932.0663,-1120.1274,26.0245,185.6915,86,86); // Bike4
- SetVehicleNumberPlate(CreateVehicle(534,1943.3193,-1141.4978,25.2023,89.9912,86,86,-1),"Gangster"); // Mafiacarremington1
- SetVehicleNumberPlate(CreateVehicle(534,1930.7102,-1141.4480,24.8885,90.0011,86,86,-1),"Gangster"); // Mafiacarremingto
- SetVehicleNumberPlate(CreateVehicle(470,1767.9241,-2047.2307,13.7226,272.7265,102,102,-1),"Army"); // Armycar1
- SetVehicleNumberPlate(CreateVehicle(470,1767.9366,-2050.8274,13.7254,273.5568,102,102,-1),"Army"); // Armycar2
- SetVehicleNumberPlate(CreateVehicle(470,1767.8763,-2029.8669,13.7078,272.2804,102,102,-1),"Army"); // Armycar3
- SetVehicleNumberPlate(CreateVehicle(470,1768.0295,-2034.2953,13.6922,270.7253,102,102,-1),"Army"); // Armycar4
- SetVehicleNumberPlate(CreateVehicle(596,1787.6991,-2023.7115,13.1997,184.0959,102,102,-1),"Army"); // Armycar5
- SetVehicleNumberPlate(CreateVehicle(596,1791.4160,-2023.7178,13.2076,182.5806,102,102,-1),"Army"); // Armycar6
- SetVehicleNumberPlate(CreateVehicle(596,1794.8503,-2023.7588,13.2176,183.9254,102,102,-1),"Army"); // Armycar7
- SetVehicleNumberPlate(CreateVehicle(433,1795.2089,-2048.4185,14.0012,1.3927,102,102,-1),"Army"); // Armycar8
- SetVehicleNumberPlate(CreateVehicle(433,1801.1534,-2048.3909,13.9984,358.0598,102,102,-1),"Army"); // Armycar9
- //Eingang/Ausgang
- ammu_enter = CreatePickup(1318,1,1367.8815,-1279.8875,13.5469);
- ammu_exit = CreatePickup(1318,1,285.4834,-41.0168,1001.5156);
- //Waffen
- ak_buypoint = CreatePickup(1274,1,285.0804,-32.2296,1001.5156);
- granaten_buypoint = CreatePickup(1274,1,285.0814,-38.6484,1001.5156);
- shotgun_buypoint = CreatePickup(1274,1,295.5020,-34.5908,1001.5156);
- //Army Base
- CreateObject(17542,1886.59997559,-1160.40002441,27.29999924,0.00000000,0.00000000,270.00000000);
- CreateObject(9314,1809.50000000,-1585.80004883,14.80000019,0.00000000,0.00000000,56.00000000);
- CreateObject(1337,1938.48925781,-1123.92089844,26.13171768,0.00000000,0.00000000,0.00000000);
- CreateObject(3884,1764.19995117,-2052.10009766,19.60000038,0.00000000,0.00000000,251.99998474);
- CreateObject(3884,1763.40002441,-2019.50000000,19.60000038,0.00000000,0.00000000,269.99890137);
- CreateObject(3884,1780.80004883,-2008.00000000,19.60000038,0.00000000,0.00000000,291.99450684);
- CreateObject(3279,1809.59997559,-2024.40002441,12.50000000,0.00000000,0.00000000,270.00000000);
- CreateObject(2985,1811.09997559,-2023.00000000,28.60000038,0.00000000,0.00000000,40.00000000);
- CreateObject(2985,1811.19995117,-2026.00000000,28.60000038,0.00000000,0.00000000,315.99572754);
- Army = TextDrawCreate(25,424,"Army vs. Gangster");
- TextDrawLetterSize(Army,0.500000,1.000000);
- TextDrawAlignment(Army,0);
- TextDrawBackgroundColor(Army,0x000000FF);
- TextDrawFont(Army,0);
- TextDrawUseBox(Army,0);
- TextDrawSetOutline(Army,0);
- TextDrawSetProportional(Army,1);
- TextDrawSetShadow(Army,1);
- TextDrawShowForAll(Army);
- Gangster = TextDrawCreate(64,436,"2012");
- TextDrawLetterSize(Gangster,0.500000,1.000000);
- TextDrawAlignment(Gangster,0);
- TextDrawBackgroundColor(Gangster,0x000000FF);
- TextDrawFont(Gangster,0);
- TextDrawUseBox(Gangster,0);
- TextDrawSetOutline(Gangster,0);
- TextDrawSetProportional(Gangster,1);
- TextDrawSetShadow(Gangster,1);
- TextDrawShowForAll(Gangster);
- ArmyPunkteText = TextDrawCreate(43,299,"Army:");
- TextDrawLetterSize(ArmyPunkteText,0.500000,1.000000);
- TextDrawAlignment(ArmyPunkteText,0);
- TextDrawBackgroundColor(ArmyPunkteText,0x000000FF);
- TextDrawFont(ArmyPunkteText,0);
- TextDrawUseBox(ArmyPunkteText,1);
- TextDrawBoxColor(ArmyPunkteText,0x00000066);
- TextDrawTextSize(ArmyPunkteText,150.000000,309.000000);
- TextDrawSetOutline(ArmyPunkteText,0);
- TextDrawSetProportional(ArmyPunkteText,1);
- TextDrawSetShadow(ArmyPunkteText,1);
- GangsterPunkteText = TextDrawCreate(43,314,"Gangster:");
- TextDrawLetterSize(GangsterPunkteText,0.500000,1.000000);
- TextDrawAlignment(GangsterPunkteText,0);
- TextDrawBackgroundColor(GangsterPunkteText,0x000000FF);
- TextDrawFont(GangsterPunkteText,0);
- TextDrawUseBox(GangsterPunkteText,1);
- TextDrawBoxColor(GangsterPunkteText,0x00000066);
- TextDrawTextSize(GangsterPunkteText,150.000000,324.000000);
- TextDrawSetOutline(GangsterPunkteText,0);
- TextDrawSetProportional(GangsterPunkteText,1);
- TextDrawSetShadow(GangsterPunkteText,1);
- DMServer = TextDrawCreate(507,3,"Beta Version");
- TextDrawLetterSize(DMServer,0.500000,1.000000);
- TextDrawAlignment(DMServer,0);
- TextDrawBackgroundColor(DMServer,0x000000FF);
- TextDrawFont(DMServer,0);
- TextDrawUseBox(DMServer,1);
- TextDrawBoxColor(DMServer,0x00000066);
- TextDrawTextSize(DMServer,639.000000,12.000000);
- TextDrawSetOutline(DMServer,0);
- TextDrawSetProportional(DMServer,1);
- TextDrawSetShadow(DMServer,1);
- gangsterzone = GangZoneCreate(1862.543, -1251.558, 2064.094, -1141.021);
- armyzone = GangZoneCreate(1683.81, -2084.531, 1816.909, -1966.099);
- return 1;
- }
- public OnGameModeExit()
- {
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraPos(playerid, 1961.8634,1342.7668,15.3746);
- SetPlayerCameraLookAt(playerid, 1961.6160,1342.9456,15.3746);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- TextDrawShowForPlayer(playerid,Army);
- TextDrawShowForPlayer(playerid,Gangster);
- TextDrawShowForPlayer(playerid,ArmyPunkteText);
- TextDrawShowForPlayer(playerid,GangsterPunkteText);
- TextDrawShowForPlayer(playerid,DMServer);
- PlayAudioStreamForPlayer(playerid,"http://kibitzers.files.wordpress.com/2011/06/cobra-starship-you-make-me-feel-feat-sabi.mp3");
- if(IsPlayerNPC(playerid))return 1;
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
- if(dini_Exists(Spielerdatei))
- {
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Dein Account wurde in der Datenbank gefunden. Bitte Logge dich ein.","Login","Abbrechen");
- }
- else
- {
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
- }
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- if(GetPVarInt(playerid,"loggedin")==1)
- {
- SpielerSpeichern(playerid);
- }
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- TextDrawShowForPlayer(playerid,Army);
- TextDrawShowForPlayer(playerid,Gangster);
- TextDrawShowForPlayer(playerid,ArmyPunkteText);
- TextDrawShowForPlayer(playerid,GangsterPunkteText);
- TextDrawShowForPlayer(playerid,DMServer);
- StopAudioStreamForPlayer(playerid);
- new SkinID = GetPlayerSkin(playerid);
- if(SkinID == 287 ||SkinID == 282 || SkinID == 288)
- {
- pTeam[playerid] = 1;
- }
- else if(SkinID == 195 ||SkinID == 115 ||SkinID == 110)
- {
- pTeam[playerid] = 2;
- }
- GangZoneShowForPlayer(playerid, gangsterzone, 0x80000096);
- GangZoneShowForPlayer(playerid, armyzone, 0x00FF0096);
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- new TextString[52];
- if(pTeam[playerid] == pTeam[killerid])
- {
- }
- else if(pTeam[playerid] == 1 && pTeam[killerid] == 2)
- {
- GangsterPunkte += 1;
- format(TextString,sizeof(TextString),"Gangster: %d",GangsterPunkte);
- TextDrawSetString(GangsterPunkteText,TextString);
- }
- else if(pTeam[playerid] == 2 && pTeam[killerid] == 1)
- {
- ArmyPunkte += 1;
- format(TextString,sizeof(TextString),"Army: %d",ArmyPunkte);
- TextDrawSetString(ArmyPunkteText,TextString);
- }
- GivePlayerMoney(killerid, 1000);
- GivePlayerMoney(playerid, -500);
- new score;
- score = GetPlayerScore(playerid);
- SetPlayerScore(playerid,score-1);
- SetPlayerScore(killerid,2);
- SendDeathMessage(killerid, playerid, reason);
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- return 1;
- }
- ocmd:navi(playerid,params[])
- {
- #pragma unused params
- if(IsPlayerInAnyVehicle(playerid))
- {
- ShowPlayerDialog(playerid,DIALOG_NAVI,DIALOG_STYLE_LIST,"Navigation","Army Base\nWaffenladen\nGang Base","Auswählen","Abbrechen");
- return 1;
- }
- else
- {
- SendClientMessage(playerid,0xFF0005FF,"Du bist in keinem Fahrzeug");
- }
- return 1;
- }
- ocmd:tban(playerid,params[])
- {
- if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,ROT,"Rang zu Niedrig.");
- new pID, time, grund[128];
- if(sscanf(params,"uis",pID,time,grund))return SendClientMessage(playerid,BLAU,"/tban [playerid] [zeit] [grund]");
- if(IsPlayerConnected(pID))
- {
- if(time>0&&time<1000)
- {
- new string[128];
- format(string,sizeof(string),"[Admin-Befehl] %s wurde von %s für %i Minuten gebannt. Grund: %s",SpielerName(pID),SpielerName(playerid),time,grund);
- SendClientMessageToAll(ROT,string);
- new wert;
- wert=gettime()+(60*time);
- SetPVarInt(pID,"timeban",wert);
- Kick(pID);
- return 1;
- }
- SendClientMessage(playerid,ROT,"Ungültige Zeit.");
- return 1;
- }
- SendClientMessage(playerid,ROT,"Spieler ist nicht online.");
- return 1;
- }
- ocmd:ban(playerid,params[])
- {
- if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
- new pID, reason[128],string[128];
- if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,BLAU,"/ban [id] [grund]");
- format(string,sizeof(string),"[Admin-Befehl] %s wurde von %s gebannt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
- SendClientMessageToAll(ROT,string);
- SetPVarInt(pID,"Baned",1);
- Kick(pID);
- return 1;
- }
- ocmd:makeadmin(playerid,params[])
- {
- if(!isPlayerAnAdmin(playerid,5))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
- new pID, rank;
- if(sscanf(params,"ui",pID,rank))return SendClientMessage(playerid,ROT,"/makeadmin [spieler] [level]");
- if(rank<1||rank>5)return SendClientMessage(playerid,ROT,"Bitte gültigen Rang angeben.");
- SetPVarInt(pID,"Adminlevel",rank);
- SpielerSpeichern(pID);
- SendClientMessage(playerid,GRAU,"Du hast den Spieler erfolgreich als Admin gemacht.");
- return 1;
- }
- ocmd:setskin(playerid, params[])
- {
- if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,ROT,"Rank zu niedrig");
- new pID,skinid;
- if(sscanf(params,"ud",pID,skinid))
- {
- return SendClientMessage(playerid,BLAU,"INFO: /setskin [playerid] [0 - 299]*");
- }
- if(!IsPlayerConnected(pID))
- {
- return SendClientMessage(playerid,ROT,"Spieler ID nicht gefunden");
- }
- if(skinid<0||skinid>299)return SendClientMessage(playerid,ROT,"Diese Skin ID gibt es nicht");
- new string[128],string2[128],aname[MAX_PLAYER_NAME],name[MAX_PLAYER_NAME];
- SetPlayerSkin(pID,skinid);
- GetPlayerName(playerid,aname,sizeof(aname));
- GetPlayerName(pID,name,sizeof(name));
- format(string,sizeof(string),"Du hast den Skin von %s in folgende SkinID %d gewechselt.",name,skinid);
- format(string2,sizeof(string2),"Admin %s hat deinen Skin zur SkinID %d gewechselt.",aname,skinid);
- SendClientMessage(playerid,ROT,string);
- SendClientMessage(pID,ROT,string2);
- return 1;
- }
- ocmd:kick(playerid,params[])
- {
- if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
- new pID, reason[128],string[128];
- if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,BLAU,"/kick [id] [grund]");
- format(string,sizeof(string),"[Admin-Befehl] %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
- SendClientMessageToAll(ROT,string);
- Kick(pID);
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if(strcmp("/ah", cmdtext, true, 10) == 0)
- if(isPlayerAnAdmin(playerid,1))
- {
- SendClientMessage(playerid,0xFFE600FF,"***Admin Help**");
- SendClientMessage(playerid,0xFFE600FF,"/tban /goto /ban /kick");
- SendClientMessage(playerid,0xFFE600FF,"/setskin /makeadmin");
- return 1;
- }
- if(strcmp("/goto", cmdtext, true, 10) == 0)
- if(isPlayerAnAdmin(playerid,1))
- {
- SendClientMessage(playerid,0xFFA000FF,"/gotosh (Waffenladen) | /gotoab (Army Base) | /gotogb (Gang Base)");
- return 1;
- }
- if(strcmp("/gotosh", cmdtext, true, 10) == 0)
- if(isPlayerAnAdmin(playerid,1))
- {
- SetPlayerPos(playerid,1364.9344,-1279.8146,13.5469);
- SendClientMessage(playerid,0xFFA000FF,"Du hast dich zum Waffenladen Teleportiert");
- return 1;
- }
- if(strcmp("/gotoab", cmdtext, true, 10) == 0)
- if(isPlayerAnAdmin(playerid,1))
- {
- SetPlayerPos(playerid,1783.5627,-2055.5825,13.5880);
- SendClientMessage(playerid,0xFFA000FF,"Du hast dich zur Army Base Teleportiert");
- return 1;
- }
- if(strcmp("/gotogb", cmdtext, true, 10) == 0)
- if(isPlayerAnAdmin(playerid,1))
- {
- SetPlayerPos(playerid,1933.6818,-1127.1844,25.3246);
- SendClientMessage(playerid,0xFFA000FF,"Du hast dich zur Gang Base Teleportiert");
- return 1;
- }
- if(strcmp(cmdtext,"/gmx",true)==0)
- {
- if(isPlayerAnAdmin(playerid,5))
- {
- SendRconCommand("gmx");
- return 1;
- }
- SendClientMessage(playerid,ROT,"Du bist kein Admin.");
- return 1;
- }
- if(strcmp(cmdtext,"/dm",true)==0)
- {
- new string[128];
- format(string,sizeof(string),"%s hat sich zur DM Arena teleportiert (/dm).",SpielerName(playerid));
- SendClientMessageToAll(0x00FFFFFF,string);
- SetPlayerInterior(playerid,18);
- SendClientMessage(playerid,0xFF8C00FF,"Tippe /dmquit,um die DM-Arena zu verlassen");
- SetPlayerPos(playerid,1710.433715,-1669.379272,20.225049);
- return 1;
- }
- if(strcmp(cmdtext,"/dmhotel",true)==0)
- {
- new string[128];
- format(string,sizeof(string),"%s hat sich zum DM-Hotel teleportiert (/dmhotel).",SpielerName(playerid));
- SendClientMessageToAll(0x00FFFFFF,string);
- SetPlayerInterior(playerid,15);
- SendClientMessage(playerid,0xFF8C00FF,"Tippe /dmhotelq,um das DM-Hotel zu verlassen");
- SetPlayerPos(playerid,2215.454833,-1147.475585,1025.796875);
- return 1;
- }
- if(strcmp(cmdtext,"/deagle",true)==0)
- {
- new string[128];
- format(string,sizeof(string),"%s hat sich zur Deagle Arena teleportiert (/deagle).",SpielerName(playerid));
- SendClientMessageToAll(0x00FFFFFF,string);
- SendClientMessage(playerid,0xFF8C00FF,"Tippe /deaglequit,um die Deagle Arena zu verlassen");
- SetPlayerPos(playerid,1532.5612,-1368.1470,329.4609);
- ResetPlayerWeapons(playerid);
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(strcmp(cmdtext,"/deaglequit",true)==0)
- {
- SendClientMessage(playerid,GRAU,"Du hast die Deagle Arena verlassen.");
- if(pTeam[playerid] == 1)
- {
- SetPlayerPos(playerid,1758.7849,-2056.2927,13.5837);
- GivePlayerWeapon(playerid,4,1);
- GivePlayerWeapon(playerid,24,500);
- GivePlayerWeapon(playerid,31,500);
- }
- else if(pTeam[playerid] == 2)
- {
- SetPlayerInterior(playerid,0);
- SetPlayerPos(playerid,1955.8729,-1120.7222,26.8482);
- }
- return 1;
- }
- if(strcmp(cmdtext,"/dmquit",true)==0)
- {
- SendClientMessage(playerid,GRAU,"Du hast die DM Arena verlassen.");
- if(pTeam[playerid] == 1)
- {
- SetPlayerInterior(playerid,0);
- SetPlayerPos(playerid,1758.7849,-2056.2927,13.5837);
- }
- else if(pTeam[playerid] == 2)
- {
- SetPlayerInterior(playerid,0);
- SetPlayerPos(playerid,1955.8729,-1120.7222,26.8482);
- }
- return 1;
- }
- if(strcmp(cmdtext,"/dmhotelq",true)==0)
- {
- SendClientMessage(playerid,GRAU,"Du hast das DM-Hotel verlassen.");
- if(pTeam[playerid] == 1)
- {
- SetPlayerInterior(playerid,0);
- SetPlayerPos(playerid,1758.7849,-2056.2927,13.5837);
- }
- else if(pTeam[playerid] == 2)
- {
- SetPlayerInterior(playerid,0);
- SetPlayerPos(playerid,1955.8729,-1120.7222,26.8482);
- }
- return 1;
- }
- if(strcmp(cmdtext,"/news",true)==0)
- {
- SendClientMessage(playerid,LILA,"***Server News***");
- SendClientMessage(playerid,LILA,"Momentan gibt es keine News");
- return 1;
- }
- if(strcmp(cmdtext,"/help",true)==0)
- {
- SendClientMessage(playerid,0xFFA000FF,"*** Server-Befehle ***");
- SendClientMessage(playerid,0xFFA000FF," /navi /news /dm /dmquit");
- SendClientMessage(playerid,0xFFA000FF,"/deagle /deaglequit /serverinfo");
- SendClientMessage(playerid,0xFFA000FF,"/report /dmhotel /dmhotelq");
- return 1;
- }
- if(strcmp(cmdtext,"/serverinfo",true)==0)
- {
- SendClientMessage(playerid,GRAU,"****Server Infos ****");
- SendClientMessage(playerid,ROT,"Server Owner: Revolution");
- SendClientMessage(playerid,ROT,"Teamspeak Besitzer: Revolution");
- return 1;
- }
- return SendClientMessage(playerid,WHITE,"Der Befehl ist nicht verfügbar.");
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- DisablePlayerCheckpoint(playerid);
- 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)
- {
- if(pickupid==shotgun_buypoint)
- {
- if(GetPlayerMoney(playerid)>3999)
- {
- GivePlayerMoney(playerid,-4000);
- SendClientMessage(playerid,0x2DFF00FF,"Waffe erfolgreich gekauft (Shotgun).");
- GivePlayerWeapon(playerid,27,200);
- }
- else
- {
- SendClientMessage(playerid,0xFF000FFF,"Du hast nicht genug Geld für die Shotgun (4000)");
- }
- }
- if(pickupid==granaten_buypoint)
- {
- if(GetPlayerMoney(playerid)>2999)
- {
- GivePlayerMoney(playerid,-5000);
- SendClientMessage(playerid,0x2DFF00FF,"Waffe erfolgreich gekauft (Granaten).");
- GivePlayerWeapon(playerid,16,15);
- }
- else
- {
- SendClientMessage(playerid,0xFF000FFF,"Du hast nicht genug Geld für die Granaten (3000)");
- }
- }
- if(pickupid==ammu_enter)
- {
- SetPlayerInterior(playerid,1);
- SetPlayerPos(playerid,286.148986,-40.644397,1001.515625);
- GameTextForPlayer(playerid,"Willkommen im~n~~y~Ammunation",3000,6);
- }
- if(pickupid==ammu_exit)
- {
- SetPlayerInterior(playerid,0);
- SetPlayerPos(playerid,1364.3545,-1280.5421,13.5469);
- SetPlayerFacingAngle(playerid,90);
- }
- if(pickupid==ak_buypoint)
- {
- if(GetPlayerMoney(playerid)>4999)
- {
- GivePlayerMoney(playerid,-5000);
- SendClientMessage(playerid,0x2DFF00FF,"Waffe erfolgreich gekauft (Deagle).");
- GivePlayerWeapon(playerid,30,500);
- }
- else
- {
- SendClientMessage(playerid,0xFF000FFF,"Du hast nicht genug Geld für die Deagle (5000)");
- }
- }
- 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)
- {
- 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[])
- {
- switch(dialogid)
- {
- case DIALOG_NAVI:
- {
- if(!response)
- {
- SendClientMessage(playerid,0xFF0005FF,"Navi Ausgeschaltet");
- return 1;
- }
- switch(listitem)
- {
- case 0:
- {
- SetPlayerCheckpoint(playerid,1783.5627,-2055.5825,13.5880,5);
- }
- case 1:
- {
- SetPlayerCheckpoint(playerid,1364.9344,-1279.8146,13.5469,5);
- }
- case 2:
- {
- SetPlayerCheckpoint(playerid,1933.6818,-1127.1844,25.3246,5);
- }
- }
- }
- }
- if(dialogid==DIALOG_LOGIN)
- {
- if(response==0)
- {
- SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
- Kick(playerid);
- return 1;
- }
- if(response==1)
- {
- if(!strlen(inputtext))
- {
- SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Die Datenbank hat deine Accountdaten gefunden. Bitte logge dich nun ein.","Login","Abbrechen");
- return 1;
- }
- else
- {
- Login(playerid,inputtext);
- return 1;
- }
- }
- }
- if(dialogid==DIALOG_REGISTER)
- {
- if(response==0)
- {
- SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen.");
- Kick(playerid);
- return 1;
- }
- if(response==1)
- {
- if(!strlen(inputtext))
- {
- SendClientMessage(playerid,BLAU,"Das Passwort war nicht lang genug.");
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Die Datenbank hat deine Accountdaten nicht gefunden bitte Registriere dich.","Register","Abbrechen");
- return 1;
- }
- else
- {
- Register(playerid,inputtext);
- return 1;
- }
- }
- }
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- stock SpielerName(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- return name;
- }
- stock Register(playerid,key[])
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
- dini_Create(Spielerdatei);
- dini_Set(Spielerdatei,"Passwort",key);
- SendClientMessage(playerid,GRUEN,"Erfolgreich registriert.");
- SetPlayerScore(playerid,0);
- SetPVarInt(playerid,"loggedin",1);
- return 1;
- }
- stock Login(playerid,key[])
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
- if(gettime()<dini_Int(Spielerdatei,"timeban"))
- {
- SendClientMessage(playerid,ROT,"Du bist gebannt überlege dir warum.");
- Kick(playerid);
- return 1;
- }
- if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
- {
- LoadAccount(playerid);
- new string[128];
- format(string,sizeof(string),"Herzlich Willkommen %s auf Army vs. Gangster",SpielerName(playerid));
- SendClientMessage(playerid,GRAU,string);
- return 1;
- }
- else
- {
- SendClientMessage(playerid,BLAU,"Falsches Passwort.");
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Die Datenbank hat deine Accountdaten gefunden. Bitte logge dich nun ein.","Login","Abbrechen");
- return 1;
- }
- }
- stock LoadAccount(playerid)
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
- SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
- GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
- SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
- SetPVarInt(playerid,"Team",dini_Int(Spielerdatei,"Team"));
- SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
- if(GetPVarInt(playerid,"Baned")==1)
- {
- SendClientMessage(playerid,ROT,"Du bist vom Server gebannt.");
- Kick(playerid);
- }
- SetPVarInt(playerid,"loggedin",1);
- return 1;
- }
- stock SpielerSpeichern(playerid)
- {
- if(GetPVarInt(playerid,"loggedin")==1)
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
- dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
- dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
- dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
- dini_IntSet(Spielerdatei,"Team",GetPVarInt(playerid,"Team"));
- dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
- dini_IntSet(Spielerdatei,"timeban",GetPVarInt(playerid,"timeban"));
- }
- return 1;
- }
- stock isPlayerAnAdmin(playerid,rang)
- {
- if(GetPVarInt(playerid,"Adminlevel")>=rang)return 1;
- return 0;
- }
- stock sscanf(sstring[], format[], {Float,_}:...)
- {
- #if defined isnull
- if (isnull(sstring))
- #else
- if (sstring[0] == 0 || (sstring[0] == 1 && sstring[1] == 0))
- #endif
- {
- return format[0];
- }
- #pragma tabsize 4
- new
- formatPos = 0,
- sstringPos = 0,
- paramPos = 2,
- paramCount = numargs(),
- delim = ' ';
- while (sstring[sstringPos] && sstring[sstringPos] <= ' ')
- {
- sstringPos++;
- }
- while (paramPos < paramCount && sstring[sstringPos])
- {
- switch (format[formatPos++])
- {
- case '\0':
- {
- return 0;
- }
- case 'i', 'd':
- {
- new
- neg = 1,
- num = 0,
- ch = sstring[sstringPos];
- if (ch == '-')
- {
- neg = -1;
- ch = sstring[++sstringPos];
- }
- do
- {
- sstringPos++;
- if ('0' <= ch <= '9')
- {
- num = (num * 10) + (ch - '0');
- }
- else
- {
- return -1;
- }
- }
- while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
- setarg(paramPos, 0, num * neg);
- }
- case 'h', 'x':
- {
- new
- num = 0,
- ch = sstring[sstringPos];
- do
- {
- sstringPos++;
- switch (ch)
- {
- case 'x', 'X':
- {
- num = 0;
- continue;
- }
- case '0' .. '9':
- {
- num = (num << 4) | (ch - '0');
- }
- case 'a' .. 'f':
- {
- num = (num << 4) | (ch - ('a' - 10));
- }
- case 'A' .. 'F':
- {
- num = (num << 4) | (ch - ('A' - 10));
- }
- default:
- {
- return -1;
- }
- }
- }
- while ((ch = sstring[sstringPos]) > ' ' && ch != delim);
- setarg(paramPos, 0, num);
- }
- case 'c':
- {
- setarg(paramPos, 0, sstring[sstringPos++]);
- }
- case 'f':
- {
- new changestr[16], changepos = 0, strpos = sstringPos;
- while(changepos < 16 && sstring[strpos] && sstring[strpos] != delim)
- {
- changestr[changepos++] = sstring[strpos++];
- }
- changestr[changepos] = '\0';
- setarg(paramPos,0,_:floatstr(changestr));
- }
- case 'p':
- {
- delim = format[formatPos++];
- continue;
- }
- case '\'':
- {
- new
- end = formatPos - 1,
- ch;
- while ((ch = format[++end]) && ch != '\'') {}
- if (!ch)
- {
- return -1;
- }
- format[end] = '\0';
- if ((ch = strfind(sstring, format[formatPos], false, sstringPos)) == -1)
- {
- if (format[end + 1])
- {
- return -1;
- }
- return 0;
- }
- format[end] = '\'';
- sstringPos = ch + (end - formatPos);
- formatPos = end + 1;
- }
- case 'u':
- {
- new
- end = sstringPos - 1,
- id = 0,
- bool:num = true,
- ch;
- while ((ch = sstring[++end]) && ch != delim)
- {
- if (num)
- {
- if ('0' <= ch <= '9')
- {
- id = (id * 10) + (ch - '0');
- }
- else
- {
- num = false;
- }
- }
- }
- if (num && IsPlayerConnected(id))
- {
- setarg(paramPos, 0, id);
- }
- else
- {
- #if !defined foreach
- #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
- #define __SSCANF_FOREACH__
- #endif
- sstring[end] = '\0';
- num = false;
- new
- name[MAX_PLAYER_NAME];
- id = end - sstringPos;
- foreach (Player, playerid)
- {
- GetPlayerName(playerid, name, sizeof (name));
- if (!strcmp(name, sstring[sstringPos], true, id))
- {
- setarg(paramPos, 0, playerid);
- num = true;
- break;
- }
- }
- if (!num)
- {
- setarg(paramPos, 0, INVALID_PLAYER_ID);
- }
- sstring[end] = ch;
- #if defined __SSCANF_FOREACH__
- #undef foreach
- #undef __SSCANF_FOREACH__
- #endif
- }
- sstringPos = end;
- }
- case 's', 'z':
- {
- new
- i = 0,
- ch;
- if (format[formatPos])
- {
- while ((ch = sstring[sstringPos++]) && ch != delim)
- {
- setarg(paramPos, i++, ch);
- }
- if (!i)
- {
- return -1;
- }
- }
- else
- {
- while ((ch = sstring[sstringPos++]))
- {
- setarg(paramPos, i++, ch);
- }
- }
- sstringPos--;
- setarg(paramPos, i, '\0');
- }
- default:
- {
- continue;
- }
- }
- while (sstring[sstringPos] && sstring[sstringPos] != delim && sstring[sstringPos] > ' ')
- {
- sstringPos++;
- }
- while (sstring[sstringPos] && (sstring[sstringPos] == delim || sstring[sstringPos] <= ' '))
- {
- sstringPos++;
- }
- paramPos++;
- }
- do
- {
- if ((delim = format[formatPos++]) > ' ')
- {
- if (delim == '\'')
- {
- while ((delim = format[formatPos++]) && delim != '\'') {}
- }
- else if (delim != 'z')
- {
- return delim;
- }
- }
- }
- while (delim > ' ');
- return 0;
- }