Guten Tag Liebe Com
Wie erstell ich einen "Ping" Textdraw der jede 10 sekunden aktualisiert wird ?
und wie muss der textdraw code etc aussehen : D ?
Guten Tag Liebe Com
Wie erstell ich einen "Ping" Textdraw der jede 10 sekunden aktualisiert wird ?
und wie muss der textdraw code etc aussehen : D ?
Hi,
versuch mal:
new string[4];
format(string,sizeof string,"%d",GetPlayerPing(playerid));
TextDrawSetString(textdraw,string);
TextDrawShowForAll(textdraw);
(e) Das baust du in einen Timer rein
new Text:Ping[MAX_PLAYERS];
in OnGameModeInit:
for(new i = 0; i < MAX_PLAYERS; i++)
{
Ping[i] = TextDrawCreate(610.0, 400.0," ");
//Hier noch die ganzen TextDrawSettings
TextDrawShowForPlayer(Ping[i]);
}
in einem Timer (10 Sekunden Timer)
new ping = GetPlayerPing(playerid),str[20];
format(str,20,"Ping: %d",ping);
TextDrawSetString(Ping[playerid],str);
wo muss das hier hin
in einem Timer (10 Sekunden Timer)
new ping = GetPlayerPing(playerid),str[20];
format(str,20,"Ping: %d",ping);
TextDrawSetString(Ping[playerid],str);
in OnGameModeInit
SetTimer("PingTimer",10000,1);
ganz unten:
forward PingTimer();
public PingTimer()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
//Hier gehört das hin, (playerid zu i ändern)
}
}
Ok wenn ich server starten will kommt das da
SA-MP Dedicated Server
----------------------
v0.3e, (C)2005-2012 SA-MP Team
[16:15:52]
[16:15:52] Server Plugins
[16:15:52] --------------
[16:15:52] Loading plugin: streamer
[16:15:52]
*** Streamer Plugin v2.5.2 by Incognito loaded ***
[16:15:52] Loaded.
[16:15:52] Loading plugin: nativechecker
[16:15:52] Loaded.
[16:15:52] Loaded 2 plugins.
[16:15:52]
[16:15:52] Filterscripts
[16:15:52] ---------------
[16:15:52] Loading filterscript 'Snow.amx'...
[16:15:52] Error: Function not registered: 'Streamer_CallbackHook'
[16:15:52] Loading filterscript 'attachments.amx'...
[16:15:52] Loaded 2 filterscripts.
[16:15:52] Error: Function not registered: 'Streamer_CallbackHook'
[16:15:52] Script[gamemodes/SoE.amx]: Run time error 19: "File or function is not found"
[16:15:52] Number of vehicle models: 0
Alles anzeigen
@Hard:
Warum erstellst du jedes mal einen "normalen" Textdraw?
Ist es nicht sinnvoller, wenn man einen PlayerTextDraw macht?
Hier mal mein Ansatz:
#define PING_INTERVAL 10000
forward UpdatePing();
new PlayerText:Ping[MAX_PLAYERS];
public OnGameModeInit()
{
SetTimer("UpdatePing",PING_INTERVAL,1);
return 1;
}
public OnPlayerConnect(playerid)
{
Ping[playerid]=CreatePlayerTextDraw(playerid, Float:x, Float:y, "Ping: 999");
new ping[16];
format(ping,sizeof(ping),"Ping: %d", GetPlayerPing(playerid));
PlayerTextDrawSetString(playerid, Ping[playerid], ping);
PlayerTextDrawShow(playerid, Ping[playerid]);
return 1;
}
public UpdatePing()
{
new ping[16];
for(new i; i < MAX_PLAYERS; i++)
{
if(!IsPlayerConnected(i))continue;
if(IsPlayerNPC(i))continue;
PlayerTextDrawHide(i, Ping[i]);
format(ping,sizeof(ping),"Ping: %d", GetPlayerPing(i));
PlayerTextDrawSetString(i, Ping[i], ping);
PlayerTextDrawShow(i, Ping[i]);
}
return 1;
}
@Hard:
Warum erstellst du jedes mal einen "normalen" Textdraw?
Ist es nicht sinnvoller, wenn man einen PlayerTextDraw macht?
Hab noch nie mit PlayerTextDraw gearbeitet,
bin erst seit kurzem wieder aktiv
hab kleinen error undefined Symbol [5958]: "x"
Zeile 5958 Ping[playerid]=CreatePlayerTextDraw(playerid, Float:x, Float:y, "Ping: 999");
Da musst du eingeben, wo der TextDraw sein soll
Bildfläche = 640x480
/e das hilft dir die Position zu finden
http://bsndesign.webs.com/tde.htm
so oder ? Ping[playerid]=CreatePlayerTextDraw(playerid,31.000000,294.000000, "Ping: 999");
Ja.