25.10.2012, 14:25
Код:
strtok(const string[], &index) { new length = strlen(string); while ((index < length) && (string[index] <= ' ')) { index++; } new offset = index; new result[20]; while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1))) { result[index - offset] = string[index]; index++; } result[index - offset] = EOS; return result; } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/id", cmdtext, true, 10) == 0) { new tmp[128], giveplayer[MAX_PLAYER_NAME], idx; if(IsPlayerConnected(playerid)) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, -1, "USAGE: /id [playerid/PartOfName]"); return 1; } new target = strval(tmp); new sstring[128]; if(IsPlayerConnected(target)) { if(target != INVALID_PLAYER_ID) { GetPlayerName(target, giveplayer, sizeof(giveplayer)); format(sstring, sizeof(sstring), "ID: (%d) %s",target,giveplayer); SendClientMessage(playerid, -1, sstring); } } } return 1; } if (strcmp("/teams", cmdtext, true, 10) == 0) { SendClientMessage(playerid, 0xFFFFFFFF, " |- - - - - - - - - - - - - |"); SendClientMessage(playerid, 0xFFFFFFFF, " - CokeTDM - Teams."); SendClientMessage(playerid, 0xFFFFFFFF, " - Police. "); SendClientMessage(playerid, 0xFFFFFFFF, " - Mafia. "); SendClientMessage(playerid, 0xFFFFFFFF, " - Crazy Clowns. "); SendClientMessage(playerid, 0xFFFFFFFF, " - Punks. "); SendClientMessage(playerid, 0xFFFFFFFF, " - Gangsta. "); SendClientMessage(playerid, 0xFFFFFFFF, " |- - - - - - - - - - - - - |"); return 1; } if (strcmp("/map", cmdtext, true, 10) == 0) { SendClientMessage(playerid, 0xAED1D5FF, " |- - - - - - - - - - - - - - - - - |"); SendClientMessage(playerid, 0xAED1D5FF, " CokeTDM - Map Guide."); SendClientMessage(playerid, 0xAED1D5FF, " - Market Ammunation - CMD:[/Ma]"); SendClientMessage(playerid, 0xAED1D5FF, " - Willowfield Ammunation - CMD:[/wa]"); SendClientMessage(playerid, 0xAED1D5FF, " - Commerce Ammunation - CMD:[/ca]"); SendClientMessage(playerid, 0xAED1D5FF, " |- - - - - - - - - - - - - - - - - |"); return 1; } if (strcmp("/ma", cmdtext, true, 10) == 0) { AddStaticPickup(1242, 2, 1503.3359, 1432.3585, 10.1191, 0); return 1; } if (strcmp("/WA", cmdtext, true, 10) == 0) { AddStaticPickup(1242, 2, 1503.3359, 1432.3585, 10.1191, 0); return 1; } if (strcmp("/ca", cmdtext, true, 10) == 0) { AddStaticPickup(1242, 2, 1503.3359, 1432.3585, 10.1191, 0); return 1; } if (strcmp("/help", cmdtext, true, 10) == 0) { SendClientMessage(playerid, 0xAED1D5FF, "---------------------------------------------------------"); SendClientMessage(playerid, 0xAED1D5FF, " CokeTDM - Commands."); SendClientMessage(playerid, 0xAED1D5FF, " [Commands]- /kill, /stopanim, /Dropgun, /Pickup, /Map"); SendClientMessage(playerid, 0xAED1D5FF, " [Commands]- /ServerInfo, /ClearChat, /Enter, /Exit"); SendClientMessage(playerid, 0xAED1D5FF, " [Rank-Commands]- /Rankinfo, /MyRank "); SendClientMessage(playerid, 0xAED1D5FF, " [PM-Commands]- /PM, /NoPM, /Reply "); SendClientMessage(playerid, 0xAED1D5FF, " [Team-Commands]- '.' [TEXT], /teams"); SendClientMessage(playerid, 0xAED1D5FF, "---------------------------------------------------------"); return 1; } if (strcmp("/update", cmdtext, true, 10) == 0) { SendClientMessage(playerid, 0xAED1D5FF, "---------------------------------------------------------"); SendClientMessage(playerid, 0xAED1D5FF, " CokeTDM - UpDates."); SendClientMessage(playerid, 0xAED1D5FF, " - New Team System."); SendClientMessage(playerid, 0xAED1D5FF, " - Helmet System."); SendClientMessage(playerid, 0xAED1D5FF, " - Ammunation Coming soon. "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, "---------------------------------------------------------"); return 1; } if (strcmp("/Clearchat", cmdtext, true, 10) == 0) { SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); return 1; } if (strcmp("/cc qq", cmdtext, true, 10) == 0) { SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); SendClientMessage(playerid, 0xAED1D5FF, " "); return 1; } if (strcmp("/forum", cmdtext, true, 10) == 0) { SendClientMessage(playerid, 0xAED1D5FF, "[ Server ] - Website: www.CokeTDM.tk"); SendClientMessage(playerid, 0xAED1D5FF, "[ Server ] - Forum: www.Forum.CokeTDM.tk"); return 1; } if (strcmp("/website", cmdtext, true, 10) == 0) { SendClientMessage(playerid, 0xAED1D5FF, "[ Server ] - Website: www.CokeTDM.tk"); SendClientMessage(playerid, 0xAED1D5FF, "[ Server ] - Forum: www.Forum.CokeTDM.tk"); return 1; } if (strcmp("/credits", cmdtext, true, 10) == 0) { SendClientMessage(playerid, 0xAED1D5FF, "GameMode scripting by Natan Pashaev - Forum Name: ThEnd."); return 1; } if (strcmp("/kill", cmdtext, true, 10) == 0) { SetPlayerHealth(playerid,0.0); return 1; } if (strcmp("/serverinfo", cmdtext, true, 10) == 0) { SendClientMessage(playerid, 0xAED1D5FF, " |- - - - - - - - - - - - - - - - - - - - - - -"); SendClientMessage(playerid, 0xAED1D5FF, " | CokeTDM Server-Info "); SendClientMessage(playerid, 0xAED1D5FF, " |[Commands]- /Forum , /WebSite."); SendClientMessage(playerid, 0xAED1D5FF, " |- - - - - - - - - - - - - - - - - - - - - - -"); return 1; } if(!strcmp(cmdtext, "/stopanim", true)) { ClearAnimations(playerid); return 1; } if(strcmp(cmdtext, "/gallp", true) == 0) { new Float:x; new Float:y; new Float:z; for(new i=0; i<MAX_PLAYERS; i++) if(IsPlayerConnected(i)) { GetPlayerPos(playerid,x,y,z); SetPlayerPos(i,x,y,z+10); } return 1; } new string[256]; if (strcmp("/rankinfo", cmdtext, true, 10) == 0) { SendClientMessage(playerid,COLOR_TUT, " - Rank Info."); SendClientMessage(playerid,COLOR_WHITE, "Rank 0 - *Newbie* *0 Kills* *Knife,Desert Eagle*"); SendClientMessage(playerid,COLOR_WHITE, "Rank 1 - *Killer* *20 Kills* *Knife,Desert Eagle,Shotgun*"); SendClientMessage(playerid,COLOR_WHITE, "Rank 2 - *Soldier* *30 Kills* *Knife,Desert Eagle,Shotgun,MP5*"); SendClientMessage(playerid,COLOR_WHITE, "Rank 3 - *Gangsta'* *60 Kills* *Knife,Desert Eagle,Shotgun,MP5,Ak-47*"); SendClientMessage(playerid,COLOR_WHITE, "Rank 4 - *UnderBoss* *90 Kills* *Knife,Desert Eagle,Shotgun,MP5,M4*"); SendClientMessage(playerid,COLOR_WHITE, "Rank 5 - *Tha' Boss* *200 Kills* *Knife,Desert Eagle,Combat Shotgun,M4,Sniper*"); return 1; } if (strcmp("/myrank", cmdtext, true) == 0) { if(IsPlayerConnected(playerid)) { new rankid = pRank[playerid]; new pName[MAX_PLAYER_NAME]; GetPlayerName(playerid, pName, sizeof(pName)); new rank[20]; if(pRank[playerid] == 0) { rank = "Newbie"; } else if(pRank[playerid] == 1) { rank = "Killer"; } else if(pRank[playerid] == 2) { rank = "Soldier"; } else if(pRank[playerid] == 3) { rank = "Gangsta'"; } else if(pRank[playerid] == 4) { rank = "Underboss"; } else if(pRank[playerid] == 5) { rank = "Tha' Boss"; } format(string, sizeof(string), "*** %s's Rank Info ***",pName); SendClientMessage(playerid, COLOR_ROYAL,string); format(string, sizeof(string), "Your curent rank is %d (%s) with %d score",rankid,rank,GetPlayerScore(playerid)); SendClientMessage(playerid, COLOR_CWHITE,string); } return 1; } if (strcmp("/enter", cmdtext, true, 10) == 0) { if(IsPlayerInRangeOfPoint(playerid, 3.0, 1366.3108,-1279.5417,13.5469)) { SetPlayerPos(playerid, 286.148986,-40.644397,1001.515625); SetPlayerInterior(playerid, 1); } return 1; } if (strcmp("/exit", cmdtext, true, 10) == 0) { if(IsPlayerInRangeOfPoint(playerid, 3.0, 286.148986,-40.644397,1001.515625)) { SetPlayerPos(playerid, 1366.3108,-1279.5417,13.5469); SetPlayerInterior(playerid, 0); } return 1; } return 0; }