GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: Petrik - 2012. November 14. - 09:35:35

Cím: Bizonyos távolságban...
Írta: Petrik - 2012. November 14. - 09:35:35
Sziasztok!
Letudná valaki írni, hogyan tudom megcsinálni azt, hogy csak egy bizonyos távolságban lehessen látni, amit ír valaki? (Mint az RPG szervereken...)
Cím: Bizonyos távolságban...
Írta: ZyZu. - 2012. November 14. - 09:44:01
Hogy érted, hogy az ember feje fölött lássad az írást?  :)
Cím: Bizonyos távolságban...
Írta: Petrik - 2012. November 14. - 09:51:39
Õ, nem igazán. A chatboxban lássák csak egy bizonyos távolságban.
Cím: Bizonyos távolságban...
Írta: Depi - 2012. November 14. - 10:03:44

for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
   if(IsPlayerInRangeOfPoint(i,10.0,X, Y, Z))
   {
      format(cString,sizeof(cString),\"%s mondja:%s\",Nev(playerid),text[]);
      SendClientMessage(i,-1,cString);
   }
}
}
stock Nev(playerid)
{
new neve[MAX_PLAYER_NAME];
GetPlayerName(playerid,neve,sizeof(neve));
return neve;
}

 
Valami hasonló megoldást láttam egy RP módban, fogalmam sincs mennyi mûködõ képes.
Cím: Bizonyos távolságban...
Írta: Petrik - 2012. November 14. - 11:59:25
Idézetet írta: Draven date=1352883824\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"29830\" data-ipsquote-contentclass=\"forums_Topic


for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
   if(IsPlayerInRangeOfPoint(i,10.0,X, Y, Z))
   {
      format(cString,sizeof(cString),\"%s mondja:%s\",Nev(playerid),text[]);
      SendClientMessage(i,-1,cString);
   }
}
}
stock Nev(playerid)
{
new neve[MAX_PLAYER_NAME];
GetPlayerName(playerid,neve,sizeof(neve));
return neve;
}

 
Valami hasonló megoldást láttam egy RP módban, fogalmam sincs mennyi mûködõ képes.
 
És ezt hova?  :D
Cím: Bizonyos távolságban...
Írta: ZyZu. - 2012. November 14. - 12:05:15
Szerintem az OnPlayerText
Cím: Bizonyos távolságban...
Írta: Kovacs_Richard - 2012. November 14. - 12:35:55
valahogy így:
 
public OnPlayerText(playerid,text[])
{
new Float:Pos[3],str[128]; GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
    for(new i; i < GetMaxPlayers(); i++)
    {
       if(!IsPlayerConnected(i) || !IsPlayerInRangeOfPoint(i,10.0,Pos[0],Pos[1],Pos[2])) { continue; }
       format(str,sizeof(str),\"%s mondja:%s\",Nev(playerid),text);
        SendClientMessage(i,0xFFFFFFFF,str);
}
return 0;
}
stock Nev(playerid)
{
new neve[MAX_PLAYER_NAME];
    GetPlayerName(playerid,neve,sizeof(neve));
    return neve;
}
Cím: Bizonyos távolságban...
Írta: Petrik - 2012. November 14. - 13:48:24
Köszönöm a válaszokat!  :)