rendered paste body/*
Autor: [GA]Predator
Start Date: 6/11/2007
Finish Date: -
Version: 0.1
License: -
GameMode: Los Santos RolePlay
*/
//=========================[Includes]===========================================
#include <a_samp>
#include <dutils>
#include <dudb>
#include <a_objects>
#include <core>
#include <float>
#include <colors>
#include <KIHC>
//=========================[Defines]============================================
///========================[Colors]==========================================
#define COLOR_GRAD1 0xB4B5B7AA
#define COLOR_GRAD2 0xBFC0C2AA
#define COLOR_GRAD3 0xCBCCCEAA
#define COLOR_GRAD4 0xD8D8D8AA
#define COLOR_GRAD5 0xE3E3E3AA
#define COLOR_GRAD6 0xF0F0F0AA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_RED 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_FADE1 0xE6E6E6AA
#define COLOR_FADE2 0xC8C8C8AA
#define COLOR_FADE3 0xAAAAAAAA
#define COLOR_FADE4 0x8C8C8CAA
#define COLOR_FADE5 0x6E6E6EAA
#define COLOR_PURPLE 0xC2A2DAAA
#define COLOR_DBLUE 0x2641FEAA
#define COLOR_ALLDEPT 0xFF8282AA
#define COLOR_ORANGE 0xFF9900AA
#define COLOR_GOLD 0xB8860BAA
#define COLOR_SYSTEM 0xEFEFF7AA
//========================[Teams]===========================================
#define TEAM_COP 1
#define TEAM_RUMAFIA 2
#define TEAM_Taxi 3
#define TEAM_ZIVI 4
#define TEAM_ITMAFIA 5
//=========================[Others]=========================================
#define PayDay_Amount 10000
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
#define ADMIN_SPEC_TYPE_NONE 0
#define ADMIN_SPEC_TYPE_PLAYER 1
#define ADMIN_SPEC_TYPE_VEHICLE 2
#define TICKET_PRICE 100 // $100
//=========================[New]================================================
new PLAYERLIST_authed[MAX_PLAYERS];
new Menu:Weapons;
new gdebug = 1;
new shifthour;
new ghour = 0;
new gminute = 0;
new gsecond = 0;
new timeshift = 0;
new BigEar[MAX_PLAYERS];
new gTeam[MAX_PLAYERS];
new exp[MAX_PLAYERS];
new Mute[MAX_PLAYERS];
new gSpectateID[MAX_PLAYERS];
new gSpectateType[MAX_PLAYERS];
new PlayerTickets[MAX_PLAYERS][6];
new bool:PlayerIn[MAX_PLAYERS];
new PlayerMatchs[MAX_PLAYERS];
new Menu:gMenu0[256];
new Menu:gMenue0[256];
//=========================[Forwards]===========================================
forward ABroadCast(color,const string[],level);
forward ProxDetectorS(Float:radi, playerid, targetid);
forward GameModeExitFunc();
forward SyncUp();
forward clock();
forward IsAtLocalToHeal(playerid);
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
forward SystemMsg(playerid,msg[]);
forward SendAdminMessage(color, string[]);
forward PayDay();
forward TimeUpdate();
forward GameModeInitExitFunc();
forward BroadCast(color,const string[]);
forward FixHour(hour);
forward SyncTime();
forward ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5);
forward GetPlayerID (string[]);
forward IsStringAName (string[]);
forward LotteryStart();
//=========================[Admin Spec STRTOK]==================================
adminspec_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;
}
//=========================[Main]===============================================
main()
{
print("----------------------------------");
print("///////////////////////////////");
print("*******************************");
print("* *");
print("* *------Los Santos RolePlay----------* *");
print("* by: [GA]Predator *");
print("*******************************");
print("///////////////////////////////");
print("----------------------------------");
}
//=========================[OnGameModeInit]=====================================
public OnGameModeInit()
{
// Don't use these lines if it's a filterscript
UsePlayerPedAnims();
SetGameModeText("LS RolePlay v0.1");
AllowInteriorWeapons(1);
AllowAdminTeleport(1);
gettime(ghour, gminute, gsecond);
FixHour(ghour);
ghour = shifthour;
//========================[AddStaticVehicle]====================================
AddStaticVehicleEx(596,-1381.9910,457.0832,6.9837,0.1452, 44, 86, 60000);/*Patriot cruiser*/
AddStaticVehicleEx(596,1558.392000,-1710.859000,5.466783,1.0, -1, -1, 60000);/*CopCruiser*/
AddStaticVehicleEx(596,1569.639000,-1710.859000,5.466783,1.0, -1, -1, 60000);/*CopCruiser*/
AddStaticVehicleEx(596,-2139.1995,-2393.7671,30.3452,140.7012, 0, 0, 60000);/*CopCruiser*/
AddStaticVehicleEx(425,-1279.8262,493.3734,18.0309,219.1345, -1, -1, 60000);/*Hunter*/
AddStaticVehicleEx(425,-1291.0063,492.3819,18.0305,223.8306, -1, -1, 60000);/*Hunter*/
AddStaticVehicleEx(596,1601.308000,-1621.916000,13.056540,90.0, -1, -1, 60000);/*CopCruiser*/
AddStaticVehicleEx(596,1535.8275,-1678.0283,13.1680,359.9876, -1, -1, 60000);/*CopCruiser*/
AddStaticVehicleEx(596,1561.860000,-1694.905000,6.139762,222.0,-1, -1, 60000);/*CopCruiser*/
AddStaticVehicleEx(470,-1375.1555,457.5534,6.9837,359.8331,-1, -1, 60000);/*Patriot*/
AddStaticVehicleEx(467,1067.1295,-295.5681,73.7826,179.6040, 90, -1, 60000);/*Hitman Oceanic*/
AddStaticVehicleEx(467,1077.3829,-295.1148,73.7812,180.2754, 90, -1, 60000);/*Hitman Oceanic*/
AddStaticVehicleEx(596,614.8,-588.5,17.4,240.0, -1, -1, 60000);/*CopCruiser*/
AddStaticVehicleEx(596,635.1,-561.5,16.5,180.0, -1, -1, 60000);/*CopCruiser*/
AddStaticVehicleEx(596,-2177.5759,-2362.5042,30.4296,141.0939, 0, 0, 60000);/*CopCruiser*/
AddStaticVehicleEx(490,1539.392000,-1646.262000,6.274928,180.0, -1, -1, 60000);/*FBI Rancher*/
AddStaticVehicleEx(490,1531.254000,-1647.431000,6.274976,200.0, -1, -1, 60000);/*FBI Rancher*/
AddStaticVehicleEx(470,-1363.1493,457.1042,6.9836,359.6740, -1, -1, 60000);/*Patriot*/
AddStaticVehicleEx(470,-1355.5931,456.7297,6.9836,0.0286, -1, -1, 60000);/*Patriot*/
AddStaticVehicleEx(596,1535.8459,-1668.7560,13.2653,359.7447,-1, -1, 60000);/*CopCruiser*/
AddStaticVehicleEx(407,-2550.1443,610.7148,14.3281,90.6597, -1, -1, 60000);/*FireTruck*/
AddStaticVehicleEx(596,-2181.2766,-2375.6953,30.3405,231.7148, 0, 0, 60000);/*CopCruiser*/
AddStaticVehicleEx(596,1545.7845,-1684.4004,5.6342,271.1593, 89, 1, 60000);/*General Car*/
AddStaticVehicleEx(596,1530.1611,-1676.0326,5.4563,231.7766, 89, 1, 60000);/*General Car*/
AddStaticVehicleEx(407,-2551.8792,587.1581,14.3281,90.4374,-1, -1, 60000);/*FireTruck*/
AddStaticVehicleEx(497, 1517.8,-1656.1,13.7,0.0, -1, -1, 60000);/*Police Maveric*/
AddStaticVehicleEx(416,-2637.0630,617.3499,14.3281,90.1464, -1, -1, 60000);/*Ambulance*/
AddStaticVehicleEx(416,-2661.4282,617.3460,14.3288,89.2072, -1, -1, 60000);/*Ambulance*/
AddStaticVehicleEx(416,-2662.4568,595.3354,14.3281,273.2716, -1, -1, 60000);/*Ambulance*/
AddStaticVehicleEx(431,1172.5,-1795.5,13.1,0.0, -1, -1, 60000);//64/*Bus*/
AddStaticVehicleEx(431,1182.1,-1795.9,13.1,0.0, -1, -1, 60000);//65/*Bus*/
AddStaticVehicleEx(430,-1443.4342,427.0862,-0.6994,268.8489,-1, -1, 60000);/*NG BOAT*/
AddStaticVehicleEx(430,-1442.0721,390.6206,-0.4339,270.1023,-1, -1, 60000);/*NG BOAT*/
AddStaticVehicleEx(467,1071.9189,-294.9166,73.7250,178.9444,90, -1, 60000);//68/*Hitman Oceanic*/
AddStaticVehicleEx(405,-2082.3562,-117.3896,34.9299,177.0056,17, 17, 60000);//69 Driving School /*Sentinel*/
AddStaticVehicleEx(405,-2072.5933,-117.4564,34.9383,178.0982,17, 17, 60000);//Driving School/*Sentinel*/
AddStaticVehicleEx(405,-2062.4253,-117.6652,34.9347,180.8394,17, 17, 60000);//Driving School/*Sentinel*/
AddStaticVehicleEx(434,551.7929,-1285.5260,16.9303,0.4147,-1, -1, 60000);//Rent car/*Hotknife*/
AddStaticVehicleEx(568,536.9888,-1286.5275,16.9993,359.1704,-1, -1, 60000); //Rent car/*Bandito*/
AddStaticVehicleEx(434,544.1793,-1286.1422,16.9492,7.3116,-1, -1, 60000);//Rent car/*Hotknife*/
AddStaticVehicleEx(434,-1949.9493,258.1949,35.1922,70.7581,-1, -1, 60000); //Rent car/*Hotknife*/
AddStaticVehicleEx(568,-1948.1650,264.8094,35.1930,72.6982,-1, -1, 60000); //Rent car/*Bandito*/
AddStaticVehicleEx(434,-1947.0601,270.3815,35.1954,66.0783,-1, -1, 60000); //Rent car/*Hotknife*/
AddStaticVehicleEx(456,2795.2,-2417.8,13.4,90.8,-1,-1,60000);//Component Truck/*Yankee*/
AddStaticVehicleEx(456,2783.9,-2417.9,13.4,90.8,-1,-1,60000);//Component Truck/*Yankee*/
AddStaticVehicleEx(440,2794.1,-2455.9,13.4,90.8,-1,-1,60000);//Component Truck/*Rumpo*/
AddStaticVehicleEx(440,2782.9,-2455.6,13.4,90.8,-1,-1,60000);//Component Truck/*Rumpo*/
AddStaticVehicleEx(420,-1986.4958,115.9394,27.3324,0.1277,-1, -1, 60000);//Taxi/*Taxi*/
AddStaticVehicleEx(487,-2703.3201,624.0250,14.1766,180.2649, 1, 3, 60000);//Medic Chopper/*Maverick*/
AddStaticVehicleEx(420,-1986.5049,129.1749,27.3299,359.6938,-1, -1, 60000);//Taxi/*Taxi*/
AddStaticVehicleEx(420,-1986.4310,150.1195,27.3299,0.0329,-1, -1, 60000);//Taxi //CAR ID 85/*Taxi*/
AddStaticVehicleEx(452,720.1,-1694.0,-0.4,179.4,-1,-1,60000);//Fishboat/*Speeder*/
AddStaticVehicleEx(452,721.2,-1629.4,-0.4,180.9,-1,-1,60000);//Fishboat/*Speeder*/
AddStaticVehicleEx(452,739.5,-1670.5,-0.6,177.5,-1,-1,60000);//Fishboat/*Speeder*/
AddStaticVehicleEx(452,-1474.4949,693.0169,0.1996,0.0751,-1,-1,60000);//Fishboat SF/*Speeder*/
AddStaticVehicleEx(452,-1720.0717,1439.6177,-0.4913,357.6789,-1,-1,60000);//Fishboat SF/*Speeder*/
AddStaticVehicleEx(520,-1430.4078,508.1596,18.9400,269.6329,44,86,60000);//NG Plane id 91
AddStaticVehicleEx(520,-1419.9038,493.5340,18.9350,269.6848,44,86,60000);//NG Plane id 92
AddStaticVehicleEx(520,-1398.6207,507.7513,18.9328,269.8143,44,86,60000); //NG Plane id 93
AddStaticVehicleEx(420,-1986.6089,163.8508,27.4837,359.5881,-1,-1,60000);//Taxi
AddStaticVehicleEx(487,1088.1736,-294.8004,73.7886,134.9237, 0, 1, 60000); //Hitman Chopper
AddStaticVehicleEx(488,-2044.1797,479.9963,35.1399,180.0648,-1,-1,60000); // newschopper
AddStaticVehicleEx(582,-2022.6146,458.6767,35.1414,0.7133,-1,-1,60000); // newsvan
AddStaticVehicleEx(582,-2031.3779,459.0133,35.1362,359.7429,-1,-1,60000); // newsvan
AddStaticVehicleEx(593,382.5172,2536.9561,16.5338,179.7261,-1,-1,60000);//Flyschool
AddStaticVehicleEx(513,348.3660,2536.9792,16.7418,178.8195,-1,-1,60000);//Flyschool
AddStaticVehicleEx(487,365.4068,2537.0327,16.6645,181.9959,-1,-1,60000);//Flyschool
AddStaticVehicleEx(593,-1429.2843,-505.8203,13.7824,205.7709,-1,-1,60000);//Airport SF
AddStaticVehicleEx(593,-1462.4779,-524.2803,13.7832,204.8137,-1,-1,60000);//Airport SF
AddStaticVehicleEx(593,1907.7614,-2624.4097,13.5416,53.1810,-1,-1,60000);//Airport LS
AddStaticVehicleEx(593,1887.0736,-2627.6543,13.5394,52.6116,-1,-1,60000);//Airport LS
AddStaticVehicleEx(513,-1354.3270,-466.5467,13.7827,162.0134,-1,-1,60000);//Airport SF
AddStaticVehicleEx(513,-1390.3510,-482.7985,13.7883,250.3124,-1,-1,60000);//Airport SF
AddStaticVehicleEx(513,1835.3215,-2624.1938,13.5405,56.0569,-1,-1,60000);//Airport LS
AddStaticVehicleEx(513,1813.2893,-2625.6296,13.5394,53.2858,-1,-1,60000);//Airport LS
AddStaticVehicleEx(571,2286.2141,-2354.5000,12.8306,225.8705,-1,-1,60000); // kart
AddStaticVehicleEx(571,2279.9412,-2348.4141,12.8312,225.8585,-1,-1,60000); // kart
AddStaticVehicleEx(571,2291.7932,-2345.5356,12.8305,227.3060,-1,-1,60000); // kart
AddStaticVehicleEx(571,2287.5615,-2341.6433,12.8306,226.5350,-1,-1,60000); // kart
AddStaticVehicleEx(571,2299.6785,-2338.3186,12.8307,224.3563,-1,-1,60000); // kart
AddStaticVehicleEx(571,2295.3887,-2334.9448,12.8307,227.9102,-1,-1,60000); // kart
AddStaticVehicleEx(560,1662.3564,-2324.6292,-3.0612,270.6094,9,39,60000); // Sultan
AddStaticVehicleEx(560,1649.7272,-2324.8494,-3.0604,270.0831,9,39,60000); // Sultan
AddStaticVehicleEx(562,1646.8011,-2313.7078,-3.1032,90.6876,35,1,6000); // elegy
AddStaticVehicleEx(562,1641.0297,-2313.7839,-3.1134,90.5563,35,1,6000); // elegy
AddStaticVehicleEx(420,1780.0959,-1932.9994,13.1662,179.0410,6,1,6000); // taxi
AddStaticVehicleEx(420,1783.9469,-1932.9420,13.1661,1.5891,6,1,6000); // taxi
AddStaticVehicleEx(420,1789.7711,-1933.1135,13.1668,0.0327,6,1,6000); // taxi
AddStaticVehicleEx(445,1242.2391,-805.9954,84.0156,179.5366,0,0,6000); // Admiral
AddStaticVehicleEx(405,1249.1576,-805.2897,84.0156,179.7218,0,0,6000); // sentinel
AddStaticVehicleEx(487,1290.9125,-786.8452,96.6376,182.2887,0,0,6000); // maverick
CreateVehicle(494,-1401.0436,-210.0052,1042.9913,1.6623,1,0,60000); //hotring 116
CreateVehicle(494,-1400.4019,-219.9365,1043.0348,5.3554,1,3,60000); //hotring
CreateVehicle(494,-1394.4932,-207.7917,1042.9963,3.6872,0,6,60000); //hotring
CreateVehicle(494,-1393.7854,-217.9354,1043.0325,2.9556,1,2,60000); //hotring
CreateVehicle(468,-1445.6392,-592.3033,1055.7831,90.2133,-1,-1,60000); //bike 120
CreateVehicle(468,-1433.1708,-592.4930,1055.6533,92.4067,-1,-1,60000); //bike
CreateVehicle(468,-1448.5325,-584.4943,1055.4949,95.5400,-1,-1,60000); //bike
CreateVehicle(468,-1434.8973,-585.1266,1055.2488,91.1533,-1,-1,60000); //bike
CreateVehicle(468,-1449.2814,1610.7823,1052.5313,272.9406,-1,-1,60000); // bike 124
CreateVehicle(468,-1453.8767,1611.2418,1052.5313,89.0355,-1,-1,60000); // bike
CreateVehicle(468,-1454.4746,1614.3342,1052.5313,86.8422,-1,-1,60000); // bike
CreateVehicle(468,-1449.5795,1614.0684,1052.5313,269.2039,-1,-1,60000); // bike
//========================[AddPlayerClass]======================================
AddPlayerClass(280,1568.4672,-1693.9225,5.8906,182.4565,6,0,25,100,28 ,200); // cop
AddPlayerClass(281,1568.4672,-1693.9225,5.8906,182.4565,6,0,25,100,28 ,200); // cop
AddPlayerClass(282,1568.4672,-1693.9225,5.8906,182.4565,6,0,25,100,28 ,200); // cop
AddPlayerClass(164,1282.8873,-816.8701,84.1261,179.5134,4,0,31,200,28,200); // russische mafia
AddPlayerClass(165,1282.8873,-816.8701,84.1261,179.5134,4,0,31,200,28,200); // russische mafia
AddPlayerClass(166,1282.8873,-816.8701,84.1261,179.5134,4,0,31,200,28,200); // russische mafia
AddPlayerClass(255,1793.2297,-1914.5317,13.3952,335.2144,5,0,30,200,28,200); // taxi fahrer
AddPlayerClass(7,1642.8331,-2332.5037,-2.6797,51.1829,24,50,30,200,28,200); // zivi
AddPlayerClass(60,1642.8331,-2332.5037,-2.6797,51.1829,24,50,30,200,28,200); // zivi
AddPlayerClass(170,1642.8331,-2332.5037,-2.6797,51.1829,24,50,30,200,28,200); // zivi
AddPlayerClass(120,1101.6492,-299.8464,73.9922,88.2183,23,100,33,15,28,200); // mafia
AddPlayerClass(117,1101.6492,-299.8464,73.9922,88.2183,23,100,33,15,28,200); // mafia
AddPlayerClass(113,1101.6492,-299.8464,73.9922,88.2183,23,100,33,15,28,200); // mafia
//========================[Pickups]============================================
AddStaticPickup(1273,2,1496.706298,-688.842834,95.240135);//Pickup Id 0;
//========================[Create Object]=======================================
//========================[Timer]===============================================
SetTimer("LotteryStart", 300000, 1);
return 1;
}
//=======================[OnPlayerInteriorChange]===============================
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
// IF ANYONE IS SPECTATING THIS PLAYER, WE'LL ALSO HAVE
// TO CHANGE THEIR INTERIOR ID TO MATCH
new x = 0;
while(x!=MAX_PLAYERS) {
if( IsPlayerConnected(x) && GetPlayerState(x) == PLAYER_STATE_SPECTATING &&
gSpectateID[x] == playerid && gSpectateType[x] == ADMIN_SPEC_TYPE_PLAYER )
{
SetPlayerInterior(x,newinteriorid);
}
x++;
}
}
//=========================[OnGameModeExit]=====================================
public OnGameModeExit()
{
return 1;
}
//=========================[OnPlayerRequestClass]===============================
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, -3738.5388,1617.1871,62.4362);
SetPlayerCameraPos(playerid, -3738.5388,1621.1871,62.4362);
SetPlayerCameraLookAt(playerid, -3738.5388,1617.1871,62.4362);
SetPlayerFacingAngle(playerid,0.0);
if(classid == 0 || classid == 1 || classid == 2){
gTeam[playerid] = TEAM_COP;
GameTextForPlayer(playerid, "~w~Cops", 500, 6);}
else if(classid == 3 || classid == 4 || classid == 5){
gTeam[playerid] = TEAM_RUMAFIA;
GameTextForPlayer(playerid, "Russische Mafia", 500, 6);}
else if(classid == 6 ){
gTeam[playerid] = TEAM_Taxi;
GameTextForPlayer(playerid, "~r~ Taxi Fahrer", 500, 6);}
else if(classid == 7 || classid == 8 || classid == 9){
gTeam[playerid] = TEAM_ZIVI;
GameTextForPlayer(playerid, "~g~Zivilist", 500, 6);}
else if(classid == 10 || classid == 11 || classid == 12){
gTeam[playerid] = TEAM_ITMAFIA;
GameTextForPlayer(playerid, "~p~Italienische Mafia", 500, 6);}
return 1;
}
//=========================[OnPlayerRequestSpawn]===============================
public OnPlayerRequestSpawn(playerid)
{
SetPlayerInterior(playerid,0);
if(gTeam[playerid] == TEAM_COP)
SetPlayerColor(playerid, 0xD8D8D8AA);
else if(gTeam[playerid] == TEAM_RUMAFIA)
SetPlayerColor(playerid, 0x00FF00FF);
else if(gTeam[playerid] == TEAM_Taxi)
SetPlayerColor(playerid, 0xF200F2FF);
else if(gTeam[playerid] == TEAM_ZIVI)
SetPlayerColor(playerid, 0xFFFF00AA);
else if(gTeam[playerid] == TEAM_ITMAFIA)
SetPlayerColor(playerid, 0x00FFFFFF);
return 1;
}
//=========================[SystemMsg]==========================================
public SystemMsg(playerid,msg[]) {
if ((IsPlayerConnected(playerid))&&(strlen(msg)>0)) {
SendClientMessage(playerid,COLOR_SYSTEM,msg);
}
return 1;
}
//=========================[OnPlayerConnect]====================================
public OnPlayerConnect(playerid)
{
clock();
new PlayerName[30], str[256];
GetPlayerName(playerid, PlayerName, 30);
format(str, 256, "%s has joined the server", PlayerName);
SendClientMessageToAll(COLOR_GRAD1, str);
format(str, sizeof(str), "%s.dudb.sav", PlayerName);
if (!udb_Exists(PlayerName2(playerid)))
{
SendClientMessage(playerid, COLOR_GREEN, "Willkommen zum German Los Santos RolePlay!");
SendClientMessage(playerid, COLOR_GRAD2, "Tippe /help um die Commands zu sehen und /admins um die Admins zu sehen, die gerade Online sind");
SendClientMessage(playerid, COLOR_GRAD3, "Tippe /register <password> um einen Account zu erstellen oder /help für Hilfe zum Game Mode");
SendClientMessage(playerid, COLOR_YELLOW, "Tippe /credits um die Credits von den Game Mode scriptern zu sehen");
return 1;
}
else
{
PLAYERLIST_authed[playerid]=false;
SendClientMessage(playerid, COLOR_GREEN, "Willkommen!");
SendClientMessage(playerid, COLOR_YELLOW, "Dieser Nickname ist registriert!");
SendClientMessage(playerid, COLOR_WHITE, "Du kannst dich mit /login <password> einloggen");
return 1;
}
}
//=========================[PlayerName2]========================================
stock PlayerName2(playerid) {
new name[255];
GetPlayerName(playerid, name, 255);
return name;
}
//=========================[OnPlayerDisconnect]=================================
public OnPlayerDisconnect(playerid, reason)
{
new PlayerName[30], str[256];
switch (reason)
{
case 0:
{
GetPlayerName(playerid, PlayerName, 30);
format(str, 256, "%s has left the server (Timeout)", PlayerName);
SendClientMessageToAll(COLOR_GRAD1, str);
}
case 1:
{
GetPlayerName(playerid, PlayerName, 30);
format(str, 256, "%s has left the server (Leaving)", PlayerName);
SendClientMessageToAll(COLOR_GRAD1, str);
}
case 2:
{
GetPlayerName(playerid, PlayerName, 30);
format(str, 256, "%s has left the server (Kicked /Banned)", PlayerName);
SendClientMessageToAll(COLOR_GRAD1, str);
}
}
if (PLAYERLIST_authed[playerid]) {
// Was loggedin, so save the data!
dUserSetINT(PlayerName2(playerid)).("money",GetPlayerMoney(playerid));
}
PLAYERLIST_authed[playerid]=false;
return false;
}
/*
* /register password
*
*/
dcmd_register(playerid,params[]) {
// The command shouldn't work if we already are authed
if (PLAYERLIST_authed[playerid]) return SystemMsg(playerid,"Du bist bereits registriert.");
// The command shouldn't work if an account with this
// nick already exists
if (udb_Exists(PlayerName2(playerid))) return SystemMsg(playerid,"Diesen Account gibs schon, bitte benutze '/login password'.");
// Did he forgot the password?
if (strlen(params)==0) return SystemMsg(playerid,"Richtige Benutzung: '/register password'");
// We save the money to the accstate
if (udb_Create(PlayerName2(playerid),params)) return SystemMsg(playerid,"Account erfolgreich erstellt. Logg dich jetzt mit '/login password' ein.");
return true;
}
/*
* /login password
*
*/
dcmd_login(playerid,params[]) {
// The command shouldn't work if we already are authed
if (PLAYERLIST_authed[playerid]) return SystemMsg(playerid,"Du bist bereits Eingeloggt.");
// The command shouldn't work if an account with this
// nick does not exists
if (!udb_Exists(PlayerName2(playerid))) return SystemMsg(playerid,"Diesen Account gibs nicht. Bitte benutze '/register password'.");
// Did he forgot the password?
if (strlen(params)==0) return SystemMsg(playerid,"Richtige Benutzung: '/login password'");
if (udb_CheckLogin(PlayerName2(playerid),params)) {
// Login was correct
// Following thing is the same like the missing SetPlayerCommand
GivePlayerMoney(playerid,dUserINT(PlayerName2(playerid)).("money")-GetPlayerMoney(playerid));
PLAYERLIST_authed[playerid]=true;
return SystemMsg(playerid,"Erfolgreich eingeloggt!");
}
// Login was incorrect
return SystemMsg(playerid,"Login fehlgeschlagen!");
}
//================================[OnPlayerSpawn]===============================
public OnPlayerSpawn(playerid)
{
if(GetPlayerMoney(playerid)<1000)
{
GivePlayerMoney(playerid, 6000);
}
SetPlayerCheckpoint(playerid, -3897.0706,1661.6644,12.2917, 2.0);
return 1;
}
//==============================[Lotto]=========================================
public LotteryStart()
{
new rand1, rand2, rand3, rand4, rand5, rand6;
rand1 = random(49);
rand2 = random(49);
rand3 = random(49);
rand4 = random(49);
rand5 = random(49);
rand6 = random(49);
new string[256];
format(string, sizeof(string), "Die Lotto Zahlen: %d, %d, %d, %d, %d, %d", rand1, rand2, rand3, rand4, rand5, rand6);
SendClientMessageToAll(COLOR_GREEN, string);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && PlayerIn[i])
{
for(new j = 0; j < 6; j++)
{
if(PlayerTickets[i][j] == rand1 || PlayerTickets[i][j] == rand2 || PlayerTickets[i][j] == rand3 || PlayerTickets[i][j] == rand4 || PlayerTickets[i][j] == rand5 || PlayerTickets[i][j] == rand6)
{
PlayerMatchs[i]++;
}
PlayerTickets[i][j]=0;
}
PlayerIn[i]=false;
if(PlayerMatchs[i] > 0)
{
format(string, sizeof(string), "Du hast %d Richtige.Du hast %d$ Gewonnen!!!", PlayerMatchs[i], PlayerMatchs[i]*100);
SendClientMessage(i, COLOR_LIGHTBLUE, string);
GivePlayerMoney(i,PlayerMatchs[i]*100);
PlayerMatchs[i]=0;
}
}
}
}
//=========================[Weapon Menu]========================================
public OnPlayerSelectedMenuRow(playerid, row)
{
new Menu:Current = GetPlayerMenu(playerid);
if (Current == gMenu0[255]) {
switch(row) {
case 0: {
DestroyCurrentMenu(playerid);
OnInfo(playerid,0);
TogglePlayerControllable(playerid,1); }
case 1: {
DestroyCurrentMenu(playerid);
TogglePlayerControllable(playerid,1);
if (OnEnter(playerid,0)==1){
ShowMenuForPlayer(gMenue0[255],playerid);
SetPlayerInterior(playerid,2);
SetPlayerPos(playerid,2451.77, -1699.80,1013.51); }}
case 2: {
DestroyCurrentMenu(playerid);
TogglePlayerControllable(playerid,1);
if (OnBuy(playerid,0)==1){
ShowMenuForPlayer(gMenue0[255],playerid);
SetPlayerInterior(playerid,2);
SetPlayerPos(playerid,2451.77, -1699.80,1013.51); }}
case 3: {
DestroyCurrentMenu(playerid);
TogglePlayerControllable(playerid,1);
if (OnRent(playerid,0)==1){
ShowMenuForPlayer(gMenue0[255],playerid);
SetPlayerInterior(playerid,2);
SetPlayerPos(playerid,2451.77, -1699.80,1013.51); }}
case 4: {
DestroyCurrentMenu(playerid);
SellHouse(playerid,0);
TogglePlayerControllable(playerid,1); }
case 5: {
DestroyCurrentMenu(playerid);
LockHouse(playerid,0);
TogglePlayerControllable(playerid,1); }}}
if (Current == gMenue0[255]) {
switch(row) {
case 0: {
new Float:Chealth;
GetPlayerHealth(playerid,Chealth);
SetPlayerHealth(playerid,Chealth+25);
ShowMenuForPlayer(gMenue0[255],playerid);}
case 1: {
new Float:Carmour;
GetPlayerArmour(playerid,Carmour);
SetPlayerArmour(playerid,Carmour+2);
ShowMenuForPlayer(gMenue0[255],playerid);}
case 2: {
SetPlayerInterior(playerid,0);
SetPlayerPos(playerid,1496.706298,-688.842834,95.240135);}}}
}
return 0;
}
//========================[OnPlayerDeath]=======================================
public OnPlayerDeath(playerid, killerid, reason)
{
SendDeathMessage(killerid, playerid, reason);
if (killerid == INVALID_PLAYER_ID)
{
}
else
{
if (gTeam[killerid] != gTeam[playerid])
{
// Valid kill
exp[killerid] ++;
SetPlayerScore(killerid, exp[killerid]);
}
else
{
//Team Killer!
GameTextForPlayer(killerid, "~g~Das war einer von deinen Leuten..", 1000, 1);
}
}
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerPrivmsg(playerid, recieverid, text[])
{
new string[256];
new playername[MAX_PLAYER_NAME];
new recievername[MAX_PLAYER_NAME];
GetPlayerName(recieverid, recievername, sizeof(recievername));
GetPlayerName(playerid, playername, sizeof(playername));
for (new a = 0; a < MAX_PLAYERS; a++)
{
if (IsPlayerConnected(a) && IsPlayerAdmin(a) && a != playerid && a != recieverid)
{
format(string, sizeof(string), "%s to %s: %s", playername, recievername, text);
SendClientMessage(a, 0xFFFF00AA, string);
}
}
return 1;
}
//========================[OnPlayerCommandText]=================================
public OnPlayerCommandText(playerid, cmdtext[])
{
new giveplayer[MAX_PLAYER_NAME];
new tmp[256];
new sendername[MAX_PLAYER_NAME];
new string[256];
new cmd[256];
new idx;
new giveplayerid;
new moneys;
new playermoney;
new specplayerid;
cmd = strtok(cmdtext, idx);
dcmd(login,5,cmdtext); // because login has 5 characters
dcmd(register,8,cmdtext); // because register has 8 characters
///========================[Admin Spec]=========================================
if(strcmp(cmd, "/spec", true) == 0) {
new tmp2[128];
tmp2 = adminspec_strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /spec [playerid]");
return 1;
}
specplayerid = strval(tmp);
if(!IsPlayerConnected(specplayerid)) {
SendClientMessage(playerid, COLOR_RED, "specplayer: that player isn't active.");
return 1;
}
TogglePlayerSpectating(playerid, 1);
PlayerSpectatePlayer(playerid, specplayerid);
SetPlayerInterior(playerid,GetPlayerInterior(specplayerid));
gSpectateID[playerid] = specplayerid;
gSpectateType[playerid] = ADMIN_SPEC_TYPE_PLAYER;
return 1;
}
if(strcmp(cmd, "/specoff", true) == 0) {
TogglePlayerSpectating(playerid, 0);
gSpectateID[playerid] = INVALID_PLAYER_ID;
gSpectateType[playerid] = ADMIN_SPEC_TYPE_NONE;
return 1;
}
//=========================[Polizei Commands]===================================
if(strcmp(cmd, "/rechtspd", true) == 0) {
new pid = strval(tmp);
SendClientMessage(playerid,COLOR_GOLD,"Aufforderung versendet!");
if (IsPlayerConnected(pid))
{
GameTextForPlayer(giveplayerid,"Polizei! Fahren Sie rechts ran",5000,5);
}
return 1;
}
//=========================[Eject Spieler vom Auto]=============================
if(strcmp(cmd,"/eject",true)==0){
new ejtmp[256];
new playername[MAX_PLAYER_NAME];
new vehicleid;
new pid;
new playerstate = GetPlayerState(playerid);
new rest[256];
GetPlayerName(playerid,playername,sizeof(playername));
ejtmp = strtok(cmdtext,idx);
if(!IsPlayerInAnyVehicle(playerid)){
SendClientMessage(playerid,COLOR_ORANGE,"Du bist in keinem Auto ");
return 1;
}
if(playerstate == PLAYER_STATE_PASSENGER){
SendClientMessage(playerid,COLOR_ORANGE,"Fehler....");
return 1;
}
if(playerstate != PLAYER_STATE_DRIVER){
SendClientMessage(playerid,COLOR_ORANGE,"Du musst der Fahrer sein");
return 1;
}
vehicleid = GetPlayerVehicleID(playerid);
if(!strlen(rest)){
SendClientMessage(playerid,COLOR_WHITE,"[USAGE]: /eject [playerid]");
return 1;
}
pid = strval(ejtmp);
if(!IsPlayerConnected(pid)){
SendClientMessage(playerid,COLOR_ORANGE,"Spieler nicht gefunden");
return 1;
}
if (pid == playerid) {
SendClientMessage(playerid,COLOR_ORANGE,"Du kannst dich nicht selber aus dem Fahrzeug kicken");
return 1;
}
if(!IsPlayerInVehicle(pid,vehicleid)){
SendClientMessage(playerid,COLOR_ORANGE,"Spieler ist nicht im Fahrzeug");
return 1;
}
RemovePlayerFromVehicle(pid);
format(string,sizeof(string),"Du wurdest aus %s's Auto gekickt",playername);
SendClientMessage(playerid,COLOR_ORANGE,string);
return 1;
}
//=========================[Lotto]==============================================
if(strcmp(cmd, "/buyticket", true) == 0) {
new no1[256], no2[256], no3[256], no4[256], no5[256], no6[256];
no1 = strtok(cmdtext, idx);
no2 = strtok(cmdtext, idx);
no3 = strtok(cmdtext, idx);
no4 = strtok(cmdtext, idx);
no5 = strtok(cmdtext, idx);
no6 = strtok(cmdtext, idx);
if(!strlen(no1) || !strlen(no2) || !strlen(no3) || !strlen(no4) || !strlen(no5) || !strlen(no6))
{
return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /buyticket [1] [2] [3] [4] [5] [6]");
}
if(GetPlayerMoney(playerid) >= TICKET_PRICE)
{
GivePlayerMoney(playerid, -1*TICKET_PRICE);
PlayerIn[playerid]=true;
PlayerTickets[playerid][0]=strval(no1);
PlayerTickets[playerid][1]=strval(no2);
PlayerTickets[playerid][2]=strval(no3);
PlayerTickets[playerid][3]=strval(no4);
PlayerTickets[playerid][4]=strval(no5);
PlayerTickets[playerid][5]=strval(no6);
format(string, sizeof(string), "Deine Lottozahlen: %d, %d, %d, %d, %d, %d", strval(no1), strval(no2), strval(no3), strval(no4), strval(no5), strval(no6));
return SendClientMessage(playerid, COLOR_WHITE, string);
} else {
format(string, sizeof(string), "Du kannst dir ein Lotto Ticket (%d $) nicht Leisten", TICKET_PRICE);
return SendClientMessage(playerid, COLOR_RED, string);
}
//return 1;
}
//=========================[Report Commands]=====================================
if (strcmp(cmd, "/report", true) == 0)
{
new string2[256];
new str[256],len=9;
if(!strlen(tmp))
{
SendClientMessage(playerid,COLOR_BLUE,"Server: Tippe /report [ID] [GRUND]");
return 1;
}
len=len+strlen(tmp);
new pid=strval(tmp);
if(!IsPlayerConnected(pid))
{
format(string,sizeof(string),"Server: invalid player-id '%d'",pid);
SendClientMessage(playerid,COLOR_BLUE,string);
return 1;
}
tmp=strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,COLOR_BLUE,"Server: Tippe /report [ID] [GRUND]");
return 1;
}
strmid(str,cmdtext,len,sizeof(str));
GetPlayerName(playerid,string,sizeof(string));GetPlayerName(pid,string2,sizeof(string2));
printf("BERICHT: von '%s' ID%d über '%s' ID%d",string,playerid,string2,pid);
printf("GRUND: %s",str);
for(new loop=0;loop<MAX_PLAYERS;loop++)
{
if(IsPlayerAdmin(loop))
{
format(cmd,sizeof(cmd),"Bericht: von %s ID%d über %s ID%d",string,playerid,string2,pid);
SendClientMessage(loop,COLOR_RED,cmd);
format(cmd,sizeof(cmd),"Grund: %s",str);
SendClientMessage(loop,COLOR_RED,cmd);
}
}
SendClientMessage(playerid,COLOR_BLUE,"Server: Sage es den Admins auf dem Server!");
format(string,sizeof(string),"send: %s ID%d - %s",string2,pid,str);
SendClientMessage(playerid,COLOR_BLUE,string);
return 1;
}
if (strcmp(cmd, "/bugreport") == 0)
{
new Text2Tmp[256];
format(Text2Tmp,sizeof(Text2Tmp),"%s",cmdtext);
new File:f=fopen("Bugreports.txt",io_append);
fwrite(f, "Bug--->>");
fwrite(f,Text2Tmp);
fclose(f);
print("Bug Reported to Text File");
SendClientMessage(playerid, COLOR_WHITE, "The Bug has been written to the Bug file");
return 1;
}
//==========================[Lock & Unlock command]=============================
if (strcmp(cmd, "/lock", true) == 0)
{
if(IsPlayerInAnyVehicle(playerid))
{
if(GetPlayerState(playerid)==PLAYER_STATE_DRIVER)
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(i!=playerid)
{
SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 1);
}
}
SendClientMessage(playerid, COLOR_GREY, "Fahrzeug abgeschlossen.");
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Du kannst das Fahrzeug nicht zuschließen.");
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Du bist in keinem Fahrzeug!");
}
return 1;
}
if (strcmp(cmd, "/open", true) == 0)
{
if(IsPlayerInAnyVehicle(playerid))
{
if(GetPlayerState(playerid)==PLAYER_STATE_DRIVER)
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(i!=playerid)
{
SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 0);
}
}
SendClientMessage(playerid, COLOR_GREY, "Fahrzeug aufgeschlossen.");
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Du kannst das Fahrzeug nicht aufschließen.");
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Du bist im Moment in keinen Fahrzeug!");
}
return 1;
}
//=========================[Animnhelp]==========================================
if(strcmp(cmd, "/animhelp", true) == 0) {
SendClientMessage(playerid, COLOR_WHITE,"/handsup /trink /bombe/arrest /lachen /gucken /klauen /wankout");
SendClientMessage(playerid, COLOR_WHITE,"/coparrest /arrest /injured /slapped /frauchen /coplook /lay");
SendClientMessage(playerid, COLOR_WHITE,"/cover /vomit /essen /wave /slapass /tot /deal /kiss /cracking");
SendClientMessage(playerid, COLOR_WHITE,"/piss /rauchen /sitzen /fu /strip /reden");
return 1;
}
//=========================[Animationen]========================================
if(strcmp(cmd, "/handsup", true) == 0) {
if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) {
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_HANDSUP);
return 1;
}
}
// Drunk
if(strcmp(cmd, "/drinken", true) == 0) {
if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
{
ApplyAnimation(playerid,"PED", "WALK_DRUNK",4.0,0,1,0,0,0);
SendClientMessage(playerid, 0xFF0000FF, "Du bist nun besoffen !"); // Walk Drunk
return 1;
}
}
// Place a Bomb
if (strcmp("/bombe", cmdtext, true) == 0) {
ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 4.0, 0, 0, 0, 0, 0); // Place Bomb
SendClientMessage(playerid, 0xFF0000FF, "Du hast eine Bombe plaziert");
return 1;
}
// Police Arrest
if (strcmp("/arrest", cmdtext, true, 7) == 0) {
ApplyAnimation( playerid,"ped", "ARRESTgun", 4.0, 0, 0, 0, 0, 0); // Gun Arrest
SendClientMessage(playerid, 0xFF0000FF, "Du wurdest Arrestet mit deiner Waffe");
return 1;
}
// Laugh
if (strcmp("/lachen", cmdtext, true) == 0) {
ApplyAnimation(playerid, "RAPPING", "Laugh_01", 4.0, 0, 0, 0, 0, 0); // Laugh
SendClientMessage(playerid, 0xFF0000FF, "Du Lachst");
return 1;
}
// Rob Lookout
if (strcmp("/gucken", cmdtext, true) == 0) {
ApplyAnimation(playerid, "SHOP", "ROB_Shifty", 4.0, 0, 0, 0, 0, 0); // Rob Lookout
SendClientMessage(playerid, 0xFF0000FF, "Du guckst ob die Polzei kommt !");
return 1;
}
// Rob Threat
if (strcmp("/klauen", cmdtext, true) == 0) {
ApplyAnimation(playerid, "SHOP", "ROB_Loop_Threat", 4.0, 0, 0, 0, 0, 0); // Rob
SendClientMessage(playerid, 0xFF0000FF, "Du Klaust !");
return 1;
}
// Wank Out
if (strcmp("/wankout", cmdtext, true) == 0) {
ApplyAnimation(playerid, "PAULNMAC", "wank_loop", 4.0, 0, 0, 0, 0, 0); // Wank In
SendClientMessage(playerid, 0xFF0000FF, "Du fängst an zu Schaukeln");
return 1;
}
// Police Arrest
if (strcmp("/coparrest", cmdtext, true) == 0) {
ApplyAnimation(playerid, "POLICE", "plc_drgbst_01", 4.0, 0, 0, 0, 0, 0); // Arrest
SendClientMessage(playerid, 0xFF0000FF, "Du hast jemanden Arrestet");
return 1;
}
// Arrested
if (strcmp("/arrest", cmdtext, true) == 0) {
ApplyAnimation(playerid, "POLICE", "crm_drgbst_01", 4.0, 0, 0, 0, 0, 0); // Arrested
SendClientMessage(playerid, 0xFF0000FF, "Du wirdest Arrestet");
return 1;
}
// Injury
if (strcmp("/injured", cmdtext, true) == 0) {
ApplyAnimation(playerid, "SWEET", "Sweet_injuredloop", 4.0, 0, 0, 0, 0, 0); // Injured
SendClientMessage(playerid, 0xFF0000FF, "Du bist injured");
return 1;
}
// Ass Slapped
if (strcmp("/slapped", cmdtext, true) == 0) {
ApplyAnimation(playerid, "SWEET", "ho_ass_slapped", 4.0, 0, 0, 0, 0, 0); // Ass Slapped
SendClientMessage(playerid, 0xFF0000FF, "Du wurdest geslapped");
return 1;
}
// Female Smoking
if (strcmp("/frauchen", cmdtext, true) == 0) {
ApplyAnimation(playerid, "SMOKING", "F_smklean_loop", 4.0, 0, 0, 0, 0, 0); // Female Smoking
SendClientMessage(playerid, 0xFF0000FF, "Du Rauchst eine Zigarette");
return 1;
}
// Cop Look
if (strcmp("/coplook", cmdtext, true) == 0) {
ApplyAnimation(playerid, "COP_AMBIENT", "Coplook_loop", 4.0, 0, 0, 0, 0, 0); // Cop Looking
SendClientMessage(playerid, 0xFF0000FF, "Du guckst");
return 1;
}
// Lay Down
if (strcmp("/lay", cmdtext, true, 6) == 0) {
ApplyAnimation(playerid,"BEACH", "bather", 4.0, 0, 0, 0, 0, 0); // Lay down
SendClientMessage(playerid, 0xFF0000FF, "Laying down");
return 1;
}
// Take Cover
if (strcmp("/cover", cmdtext, true, 3) == 0) {
ApplyAnimation(playerid, "ped", "cower", 3.0, 0, 0, 0, 0, 0); // Taking Cover
SendClientMessage(playerid, 0xFF0000FF, "Du nimmst Deckung");
return 1;
}
// Vomit
if (strcmp("/vomit", cmdtext, true) == 0) {
ApplyAnimation(playerid, "FOOD", "EAT_Vomit_P", 3.0, 0, 0, 0, 0, 0); // Vomit BAH!
SendClientMessage(playerid, 0xFF0000FF, "Puking :S");
return 1;
}
// Eat Burger
if (strcmp("/essen", cmdtext, true) == 0) {
ApplyAnimation(playerid, "FOOD", "EAT_Burger", 3.00, 0, 0, 0, 0, 0); // Eat Burger
SendClientMessage(playerid, 0xFF0000FF, "Du isst einen Hamburger");
return 1;
}
// Wave
if (strcmp("/wave", cmdtext, true) == 0) {
ApplyAnimation(playerid, "KISSING", "BD_GF_Wave", 3.0, 0, 0, 0, 0, 0); // Wave
SendClientMessage(playerid, 0xFF0000FF, "Waving");
return 1;
}
// Slap Ass
if (strcmp("/slapass", cmdtext, true) == 0) {
ApplyAnimation(playerid, "SWEET", "sweet_ass_slap", 4.0, 0, 0, 0, 0, 0); // Ass Slapping
SendClientMessage(playerid, 0xFF0000FF, "Slapping Ass");
return 1;
}
// Death Crawling
if (strcmp("/tot", cmdtext, true) == 0) {
ApplyAnimation(playerid, "WUZI", "CS_Dead_Guy", 4.0, 0, 0, 0, 0, 0); // Dead Crawling
SendClientMessage(playerid, 0xFF0000FF, "Du bist Tot");
return 1;
}
// Dealer
if (strcmp("/deal", cmdtext, true) == 0) {
ApplyAnimation(playerid, "DEALER", "DEALER_DEAL", 4.0, 0, 0, 0, 0, 0); // Deal Drugs
SendClientMessage(playerid, 0xFF0000FF, "Du Dealst mit Drogen");
return 1;
}
// Kiss
if (strcmp("/kiss", cmdtext, true, 5) == 0) {
ApplyAnimation(playerid, "KISSING", "Playa_Kiss_02", 3.0, 0, 0, 0, 0, 0); // Kiss
SendClientMessage(playerid, 0xFF0000FF, "Du küsst !");
return 1;
}
// Crack Dieing
if (strcmp("/cracking", cmdtext, true, 6) == 0) {
ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 0, 0, 0, 0, 0); // Dieing of Crack
SendClientMessage(playerid, 0xFF0000FF, "Du nimmst crack");
return 1;
}
// Piss
if (strcmp("/pissen", cmdtext, true, 8) == 0) {
ApplyAnimation(playerid, "PAULNMAC", "Piss_in", 3.0, 0, 0, 0, 0, 0); // Pissing
SendClientMessage(playerid, 0xFF0000FF, "Du Pisst !");
return 1;
}
// Male Smoking
if (strcmp("/rauchen", cmdtext, true, 4) == 0) {
ApplyAnimation(playerid,"SMOKING", "M_smklean_loop", 4.0, 0, 0, 0, 0, 0); // Smoke
SendClientMessage(playerid, 0xFF0000FF, "Du Rauchst einen Joint !");
return 1;
}
// Sit
if (strcmp("/sitzen", cmdtext, true, 4) == 0) {
ApplyAnimation(playerid,"BEACH", "ParkSit_M_loop", 4.0, 0, 0, 0, 0, 0); // Sit
SendClientMessage(playerid, 0xFF0000FF, "Du setzt dich hin !");
return 1;
}
// Fuck U
if (strcmp("/fu", cmdtext, true, 2) == 0) {
ApplyAnimation( playerid,"ped", "fucku", 4.1, 0, 1, 1, 1, 1 ); // Wave fist / Pull fingers (with block hands)
SendClientMessage(playerid, 0xFF0000FF, "Du zeigst den Finger");
return 1;
}
// Strip-Tease
if (strcmp("/strip", cmdtext, true, 6) == 0)
{
switch (cmdtext[7])
{
case 'a', 'A':{ ApplyAnimation( playerid,"STRIP", "strip_A", 4.1, 0, 1, 1, 1, 1 ); return 1; } // Strip
case 'b', 'B':{ ApplyAnimation( playerid,"STRIP", "strip_B", 4.1, 0, 1, 1, 1, 1 ); return 1; } // Strip
case 'c', 'C':{ ApplyAnimation( playerid,"STRIP", "strip_C", 4.1, 0, 1, 1, 1, 1 ); return 1; } // Strip
case 'd', 'D':{ ApplyAnimation( playerid,"STRIP", "strip_D", 4.1, 0, 1, 1, 1, 1 ); return 1; } // Strip
case 'e', 'E':{ ApplyAnimation( playerid,"STRIP", "strip_E", 4.1, 0, 1, 1, 1, 1 ); return 1; } // Strip
case 'f', 'F':{ ApplyAnimation( playerid,"STRIP", "strip_F", 4.1, 0, 1, 1, 1, 1 ); return 1; } // Strip
case 'g', 'G':{ ApplyAnimation( playerid,"STRIP", "strip_G", 4.1, 0, 1, 1, 1, 1 ); return 1; } // Strip
} SendClientMessage(playerid, 0xFF0000FF, "Du Stripst !!");
return 1;
}
// Idle Chat
if(strcmp(cmd, "/reden", true) == 0)
{
if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
{
ApplyAnimation(playerid,"PED","IDLE_CHAT",4.1,0,1,1,1,1);
SendClientMessage(playerid, 0xFF0000FF, "Du Redest !"); // Chat
return 1;
}
}
//=========================[HealHelp]===========================================
if(strcmp(cmd, "/healhelp", true) == 0 || strcmp(cmd, "/healh", true) == 0)
{
SendClientMessage(playerid, COLOR_WHITE,"Du kannst dich an einem Krankenhaus heilen.");
return 1;
}
//=========================[AdminHelp]==========================================
if(strcmp(cmd, "/ahelp", true) == 0 || strcmp(cmd, "/ah", true) == 0)
{
if(IsPlayerAdmin(playerid)){
SendClientMessage(playerid, COLOR_WHITE,"/kick /ban /akill /slap /mute /unmute /freeze /thaw");
SendClientMessage(playerid, COLOR_WHITE,"/cnn /tod (/a)dmin /spec /specoff");
}else{
SendClientMessage(playerid, COLOR_RED,"Only Admins can see the Admin Commands!");
}
return 1;
}
//=========================[Objective]==========================================
if(strcmp(cmd, "/objective", true) == 0)
{
SendClientMessage(playerid, COLOR_WHITE,"Objective:");
SendClientMessage(playerid, COLOR_WHITE,"In diesem Game Mode geht es nur um das Rollenspiel.");
SendClientMessage(playerid, COLOR_RED,"Sinnlosen töten ist nicht erlaubt.");
SendClientMessage(playerid, COLOR_GRAD1,"Enjoy");
return 1;
}
//=========================[Rules]==============================================
if(strcmp(cmd, "/rules", true) == 0)
{
SendClientMessage(playerid, COLOR_WHITE,"Bitte lies dir Aufmerksam die Regeln durch, danke.");
SendClientMessage(playerid, COLOR_WHITE,"KICKBARE GRÜNDE: Spamming, Race start killing, Konstantes Beleidigen, Bugs ausnutzen um sich einen Vorteil zu erschaffem , Drive by");
SendClientMessage(playerid, COLOR_RED,"BANNBARE GRÜNDE: Cheating, Konstantes Spamming, Ignorierung der Admins & der Regeln. Der SAWN-OFF Bug is nicht erlaubt!");
SendClientMessage(playerid, COLOR_GRAD1,"ANDERE DINGE: Es gibt andere Dinge die die Admins mit dir machen können, jail, freeze etc.");
SendClientMessage(playerid, COLOR_GRAD1,"Komm nicht nur in den Server für Paydays, erwischen wir einen Spieler dabei, bekommt er ein 24h Ban!");
SendClientMessage(playerid, COLOR_GRAD1,"Wenn du weitere Fragen hast: /admins Damit siehst du eine Liste der online Admins die dir weiterhelfen.");
return 1;
}
//============================[Help]============================================
if(strcmp(cmd, "/help", true) == 0)
{
SendClientMessage(playerid, COLOR_GRAD1,"*** ACCOUNT *** /register /login");
SendClientMessage(playerid, COLOR_GRAD2,"*** GENERAL *** /buygun /pay /time /id /heal (/healh)elp");
SendClientMessage(playerid, COLOR_GRAD3,"*** CHAT *** (/w)hisper (/s)hout (/l)ocal (/ad)vertise /me ");
SendClientMessage(playerid, COLOR_GRAD3,"*** OTHER *** /rules /objective /afk /busy /back /(k)ill /admins (/ah)elp");
SendClientMessage(playerid, COLOR_GRAD3,"*** /lock /unlock /animhelp /lotto [1] [2] [3] [4] [5] [6] /eject /report");
return 1;
}
//============================[Pay]=============================================
if(strcmp(cmd, "/pay", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /pay [playerid/PartOfName] [amount]");
return 1;
}
if(IsStringAName(tmp))
{
giveplayerid = GetPlayerID(tmp);
}
else
{
giveplayerid = strval(tmp);
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /pay [playerid/PartOfName] [amount]");
return 1;
}
if (IsPlayerConnected(giveplayerid))
{
if (ProxDetectorS(5.0, playerid, 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), " Du has %s(player: %d), $%d gesendet.", giveplayer,giveplayerid, moneys);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid, COLOR_GRAD1, string);
format(string, sizeof(string), " Du hast $%d von %s(player: %d) erhalten.", moneys, sendername, playerid);
SendClientMessage(giveplayerid, COLOR_GRAD1, string);
format(string, sizeof(string), "%s paid $%d to %s", sendername, moneys, giveplayer);
if(moneys >= 1000000)
{
ABroadCast(COLOR_YELLOW,string,1);
}
PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "* %s takes out some cash, and hands it to %s.", sendername ,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Invalid transaction amount.");
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Du bist zu weit weg.");
}
}
else
{
format(string, sizeof(string), " %d is not an active player.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
return 1;
}
//========================[Id]==================================================
if(strcmp(cmd, "/id", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /id [PartOfName]");
return 1;
}
new target;
if(IsStringAName(tmp))
{
target = GetPlayerID(tmp);
}
else
{
target = strval(tmp);
}
new sstring[256];
GetPlayerName(target, giveplayer, sizeof(giveplayer));
format(sstring, sizeof(sstring), "ID: (%d) %s",target,giveplayer);
SendClientMessage(playerid, COLOR_GRAD1, sstring);
return 1;
}
//========================[Wisper]==============================================
if(strcmp(cmd, "/wisper", true) == 0 || strcmp(cmd, "/w", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/w)isper [playerid/PartOfName] [whisper text]");
return 1;
}
if(IsStringAName(tmp))
{
giveplayerid = GetPlayerID(tmp);
}
else
{
giveplayerid = strval(tmp);
}
if (IsPlayerConnected(giveplayerid))
{
if (ProxDetectorS(5.0, playerid, giveplayerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
if(giveplayerid == playerid)
{
format(string, sizeof(string), "* %s sagt irgendwas...", sendername);
ProxDetector(5.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
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, "USAGE: (/w)isper [playerid/PartOfName] [whisper text]");
return 1;
}
format(string, sizeof(string), "%s whispers %s", sendername, result);
SendClientMessage(playerid, COLOR_YELLOW, string);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
printf("%s: %s", sendername, result);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Your too far away.");
}
}
else
{
format(string, sizeof(string), " %d is not an active player.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
return 1;
}
//========================[local]===============================================
if(strcmp(cmd, "/local", true) == 0 || strcmp(cmd, "/l", true) == 0)
{
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, "USAGE: (/l)ocal [local chat]");
return 1;
}
format(string, sizeof(string), "%s Says %s", sendername, result);
ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
printf("%s", string);
return 1;
}
//========================[Shout]===============================================
if(strcmp(cmd, "/shout", true) == 0 || strcmp(cmd, "/s", true) == 0)
{
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, "USAGE: (/s)hout [local chat]");
return 1;
}
format(string, sizeof(string), "%s Shouts: %s!!", sendername, result);
ProxDetector(30.0, playerid, string,COLOR_WHITE,COLOR_WHITE,COLOR_WHITE,COLOR_FADE1,COLOR_FADE2);
printf("%s", string);
return 1;
}
//========================[Advertise]===========================================
if(strcmp(cmd, "/advertise", true) == 0 || strcmp(cmd, "/ad", true) == 0)
{
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, "USAGE: (/ad)vertise [advert text]");
return 1;
}
format(string, sizeof(string), "Werbung: %s, Kontaktiere: %s ", result, sendername);
SendClientMessage(playerid,COLOR_GREEN,string);
printf("%s", string);
return 1;
}
//============================[Me]==============================================
if(strcmp(cmd, "/me", true) == 0)
{
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, "USAGE: /me [action]");
return 1;
}
format(string, sizeof(string), "* %s %s", sendername, result);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
printf("%s", string);
return 1;
}
//============================[Heal]============================================
if(strcmp(cmd, "/heal", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(IsAtLocalToHeal(playerid))
{
if(GetPlayerMoney(playerid) < 250)
{
SendClientMessage(playerid, COLOR_WHITE, "Das heilen kostet 250$ Du hast nicht genug Geld!");
}
else
{
SetPlayerHealth(playerid,100.0);
PlayerPlaySound(playerid, 1150, 0.0, 0.0, 0.0);
format(string, sizeof(string), "Du wurdest geheilt");
SendClientMessage(playerid, COLOR_GREEN,string);
}
return 1;
}
}
}
//=========================[Akill]==============================================
if(strcmp(cmd, "/akill", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /akill [playerid/PartOfName]");
return 1;
}
new playa;
new Float:shealth;
if(IsStringAName(tmp))
{
playa = GetPlayerID(tmp);
}
else
{
playa = strval(tmp);
}
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(IsPlayerAdmin(playerid))
{
SetPlayerHealth(playa, shealth-200);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "you are not authorized to use that command!");
}
return 1;
}
//=========================[Slap================================================
if(strcmp(cmd, "/slap", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /slap [playerid]");
return 1;
}
new playa;
new Float:shealth;
new Float:slx, Float:sly, Float:slz;
if(IsStringAName(tmp))
{
playa = GetPlayerID(tmp);
}
else
{
playa = strval(tmp);
}
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(IsPlayerAdmin(playerid))
{
GetPlayerHealth(playa, shealth);
SetPlayerHealth(playa, shealth-5);
GetPlayerPos(playa, slx, sly, slz);
SetPlayerPos(playa, slx, sly, slz+5);
format(string, sizeof(string), "AdmCmd: %s was slapped by %s",giveplayer ,sendername);
SendClientMessageToAll(COLOR_RED, string);
RemovePlayerFromVehicle(playa);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "you are not authorized to use that command!");
}
return 1;
}
//=========================[Admins]=============================================
if(strcmp(cmd, "/admins", true) == 0)
{
new PlayerName[24];
new count = 0;
SendClientMessage(playerid, COLOR_YELLOW, "Online Admins:");
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && IsPlayerAdmin(i))
{
GetPlayerName(i,PlayerName,24);
format(string,sizeof(string),"Admin: %s", PlayerName);
SendClientMessage(playerid, COLOR_WHITE, string);
count++;
}
}
if(count == 0)
{
SendClientMessage(playerid, COLOR_RED, "There are no admins online");
}
return 1;
}
//=========================[Kick]===============================================
if(strcmp(cmd, "/kick", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /kick [playerid]");
return 1;
}
new playa;
if(IsStringAName(tmp))
{
playa = GetPlayerID(tmp);
}
else
{
playa = strval(tmp);
}
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(IsPlayerAdmin(playerid))
{
SendClientMessage(playa, COLOR_RED, "You have been kicked from the server.");
format(string, sizeof(string), "Admin who has kicked you: %s",sendername);
SendClientMessage(playa, COLOR_RED, string);
Kick(playa);
format(string, sizeof(string), "AdmCmd: %s was kicked by %s",giveplayer ,sendername);
SendClientMessageToAll(COLOR_RED, string);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!");
}
return 1;
}
//=========================[Ban]================================================
if(strcmp(cmd, "/ban", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /ban [playerid]");
return 1;
}
new playa;
if(IsStringAName(tmp))
{
playa = GetPlayerID(tmp);
}
else
{
playa = strval(tmp);
}
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(IsPlayerAdmin(playerid))
{
SendClientMessage(playa, COLOR_RED, "You have been banned from the server!");
format(string, sizeof(string), "Admin who has banned you: %s",sendername);
SendClientMessage(playa, COLOR_RED, string);
Ban(playa);
format(string, sizeof(string), "AdmCmd: %s was banned by %s",giveplayer ,sendername);
SendClientMessageToAll(COLOR_RED, string);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!");
}
return 1;
}
//=========================[Mute]===============================================
if(strcmp(cmd, "/mute", true) == 0 || strcmp(cmd, "/stfu", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /mute [playerid]]");
return 1;
}
new playa;
if(IsStringAName(tmp))
{
playa = GetPlayerID(tmp);
}
else
{
playa = strval(tmp);
}
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(IsPlayerAdmin(playerid))
{
if(Mute[playa] == 0)
{
Mute[playa] = 1;
printf("Admin: %s silenced %s",sendername, giveplayer);
format(string, sizeof(string), "AdmCmd: %s was added to the stfu list by %s",giveplayer ,sendername);
SendClientMessageToAll(COLOR_RED, string);
}
else
{
Mute[playa] = 0;
printf("Admin: %s unsilenced %s",sendername, giveplayer);
format(string, sizeof(string), "AdmCmd: %s was deleted from the stfu list by %s",giveplayer ,sendername);
SendClientMessageToAll(COLOR_RED, string);
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!");
}
return 1;
}
//=========================[Freeze]=============================================
if(strcmp(cmd, "/freeze", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /freeze [playerid]");
return 1;
}
new playa;
if(IsStringAName(tmp))
{
playa = GetPlayerID(tmp);
}
else
{
playa = strval(tmp);
}
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(IsPlayerAdmin(playerid))
{
TogglePlayerControllable(playa, 0);
format(string, sizeof(string), "AdmCmd: %s was Frozen by %s",giveplayer ,sendername);
SendClientMessageToAll(COLOR_RED, string);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!");
}
return 1;
}
//=========================[Thaw]===============================================
if(strcmp(cmd, "/unfreeze", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /unfreeze [playerid]");
return 1;
}
new playa;
if(IsStringAName(tmp))
{
playa = GetPlayerID(tmp);
}
else
{
playa = strval(tmp);
}
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(IsPlayerAdmin(playerid))
{
TogglePlayerControllable(playa, 1);
format(string, sizeof(string), "AdmCmd: %s was Thawed by %s",giveplayer ,sendername);
SendClientMessageToAll(COLOR_RED, string);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!");
}
return 1;
}
//=========================[Cnn]================================================
if(strcmp(cmd, "/cnn", true) == 0)
{
if(IsPlayerAdmin(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_WHITE, "USAGE: /cnn [text]");
return 1;
}
format(string, sizeof(string), "~g~%s: ~w~%s",sendername,result);
for(new i = 0; i <= MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) == 1)
{
GameTextForPlayer(i, string, 5000, 6);
}
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!");
}
}
//========================[Time]================================================
if(strcmp(cmd, "/time", true) == 0)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
new hour,minuite,second;
gettime(hour,minuite,second);
FixHour(hour);
hour = shifthour;
format(string, sizeof(string), "~g~|~w~%d:%d~g~|", hour, minuite);
GameTextForPlayer(playerid, string, 5000, 1);
format(string, sizeof(string), "* %s checks the time.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}
//=========================[Tod]================================================
if(strcmp(cmd, "/tod", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /tod [timeofday] (0-23)");
return 1;
}
new hour;
hour = strval(tmp);
if (IsPlayerAdmin(playerid))
{
SetWorldTime(hour);
format(string, sizeof(string), " Time set to %d Hours.", hour);
BroadCast(COLOR_GRAD1, string);
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!");
}
return 1;
}
//=========================[A Chat]=============================================
if(strcmp(cmd, "/admin", true) == 0 || strcmp(cmd, "/a", true) == 0)
{
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, "USAGE: (/a)dmin [admin chat]");
return 1;
}
format(string, sizeof(string), "*[AC] %s: %s", sendername, result);
if (IsPlayerAdmin(playerid))
{
SendAdminMessage(COLOR_ORANGE, string);
}
printf("Admin %s: %s", sendername, result);
return 1;
}
//=========================[Afk]================================================
if (strcmp(cmdtext, "/afk", true) ==0)
{
new pname[256];
GetPlayerName(playerid, pname, 256);
format(string, sizeof(string), "-- %s is now away from keyboard...", pname);
SendClientMessageToAll(COLOR_GRAD1, string);
return 1;
}
//=========================[Back]===============================================
if (strcmp(cmdtext, "/back", true) ==0)
{
new pname[256];
GetPlayerName(playerid, pname, 256);
format(string, sizeof(string), "-- %s is back!", pname);
SendClientMessageToAll(COLOR_GRAD1, string);
return 1;
}
//=========================[Busy]===============================================
if (strcmp(cmdtext, "/busy", true) ==0)
{
new pname[256];
GetPlayerName(playerid, pname, 256);
format(string, sizeof(string), "-- %s is busy...", pname);
SendClientMessageToAll(COLOR_GRAD1, string);
return 1;
}
//=========================[Kill]===============================================
if (strcmp(cmdtext, "/kill", true) ==0 || strcmp(cmd, "/k", true) == 0)
{
SetPlayerHealth(playerid,0.0);
return 1;
}
//=========================[PayDay]=============================================
if(strcmp(cmdtext, "/credits", true) ==0)
{
SendClientMessage(playerid, COLOR_YELLOW, "Der Game Mode wurde von [GA]Predator gecodet");
SendClientMessage(playerid, COLOR_GREEN, "Kontakt: ICQ: 308-244-532 ");
SendClientMessage(playerid, COLOR_GREEN, "Xfire: predatorgm");
SendClientMessage(playerid, COLOR_RED, "Bitte nur im Notfall benutzen! Abused ihr das, werdet ihr gebannt!");
return 1;
}
//=========================[PayDay]=============================================
if (strcmp(cmdtext, "/payday", true) == 0)
{
if(IsPlayerAdmin(playerid))
{
PayDay();
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " you are not authorized to use that command!");
}
return 1;
}
//========================[PayDay]==============================================
public PayDay() {
new string[256];
for(new i=0; i<=MAX_PLAYERS; i++)
if(IsPlayerConnected(i))
GivePlayerMoney(i,PayDay_Amount);
format(string, sizeof(string),"~w~Pay~y~Day ~n~ ~n~ ~b~%d $",PayDay_Amount);
GameTextForAll(string, 1000, 1);
}
public OnPlayerInfoChange(playerid)
{
return 1;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
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 OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
if ( pickupid == 0 ){
ShowMenuForPlayer(gMenu0[255],playerid);
gMenu0[255] = CreateMenu(Mname, 2, 50, 200, 41, 30);
AddMenuItem(gMenu0[255],0,Info);
AddMenuItem(gMenu0[255],0,Enter);
AddMenuItem(gMenu0[255],0,Buy);
AddMenuItem(gMenu0[255],0,Rent);
AddMenuItem(gMenu0[255],0,Sell);
AddMenuItem(gMenu0[255],0,Lock);
gMenue0[255] = CreateMenu(Mname,1,50,200,50,25);
AddMenuItem(gMenue0[255],0,EatFood);
AddMenuItem(gMenue0[255],0,Exercise);
AddMenuItem(gMenue0[255],0,Exit);
TogglePlayerControllable(playerid,0);}
return 1;
}
public OnPlayerExitedMenu(playerid)
{
new Menu:Current = GetPlayerMenu(playerid);
if( Current == gMenu0[255]){
TogglePlayerControllable(playerid,1);}
if( Current == gMenue0[255]){
ShowMenuForPlayer(gMenue0[255],playerid);}
return 1;
}
//==========================[ABroadCast]========================================
public ABroadCast(color,const string[],level)
{
for(new i = 0; i <= MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) == 1)
{
if ((IsPlayerAdmin(i)))
{
SendClientMessage(i, color, string);
printf("%s", string);
}
}
}
return 1;
}
//=========================[Clock]==============================================
public clock(){
new Text:Clock;
TextDrawDestroy(Clock);
new hour,minute,second;
new string[256];
gettime(hour,minute,second);
if (minute <= 9){format(string,25,"%d:0%d",hour,minute);}
else {format(string,25,"%d:%d",hour,minute);}
TextDrawHideForAll(Clock);
Clock = TextDrawCreate(547.0, 24.0, string);
TextDrawLetterSize(Clock, 0.6, 1.8);
TextDrawFont(Clock, 3);
TextDrawSetOutline(Clock, 2);
TextDrawShowForAll(Clock);
SetTimer("clock",1000,0);
if ((minute == 00) && (second == 00)){PayDay();format(string, sizeof(string), "SERVER: The Time Is Now %d:00 Hours",hour);BroadCast(COLOR_WHITE,string);}
return 1;
}
//=========================[PlayerToPoint]======================================
public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
if (gdebug >= 3){printf("DEBUG ProxDetectorS()");}
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
tempposx = (oldposx -x);
tempposy = (oldposy -y);
tempposz = (oldposz -z);
//printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
return 0;
}
//=========================[ItAtLocalToHeal]====================================
public IsAtLocalToHeal(playerid)
{
if(IsPlayerConnected(playerid))
{
if(PlayerToPoint(4.0,playerid,-3897.0706,1661.6644,12.2917))
{//In Bar near to ammuNation in LV
return 1;
}
}
return 0;
}
//=========================[IsStringAName]======================================
public IsStringAName(string[])
{
for(new i = 0; i <= MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) == 1)
{
new testname[MAX_PLAYER_NAME];
GetPlayerName(i, testname, sizeof(testname));
if(strcmp(testname, string, true, strlen(string)) == 0)
{
return 1;
}
}
}
return 0;
}
//=========================[GetPlayerID]========================================
public GetPlayerID(string[])
{
for(new i = 0; i <= MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) == 1)
{
new testname[MAX_PLAYER_NAME];
GetPlayerName(i, testname, sizeof(testname));
if(strcmp(testname, string, true, strlen(string)) == 0)
{
return i;
}
}
}
return INVALID_PLAYER_ID;
}
//=========================[TeamChat]===========================================
public OnPlayerText(playerid,text[])
{
if(Mute[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "Your Muted...");
return 0;
}
if(text[0] == '!')
{
new name[24], string[256];
GetPlayerName(playerid, name, 24);
format(string, sizeof(string), "*Teamchat %s: %s", name, text[1]);
printf("%s", string);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(gTeam[i] == gTeam[playerid])
SendClientMessage(i, GetPlayerColor(playerid), string);
}
}
return 0;
}
return 1;
}
//===========================[ProxyDetectorS]===================================
public ProxDetectorS(Float:radi, playerid, targetid)
{
if (gdebug >= 3){printf("DEBUG ProxDetectorS()");}
new Float:posx, Float:posy, Float:posz;
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
//radi = 2.0; //Trigger Radius
GetPlayerPos(targetid, posx, posy, posz);
tempposx = (oldposx -posx);
tempposy = (oldposy -posy);
tempposz = (oldposz -posz);
//printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
return 0;
}
//============================[ProxDetector]====================================
public ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5)
{
if (gdebug >= 3){printf("DEBUG ProxDetector()");}
new Float:posx, Float:posy, Float:posz;
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
//radi = 2.0; //Trigger Radius
for(new i = 0; i <= MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) == 1)
{
if(!BigEar[i])
{
GetPlayerPos(i, posx, posy, posz);
tempposx = (oldposx -posx);
tempposy = (oldposy -posy);
tempposz = (oldposz -posz);
//printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16)))
{
SendClientMessage(i, col1, string);
}
else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8)))
{
SendClientMessage(i, col2, string);
}
else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4)))
{
SendClientMessage(i, col3, string);
}
else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2)))
{
SendClientMessage(i, col4, string);
}
else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
SendClientMessage(i, col5, string);
}
}
else
{
SendClientMessage(i, col1, string);
}
}
}
return 1;
}
//============================[GameModeInitExitFunc]============================
public GameModeInitExitFunc()
{
if (gdebug >= 1){printf("DEBUG GameModeInitExitFunc()");}
new string[128];
format(string, sizeof(string), "server restarting...");
for(new i = 0; i <= MAX_PLAYERS; i++)
SetTimer("GameModeExitFunc", 4000, 0);
return 1;
}
//==============================[BroadCast]=====================================
public BroadCast(color,const string[])
{
printf("%s", string);
SendClientMessageToAll(color, string);
return 1;
}
//=============================[FixHour]========================================
public FixHour(hour)
{
//if (gdebug >= 2){printf("DEBUG FixHour(%d)",hour);}
hour = timeshift+hour;
if (hour < 0)
{
hour = hour+24;
}
else if (hour > 23)
{
hour = hour-24;
}
shifthour = hour;
return 1;
}
//=========================[AdminChat]==========================================
public SendAdminMessage(color, string[])
{
for(new i = 0; i <= MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && IsPlayerAdmin(i))
{
SendClientMessage(i, color, string);
}
}
}