Advertisement
Guest User

GhostRider | sa-mp.de

a guest
Nov 30th, 2012
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.63 KB | None | 0 0
  1. #include <a_samp>
  2. #include <GetVehicleColor>
  3.  
  4. new GhostRiderObjects[MAX_PLAYERS][3];
  5. new ColorBeforeTransformation[MAX_PLAYERS][2];
  6. new SkinBeforTransformation[MAX_PLAYERS];
  7. #define COLOR_RED 0xFE140BFF
  8. #define GhostRider 100
  9.  
  10. public OnFilterScriptInit(){
  11.     print("[FS]GhostRider-Script Loaded!");
  12.     return 1;
  13. }
  14.  
  15. public OnFilterScriptExit()
  16. {
  17.     for(new i=0;i!=MAX_PLAYERS;i++){
  18.         if(!IsPlayerConnected(i))continue;
  19.         if(GhostRiderObjects[i][0])GhostRiderDetransformation(i);
  20.     }
  21.     return 1;
  22. }
  23.  
  24. public OnPlayerCommandText(playerid, cmdtext[])
  25. {
  26.     if(!strcmp(cmdtext, "/ghostrider", true) || !strcmp(cmdtext, "/gr", true)){
  27.         new veh=GetPlayerVehicleID(playerid);
  28.         if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, COLOR_RED, "Info: {FFFFFF}Dieser Befehl kann nur auf einer Freeway verwendet werden!");
  29.         if(GetVehicleModel(veh) != 463)return SendClientMessage(playerid, COLOR_RED, "Info: {FFFFFF}Dieser Befehl kann nur auf einer Freeway verwendet werden!");
  30.         if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)return SendClientMessage(playerid, COLOR_RED, "Info: {FFFFFF}Du musst der Fahrer des Motorrads sein.");
  31.         if(GhostRiderObjects[playerid][0]){GhostRiderDetransformation(playerid);ChangeVehicleColor(veh, ColorBeforeTransformation[playerid][0], ColorBeforeTransformation[playerid][1]);SetPlayerSkin(playerid,SkinBeforTransformation[playerid]);return 1;}
  32.         else GhostRiderTransformation(playerid,veh);
  33.         return 1;
  34.     }
  35.    
  36.     if(!strcmp(cmdtext, "/bike", true)){
  37.         new Float:X,Float:Y,Float:Z,Float:Facing;
  38.         GetPlayerPos(playerid,X,Y,Z);
  39.         GetPlayerFacingAngle(playerid,Facing);
  40.         CreateVehicle(463, X+5, Y, Z, Facing, -1, -1, 60);
  41.         return 1;
  42.     }
  43.    
  44.     return 0;
  45. }
  46.  
  47. public OnPlayerStateChange(playerid, newstate, oldstate){
  48.     if(oldstate == PLAYER_STATE_DRIVER && newstate == PLAYER_STATE_ONFOOT){
  49.         if(GhostRiderObjects[playerid][0]){GhostRiderDetransformation(playerid);SetPlayerSkin(playerid,SkinBeforTransformation[playerid]);}
  50.     }if(oldstate == PLAYER_STATE_DRIVER && newstate == PLAYER_STATE_WASTED){
  51.         if(GhostRiderObjects[playerid][0]){GhostRiderDetransformation(playerid);SetPlayerSkin(playerid,SkinBeforTransformation[playerid]);}
  52.     }
  53.     return 1;
  54. }
  55.  
  56. public OnPlayerConnect(playerid){
  57.     GhostRiderObjects[playerid][0]=0;
  58.     GhostRiderObjects[playerid][1]=0;
  59.     GhostRiderObjects[playerid][2]=0;
  60.     SkinBeforTransformation[playerid]=0;
  61. }
  62.  
  63. public OnPlayerDisconnect(playerid, reason){
  64.    if(GhostRiderObjects[playerid][0])GhostRiderDetransformation(playerid);
  65. }
  66.  
  67. stock GhostRiderDetransformation(playerid){
  68.     DestroyObject(GhostRiderObjects[playerid][0]);
  69.     DestroyObject(GhostRiderObjects[playerid][1]);
  70.     DestroyObject(GhostRiderObjects[playerid][2]);
  71.     GhostRiderObjects[playerid][0]=0;
  72. }
  73.  
  74. stock GhostRiderTransformation(playerid, vehicleid){
  75.     GhostRiderObjects[playerid][0]=CreateObject(18689, 0.0, 0.0, 0.0, 0.0, 0.0, 256.0);
  76.     GhostRiderObjects[playerid][1]=CreateObject(18689, 0.0, 0.0, 0.0, 0.0, 0.0, 256.0);
  77.     GhostRiderObjects[playerid][2]=CreateObject(18693, 0.0, 0.0, 0.0, 0.0, 0.0, 256.0);
  78.     AttachObjectToVehicle(GhostRiderObjects[playerid][0], vehicleid, 0.0, 0.6, -1.7, 0.0, 0.0, 0.0);
  79.     AttachObjectToVehicle(GhostRiderObjects[playerid][1], vehicleid, 0.0, -1.4, -1.7, 0.0, 0.0, 0.0);
  80.     AttachObjectToPlayer(GhostRiderObjects[playerid][2], playerid, 0.0, -0.01, -0.9, 0.0, 0.0, 0.0);
  81.     GetVehicleColor(vehicleid, ColorBeforeTransformation[playerid][0], ColorBeforeTransformation[playerid][1]);
  82.     SkinBeforTransformation[playerid]=GetPlayerSkin(playerid);
  83.     ChangeVehicleColor(vehicleid, 0, 0);
  84.     SetPlayerSkin(playerid, GhostRider);
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement