Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define YSI_YES_HEAP_MALLOC
- #define CGEN_MEMORY 60000
- #include <a_samp>
- #include <ysilib\YSI_Storage\y_ini>
- #include <ysilib\YSI_Visual\y_commands>
- #include <sscanf2>
- #define c_server "{0099ff}"
- #define c_white "{ffffff}"
- #define x_server 0x0099FFAA
- #define x_ltblue 0x00f2ffAA
- static stock const USER_PATH[64] = "/Users/%s.ini";
- static
- player_Skin[MAX_PLAYERS],
- player_Staff[MAX_PLAYERS];
- new stfveh[MAX_PLAYERS] = { INVALID_VEHICLE_ID, ... };
- forward Account_Load(const playerid, const string: name[], const string: value[]);
- public Account_Load(const playerid, const string: name[], const string: value[])
- {
- INI_Int("Staff", player_Staff[playerid]);
- return 1;
- }
- main()
- {
- print("- -");
- print("*staff system");
- print("*credits: realnaith");
- print("- -");
- }
- public OnPlayerConnect(playerid)
- {
- stfveh[playerid] = INVALID_VEHICLE_ID;
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new INI:File = INI_Open(Account_Path(playerid));
- INI_SetTag(File,"data");
- INI_WriteInt(File, "Staff", player_Staff[playerid]);
- INI_Close(File);
- DestroyVehicle(stfveh[playerid]);
- stfveh[playerid] = INVALID_PLAYER_ID;
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- DestroyVehicle(stfveh[playerid]);
- stfveh[playerid] = INVALID_PLAYER_ID;
- return 1;
- }
- stock Account_Path(const playerid)
- {
- new tmp_fmt[64];
- format(tmp_fmt, sizeof(tmp_fmt), USER_PATH, ReturnPlayerName(playerid));
- return tmp_fmt;
- }
- stock IsVehicleBicycle(m)
- {
- if (m == 481 || m == 509 || m == 510) return true;
- return false;
- }
- YCMD:sc(playerid, const string: params[], help)
- {
- if (player_Staff[playerid] < 1)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Samo staff moze ovo!");
- if (isnull(params))
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"/sc [text]");
- static tmp_str[128];
- format(tmp_str, sizeof(tmp_str), "Staff - %s(%d): "c_white"%s", ReturnPlayerName(playerid), playerid, params);
- foreach (new i: Player)
- if (player_Staff[i])
- SendClientMessage(i, x_ltblue, tmp_str);
- return 1;
- }
- YCMD:sveh(playerid, params[], help)
- {
- if (player_Staff[playerid] < 1)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Samo staff moze ovo!");
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- if (stfveh[playerid] == INVALID_VEHICLE_ID)
- {
- if (isnull(params))
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"/sveh [Model ID]");
- new modelid = strval(params);
- if (400 > modelid > 611)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"* Validni modeli su od 400 do 611.");
- new vehicleid = stfveh[playerid] = CreateVehicle(modelid, x, y, z, 0.0, 1, 0, -1);
- SetVehicleNumberPlate(vehicleid, "STAFF");
- PutPlayerInVehicle(playerid, vehicleid, 0);
- new engine, lights, alarm, doors, bonnet, boot, objective;
- GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
- if (IsVehicleBicycle(GetVehicleModel(vehicleid)))
- {
- SetVehicleParamsEx(vehicleid, 1, 0, 0, doors, bonnet, boot, objective);
- }
- else
- {
- SetVehicleParamsEx(vehicleid, 0, 0, 0, doors, bonnet, boot, objective);
- }
- SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Stvorili ste vozilo, da ga unistite kucajte '/sveh'.");
- }
- else
- {
- DestroyVehicle(stfveh[playerid]);
- stfveh[playerid] = INVALID_PLAYER_ID;
- SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Unistili ste vozilo, da ga stvorite kucajte '/veh [Model ID]'.");
- }
- return 1;
- }
- YCMD:goto(playerid, params[],help)
- {
- if (player_Staff[playerid] < 1)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Samo staff moze ovo!");
- new giveplayerid, giveplayer[MAX_PLAYER_NAME];
- new Float:plx,Float:ply,Float:plz;
- GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
- if(!sscanf(params, "u", giveplayerid))
- {
- GetPlayerPos(giveplayerid, plx, ply, plz);
- if (GetPlayerState(playerid) == 2)
- {
- new tmpcar = GetPlayerVehicleID(playerid);
- SetVehiclePos(tmpcar, plx, ply+4, plz);
- }
- else
- {
- SetPlayerPos(playerid,plx,ply+2, plz);
- }
- SetPlayerInterior(playerid, GetPlayerInterior(giveplayerid));
- }
- return 1;
- }
- YCMD:cc(playerid, params[], help)
- {
- if (player_Staff[playerid] < 1)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Samo staff moze ovo!");
- for(new cc; cc < 110; cc++)
- {
- SendClientMessageToAll(-1, "");
- }
- if(player_Staff[playerid] < 1)
- {
- static fmt_string[120];
- format(fmt_string, sizeof(fmt_string), ""c_server"offline // "c_white"chat je ocistio"c_server" %s", ReturnPlayerName(playerid));
- SendClientMessageToAll(-1, fmt_string);
- }
- return 1;
- }
- YCMD:fv(playerid, params[], help)
- {
- if (player_Staff[playerid] < 1)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Samo staff moze ovo!");
- new vehicleid = GetPlayerVehicleID(playerid);
- if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Niste u vozilu!");
- RepairVehicle(vehicleid);
- SetVehicleHealth(vehicleid, 999.0);
- return 1;
- }
- YCMD:gethere(playerid, const params[], help)
- {
- if (player_Staff[playerid] < 1)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Samo staff moze ovo!");
- new targetid = INVALID_PLAYER_ID;
- if(sscanf(params, "u", targetid)) return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"/gethere [id]");
- if(targetid == INVALID_PLAYER_ID) return SendClientMessage(playerid, x_server, "offline // "c_white"Taj ID nije konektovan.");
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- SetPlayerPos(targetid, x+1, y, z+1);
- SetPlayerInterior(targetid, GetPlayerInterior(playerid));
- SetPlayerVirtualWorld(targetid, GetPlayerVirtualWorld(playerid));
- new name[MAX_PLAYER_NAME];
- GetPlayerName(targetid, name, sizeof(name));
- static fmt_string[60];
- format(fmt_string, sizeof(fmt_string),""c_server"offline // "c_white"Teleportovali ste igraca %s do sebe.", name);
- SendClientMessage(playerid, -1, fmt_string);
- GetPlayerName(playerid, name, sizeof(name));
- format(fmt_string, sizeof(fmt_string), ""c_server"offline // "c_white"Staff %s vas je teleportovao do sebe.", name);
- SendClientMessage(targetid, -1, fmt_string);
- return 1;
- }
- YCMD:nitro(playerid, params[], help)
- {
- if (player_Staff[playerid] < 1)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Samo staff moze ovo!");
- AddVehicleComponent(GetPlayerVehicleID(playerid), 1010);
- SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Ugradili ste nitro u vase vozilo.");
- return 1;
- }
- YCMD:jetpack(playerid, params[], help)
- {
- if (player_Staff[playerid] < 1)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Samo staff moze ovo!");
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_USEJETPACK);
- SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Uzeli ste Jetpack.");
- return 1;
- }
- YCMD:setskin(playerid, const string: params[], help)
- {
- if (player_Staff[playerid] < 1)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Samo staff moze ovo!");
- static
- targetid,
- skinid;
- if (sscanf(params, "ri", targetid, skinid))
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"/setskin [targetid] [skinid]");
- if (!(1 <= skinid <= 311))
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Pogresan ID skina!");
- if (GetPlayerSkin(targetid) == skinid)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Taj igrac vec ima taj skin!");
- SetPlayerSkin(targetid, skinid);
- player_Skin[targetid] = skinid;
- new INI:File = INI_Open(Account_Path(playerid));
- INI_SetTag( File, "data" );
- INI_WriteInt(File, "Skin", GetPlayerSkin(playerid));
- INI_Close( File );
- return 1;
- }
- YCMD:xgoto(playerid, params[], help)
- {
- if (player_Staff[playerid] < 1)
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Samo staff moze ovo!");
- new Float:x, Float:y, Float:z;
- static fmt_string[100];
- if (sscanf(params, "fff", x, y, z)) SendClientMessage(playerid, -1, ""c_server"offline // "c_white"xgoto <X Float> <Y Float> <Z Float>");
- else
- {
- if(IsPlayerInAnyVehicle(playerid))
- {
- SetVehiclePos(GetPlayerVehicleID(playerid), x,y,z);
- }
- else
- {
- SetPlayerPos(playerid, x, y, z);
- }
- format(fmt_string, sizeof(fmt_string), ""c_server"offline // "c_white"Postavili ste koordinate na %f, %f, %f", x, y, z);
- SendClientMessage(playerid, x_ltblue, fmt_string);
- }
- return 1;
- }
- YCMD:setstaff(playerid, const string: params[], help)
- {
- if(!IsPlayerAdmin(playerid))
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Morate biti RCON!");
- static
- targetid,
- level;
- if (sscanf(params, "ri", targetid, level))
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"/setstaff [targetid] [0/1]");
- if (!level && !player_Staff[targetid])
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Taj igrac nije u staff-u.");
- if (level == player_Staff[targetid])
- return SendClientMessage(playerid, -1, ""c_server"offline // "c_white"Taj igrac je vec u staff-u.");
- player_Staff[targetid] = level;
- if (!level)
- {
- static fmt_string[64];
- format(fmt_string, sizeof(fmt_string), ""c_server"offline // "c_white"%s Vas je izbacio iz staff-a.", ReturnPlayerName(playerid));
- SendClientMessage(targetid, -1, fmt_string);
- format(fmt_string, sizeof(fmt_string), ""c_server"offline // "c_white"Izbacili ste %s iz staff-a.", ReturnPlayerName(targetid));
- SendClientMessage(playerid, -1, fmt_string);
- }
- else
- {
- static fmt_string[64];
- format(fmt_string, sizeof(fmt_string), ""c_server"offline // "c_white"%s Vas je ubacio u staff.", ReturnPlayerName(playerid));
- SendClientMessage(targetid, -1, fmt_string);
- format(fmt_string, sizeof(fmt_string), ""c_server"offline // "c_white"Ubacili ste %s u staff.", ReturnPlayerName(targetid));
- SendClientMessage(playerid, -1, fmt_string);
- }
- new INI:File = INI_Open(Account_Path(playerid));
- INI_SetTag( File, "data" );
- INI_WriteInt(File, "Staff", player_Staff[playerid]);
- INI_Close( File );
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement