Moin Leute kann mir einer den link für cam hack schiken brauche ihn für mein server
SAMP Cam hack
- Marc1234
- Geschlossen
- Erledigt
- 
			
- 
			Wie wärs mit dem flymode Filterscript? Spoiler anzeigen 
 //-------------------------------------------------
 //
 // This is an example of using the AttachCameraToObject function
 // to create a no-clip flying camera.
 //
 // h02 2012
 //
 // SA-MP 0.3e and above
 //
 //-------------------------------------------------Spoiler anzeigen #include <a_samp>Spoiler anzeigen // Players Move Speed
 #define MOVE_SPEED 100.0
 #define ACCEL_RATE 0.03Spoiler anzeigen // Players Mode
 #define CAMERA_MODE_NONE 0
 #define CAMERA_MODE_FLY 1Spoiler anzeigen // Key state definitions
 #define MOVE_FORWARD 1
 #define MOVE_BACK 2
 #define MOVE_LEFT 3
 #define MOVE_RIGHT 4
 #define MOVE_FORWARD_LEFT 5
 #define MOVE_FORWARD_RIGHT 6
 #define MOVE_BACK_LEFT 7
 #define MOVE_BACK_RIGHT 8Spoiler anzeigen // Enumeration for storing data about the player
 enum noclipenum
 {
 cameramode,
 flyobject,
 mode,
 lrold,
 udold,
 lastmove,
 Float:accelmul
 }
 new noclipdata[MAX_PLAYERS][noclipenum];Spoiler anzeigen //--------------------------------------------------Spoiler anzeigen public OnFilterScriptExit()
 {
 // If any players are still in edit mode, boot them out before the filterscript unloads
 for(new x; x<MAX_PLAYERS; x++)
 {
 if(noclipdata[x][cameramode] == CAMERA_MODE_FLY) CancelFlyMode(x);
 }
 return 1;
 }Spoiler anzeigen //--------------------------------------------------Spoiler anzeigen public OnPlayerConnect(playerid)
 {
 // Reset the data belonging to this player slot
 noclipdata[playerid][cameramode] = CAMERA_MODE_NONE;
 noclipdata[playerid][lrold] = 0;
 noclipdata[playerid][udold] = 0;
 noclipdata[playerid][mode] = 0;
 noclipdata[playerid][lastmove] = 0;
 noclipdata[playerid][accelmul] = 0.0;
 return 1;
 }Spoiler anzeigen //--------------------------------------------------Spoiler anzeigen public OnPlayerCommandText(playerid, cmdtext[])
 {
 if(!strcmp(cmdtext, "/flymode", true))
 {
 if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000AA,"You can't use this command.");
 // Place the player in and out of edit mode
 if(GetPVarType(playerid, "FlyMode")) CancelFlyMode(playerid);
 else FlyMode(playerid);
 return 1;
 }
 return 0;
 }Spoiler anzeigen //--------------------------------------------------Spoiler anzeigen public OnPlayerUpdate(playerid)
 {
 if(noclipdata[playerid][cameramode] == CAMERA_MODE_FLY)
 {
 new keys,ud,lr;
 GetPlayerKeys(playerid,keys,ud,lr);Spoiler anzeigen if(noclipdata[playerid][mode] && (GetTickCount() - noclipdata[playerid][lastmove] > 100))
 {
 // If the last move was > 100ms ago, process moving the object the players camera is attached to
 MoveCamera(playerid);
 }Spoiler anzeigen // Is the players current key state different than their last keystate?
 if(noclipdata[playerid][udold] != ud || noclipdata[playerid][lrold] != lr)
 {
 if((noclipdata[playerid][udold] != 0 || noclipdata[playerid][lrold] != 0) && ud == 0 && lr == 0)
 { // All keys have been released, stop the object the camera is attached to and reset the acceleration multiplier
 StopPlayerObject(playerid, noclipdata[playerid][flyobject]);
 noclipdata[playerid][mode] = 0;
 noclipdata[playerid][accelmul] = 0.0;
 }
 else
 { // Indicates a new key has been pressedSpoiler anzeigen // Get the direction the player wants to move as indicated by the keys
 noclipdata[playerid][mode] = GetMoveDirectionFromKeys(ud, lr);Spoiler anzeigen // Process moving the object the players camera is attached to
 MoveCamera(playerid);
 }
 }
 noclipdata[playerid][udold] = ud; noclipdata[playerid][lrold] = lr; // Store current keys pressed for comparison next update
 return 0;
 }
 return 1;
 }Spoiler anzeigen //--------------------------------------------------Spoiler anzeigen stock GetMoveDirectionFromKeys(ud, lr)
 {
 new direction = 0;
 if(lr < 0)
 {
 if(ud < 0) direction = MOVE_FORWARD_LEFT; // Up & Left key pressed
 else if(ud > 0) direction = MOVE_BACK_LEFT; // Back & Left key pressed
 else direction = MOVE_LEFT; // Left key pressed
 }
 else if(lr > 0) // Right pressed
 {
 if(ud < 0) direction = MOVE_FORWARD_RIGHT; // Up & Right key pressed
 else if(ud > 0) direction = MOVE_BACK_RIGHT; // Back & Right key pressed
 else direction = MOVE_RIGHT; // Right key pressed
 }
 else if(ud < 0) direction = MOVE_FORWARD; // Up key pressed
 else if(ud > 0) direction = MOVE_BACK; // Down key pressed
 return direction;
 }Spoiler anzeigen //--------------------------------------------------Spoiler anzeigen stock MoveCamera(playerid)
 {
 new Float:FV[3], Float:CP[3];
 GetPlayerCameraPos(playerid, CP[0], CP[1], CP[2]); // Cameras position in space
 GetPlayerCameraFrontVector(playerid, FV[0], FV[1], FV[2]); // Where the camera is looking atSpoiler anzeigen // Increases the acceleration multiplier the longer the key is held
 if(noclipdata[playerid][accelmul] <= 1) noclipdata[playerid][accelmul] += ACCEL_RATE;Spoiler anzeigen // Determine the speed to move the camera based on the acceleration multiplier
 new Float:speed = MOVE_SPEED * noclipdata[playerid][accelmul];Spoiler anzeigen // Calculate the cameras next position based on their current position and the direction their camera is facing
 new Float:X, Float:Y, Float:Z;
 GetNextCameraPosition(noclipdata[playerid][mode], CP, FV, X, Y, Z);
 MovePlayerObject(playerid, noclipdata[playerid][flyobject], X, Y, Z, speed);Spoiler anzeigen // Store the last time the camera was moved as now
 noclipdata[playerid][lastmove] = GetTickCount();
 return 1;
 }Spoiler anzeigen //--------------------------------------------------Spoiler anzeigen stock GetNextCameraPosition(move_mode, Float:CP[3], Float:FV[3], &Float:X, &Float:Y, &Float:Z)
 {
 // Calculate the cameras next position based on their current position and the direction their camera is facing
 #define OFFSET_X (FV[0]*6000.0)
 #define OFFSET_Y (FV[1]*6000.0)
 #define OFFSET_Z (FV[2]*6000.0)
 switch(move_mode)
 {
 case MOVE_FORWARD:
 {
 X = CP[0]+OFFSET_X;
 Y = CP[1]+OFFSET_Y;
 Z = CP[2]+OFFSET_Z;
 }
 case MOVE_BACK:
 {
 X = CP[0]-OFFSET_X;
 Y = CP[1]-OFFSET_Y;
 Z = CP[2]-OFFSET_Z;
 }
 case MOVE_LEFT:
 {
 X = CP[0]-OFFSET_Y;
 Y = CP[1]+OFFSET_X;
 Z = CP[2];
 }
 case MOVE_RIGHT:
 {
 X = CP[0]+OFFSET_Y;
 Y = CP[1]-OFFSET_X;
 Z = CP[2];
 }
 case MOVE_BACK_LEFT:
 {
 X = CP[0]+(-OFFSET_X - OFFSET_Y);
 Y = CP[1]+(-OFFSET_Y + OFFSET_X);
 Z = CP[2]-OFFSET_Z;
 }
 case MOVE_BACK_RIGHT:
 {
 X = CP[0]+(-OFFSET_X + OFFSET_Y);
 Y = CP[1]+(-OFFSET_Y - OFFSET_X);
 Z = CP[2]-OFFSET_Z;
 }
 case MOVE_FORWARD_LEFT:
 {
 X = CP[0]+(OFFSET_X - OFFSET_Y);
 Y = CP[1]+(OFFSET_Y + OFFSET_X);
 Z = CP[2]+OFFSET_Z;
 }
 case MOVE_FORWARD_RIGHT:
 {
 X = CP[0]+(OFFSET_X + OFFSET_Y);
 Y = CP[1]+(OFFSET_Y - OFFSET_X);
 Z = CP[2]+OFFSET_Z;
 }
 }
 }
 //--------------------------------------------------Spoiler anzeigen stock CancelFlyMode(playerid)
 {
 DeletePVar(playerid, "FlyMode");
 CancelEdit(playerid);
 TogglePlayerSpectating(playerid, false);Spoiler anzeigen DestroyPlayerObject(playerid, noclipdata[playerid][flyobject]);
 noclipdata[playerid][cameramode] = CAMERA_MODE_NONE;
 return 1;
 }Spoiler anzeigen //--------------------------------------------------Spoiler anzeigen stock FlyMode(playerid)
 {
 // Create an invisible object for the players camera to be attached to
 new Float:X, Float:Y, Float:Z;
 GetPlayerPos(playerid, X, Y, Z);
 noclipdata[playerid][flyobject] = CreatePlayerObject(playerid, 19300, X, Y, Z, 0.0, 0.0, 0.0);Spoiler anzeigen // Place the player in spectating mode so objects will be streamed based on camera location
 TogglePlayerSpectating(playerid, true);
 // Attach the players camera to the created object
 AttachCameraToPlayerObject(playerid, noclipdata[playerid][flyobject]);Spoiler anzeigen SetPVarInt(playerid, "FlyMode", 1);
 noclipdata[playerid][cameramode] = CAMERA_MODE_FLY;
 return 1;
 }Spoiler anzeigen //--------------------------------------------------
 Spoiler anzeigen /edit: Pawn format eingestellt
 
- 
			  breadfish.deHat das Thema geschlossen.
 
		