07.02.2013, 19:54
(
Последний раз редактировалось Stream; 07.02.2013 в 22:27.
)
Yo.
Cheers everyone , i hope u all be okay , the reason that im here today is that i've made a new FS , which is Spec System , and that took me about 1-2 hours to make it , using this system u can spec online players , u can also spec them if they are in cars , and thats nothing complicated just a simple system. btw i hope u like it
OK , here is the code :
I hope u like . PS : plz leave your idea about it after u saw the post.
NOTE : as some of u may know , this was a edited version of one of the sa-mp's default FS's , i just edited it , and that really took me at least about 30mins.
Regards.
Cheers everyone , i hope u all be okay , the reason that im here today is that i've made a new FS , which is Spec System , and that took me about 1-2 hours to make it , using this system u can spec online players , u can also spec them if they are in cars , and thats nothing complicated just a simple system. btw i hope u like it
OK , here is the code :
Код:
// // ADMIN SPEC FILTERSCRIPT By Stream // #pragma tabsize 0 #include <a_samp> #include <core> #include <float> #include "../include/gl_common.inc" #define COLOR_GREY 0xAFAFAFAA #define COLOR_GREEN 0x33AA33AA #define COLOR_RED 0xAA3333AA #define COLOR_YELLOW 0xFFFF00AA #define COLOR_WHITE 0xFFFFFFFF //------------------------------------------------------------------------------------------------------ #define ADMIN_SPEC_TYPE_NONE 0 #define ADMIN_SPEC_TYPE_PLAYER 1 #define ADMIN_SPEC_TYPE_VEHICLE 2 new gSpectateID[MAX_PLAYERS]; new gSpectateType[MAX_PLAYERS]; //------------------------------------------------------------------------------------------------------ public OnFilterScriptInit() { } //------------------------------------------------------------------------------------------------------ public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid) { // IF ANYONE IS SPECTATING THIS PLAYER, WE'LL ALSO HAVE // TO CHANGE THEIR INTERIOR ID TO MATCH new x = 0; while(x!=MAX_PLAYERS) { if( IsPlayerConnected(x) && GetPlayerState(x) == PLAYER_STATE_SPECTATING && gSpectateID[x] == playerid && gSpectateType[x] == ADMIN_SPEC_TYPE_PLAYER ) { SetPlayerInterior(x,newinteriorid); } x++; } } //------------------------------------------------------------------------------------------------------ public OnPlayerCommandText(playerid, cmdtext[]) { new cmd[256]; new specplayerid, specvehicleid, idx; // WE ONLY DEAL WITH COMMANDS FROM ADMINS IN THIS FILTERSCRIPT if(!IsPlayerAdmin(playerid)) return 0; cmd = strtok(cmdtext, idx); // SPECTATE A PLAYER if(strcmp(cmd, "/spec", true) == 0) { new tmp[256]; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_WHITE, "USAGE: /spec [playerid]"); return 1; } specplayerid = strval(tmp); if(!IsPlayerConnected(specplayerid)) { SendClientMessage(playerid, COLOR_RED, "specplayer: that player isn't active."); return 1; } TogglePlayerSpectating(playerid, 1); PlayerSpectatePlayer(playerid, specplayerid); SetPlayerInterior(playerid,GetPlayerInterior(specplayerid)); gSpectateID[playerid] = specplayerid; gSpectateType[playerid] = ADMIN_SPEC_TYPE_PLAYER; return 1; } // SPECTATE A VEHICLE if(strcmp(cmd, "/specvehicle", true) == 0) { new tmp[256]; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_WHITE, "USAGE: /specvehicle [vehicleid]"); return 1; } specvehicleid = strval(tmp); if(specvehicleid < MAX_VEHICLES) { TogglePlayerSpectating(playerid, 1); PlayerSpectateVehicle(playerid, specvehicleid); gSpectateID[playerid] = specvehicleid; gSpectateType[playerid] = ADMIN_SPEC_TYPE_VEHICLE; } return 1; } // STOP SPECTATING if(strcmp(cmd, "/specoff", true) == 0) { TogglePlayerSpectating(playerid, 0); gSpectateID[playerid] = INVALID_PLAYER_ID; gSpectateType[playerid] = ADMIN_SPEC_TYPE_NONE; return 1; } return 0; } EDITED ://///////////////all of the credits doesnt belong to me/////////////////
NOTE : as some of u may know , this was a edited version of one of the sa-mp's default FS's , i just edited it , and that really took me at least about 30mins.
Regards.