- /**************************************************
- * Command_Generator by ~Cueball~ *
- **************************************************/
- #include <a_samp>
- #define FILTERSCRIPT
- #if defined FILTERSCRIPT
- /*--------------------------------------------------------------------------/
- / Change These To Alter Script /
- //-------------------------------------------------------------------------*/
- #define VehicleTele true
- #define PrintInConsole true
- #define SendAdminMessage true
- new File:GenCmds;
- public OnFilterScriptInit()
- {
- print("\n**************************************************");
- print("* Command_Generator by ~Cueball~ *");
- print("**************************************************\n");
- if(!fexist("Generated_Commands.txt")) { GenCmds = fopen("Generated_Commands.txt", io_readwrite); fclose(GenCmds); }
- return 1;
- }
- public OnFilterScriptExit()
- {
- print("\n**************************************************");
- print("* Command_Generator Closed *");
- print("**************************************************\n");
- return 1;
- }
- #endif
- public OnPlayerConnect(playerid)
- {
- SendClientMessage(playerid,0x33CCFFAA,"Running Command_Generator Script by ~Cueball~ || To get started type /saveloc at your wanted location.");
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if(strcmp (cmdtext, "/saveloc", true)==0)
- {
- new Float:x, Float:y, Float:z, Float:Ang, CommandName[700], VehicleLine[700], PlayerLine[700], AltPlayerLine[700], ReturnLine[50], EndBrace[50], NewLine[50], Separator[80], ConfirmationMessage[150], Stats[50], XValue[50], YValue[50], ZValue[50], ANGValue[50], AdminMessage[100], PlayerIp[50], PlayerName[MAX_PLAYER_NAME], hour, minute, second, year, month, day;
- if (!cmdtext[9]) { SendClientMessage(playerid,0xFFFFFFAA,"Usage: /saveloc [teleport/command name] (DO NOT INCLUDE THE '/'!)"); return 1; }
- GetPlayerName(playerid,PlayerName,MAX_PLAYER_NAME); GetPlayerIp(playerid,PlayerIp,50); GetPlayerPos(playerid,x,y,z); GetPlayerFacingAngle(playerid,Ang); gettime(hour,minute,second); getdate(year,month,day);
- format(CommandName,700,"if (strcmp(\"/%s\", cmdtext,true)==0) { //requested by player '%s' (IP:%s) on the %d/%d/%d. Time: %d:%d:%d\r\n",cmdtext[9],PlayerName,PlayerIp,day,month,year,hour,minute,second);
- format(VehicleLine,700," if (GetPlayerState(playerid) == 2) { SetVehiclePos(GetPlayerVehicleID(playerid),%f,%f,%f); SetVehicleZAngle(GetPlayerVehicleID(playerid), %f); SetCameraBehindPlayer(playerid); } \r\n",x,y,z,Ang);
- format(PlayerLine, 700," else { SetPlayerPos(playerid,%f,%f,%f); SetPlayerFacingAngle(playerid,%f); SetCameraBehindPlayer(playerid); }\r\n",x,y,z,Ang);
- format(AltPlayerLine, 700," SetPlayerPos(playerid,%f,%f,%f); SetPlayerFacingAngle(playerid,%f); SetCameraBehindPlayer(playerid); SetPlayerInterior(playerid,%d);\r\n",x,y,z,Ang,GetPlayerInterior(playerid));
- format(ReturnLine, 50,"return 1;\r\n"); format(EndBrace, 50,"}\r\n"); format(NewLine,50," \r\n"); format(Separator, 80,"//=====================================================\r\n");
- format(ConfirmationMessage,150,"Command Generator: Your command '/%s' has been generated and sent to the server admin.",cmdtext[9]);
- format(Stats,50,"Command Statistics:"); format(XValue,50,"X value: %f",x); format(YValue,50,"Y value: %f",y); format(ZValue,50,"Z value: %f",z); format(ANGValue,50,"Angle value: %f",Ang);
- SendClientMessage(playerid,0x33CCFFAA,ConfirmationMessage); SendClientMessage(playerid,0x33CCFFAA,Stats);
- SendClientMessage(playerid,0xFFFFFFAA,XValue); SendClientMessage(playerid,0xFFFFFFAA,YValue); SendClientMessage(playerid,0xFFFFFFAA,ZValue); SendClientMessage(playerid,0xFFFFFFAA,ANGValue);
- SendClientMessage(playerid,0xFFFFFFAA,"Thankyou. Your command was very helpful to the server owner.");
- #if PrintInConsole == true
- printf("[generator] Player '%s' (IP:%s) requested '/%s'.", PlayerName,PlayerIp,cmdtext[9]);
- #endif
- #if SendAdminMessage == true
- format(AdminMessage,100,"GENERATOR: Player '%s' (ID:%d) requested '/%s'",PlayerName,playerid,cmdtext[9]); SendClientMessageToAdmins(0x33CCFFAA,AdminMessage);
- #endif
- GenCmds = fopen("Generated_Commands.txt", io_append); fwrite(GenCmds,CommandName);
- #if VehicleTele == true
- fwrite(GenCmds,VehicleLine); fwrite(GenCmds,PlayerLine);
- #endif
- #if VehicleTele != true
- fwrite(GenCmds,AltPlayerLine);
- #endif
- fwrite(GenCmds,ReturnLine); fwrite(GenCmds,EndBrace); fwrite(GenCmds,NewLine); fwrite(GenCmds,Separator); fwrite(GenCmds,NewLine); fclose(GenCmds);
- return 1;
- }
- return 0;
- }
- stock SendClientMessageToAdmins(colour, const message[]) { // By 50p: http://forum.sa-mp.com/index.php?topic=638.msg59538#msg59538
- for(new i=0; i<MAX_PLAYERS; i++) {
- if(IsPlayerConnected(i)) {
- if(IsPlayerAdmin(i)) {
- SendClientMessage(i, colour, message);
- }
- }
- }
- }
Posted by Cueball on Mon 4 Feb 06:35
report abuse | download | new post
Submit a correction or amendment below (click here to make a fresh posting)
After submitting an amendment, you'll be able to view the differences between the old and new posts easily.