Advertisement
Guest User

Untitled

a guest
Apr 13th, 2008
809
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.43 KB | None | 0 0
  1. #include <a_samp>
  2.  
  3. #define FILTERSCRIPT
  4. #if defined FILTERSCRIPT
  5.  
  6. #define green 0x33FF33AA
  7. #define red 0xFF0000AA
  8.  
  9. public OnFilterScriptInit()
  10. {
  11.     print("-------------------------------");
  12.     print(" Camera positioner v1.5 loaded ");
  13.     print("-------------------------------");
  14.     return 1;
  15. }
  16.  
  17. #endif
  18.  
  19. public OnPlayerCommandText(playerid, cmdtext[])
  20. {
  21.     new cmd[256], idx;
  22.     cmd = strtok(cmdtext, idx);
  23.    
  24.     if (strcmp("/setcam", cmd, true) == 0)
  25.     {
  26.         new var1;
  27.         new tmp1[256];
  28.         tmp1 = strtok(cmdtext, idx);
  29.         if(!strlen(tmp1)) return SendClientMessage(playerid, red, "Use: /setcam [pos1] [pos2] [pos3]");
  30.         var1 = strval(tmp1);
  31.  
  32.         new var2;
  33.         new tmp2[256];
  34.         tmp2 = strtok(cmdtext, idx);
  35.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "Use: /setcam [pos1] [pos2] [pos3]");
  36.         var2 = strval(tmp2);
  37.  
  38.         new var3;
  39.         new tmp3[256];
  40.         tmp3 = strtok(cmdtext, idx);
  41.         if(!strlen(tmp3)) return SendClientMessage(playerid, red, "Use: /setcam [pos1] [pos2] [pos3]");
  42.         var3 = strval(tmp3);
  43.        
  44.         SetPlayerCameraPos(playerid, var1, var2, var3);
  45.  
  46.         new string[100];
  47.         format(string, sizeof(string), "Your camera is now positioned at %d, %d, %d", var1, var2, var3);
  48.         SendClientMessage(playerid, green, string);
  49.         return 1;
  50.     }
  51.    
  52.     if (strcmp("/setcamhere", cmdtext, true) == 0)
  53.     {
  54.         new Float:X, Float:Y, Float:Z;
  55.         GetPlayerPos(playerid, X, Y, Z);
  56.  
  57.         SetPlayerCameraPos(playerid, X, Y, Z);
  58.  
  59.         new string[100];
  60.         format(string, sizeof(string), "Your camera is now positioned at %0.0f, %0.0f, %0.0f", X, Y, Z);
  61.         SendClientMessage(playerid, green, string);
  62.         return 1;
  63.     }
  64.    
  65.     if (strcmp("/lookat", cmd, true) == 0)
  66.     {
  67.         new var1;
  68.         new tmp1[256];
  69.         tmp1 = strtok(cmdtext, idx);
  70.         if(!strlen(tmp1)) return SendClientMessage(playerid, red, "Use: /lookat [pos1] [pos2] [pos3]");
  71.         var1 = strval(tmp1);
  72.        
  73.         new var2;
  74.         new tmp2[256];
  75.         tmp2 = strtok(cmdtext, idx);
  76.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "Use: /lookat [pos1] [pos2] [pos3]");
  77.         var2 = strval(tmp2);
  78.  
  79.         new var3;
  80.         new tmp3[256];
  81.         tmp3 = strtok(cmdtext, idx);
  82.         if(!strlen(tmp3)) return SendClientMessage(playerid, red, "Use: /lookat [pos1] [pos2] [pos3]");
  83.         var3 = strval(tmp3);
  84.  
  85.         SetPlayerCameraLookAt(playerid, var1, var2, var3);
  86.  
  87.         new string[100];
  88.         format(string, sizeof(string), "Your camera is now looking at %d, %d, %d", var1, var2, var3);
  89.         SendClientMessage(playerid, green, string);
  90.         return 1;
  91.     }
  92.    
  93.     if (strcmp("/lookathere", cmdtext, true) == 0)
  94.     {
  95.         new Float:X, Float:Y, Float:Z;
  96.         GetPlayerPos(playerid, X, Y, Z);
  97.  
  98.         SetPlayerCameraLookAt(playerid, X, Y, Z);
  99.  
  100.         new string[100];
  101.         format(string, sizeof(string), "Your camera is now looking at %0.0f, %0.0f, %0.0f", X, Y, Z);
  102.         SendClientMessage(playerid, green, string);
  103.         return 1;
  104.     }
  105.    
  106.     if (strcmp("/gotopos", cmd, true) == 0)
  107.     {
  108.         new var1;
  109.         new tmp1[256];
  110.         tmp1 = strtok(cmdtext, idx);
  111.         if(!strlen(tmp1)) return SendClientMessage(playerid, red, "Use: /gotopos [pos1] [pos2] [pos3]");
  112.         var1 = strval(tmp1);
  113.  
  114.         new var2;
  115.         new tmp2[256];
  116.         tmp2 = strtok(cmdtext, idx);
  117.         if(!strlen(tmp2)) return SendClientMessage(playerid, red, "Use: /gotopos [pos1] [pos2] [pos3]");
  118.         var2 = strval(tmp2);
  119.  
  120.         new var3;
  121.         new tmp3[256];
  122.         tmp3 = strtok(cmdtext, idx);
  123.         if(!strlen(tmp3)) return SendClientMessage(playerid, red, "Use: /gotopos [pos1] [pos2] [pos3]");
  124.         var3 = strval(tmp3);
  125.  
  126.         SetPlayerPos(playerid, var1, var2, var3);
  127.  
  128.         new string[100];
  129.         format(string, sizeof(string), "Your position is now %d, %d, %d", var1, var2, var3);
  130.         SendClientMessage(playerid, green, string);
  131.         return 1;
  132.     }
  133.    
  134.     if (strcmp("/wereami", cmdtext, true) == 0)
  135.     {
  136.         new Float:X, Float:Y, Float:Z;
  137.         GetPlayerPos(playerid, X, Y, Z);
  138.        
  139.         new string[100];
  140.         format(string, sizeof(string), "Your position is %0.0f, %0.0f, %0.0f", X, Y, Z);
  141.         SendClientMessage(playerid, green, string);
  142.         return 1;
  143.     }
  144.  
  145.     if (strcmp("/resetcam", cmdtext, true) == 0)
  146.     {
  147.         SetCameraBehindPlayer(playerid);
  148.         SendClientMessage(playerid, green, "Your camera is reset");
  149.         return 1;
  150.     }
  151.     return 0;
  152. }
  153.  
  154. strtok(const string[], &index)
  155. {
  156.     new length = strlen(string);
  157.     while ((index < length) && (string[index] <= ' '))
  158.     {
  159.         index++;
  160.     }
  161.  
  162.     new offset = index;
  163.     new result[20];
  164.     while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  165.     {
  166.         result[index - offset] = string[index];
  167.         index++;
  168.     }
  169.     result[index - offset] = EOS;
  170.     return result;
  171. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement