//Credits to Y_Less, Dracoblue and Kush.
#include <a_samp>
#include <sscanf2>
#include <YSI\y_ini>
#include <zcmd>
#include <cardefines>
#include <strtok>
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define DIALOG_SUCCESS_1 3
#define DIALOG_SUCCESS_2 4
#define PATH "/aAdmin/Users/%s.ini"
#define COL_GREY "{C3C3C3}"
#define COL_CYAN "{00FFEE}"
#define COL_RED "{FF0000}"
#define red "{FF0000}"
#define yellow "{CCCCCC}"
#define grey 0xC0C0C0AA
#define COLOR_RED 0xFF0000FF
#define COLOR_WHITE 0xFFFFFFFF
#define COLOR_PINK 0xFF66FFAA
#define COLOR_GREEN 0x21DD00FF
#define COLOR_PURPLE 0xB360FDFF
#define COLOR_BLUE 0x2641FEAA
#define COLOR_BLACK 0x000000FF
#define COLOR_ORANGE 0xFF830000
#define COLOR_YELLOW 0xF5DEB3AA
#define COLOR_LIGHTBLUE 0x00C2ECFF
#define COLOR_GREY 0xD8D8D8FF
#define COLOR_VIOLET 0xEE82EEFF
enum PlayerPosition
{
Float:XPos,
Float:YPos,
Float:ZPos,
Float:PAngle,
SavedPosition
}
enum pInfo
{
aPass,
aCash,
aAdmin,
aKills,
aDeaths,
aBanned,
aSpawnVehicle,
HasVehicleSpawned,
bool:aCanSpawnVehicle,
}
new pName[MAX_PLAYER_NAME];
new IsPlayerAway[MAX_PLAYERS];
new PPosition[MAX_PLAYERS][PlayerPosition];
new PlayerInfo[MAX_PLAYERS][pInfo];
//new pInfo [MAX_PLAYERS] [PlayerInfo];
new PMEnabled[MAX_PLAYER_NAME];
new Text:Textdraw1;
new Float:pX,
Float:pY, Float:pZ, Float:pAngle;
//---========Station Names==========---
//-If you want to change the station name just change the name between the brackets " ".
#define station1 "Frag.FM (Live)"
#define station2 "Filth.FM (Dubstep)"
#define station3 "Drum & Bass"
#define station4 "Trance"
#define station5 "Hardstyle"
#define station6 "Rap and Hiphop"
#define station7 "AS.FM(Serb random radio)
//---=====Audio Streaming URLS======---
//-If you want to change the Audio streaming url change the url from the brackets. Make sure it goes with station#.
#define station1stream "http://stream.fragradio.co.uk:8000/live"
#define station2stream "http://lemon.citrus3.com:8062/listen.pls"
#define station3stream "http://di.fm/mp3/drumandbass.pls"
#define station4stream "http://di.fm/mp3/trance.pls"
#define station5stream "http://di.fm/mp3/hardstyle.pls"
#define station6stream "http://105-stream-02.datacomm.ch:8000/105dope"
#define station7stream "http://webstreaming128.radioas.fm/"
//---===============================---
forward GetVehicleModelIDFromName(vname[]);
new VehicleNames[212][] = {
{"Landstalker"},{"Bravura"},{"Buffalo"},{"Linerunner"},{"Perrenial"},{"Sentinel"},{"Dumper"},
{"Firetruck"},{"Trashmaster"},{"Stretch"},{"Manana"},{"Infernus"},{"Voodoo"},{"Pony"},{"Mule"},
{"Cheetah"},{"Ambulance"},{"Leviathan"},{"Moonbeam"},{"Esperanto"},{"Taxi"},{"Washington"},
{"Bobcat"},{"Mr Whoopee"},{"BF Injection"},{"Hunter"},{"Premier"},{"Enforcer"},{"Securicar"},
{"Banshee"},{"Predator"},{"Bus"},{"Rhino"},{"Barracks"},{"Hotknife"},{"Trailer 1"},{"Previon"},
{"Coach"},{"Cabbie"},{"Stallion"},{"Rumpo"},{"RC Bandit"},{"Romero"},{"Packer"},{"Monster"},
{"Admiral"},{"Squalo"},{"Seasparrow"},{"Pizzaboy"},{"Tram"},{"Trailer 2"},{"Turismo"},
{"Speeder"},{"Reefer"},{"Tropic"},{"Flatbed"},{"Yankee"},{"Caddy"},{"Solair"},{"Berkley's RC Van"},
{"Skimmer"},{"PCJ-600"},{"Faggio"},{"Freeway"},{"RC Baron"},{"RC Raider"},{"Glendale"},{"Oceanic"},
{"Sanchez"},{"Sparrow"},{"Patriot"},{"Quad"},{"Coastguard"},{"Dinghy"},{"Hermes"},{"Sabre"},
{"Rustler"},{"ZR-350"},{"Walton"},{"Regina"},{"Comet"},{"BMX"},{"Burrito"},{"Camper"},{"Marquis"},
{"Baggage"},{"Dozer"},{"Maverick"},{"News Chopper"},{"Rancher"},{"FBI Rancher"},{"Virgo"},{"Greenwood"},
{"Jetmax"},{"Hotring"},{"Sandking"},{"Blista Compact"},{"Police Maverick"},{"Boxville"},{"Benson"},
{"Mesa"},{"RC Goblin"},{"Hotring Racer A"},{"Hotring Racer B"},{"Bloodring Banger"},{"Rancher"},
{"Super GT"},{"Elegant"},{"Journey"},{"Bike"},{"Mountain Bike"},{"Beagle"},{"Cropdust"},{"Stunt"},
{"Tanker"}, {"Roadtrain"},{"Nebula"},{"Majestic"},{"Buccaneer"},{"Shamal"},{"Hydra"},{"FCR-900"},
{"NRG-500"},{"HPV1000"},{"Cement Truck"},{"Tow Truck"},{"Fortune"},{"Cadrona"},{"FBI Truck"},
{"Willard"},{"Forklift"},{"Tractor"},{"Combine"},{"Feltzer"},{"Remington"},{"Slamvan"},
{"Blade"},{"Freight"},{"Streak"},{"Vortex"},{"Vincent"},{"Bullet"},{"Clover"},{"Sadler"},
{"Firetruck LA"},{"Hustler"},{"Intruder"},{"Primo"},{"Cargobob"},{"Tampa"},{"Sunrise"},{"Merit"},
{"Utility"},{"Nevada"},{"Yosemite"},{"Windsor"},{"Monster A"},{"Monster B"},{"Uranus"},{"Jester"},
{"Sultan"},{"Stratum"},{"Elegy"},{"Raindance"},{"RC Tiger"},{"Flash"},{"Tahoma"},{"Savanna"},
{"Bandito"},{"Freight Flat"},{"Streak Carriage"},{"Kart"},{"Mower"},{"Duneride"},{"Sweeper"},
{"Broadway"},{"Tornado"},{"AT-400"},{"DFT-30"},{"Huntley"},{"Stafford"},{"BF-400"},{"Newsvan"},
{"Tug"},{"Trailer 3"},{"Emperor"},{"Wayfarer"},{"Euros"},{"Hotdog"},{"Club"},{"Freight Carriage"},
{"Trailer 3"},{"Andromada"},{"Dodo"},{"RC Cam"},{"Launch"},{"Police Car (LSPD)"},{"Police Car (SFPD)"},
{"Police Car (LVPD)"},{"Police Ranger"},{"Picador"},{"S.W.A.T. Van"},{"Alpha"},{"Phoenix"},{"Glendale"},
{"Sadler"},{"Luggage Trailer A"},{"Luggage Trailer B"},{"Stair Trailer"},{"Boxville"},{"Farm Plow"},
{"Utility Trailer"}};
public LoadUser_data(playerid,name[],value[])
{
INI_Int("aPassword",PlayerInfo[playerid][aPass]);
INI_Int("aCash",PlayerInfo[playerid][aCash]);
INI_Int("aAdmin",PlayerInfo[playerid][aAdmin]);
INI_Int("aKills",PlayerInfo[playerid][aKills]);
INI_Int("aDeaths",PlayerInfo[playerid][aDeaths]);
INI_Int("aBanned",PlayerInfo[playerid][aBanned]);
return 1;
}
//==============================
//-----------FORWARDS-----------
//==============================
forward LoadUser_data(playerid,name[],value[]);
forward ChangeHostName();
forward MessageToAdmins(color,const string[]);
forward RandomMessages();
//==============================
//------------STOCKS------------
//==============================
public MessageToAdmins(color,const string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) == 1) if (PlayerInfo[i][aAdmin] > 1) SendClientMessage(i, color, string);
}
return 1;
}
stock UserPath(playerid)
{
new string[128],uPlayername[MAX_PLAYER_NAME];
GetPlayerName(playerid,uPlayername,sizeof(uPlayername));
format(string,sizeof(string),PATH,uPlayername);
return string;
}
stock PlayerName(playerid)
{
new pName[25];
GetPlayerName(playerid, pName, sizeof(pName));
return pName;
}
stock PlayerName2(playerid) {
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
return name;
}
stock udb_hash(buf[]) {
new length=strlen(buf);
new s1 = 1;
new s2 = 0;
new n;
for (n=0; n<length; n++)
{
s1 = (s1 + buf[n]) % 65521;
s2 = (s2 + s1) % 65521;
}
return (s2 << 16) + s1;
}
//==============================
//--------SCRIPT START----------
//==============================
main()
{ // Gamemode "text"
print("\n-----------------------------------------");
print(" Avail's gamemode, like 2.0 already? ");
print("-----------------------------------------\n");
}
public OnGameModeInit()
{
// name changing
SetTimer("ChangeHostName",500,1);
// random messages
SetTimer("RandomMessages", 30000, true);
// Gamemode "Name"
SetGameModeText("v2");
// Player classes
for(new i = 0; i < 299; i++)
{
switch(i)
{
case (3,4,5,6,8,42,65,74,86,119,149,208,268,273,289): continue;
default: AddPlayerClass(i, 1241.0105, -2052.6873, 59.9975, 2.8144, -1, -1, -1, -1, -1, -1);
}
}
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid,1095.3811,-2036.9301,82.7055);
SetPlayerFacingAngle(playerid,271.5483);
SetPlayerCameraPos(playerid, 1106.181518, -2036.951049, 82.758186);
SetPlayerCameraLookAt(playerid, 1101.183349, -2037.086181, 82.758186);
return 1;
}
public OnPlayerConnect(playerid)
{
PMEnabled[playerid] = 1;
if(fexist(UserPath(playerid)))
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
if(PlayerInfo[playerid][aBanned] == 1) return SendClientMessage(playerid, -1, ""#COL_GREY"You are "#COL_RED"banned "#COL_GREY"from the server.");
if(PlayerInfo[playerid][aBanned] == 1) return Ban(playerid);
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_CYAN"Login",""COL_GREY"Type your password below to login.","Login","Quit");
}
else
{
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,""COL_CYAN"Registering...",""COL_GREY"Type your password below to register a new account.","Register","Quit");
}
new pname[MAX_PLAYER_NAME], string[22 + MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
format(string, sizeof(string), ""#COL_RED"%s "#COL_GREY"joined.", pname);
SendClientMessageToAll(-1, string);
// spawn message
SendClientMessage(playerid,-1,""#COL_GREY"Welcome to "#COL_RED"WorldWide"#COL_GREY",read the "#COL_RED"/rules!");
// SAVE-LOAD
PPosition[playerid][SavedPosition] = 0;
// user color
//SetPlayerColor(playerid, 0xFFFF00AA); //Affects all players who join the server.
// admin color
if(PlayerInfo[playerid][aAdmin] > 2)
{
SetPlayerColor(playerid, 0x00FFEEEE);
}
//textdraw
Textdraw1 = TextDrawCreate(9.000000, 425.000000, " ~r~U~w~nknown ~r~D~w~rifters");
TextDrawBackgroundColor(Textdraw1, 255);
TextDrawFont(Textdraw1, 1);
TextDrawLetterSize(Textdraw1, 0.410000, 2.299999);
TextDrawColor(Textdraw1, -1);
TextDrawSetOutline(Textdraw1, -1);
TextDrawSetProportional(Textdraw1, 1);
TextDrawShowForPlayer(playerid, Textdraw1);
return 1;
}
public OnPlayerSpawn(playerid)
{
SendClientMessage(playerid,COLOR_GREY, ""#COL_RED"WorldWide: "#COL_GREY"Type "#COL_RED"/help "#COL_GREY"if you need help..");
return 1;
}
// hostname changing
public ChangeHostName()
{
new var = random(2);
switch (var)
{
case 0: SendRconCommand("hostname [0.3e]World Wide Drifting");
case 1: SendRconCommand("hostname [0.3e]World Wide Drifting - UPDATED ! ! !");
}
}
// random messages
new randomMessages[][] =
{
""#COL_RED"[SERVER]"#COL_GREY" If you want to listen to some music, type "#COL_RED"/radio!",
""#COL_RED"[SERVER]"#COL_GREY" If you need any help type "#COL_RED"/help"#COL_GREY" or ask an admin!",
""#COL_RED"[SERVER]"#COL_GREY" Thanks extreme-precision.net for hosting the server!",
""#COL_RED"[SERVER]"#COL_GREY" If you need an admin, type "#COL_RED"/contactadmins",
""#COL_RED"[SERVER]"#COL_GREY" Enjoy your time here!",
""#COL_RED"[SERVER]"#COL_GREY" If you need a vehicle, don't jack one, type /car [name] instead!",
""#COL_RED"[SERVER]"#COL_GREY" Please don't ram other people!",
""#COL_RED"[SERVER]"#COL_GREY" Enjoy your stay at World Wide Drifting!",
""#COL_RED"[SERVER]"#COL_GREY" Respect all players!",
""#COL_RED"[SERVER]"#COL_GREY" Please don't spam!",
""#COL_RED"[SERVER]"#COL_GREY" Hi there! I'm a bot! :D",
""#COL_RED"[SERVER]"#COL_GREY" MEOW! :D"
};
public RandomMessages()
{
new randomMsg = random(sizeof(randomMessages));
SendClientMessageToAll(-1, randomMessages[randomMsg]); //this will send the content of our array to EVERYBODY on the server
}
public OnPlayerDisconnect(playerid, reason)
{
new pname[MAX_PLAYER_NAME], string[39 + MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
switch(reason)
{
case 0: format(string, sizeof(string), ""#COL_RED"%s"#COL_GREY" lost connection.", pname);
case 1: format(string, sizeof(string), ""#COL_RED"%s"#COL_GREY" has left the server.", pname);
case 2: format(string, sizeof(string), ""#COL_RED"%s"#COL_GREY" got kicked/banned.", pname);
}
SendClientMessageToAll(-1, string);
//===========
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"aCash",GetPlayerMoney(playerid));
INI_WriteInt(File,"aAdmin",PlayerInfo[playerid][aAdmin]);
INI_WriteInt(File,"aKills",PlayerInfo[playerid][aKills]);
INI_WriteInt(File,"aDeaths",PlayerInfo[playerid][aDeaths]);
INI_WriteInt(File,"aBanned",PlayerInfo[playerid][aBanned]);
INI_Close(File);
return 1;
}
forward SendMessageToAdmins(color,const string[]);
public SendMessageToAdmins(color,const string[])
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) == 1)
if(PlayerInfo[i][aAdmin] > 1)
SendClientMessage(i, color, string);
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
PlayerInfo[killerid][aKills]++;
PlayerInfo[playerid][aDeaths]++;
return 1;
}
public OnPlayerText(playerid, text[])
{
if(text[0] == '#' && PlayerInfo[playerid][aAdmin] > 1) {
new string[128]; GetPlayerName(playerid,string,sizeof(string));
format(string,sizeof(string),""#COL_RED"WorldWide:"#COL_GREY" %s "#COL_RED": %s",string,text[1]); MessageToAdmins(-1,string);
return 0;
}
return 1;
}
//==============================
//---------COMMANDS-------------
//==============================
CMD:acmds(playerid,params[])
{
if(PlayerInfo[playerid][aAdmin] > 2)
{
SendClientMessage(playerid, -1,""#COL_RED"[SERVER]"#COL_GREY" /promote - /car - /kick - /ban - /t - /w - /vw");
SendClientMessage(playerid, -1,""#COL_RED"[SERVER]"#COL_GREY" /respawncars - /spam - /cardel - /goto - /pm - /pmoff");
SendClientMessage(playerid, -1,""#COL_RED"[SERVER]"#COL_GREY" /admins - # (Admin chat) - /report - /");
return 1;
}
else SendClientMessage(playerid, -1,""#COL_RED"[SERVER]"#COL_GREY" You have to be an admin to use /acmds!");
return 1;
}
//======================================================================================================
CMD:tagsoff(playerid,params[])
{
for(new i = 0; i < MAX_PLAYERS; i++) ShowPlayerNameTagForPlayer(playerid, i, false);
SendClientMessage(playerid, -1, ""#COL_GREY"Tags turned "#COL_RED"off");
return 1;
}
//=======================================================================================================
CMD:tagson(playerid,params[])
{
for(new i = 0; i < MAX_PLAYERS; i++) ShowPlayerNameTagForPlayer(playerid, i, true);
SendClientMessage(playerid, -1, ""#COL_GREY"Tags turned "#COL_RED"on");
return 1;
}
//=======================================================================================================
CMD:hidetd(playerid,params[])
{
TextDrawHideForPlayer(playerid, Textdraw1);
return 1;
}
//=======================================================================================================
CMD:showtd(playerid,params[])
{
TextDrawShowForPlayer(playerid, Textdraw1);
return 1;
}
//=======================================================================================================
CMD:help(playerid,params[])
{
SendClientMessage(playerid,0xAA3333AA," ");
SendClientMessage(playerid,0xD8D8D8FF," ");
SendClientMessage(playerid,-1,""#COL_GREY"================="#COL_RED"WorldWide"#COL_GREY"==================");
SendClientMessage(playerid,COLOR_GREY," Remember to read the rules! ("#COL_RED"/rules"#COL_GREY")");
SendClientMessage(playerid,COLOR_GREY," To see a list of available commands,type "#COL_RED"/cmds");
SendClientMessage(playerid,COLOR_GREY," To see a list of available teleports,type "#COL_RED"/teles");
SendClientMessage(playerid,-1,""#COL_GREY"================="#COL_RED"WorldWide"#COL_GREY"==================");
return 1;
}
//=======================================================================================================
CMD:cmds(playerid,params[])
{
SendClientMessage(playerid,0xAA3333AA," ");
SendClientMessage(playerid,0xD8D8D8FF," ");
SendClientMessage(playerid,-1,""#COL_GREY"================="#COL_RED"WorldWide"#COL_GREY"==================");
SendClientMessage(playerid,COLOR_GREY,"Commands :");
SendClientMessage(playerid,COLOR_GREY," /flip - /fr - /report - /teles - /cc - /pj1 - /pj2 - /pj3");
SendClientMessage(playerid,COLOR_GREY," /god - /godcar - /cash - /car - /radio - /radiostop - /t - /w");
SendClientMessage(playerid,COLOR_GREY," /credits - /pm - /admins - /rules - /s - /r ");
SendClientMessage(playerid,COLOR_GREY," /afk - /back - /goto - /contactadmins ");
SendClientMessage(playerid,-1,""#COL_GREY"================="#COL_RED"WorldWide"#COL_GREY"==================");
return 1;
}
//======================================================================================================
CMD:afk(playerid,params[])
{
new string[48];
GetPlayerName(playerid, pName, sizeof(pName));
format(string, sizeof(string), "%s is now Away from his/her keyboard.", pName);
SendClientMessageToAll(COLOR_GREY, string);
SetPlayerFacingAngle(playerid,0);
TogglePlayerControllable(playerid, 0);
IsPlayerAway[playerid] = 1;
return 1;
}
//=======================================================================================================
CMD:back(playerid,params[])
{
new string[48];
GetPlayerName(playerid, pName, sizeof(pName));
format(string, sizeof(string), "%s is now back!", pName);
SendClientMessageToAll(COLOR_GREY, string);
SetPlayerFacingAngle(playerid, 264.3768);
TogglePlayerControllable(playerid, 1);
IsPlayerAway[playerid] = 0;
return 1;
}
//=======================================================================================================
CMD:contactadmins(playerid,params[])
{
SendClientMessage(playerid, -1,""#COL_GREY"================="#COL_RED"WorldWide"#COL_GREY"==================");
SendClientMessage(playerid, -1,""#COL_RED" Avail "#COL_GREY"- "#COL_RED" avail.gta");
SendClientMessage(playerid, -1,""#COL_RED" Ryouichi "#COL_GREY"- "#COL_RED" alexpk_xd_boy");
SendClientMessage(playerid, -1,""#COL_RED" SpulX "#COL_GREY" - "#COL_RED" ");
SendClientMessage(playerid, -1,""#COL_RED" SKYPE ONLY");
SendClientMessage(playerid, -1,""#COL_GREY"================="#COL_RED"WorldWide"#COL_GREY"==================");
return 1;
}
//=======================================================================================================
CMD:rules(playerid,params[])
{
SendClientMessage(playerid,-1,""#COL_GREY"================="#COL_RED"WorldWide"#COL_GREY"==================");
SendClientMessage(playerid,COLOR_GREY,"1.ENGLISH ONLY IN THE CHAT");
SendClientMessage(playerid,COLOR_GREY,"2.No Deathmatch (Will result in a kick)");
SendClientMessage(playerid,COLOR_GREY,"3.No Carjacking (Jail/kick)");
SendClientMessage(playerid,COLOR_GREY,"4.Don't spam or you WILL get kicked.");
SendClientMessage(playerid,COLOR_GREY,"5.No hacks allowed,except sobeit for handlings.");
SendClientMessage(playerid,COLOR_GREY,"6.Respect all players/admins and have fun!");
SendClientMessage(playerid,-1,""#COL_GREY"================="#COL_RED"WorldWide"#COL_GREY"==================");
return 1;
}
//=======================================================================================================
CMD:credits(playerid,params[])
{
SendClientMessage(playerid,-1,""#COL_GREY"================="#COL_RED"WorldWide"#COL_GREY"==================");
SendClientMessage(playerid,-1,""#COL_RED"Avail"#COL_GREY", making the admin script + whole server");
SendClientMessage(playerid,-1,"1) "#COL_RED"PlayHard"#COL_GREY", for PlayHard radio.");
SendClientMessage(playerid,-1,"2) "#COL_RED"TwistedInsane"#COL_GREY", for the random messages, /pm");
SendClientMessage(playerid,-1,"3) "#COL_RED"DonLimito"#COL_GREY", for nitro filterscript, and generally helping me.");
SendClientMessage(playerid,-1,"4) "#COL_RED"[EDT]Quattro"#COL_GREY", for /cc, /fr, teleports");
SendClientMessage(playerid,-1,""#COL_GREY"================="#COL_RED"WorldWide"#COL_GREY"==================");
return 1;
}
//=======================================================================================================
CMD:teles(playerid,params[])
{
SendClientMessage(playerid,-1,""#COL_GREY"================"#COL_RED"WorldWide"#COL_GREY"===================");
SendClientMessage(playerid,COLOR_GREY," /drift1 - 53");
SendClientMessage(playerid,COLOR_GREY," /ls - /lv - /sf");
SendClientMessage(playerid,COLOR_GREY," /lsap - /lvap - /lsap");
SendClientMessage(playerid,-1,""#COL_GREY"================"#COL_RED"WorldWide"#COL_GREY"===================");
return 1;
}
//=======================================================================================================
CMD:radio(playerid,params[])
{
ShowPlayerDialog(playerid,354,DIALOG_STYLE_LIST,""red"Stations List","1. "station1"\r\n2. "station2"\r\n3. "station3"\r\n4. "station4"\r\n5. "station5"\r\n6. "station6"\r\n7."station7","Select", "Cancel");
return 1;
}
//=======================================================================================================
CMD:radiostop(playerid,params[])
{
StopAudioStreamForPlayer(playerid);
return 1;
}
//=======================================================================================================
CMD:cash(playerid,params[])
{
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid,2000000);
return 1;
}
//=======================================================================================================
CMD:pj1(playerid,params[])
{
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, ""#COL_RED"SERVER: "COL_GREY"You have to be in a vehicle");
ChangeVehiclePaintjob(GetPlayerVehicleID(playerid),0);
return 1;
}
//=======================================================================================================
CMD:pj2(playerid,params[])
{
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, ""#COL_RED"SERVER: "COL_GREY"You have to be in a vehicle");
ChangeVehiclePaintjob(GetPlayerVehicleID(playerid),1);
return 1;
}
//=======================================================================================================
CMD:pj3(playerid,params[])
{
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, ""#COL_RED"SERVER: "COL_GREY"You have to be in a vehicle");
ChangeVehiclePaintjob(GetPlayerVehicleID(playerid),2);
return 1;
}
//=======================================================================================================
CMD:pj4(playerid,params[])
{
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, ""#COL_RED"SERVER: "COL_GREY"You have to be in a vehicle");
ChangeVehiclePaintjob(GetPlayerVehicleID(playerid),3);
return 1;
}
//=======================================================================================================
CMD:fr(playerid,params[])
{
new vehicleid=GetPlayerVehicleID(playerid);
RepairVehicle(vehicleid);
SendClientMessage(playerid,-1, ""#COL_RED"SERVER: "COL_GREY"Your Vehicle has been fixed!");
return 1;
}
//=======================================================================================================
CMD:flip(playerid,params[])
{
if(IsPlayerInAnyVehicle(playerid))
{
new currentveh;
new Float:angle;
currentveh = GetPlayerVehicleID(playerid);//with this we will get the vehicle id
GetVehicleZAngle(currentveh, angle);//we will get to know the current Z angle of vehicle, i.e. Z angle of the vehicle which will let us know how the vehicle is.
SetVehicleZAngle(currentveh, angle);//if we use this the Z angel of the vehicle will become the opposite of the Z angle of wat we got from the above function
SendClientMessage(playerid, -1, ""#COL_GREY"Your vehicle has been flipped.");
return 1;
}
else
{
SendClientMessage(playerid, -1, ""#COL_GREY"You are not in any vehicle!");
return 1;
}
}
//=======================================================================================================
CMD:me(playerid,params[])
{
if(!params[2])return SendClientMessage(playerid, -1, ""#COL_GREY"USAGE: /me [action]");
new str[128];
GetPlayerName(playerid, str, sizeof(str));
format(str, sizeof(str), "* %s %s", str, params[0]);
SendClientMessageToAll(0xFFFF00AA, str);
return 1;
}
//=======================================================================================================
CMD:cc(playerid,params[])
{
if(IsPlayerInAnyVehicle(playerid))
{
new tmp[128], idx;
new color1, color2;
tmp = strtok(params, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, -1, ""#COL_RED"SERVER: "COL_GREY"/cc (color1) (color2)");
color1 = strval(tmp);
tmp = strtok(params, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, -1, ""#COL_RED"SERVER: "COL_GREY"/cc (color1) (color2)");
color2 = strval(tmp);
ChangeVehicleColor(GetPlayerVehicleID(playerid), color1, color2);
}
else
{
SendClientMessage(playerid, -1, ""#COL_RED"SERVER: "COL_GREY"You are not in a vehicle!");
}
return 1;
}
//=======================================================================================================
CMD:s(playerid,params[])
{
new Float:x,Float:y,Float:z,Float:angle;
if(IsPlayerInAnyVehicle(playerid))
{
GetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
GetVehicleZAngle(GetPlayerVehicleID(playerid),angle);
PPosition[playerid][XPos] = x;
PPosition[playerid][YPos] = y;
PPosition[playerid][ZPos] = z;
PPosition[playerid][PAngle] = angle;
SendClientMessage(playerid,-1, ""#COL_RED"SERVER: "COL_GREY"Position saved! Type "#COL_RED"/r "#COL_GREY"to teleport back!");
}
else
{
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,angle);
PPosition[playerid][XPos] = x;
PPosition[playerid][YPos] = y;
PPosition[playerid][ZPos] = z;
PPosition[playerid][PAngle] = angle;
SendClientMessage(playerid,-1, ""#COL_RED"SERVER: "COL_GREY"Position saved! Type "#COL_RED"/r "#COL_GREY"to teleport back!");
}
PPosition[playerid][SavedPosition] = 1;
return 1;
}
//=======================================================================================================
CMD:r(playerid,params[])
{
if(PPosition[playerid][SavedPosition] == 0) return SendClientMessage(playerid,-1, ""#COL_RED"SERVER: "COL_GREY"You don't have any position saved! "#COL_RED"(/s)");
if(IsPlayerInAnyVehicle(playerid))
{
SetVehiclePos(GetPlayerVehicleID(playerid),PPosition[playerid][XPos],PPosition[playerid][YPos],PPosition[playerid][ZPos]);
SetVehicleZAngle(GetPlayerVehicleID(playerid),PPosition[playerid][PAngle]);
SendClientMessage(playerid,-1, ""#COL_RED"SERVER: "COL_GREY"Position loaded!");
}
else
{
SetPlayerPos(playerid,PPosition[playerid][XPos],PPosition[playerid][YPos],PPosition[playerid][ZPos]);
SetPlayerFacingAngle(playerid,PPosition[playerid][PAngle]);
SendClientMessage(playerid,-1, ""#COL_RED"SERVER: "COL_GREY"Position loaded!");
}
return 1;
}
//==============================
//------------ADMIN-------------
//==============================
CMD:admins(playerid,params[])
{
new Count[2], i, string[128];
for(i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i))
{
if(PlayerInfo[i][aAdmin] > 0) Count[0]++;
if(IsPlayerAdmin(i)) Count[1]++;
}
if( (Count[0] == 0 && Count[1] == 0) || (Count[0] == 0 && Count[1] >= 1 && PlayerInfo[playerid][aAdmin] == 0) ) return SendClientMessage(playerid, grey, "No Administrators online");
if(Count[0] == 1) {
for(i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && PlayerInfo[i][aAdmin] > 0) {
format(string, sizeof(string), ""#COL_GREY"Admin:"COL_CYAN" (%d)%s [%d]", i, PlayerName2(i), PlayerInfo[i][aAdmin] ); SendClientMessage(playerid, grey, string);
}
}
if(Count[0] > 1) {
new x; format(string, sizeof(string), ""#COL_RED"Admins:"#COL_GREY" ");
for(i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && PlayerInfo[i][aAdmin] > 0)
{
format(string,sizeof(string),""#COL_GREY"%s(%d)%s [%d]",string,i,PlayerName2(i),PlayerInfo[i][aAdmin]);
x++;
if(x > 5) {
SendClientMessage(playerid, grey, string); format(string, sizeof(string), ""#COL_RED"Admins:"#COL_GREY" "); x = 0;
}
else format(string, sizeof(string), ""#COL_GREY"%s, ", string);
}
if(x <= 4 && x > 0) {
string[strlen(string)-3] = '.';
SendClientMessage(playerid, grey, string);
}
}
if( (Count[1] == 1) && (PlayerInfo[playerid][aAdmin] > 0) ) {
for(i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && IsPlayerAdmin(i)) {
format(string, sizeof(string), ""#COL_RED"RCON Admin: "#COL_GREY"(%d)%s", i, PlayerName2(i)); SendClientMessage(playerid, COLOR_WHITE, string);
}
}
if(Count[1] > 1) {
new x; format(string, sizeof(string), ""#COL_RED"RCON Admins:"#COL_GREY" ");
for(i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && IsPlayerAdmin(i))
{
format(string,sizeof(string),""#COL_GREY"%s(%d)%s",string,i,PlayerName2(i));
x++;
if(x > 5) {
SendClientMessage(playerid, COLOR_WHITE, string); format(string, sizeof(string), ""#COL_RED"RCON Admins:"#COL_GREY" "); x = 0;
}
else format(string, sizeof(string), ""#COL_GREY"%s, ", string);
}
if(x < 4 && x > 0) {
string[strlen(string)-3] = '.';
SendClientMessage(playerid, COLOR_WHITE, string);
}
}
return 1;
}
//=======================================================================================================
CMD:promote(playerid,params[])
{
new id, level;
if(IsPlayerAdmin(playerid))
{
if(sscanf(params, "ud", id, level)) return SendClientMessage(playerid, COLOR_RED, "[USAGE]: /promote [playerid/name] [level]");
else
{
if(level > 5) return SendClientMessage(playerid, COLOR_RED, "Only 1-5 levels allowed.");
else
{
new string[64];
GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
format(string, sizeof string, "%s has been promote to administrator level: %d.", pName, level);
SendClientMessageToAll(COLOR_RED, string);
PlayerInfo[id][aAdmin] = level;
GameTextForPlayer(playerid,"Congratulations. You are promoted.",3000,6);
}
}
}
else return SendClientMessage(playerid, COLOR_RED, "Only admins can use this command.");
return 1;
}
//=======================================================================================================
CMD:report(playerid,params[])
{
new Target;
new Reason[128];
if(!sscanf(params, "us[32]",Target, Reason))
{
if(Target == playerid) return SendClientMessage(playerid, COLOR_RED, "SERVER: Cant perform this command on yourself!");
if(!IsPlayerConnected(Target))
return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected!");
new tname[MAX_PLAYER_NAME];
new pname[MAX_PLAYER_NAME];
GetPlayerName(Target,tname,sizeof(tname));
GetPlayerName(playerid,pname,sizeof(pname));
new rstring[256];
format(rstring,sizeof(rstring),"* Player %s(%d) reported %s(%d)! (Reason: %s)", pname,playerid,tname,Target,Reason);
SendMessageToAdmins(COLOR_WHITE,rstring);
}
else return SendClientMessage(playerid, COLOR_YELLOW, "USAGE: /report <playerid> <reason>");
return 1;
}
//=======================================================================================================
CMD:t(playerid,params[])
{
new string[128];
if(!strlen(params))
{
SendClientMessage(playerid, -1, ""#COL_RED"[SERVER] "#COL_GREY"/t [0-24]");
return 1;
}
new hour = strval(params);
if(hour < 0 || hour > 24)
{
SendClientMessage(playerid, -1, ""#COL_RED"[SERVER] "#COL_GREY"/t [0-24]");
return 1;
}
SetPlayerTime(playerid, hour, 0);
format(string,sizeof(string), ""#COL_RED"[SERVER] "#COL_GREY"You changed your time to %d:00 !", hour);
SendClientMessage(playerid, -1, string);
return 1;
}
//=======================================================================================================
CMD:w(playerid,params[])
{
new string[128];
if(!strlen(params))
{
SendClientMessage(playerid, -1, ""#COL_RED"[SERVER] "#COL_GREY"/w [0-45]");
return 1;
}
new weather = strval(params);
if(weather < 0 || weather > 45)
{
SendClientMessage(playerid, -1, ""#COL_RED"[SERVER] "#COL_GREY"/w [0-45]");
return 1;
}
SetPlayerWeather(playerid, weather);
format(string,sizeof(string), ""#COL_RED"[SERVER] "#COL_GREY"You changed your weather to ID:%d!", weather);
SendClientMessage(playerid, -1, string);
return 1;
}
//=======================================================================================================
CMD:vw(playerid,params[])
{
new string[128];
if(!strlen(params))
{
SendClientMessage(playerid, -1, ""#COL_RED"[SERVER] "#COL_GREY"/virtualworld [0-128]");
return 1;
}
new world = strval(params);
if(world < 0 || world > 128)
{
SendClientMessage(playerid, -1, ""#COL_RED"[SERVER] "#COL_GREY"/virtualworld [0-128]");
return 1;
}
SetPlayerVirtualWorld(playerid, world);
format(string,sizeof(string), ""#COL_RED"[SERVER] "#COL_GREY"You changed your world to: %d!", world);
SendClientMessage(playerid, -1, string);
return 1;
}
//=======================================================================================================
CMD:kick(playerid, params[])
{
if(PlayerInfo[playerid][aAdmin] > 2) {
new PID;
new reason[64];
new str[128];
new Playername[MAX_PLAYER_NAME], Adminname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Adminname, sizeof(Adminname));
GetPlayerName(PID, Playername, sizeof(Playername));
if(sscanf(params, "us[64]", PID,reason)) return SendClientMessage(playerid, -1, ""#COL_RED"[SERVER]"#COL_GREY" Usage: /kick [playerid] [reason]");
if(!IsPlayerConnected(PID))
return SendClientMessage(playerid, -1, ""#COL_GREY"Player is not connected!");
format(str, sizeof(str), ""#COL_RED"'%s' "COL_GREY"has been kicked by administrator "#COL_RED"'%s'. "#COL_GREY"Reason: "#COL_RED"%s ", Playername, Adminname, reason);
SendClientMessageToAll(-1, str);
Kick(PID);
}
else
{
SendClientMessage(playerid, -1, "You have to be level 3 to use that command!");
}
return 1;
}
//=======================================================================================================
CMD:ban(playerid, params[])
{
if(PlayerInfo[playerid][aAdmin] > 3) {
new PID;
new reason[64];
new str[128];
new Playername[MAX_PLAYER_NAME], Adminname[MAX_PLAYER_NAME];
GetPlayerName(playerid, Adminname, sizeof(Adminname));
GetPlayerName(PID, Playername, sizeof(Playername));
if(sscanf(params, "us[64]", PID,reason)) return SendClientMessage(playerid, -1, ""#COL_RED"[SERVER]"#COL_GREY" Usage: /ban [playerid] [reason]");
if(!IsPlayerConnected(PID))
return SendClientMessage(playerid, -1, ""#COL_GREY"Player is not connected!");
format(str, sizeof(str), ""#COL_RED"'%s' "#COL_GREY"has been banned by administrator "#COL_RED"'%s'. "#COL_GREY"Reason: "#COL_RED"%s ", Playername, Adminname, reason);
SendClientMessageToAll(-1, str);
Ban(PID);
}
else
{
SendClientMessage(playerid, -1, "You have to be level 3 to use that command!");
}
return 1;
}
//=======================================================================================================
CMD:goto(playerid,params[])
{
if(!strlen(params)) return SendClientMessage(playerid,-1,""#COL_RED"[SERVER]"#COL_GREY" /goto [playerid]");
new player1, Message[60], string3[128];
if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && player1 != playerid)
{
new Float:x, Float:y, Float:z; GetPlayerPos(player1,x,y,z);
SetPlayerInterior(playerid,GetPlayerInterior(player1));
SetPlayerVirtualWorld(playerid,GetPlayerVirtualWorld(player1));
if(GetPlayerState(playerid) == 2)
{
SetVehiclePos(GetPlayerVehicleID(playerid),x+3,y,z);
LinkVehicleToInterior(GetPlayerVehicleID(playerid),GetPlayerInterior(player1));
SetVehicleVirtualWorld(GetPlayerVehicleID(playerid),GetPlayerVirtualWorld(player1));
} else SetPlayerPos(playerid,x+2,y,z);
format(string3, sizeof(string3), ""#COL_RED"[SERVER]"#COL_GREY" You teleported to %s", pName, Message);
SendClientMessage(playerid, -1, string3);
} else return SendClientMessage(playerid, -1, ""#COL_RED"[SERVER] "#COL_GREY"Player is not connected or is yourself");
return 1;
}
//=======================================================================================================
CMD:pm(playerid,params[])
{
if(IsPlayerConnected(playerid))
{
new pID, Message[60],zplayername[MAX_PLAYER_NAME],targetName[MAX_PLAYER_NAME],string[128],string2[128];
if(sscanf(params, "us[60]", pID, Message)) return SendClientMessage(playerid, 0xAFAFAFAA, "USAGE: /pm [PlayerID/PlayerName] [Message]");
if(pID == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xAFAFAFAA, "Invalid Player");
if(PMEnabled[playerid] == 0) return SendClientMessage(playerid, 0xAFAFAFAA, "PM Is Disabled");
GetPlayerName(pID, targetName, sizeof(targetName));
GetPlayerName(playerid, zplayername, sizeof(zplayername));
format(string, sizeof(string), "Private Message from %s: %s", zplayername, Message);
format(string2, sizeof(string2), "Private Message sent to %s: %s", targetName, Message);
SendClientMessage(playerid, 0xFFFF00AA, string2);
SendClientMessage(pID, 0xFFFF00AA, string);
}
return 1;
}
//=======================================================================================================
CMD:togpm(playerid,params[])
{
if(isnull(params)) return SendClientMessage(playerid, 0xFFFFFFFF, "CMD: /togpm [on/off]");
if(strcmp(params, "on", true ) == 0 )
{
PMEnabled[playerid] = 1;
SendClientMessage(playerid, 0x00FF00FF, "You have unblocked your Personal Messaging arrival.");
}
else if( strcmp( params, "off", true ) == 0 )
{
PMEnabled[playerid] = 0;
SendClientMessage(playerid, 0xAA3333AA, "You have blocked Personal Messages from arriving.");
}
else SendClientMessage(playerid, -1,"CMD: /togpm [on/off]");
return 1;
}
//=======================================================================================================
CMD:respawncars(playerid, params[])
{
if(!PlayerInfo[playerid][aAdmin]) return SendClientMessage(playerid, -1,""#COL_RED"[SERVER]"#COL_GREY" You are not an administrator.");
for(new v; v < MAX_VEHICLES; v++)
{
for(new i; i < MAX_PLAYERS; i++)
{
if(GetPlayerVehicleID(i) == v)
{
SetVehicleToRespawn(v);
SendClientMessageToAll(-1,""#COL_RED"[SERVER]"#COL_GREY" All unused vehicles have been respawned by an administrator.");
return 1;
}
}
}
return 1;
}
//=======================================================================================================
public GetVehicleModelIDFromName(vname[])
{
for(new i = 0; i < 211; i++)
{
if ( strfind(VehicleNames[i], vname, true) != -1 )
return i + 400;
}
return -1;
}
CMD:car(playerid, params[])
{
new Vehicle[32], VehicleID, ColorOne, ColorTwo;
PlayerInfo[playerid][aCanSpawnVehicle] = true;
if(sscanf(params, "s[32]D(1)D(1)", Vehicle, ColorOne, ColorTwo))
{
PlayerInfo[playerid][aCanSpawnVehicle] = true;
SendClientMessage(playerid, -1,""#COL_RED"[SERVER]"#COL_GREY"/car [name/id] [colour 1] [colour 2]");
return 1;
}
if(PlayerInfo[playerid][aCanSpawnVehicle])
{
VehicleID = GetVehicleModelIDFromName(Vehicle);
if(VehicleID != 425 && VehicleID != 432 && VehicleID != 447 &&
VehicleID != 430 && VehicleID != 417 && VehicleID != 435 &&
VehicleID != 446 && VehicleID != 449 && VehicleID != 450 &&
VehicleID != 452 && VehicleID != 453 && VehicleID != 454 &&
VehicleID != 460 && VehicleID != 464 && VehicleID != 465 &&
VehicleID != 469 && VehicleID != 472 && VehicleID != 473 &&
VehicleID != 476 && VehicleID != 484 && VehicleID != 487 &&
VehicleID != 488 && VehicleID != 493 && VehicleID != 497 &&
VehicleID != 501 && VehicleID != 511 && VehicleID != 512 &&
/*stuntplane - VehicleID != 513 &&*/ VehicleID != 519 && // hydra - VehicleID != 520 &&
VehicleID != 537 && VehicleID != 538 && VehicleID != 548 &&
VehicleID != 553 && VehicleID != 563 && VehicleID != 564 &&
VehicleID != 569 && VehicleID != 570 && VehicleID != 577 &&
VehicleID != 584 && VehicleID != 590 && VehicleID != 591 &&
VehicleID != 592 && VehicleID != 593 && VehicleID != 594 &&
VehicleID != 595 && VehicleID != 606 && VehicleID != 607 &&
VehicleID != 608 && VehicleID != 610 && VehicleID != 611) {
if(VehicleID == -1 )
{
VehicleID = strval(Vehicle);
if(VehicleID < 400 || VehicleID > 611 )
{
return SendClientMessage(playerid, -1,""#COL_RED"[SERVER]"#COL_GREY"You entered an invalid vehiclename!");
}
}
GetPlayerPos(playerid, pX, pY, pZ);
GetPlayerFacingAngle(playerid, pAngle);
DestroyVehicle(PlayerInfo[playerid][aSpawnVehicle]);
PlayerInfo[playerid][aSpawnVehicle] = CreateVehicle(VehicleID, pX, pY, pZ+2.0, pAngle, ColorOne, ColorTwo, -1);
LinkVehicleToInterior(PlayerInfo[playerid][aSpawnVehicle], GetPlayerInterior(playerid));
PutPlayerInVehicle(playerid, PlayerInfo[playerid][aSpawnVehicle], 0);
SendClientMessage(playerid, -1, ""#COL_RED"[SERVER]"#COL_GREY"You succesfully spawned this vehicle!");
}
}
return 1;
}
//=======================================================================================================
CMD:spam(playerid, params[])
{
if(PlayerInfo[playerid][aAdmin] > 1)
{
new Colour, msg[128],string[128];
if(sscanf(params, "is[128]", Colour, msg)) {
SendClientMessage(playerid, -1, ""#COL_RED"Usage: /spam [Colour] [Text]");
SendClientMessage(playerid, -1, ""#COL_GREY"Colours: [0]Black, [1]White, [2]Red, [3]Orange, [4]Yellow, [5]Green, [6]Blue, [7]Purple, [8]Brown, [9]Pink");
SendClientMessage(playerid, -1, ""#COL_GREY"Function: Will sending many messages in chat in specified Colour");
return 1; }
if(Colour > 9) return SendClientMessage(playerid, COLOR_RED, "Colours: ....");
format(string,sizeof(string),"%s",msg);
if(Colour == 0) for(new i; i < 50; i++) SendClientMessageToAll(COLOR_BLACK,string);
else if(Colour == 1) for(new i; i < 50; i++) SendClientMessageToAll(COLOR_WHITE,string);
else if(Colour == 2) for(new i; i < 50; i++) SendClientMessageToAll(COLOR_RED,string);
else if(Colour == 3) for(new i; i < 50; i++) SendClientMessageToAll(COLOR_ORANGE,string);
else if(Colour == 4) for(new i; i < 50; i++) SendClientMessageToAll(COLOR_YELLOW,string);
else if(Colour == 5) for(new i; i < 50; i++) SendClientMessageToAll(COLOR_GREEN,string);
else if(Colour == 6) for(new i; i < 50; i++) SendClientMessageToAll(COLOR_BLUE,string);
else if(Colour == 7) for(new i; i < 50; i++) SendClientMessageToAll(COLOR_PURPLE,string);
else if(Colour == 8) for(new i; i < 50; i++) SendClientMessageToAll(COLOR_LIGHTBLUE,string);
else if(Colour == 9) for(new i; i < 50; i++) SendClientMessageToAll(COLOR_PINK,string);
return 1;
}
SendClientMessage(playerid, -1, ""#COL_RED"[SERVER] "#COL_GREY"Error: You must be an administrator to do that.");
return 1;
}
public OnPlayerCommandText(playerid,cmdtext[])
{
return SendClientMessage(playerid, -1, ""#COL_RED"[SERVER] "#COL_GREY"Sorry! That command doesn't exist!");
}
//==============================
//---------DIALOGS-------------
//==============================
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch( dialogid )
{
case DIALOG_REGISTER:
{
if (!response) return Kick(playerid);
if(response)
{
if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""COL_CYAN"Registering...",""COL_RED"You have entered an invalid password.\n"COL_GREY"Type your password below to register a new account.","Register","Quit");
new INI:File = INI_Open(UserPath(playerid));
INI_SetTag(File,"data");
INI_WriteInt(File,"aPassword",udb_hash(inputtext));
INI_WriteInt(File,"aCash",0);
INI_WriteInt(File,"aAdmin",0);
INI_WriteInt(File,"aKills",0);
INI_WriteInt(File,"aDeaths",0);
INI_Close(File);
ShowPlayerDialog(playerid, DIALOG_SUCCESS_1, DIALOG_STYLE_MSGBOX,""COL_CYAN"Success!",""COL_GREY"Great! You have sucessfully registered. Relog to save your stats!","Ok","");
}
}
case DIALOG_LOGIN:
{
if ( !response ) return Kick ( playerid );
if( response )
{
if(udb_hash(inputtext) == PlayerInfo[playerid][aPass])
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
GivePlayerMoney(playerid, PlayerInfo[playerid][aCash]);
ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_CYAN"Success!",""COL_GREY"You have successfully logged in!","Ok","");
}
else
{
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_CYAN"Login",""COL_RED"You have entered an incorrect password.\n"COL_GREY"Type your password below to login.","Login","Quit");
}
return 1;
}
}
case 354:
{
if(!response) return SendClientMessage(playerid, COLOR_WHITE, "You have exited the player list.");
switch(listitem) {
case 0:
PlayAudioStreamForPlayer(playerid, ""station1stream""),
SendClientMessage(playerid, COLOR_WHITE, ""red"SERVER: "yellow"Type /radiostop to stop audio streaming.");
case 1:
PlayAudioStreamForPlayer(playerid, ""station2stream""),
SendClientMessage(playerid, COLOR_WHITE, ""red"SERVER: "yellow"Type /radiostop to stop audio streaming.");
case 2:
PlayAudioStreamForPlayer(playerid, ""station3stream""),
SendClientMessage(playerid, COLOR_WHITE, ""red"SERVER: "yellow"Type /radiostop to stop audio streaming.");
case 3:
PlayAudioStreamForPlayer(playerid, ""station4stream""),
SendClientMessage(playerid, COLOR_WHITE, ""red"SERVER: "yellow"Type /radiostop to stop audio streaming.");
case 4:
PlayAudioStreamForPlayer(playerid, ""station5stream""),
SendClientMessage(playerid, COLOR_WHITE, ""red"SERVER: "yellow"Type /radiostop to stop audio streaming.");
case 5:
PlayAudioStreamForPlayer(playerid, ""station6stream""),
SendClientMessage(playerid, COLOR_WHITE, ""red"SERVER: "yellow"Type /radiostop to stop audio streaming.");
case 6:
PlayAudioStreamForPlayer(playerid, ""station7stream""),
SendClientMessage(playerid, COLOR_WHITE, ""red"SERVER: "yellow"Type /radiostop to stop audio streaming.");
}
}
}
return 1;
}