#include #include #define FARBE 0xFF000FFF forward TimerTazerStart(playerid); forward TimerTazerEnd(playerid); #if defined FILTERSCRIPT public OnFilterScriptInit() { print("\n--------------------------------------"); print(" Blank Filterscript by your name here"); print("--------------------------------------\n"); return 1; } public OnFilterScriptExit() { return 1; } #else main() { print("\n----------------------------------"); print(" Blank Gamemode by your name here"); print("----------------------------------\n"); } #endif public OnGameModeInit() { // Don't use these lines if it's a filterscript SetGameModeText("Blank Script"); AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); return 1; } public OnGameModeExit() { 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) { return 1; } public OnPlayerDisconnect(playerid, reason) { return 1; } public OnPlayerSpawn(playerid) { return 1; } public OnPlayerDeath(playerid, killerid, reason) { return 1; } public OnVehicleSpawn(vehicleid) { return 1; } public OnVehicleDeath(vehicleid, killerid) { return 1; } public OnPlayerText(playerid, text[]) { return 1; } ocmd:tazer(playerid,params[]) { new Float:TMPPos[3],pID; GetPlayerPos(playerid, TMPPos[0],TMPPos[1],TMPPos[2]); if(gTeam(playerid) == TEAM_POLIZEI)return SendClientMessage(playerid,FARBE,"Du bist kein Polizist."); if(IsPlayerInAnyVehicle(pID))return SendClientMessage(playerid,FARBE,"Du kannst diesen Spieler nicht Tazern, da er in einem Fahrzeug sitzt."); if(IsPlayerInRangeOfPoint(pID, 5, TMPPos[0],TMPPos[1],TMPPos[2])) { SetTimerEx("TimerTazerStart", 1,false, "d", pID); } else { SendClientMessage(playerid,FARBE,"Dieser Spieler ist nicht in deiner nähe"); //Wenn der Spieler nicht in der Nähe ist kommt das } return 1; } stock SpielerName(playerid) { new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); return name; } //TimerTazer start// public TimerTazerStart(playerid) //Der Timer für den Spieler { TogglePlayerControllable(playerid,0); //Freezed den Spieler SetTimerEx("TimerTazerEnd", 5000, false, "d", playerid); return 1; } public TimerTazerEnd(playerid) //Der Timer für den Spieler { TogglePlayerControllable(playerid,1); //Entfreezed den Spieler return 1; } //TimerTazer ende// public OnPlayerCommandText(playerid, cmdtext[]) { return 0; } 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 OnPlayerRequestSpawn(playerid) { return 1; } public OnObjectMoved(objectid) { return 1; } public OnPlayerObjectMoved(playerid, objectid) { return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { return 1; } public OnVehicleMod(playerid, vehicleid, componentid) { return 1; } public OnVehiclePaintjob(playerid, vehicleid, paintjobid) { return 1; } public OnVehicleRespray(playerid, vehicleid, color1, color2) { return 1; } public OnPlayerSelectedMenuRow(playerid, row) { return 1; } public OnPlayerExitedMenu(playerid) { return 1; } public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid) { return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { return 1; } public OnRconLoginAttempt(ip[], password[], success) { return 1; } public OnPlayerUpdate(playerid) { return 1; } public OnPlayerStreamIn(playerid, forplayerid) { return 1; } public OnPlayerStreamOut(playerid, forplayerid) { return 1; } public OnVehicleStreamIn(vehicleid, forplayerid) { return 1; } public OnVehicleStreamOut(vehicleid, forplayerid) { return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { return 1; } public OnPlayerClickPlayer(playerid, clickedplayerid, source) { return 1; } stock sscanf(sstring[], format[], {Float,_}:...) { #if defined isnull if (isnull(sstring)) #else if (sstring[0] == 0 || (sstring[0] == 1 && sstring[1] == 0)) #endif { return format[0]; } #pragma tabsize 4 new formatPos = 0, sstringPos = 0, paramPos = 2, paramCount = numargs(), delim = ' '; while (sstring[sstringPos] && sstring[sstringPos] <= ' ') { sstringPos++; } while (paramPos < paramCount && sstring[sstringPos]) { switch (format[formatPos++]) { case '\0': { return 0; } case 'i', 'd': { new neg = 1, num = 0, ch = sstring[sstringPos]; if (ch == '-') { neg = -1; ch = sstring[++sstringPos]; } do { sstringPos++; if ('0' <= ch <= '9') { num = (num * 10) + (ch - '0'); } else { return -1; } } while ((ch = sstring[sstringPos]) > ' ' && ch != delim); setarg(paramPos, 0, num * neg); } case 'h', 'x': { new num = 0, ch = sstring[sstringPos]; do { sstringPos++; switch (ch) { case 'x', 'X': { num = 0; continue; } case '0' .. '9': { num = (num << 4) | (ch - '0'); } case 'a' .. 'f': { num = (num << 4) | (ch - ('a' - 10)); } case 'A' .. 'F': { num = (num << 4) | (ch - ('A' - 10)); } default: { return -1; } } } while ((ch = sstring[sstringPos]) > ' ' && ch != delim); setarg(paramPos, 0, num); } case 'c': { setarg(paramPos, 0, sstring[sstringPos++]); } case 'f': { new changestr[16], changepos = 0, strpos = sstringPos; while(changepos < 16 && sstring[strpos] && sstring[strpos] != delim) { changestr[changepos++] = sstring[strpos++]; } changestr[changepos] = '\0'; setarg(paramPos,0,_:floatstr(changestr)); } case 'p': { delim = format[formatPos++]; continue; } case '\'': { new end = formatPos - 1, ch; while ((ch = format[++end]) && ch != '\'') {} if (!ch) { return -1; } format[end] = '\0'; if ((ch = strfind(sstring, format[formatPos], false, sstringPos)) == -1) { if (format[end + 1]) { return -1; } return 0; } format[end] = '\''; sstringPos = ch + (end - formatPos); formatPos = end + 1; } case 'u': { new end = sstringPos - 1, id = 0, bool:num = true, ch; while ((ch = sstring[++end]) && ch != delim) { if (num) { if ('0' <= ch <= '9') { id = (id * 10) + (ch - '0'); } else { num = false; } } } if (num && IsPlayerConnected(id)) { setarg(paramPos, 0, id); } else { #if !defined foreach #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2)) #define __SSCANF_FOREACH__ #endif sstring[end] = '\0'; num = false; new name[MAX_PLAYER_NAME]; id = end - sstringPos; foreach (Player, playerid) { GetPlayerName(playerid, name, sizeof (name)); if (!strcmp(name, sstring[sstringPos], true, id)) { setarg(paramPos, 0, playerid); num = true; break; } } if (!num) { setarg(paramPos, 0, INVALID_PLAYER_ID); } sstring[end] = ch; #if defined __SSCANF_FOREACH__ #undef foreach #undef __SSCANF_FOREACH__ #endif } sstringPos = end; } case 's', 'z': { new i = 0, ch; if (format[formatPos]) { while ((ch = sstring[sstringPos++]) && ch != delim) { setarg(paramPos, i++, ch); } if (!i) { return -1; } } else { while ((ch = sstring[sstringPos++])) { setarg(paramPos, i++, ch); } } sstringPos--; setarg(paramPos, i, '\0'); } default: { continue; } } while (sstring[sstringPos] && sstring[sstringPos] != delim && sstring[sstringPos] > ' ') { sstringPos++; } while (sstring[sstringPos] && (sstring[sstringPos] == delim || sstring[sstringPos] <= ' ')) { sstringPos++; } paramPos++; } do { if ((delim = format[formatPos++]) > ' ') { if (delim == '\'') { while ((delim = format[formatPos++]) && delim != '\'') {} } else if (delim != 'z') { return delim; } } } while (delim > ' '); return 0; }