Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Include
- #include <a_samp>
- #include <ocmd>
- #include <sscanf_michael>
- //Einstellungen
- #define POS_PRISON 98.8493,1915.8795,18.2316
- //Variablen
- new Text:Textdraw[5];
- new PlayerText:pTextDraw[MAX_PLAYERS][5];
- new Timer[MAX_PLAYERS];
- //Timer
- forward UpdateCPInfo(playerid);
- public OnFilterScriptInit()
- {
- Textdraw[0] = TextDrawCreate(610.666625, 174.892593, "usebox");
- TextDrawLetterSize(Textdraw[0], 0.000000, 5.168106);
- TextDrawTextSize(Textdraw[0], 494.666687, 0.000000);
- TextDrawAlignment(Textdraw[0], 1);
- TextDrawColor(Textdraw[0], 0);
- TextDrawUseBox(Textdraw[0], true);
- TextDrawBoxColor(Textdraw[0], 102);
- TextDrawSetShadow(Textdraw[0], 0);
- TextDrawSetOutline(Textdraw[0], 0);
- TextDrawFont(Textdraw[0], 0);
- Textdraw[1] = TextDrawCreate(515.333312, 171.318557, "CP - Jail");
- TextDrawLetterSize(Textdraw[1], 0.469999, 1.724444);
- TextDrawAlignment(Textdraw[1], 1);
- TextDrawColor(Textdraw[1], -1);
- TextDrawSetShadow(Textdraw[1], 0);
- TextDrawSetOutline(Textdraw[1], 1);
- TextDrawBackgroundColor(Textdraw[1], 51);
- TextDrawFont(Textdraw[1], 1);
- TextDrawSetProportional(Textdraw[1], 1);
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- if(GetPVarInt(playerid, "Checkpoints") < 1)return 1;
- SetPVarInt(playerid, "Tod", 1);
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- if(GetPVarInt(playerid, "Tod") < 1)return 1;
- SpawnPlayer(playerid);
- SetPlayerPos(playerid, POS_PRISON), SetPlayerInterior(playerid, 0);
- TextDrawHideForPlayer(playerid, Textdraw[0]),TextDrawHideForPlayer(playerid, Textdraw[1]);
- KillTimer(Timer[playerid]);
- SetPlayerCheckpoint(playerid, 284.9121,1808.0790,17.6406, 5);
- TextDrawShowForPlayer(playerid, Textdraw[0]),TextDrawShowForPlayer(playerid, Textdraw[1]);
- PlayerTextDrawShow(playerid, pTextDraw[playerid][0]);
- Timer[playerid] = SetTimerEx("UpdateCPInfo", 500, true, "i", playerid);
- RemovePlayerAttachedObject(playerid, 0);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
- SendClientMessage(playerid, -1, "Du kannst dich nicht durch Töten aus der Patsche holen!");
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CUFFED);
- SetPlayerAttachedObject(playerid, 0, 19418, 6, -0.011000, 0.028000, -0.022000, -15.600012, -33.699977, -81.700035, 0.891999, 1.000000, 1.168000);
- SetPlayerSkin(playerid, 46);
- GameTextForPlayer(playerid, "~r~Prison!", 2000, 5);
- SetPVarInt(playerid, "Tod", 0);
- return 1;
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
- SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- pTextDraw[playerid][0] = CreatePlayerTextDraw(playerid, 496.333312, 191.229644, "Restliche_CP:");
- PlayerTextDrawLetterSize(playerid, pTextDraw[playerid][0], 0.375000, 1.351111);
- PlayerTextDrawAlignment(playerid, pTextDraw[playerid][0], 1);
- PlayerTextDrawColor(playerid, pTextDraw[playerid][0], -16776961);
- PlayerTextDrawSetShadow(playerid, pTextDraw[playerid][0], -1);
- PlayerTextDrawSetOutline(playerid, pTextDraw[playerid][0], 0);
- PlayerTextDrawBackgroundColor(playerid, pTextDraw[playerid][0], 51);
- PlayerTextDrawFont(playerid, pTextDraw[playerid][0], 1);
- PlayerTextDrawSetProportional(playerid, pTextDraw[playerid][0], 1);
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- if(GetPVarInt(playerid, "Checkpoints") > 0)
- {
- new rand = 1 + random(4);
- if(rand == 0){SetPlayerCheckpoint(playerid, 284.9121, 1808.0790, 17.6406, 5.0),SetPVarInt(playerid, "Checkpoints", GetPVarInt(playerid, "Checkpoints") - 1);return 1; }
- if(rand == 1){SetPlayerCheckpoint(playerid, 208.9993, 1940.2766, 17.6406, 5.0),SetPVarInt(playerid, "Checkpoints", GetPVarInt(playerid, "Checkpoints") - 1);return 1; }
- if(rand == 2){SetPlayerCheckpoint(playerid, 97.0144, 1819.4020, 17.6406, 5.0),SetPVarInt(playerid, "Checkpoints", GetPVarInt(playerid, "Checkpoints") - 1);return 1; }
- if(rand == 3){SetPlayerCheckpoint(playerid, 220.7634, 1851.2101, 12.6547, 5.0),SetPVarInt(playerid, "Checkpoints", GetPVarInt(playerid, "Checkpoints") - 1);return 1; }
- if(rand == 4){SetPlayerCheckpoint(playerid, 208.2701, 1840.2062, 17.6406, 5.0),SetPVarInt(playerid, "Checkpoints", GetPVarInt(playerid, "Checkpoints") - 1);return 1; }
- }
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if(newkeys == KEY_JUMP && GetPVarInt(playerid, "Checkpoints") > 0)
- {
- //ApplyAnimation(playerid, "ped", "FALL_fall", 3.0, 1, 1, 0, 1, 1);
- TogglePlayerControllable(playerid, true);
- SendClientMessage(playerid, -1, "Bitte unterlasse das Bunnyhopping im CP - Jail");
- return 1;
- }
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- return 1;
- }
- ocmd:cpjail(playerid, params[])
- {
- new id, value, reason[50], sendername[24], giveplayerid[24], string[256], Float:x, Float:y, Float:z;
- if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid, -1, "Du bist nicht berechtigt.");
- if(sscanf(params, "uis", id, value, reason))return SendClientMessage(playerid, -1, "Fehler: /cpjail [Spielername/Spielerid] [Anzahl] [Grund]");
- if(id == INVALID_PLAYER_ID)return SendClientMessage(playerid, -1, "Der Spieler ist nicht online");
- if(GetPVarInt(id, "Checkpoints") > 0)return SendClientMessage(playerid, -1, "Dieser Spieler ist bereits im CP Jail");
- if(value < 20 || value > 300)return SendClientMessage(playerid, -1, "Mindesten: 20 | Mindesten: 300");
- GetPlayerName(playerid, sendername, sizeof(sendername)), GetPlayerName(id, giveplayerid, sizeof(giveplayerid));
- format(string, sizeof(string), "[JAIL]: %s wurde von %s für %i CPS eingesperrt. Grund: %s", giveplayerid, sendername, value, reason);
- SendClientMessageToAll(0xD70000FF, string);
- SetPVarInt(id, "Checkpoints", value);
- SetPlayerSpecialAction(id, SPECIAL_ACTION_CUFFED);
- SetPlayerAttachedObject(id, 0, 19418, 6, -0.011000, 0.028000, -0.022000, -15.600012, -33.699977, -81.700035, 0.891999, 1.000000, 1.168000);
- GameTextForPlayer(id, "~r~Prison!", 2000, 5);
- SetPlayerPos(id, POS_PRISON), SetPlayerInterior(id, 0);
- SetPlayerCheckpoint(id, 284.9121,1808.0790,17.6406, 5);
- TextDrawShowForPlayer(id, Textdraw[0]),TextDrawShowForPlayer(id, Textdraw[1]);
- PlayerTextDrawShow(id, pTextDraw[id][0]);
- Timer[id] = SetTimerEx("UpdateCPInfo", 500, true, "i", id);
- GetPlayerPos(id, x, y, z);
- SetPlayerSkin(id, 46);
- SetPVarFloat(id, "X", x),SetPVarFloat(id, "Y", y),SetPVarFloat(id, "Z", z),SetPVarInt(id, "Int", GetPlayerInterior(id));
- return 1;
- }
- ocmd:cpunjail(playerid, params[])
- {
- new id, string[256], giveplayerid[24], sendername[24];
- if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid, -1, "Du bist nicht berechtigt.");
- if(sscanf(params, "u", id))return SendClientMessage(playerid, -1, "/cpunjail [Spielerid/Spielername]");
- if(id == INVALID_PLAYER_ID)return SendClientMessage(playerid, -1, "Der Spieler ist nicht online");
- GetPlayerName(playerid, sendername, sizeof(sendername)), GetPlayerName(id, giveplayerid, sizeof(giveplayerid));
- if(GetPVarInt(id, "Checkpoints") == 0)return SendClientMessage(playerid, -1, "Der Spieler ist nicht im CP - Jail");
- format(string, sizeof(string), "[JAIL]: %s wurde von %s aus dem CP - Jail geholt.", giveplayerid, sendername);
- SendClientMessageToAll(0xD70000FF, string);
- SetPVarInt(id, "Checkpoints", 0);
- return 1;
- }
- public UpdateCPInfo(playerid)
- {
- if(GetPVarInt(playerid, "Checkpoints") < 1)
- {
- SetPlayerPos(playerid, GetPVarFloat(playerid, "X"), GetPVarFloat(playerid, "Y"), GetPVarFloat(playerid, "Z")), SetPlayerInterior(playerid, GetPVarInt(playerid, "Int"));
- GameTextForPlayer(playerid, "Du bist ~g~FREI!", 2000, 5);
- TextDrawHideForPlayer(playerid, Textdraw[0]),TextDrawHideForPlayer(playerid, Textdraw[1]);
- PlayerTextDrawHide(playerid, pTextDraw[playerid][0]);
- RemovePlayerAttachedObject(playerid, 0);
- SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
- KillTimer(Timer[playerid]);
- return 1;
- }
- new string[25];
- format(string, sizeof(string), "Restliche_CP: %i", GetPVarInt(playerid, "Checkpoints"));
- PlayerTextDrawSetString(playerid, pTextDraw[playerid][0], string);
- return 1;
- }
- ocmd:t(playerid)return SetPlayerHealth(playerid, (0-1.1));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement