10.06.2012, 04:32
how to let the player speak or doing something just send a message to the local not the world
sorry for my bad english
i use this code but when the player speak something it send to the world
and this
sorry for my bad english
Код:
format(string, sizeof(string), " %sSay: %s", sendername, text); if(antispam[playerid] == strlen(string)) { return 0; } SetPlayerChatBubble(playerid, string, 0xFF0000FF, 30.0, 10000); antispam[playerid] = strlen(string); ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
i use this code but when the player speak something it send to the world
Код:
if(enginem == VEHICLE_PARAMS_OFF) { if(engineon[playerid] == 1) return 1; SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_OFF, lights, alarm, doors, bonnet, boot, objective); format(string,sizeof(string),"* %s is starting engine.",sendername); ProxDetector(10.0, playerid, string, COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5); SendClientMessage(playerid, 0x00B000FF, "* Engine{FF0000}..."); engineon[playerid] = 1; SetTimerEx("PMotor",2000,0,"d",playerid); return 1;
Код:
forward ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5); public ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5) { if(IsPlayerConnected(playerid)) { new Float:posx, Float:posy, Float:posz; new Float:oldposx, Float:oldposy, Float:oldposz; new Float:tempposx, Float:tempposy, Float:tempposz; GetPlayerPos(playerid, oldposx, oldposy, oldposz); foreach(Player,i) { if(GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(i)) { GetPlayerPos(i, posx, posy, posz); tempposx = (oldposx -posx); tempposy = (oldposy -posy); tempposz = (oldposz -posz); if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16))) { SendClientMessage(i, col1, string); } else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8))) { SendClientMessage(i, col2, string); } else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4))) { SendClientMessage(i, col3, string); } else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2))) { SendClientMessage(i, col4, string); } else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi))) { SendClientMessage(i, col5, string); } else { SendClientMessage(i, col1, string); } } } } return 1; }