PHP-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
// Funktion aufrufen:
if (!CheckClient(client)) return;
// Funktion:
public bool:CheckClient(client)
{
if (client != 0)
{
// Get all clients on the server
for (new i = 1; i <= MaxClients; i++)
{
// Check if player ok
if (IsClientConnected(i) && IsClientInGame(i) && !IsFakeClient(client))
{
// Check if client is a player on the server
if (i == client) return true;
}
}
}
return false;
}
|
PHP-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 |
// Funktion aufrufen:
if (!CheckClient(client)) return;
// Funktion:
public bool:CheckClient(client)
{
if ( !( 1 <= client <= MaxClients ) || !IsClientInGame(client) || IsFakeClient(client) )
{
return false;
}
return true;
}
|
PHP-Quelltext |
|
1 2 3 4 5 6 7 8 9 |
stock bool:IsClientValid(id)
{
if(id > 0 && id <= MaxClients && IsClientInGame(id))
{
return true;
}
return false;
}
|
Quellcode |
|
1 |
if (!CheckClient(client)) return; |
Jeder Spieler erhält einer Userid, dieser wird bei jeder Verbindung um eins erhöht.In CS:S ist es ja so, dass jeder Spieler eine individuelle playerid bekommt.
Wie genau sieht dass dann mit den MaxClients aus?
Das solltest du nicht machen (außer du weißt was du tust), im Normalfall nutzt man diese Art von return um den Code an jener Stelle zu beenden, das Funktioniert aber nicht in jeder Funktion oder überall je nach voherigem/folgendem Code.
Quellcode
1 if (!CheckClient(client)) return;
Was bedeutet es, wenn man nichts returnt? Ist das das gleiche wie return 0?
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »Impact« (22. März 2013, 22:43)