Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „höheren rank nehmen“

rey

Der Frager ;)

Hi,
ich habe ein 2on2 Ladder System geschrieben brauche aber etwas Hilfe, da ich etwas auf dem Schlauch stehe.
und zwar vergebe ich je nach den Punkte die der Spieler erzielt hat Ränge.
Wie der Name schon sagt ein 2on2 Ladder script das bedeutet jedes Team hat jeweils zwei Spieler.
z.B. könnte es der Fall sein das Team A Spieler mit folgenden Rängen hat D+ und D
Team B Spieler mit A+ und D-.
Nun gewinnt beispielsweise Team A diese Hatten D+ und D nun möchte ich das D+ so viele Punkte bekommt wie wenn er gegen A+ gewonnen hat genauso wie D da Dies der Höchste Rank von Team B ist. Gleichzeitig möchte ich das bei Team B folgendes Schema angewandt wird. A+ soviel abzug wie wenn er gegen D+ Verloren hat und D- genauso wie wenn er gegen D+ verloren hat.
Da gibt es natürlich den Fall das beid e Team Spieler mit dem Selben Rank haben z.b. C- C- gewint gegen C- C- dann soll das eine Team Punkte bekommen wie wenn es gegen C- gesiegt hat und die anderen Punkte abgezogen bekommen wie wenn sie gegen C- verloren haben.
Des weiteren die letzte Möglichkeit das nur ein Spieler aus nur einem Team einen Höheren Rank hat. z.B. B+ C v C C dann möchte ich das B+ soviel Punkte bekommt wie wenn er gegen C gewonnen hat und sein Team Partner wie wenn C gegen C gewonnen hat.
die Verlierer Punkte Abzug wie wenn sie gegen B+ verloren haben da dies der höchste rank ist aus dem Gewinner Team.
Leider weiß ich nicht wie ich dies anstellen soll. Ich habe es bisher so gemacht bis mir aufgefallen ist das dies nicht gerade fair ist!
Ich habe es so gemacht das ich ermittle welcher spieler aus Team A den höchsten Rank hat und welcher Spieler aus Team B und dann anhand dieser beiden die punkte vergabe ermittelt. das bedeutet wenn ers z.B. so war D+ D v D D dann hat d+ Punkte bekommen wie wenn D+ gegen D gewonnen hat aber auch sein Partner Punkte bekommen wie wen D+ gewonnen hätte obwohl er mehr bekommen müsste ;) und die Verlierer sind beide D somit wie wenn D gegen D+ Verloren hätten.
PHP:
$sql = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$gewinner1'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql)) 
{

  $punkte = $ds ->punkte;
  
}
$sql = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$gewinner2'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql)) 
{

  $punkte2 = $ds ->punkte;
  
}

$sql2 = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$verlierer1'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql2)) 
{

  $punktel = $ds ->punkte;
  
}
$sql2 = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$verlierer2'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql2)) 
{

  $punktel2 = $ds ->punkte;
  
}

if($punkte >= 0 && $punkte < 500) {
 $ranknamew = "D-"; }
 if($punkte < 0 && $punkte < 500) {
 $ranknamew = "D-"; }
elseif($punkte >= 500 && $punkte < 2000) {
 $ranknamew = "D"; }
elseif($punkte >= 2000 && $punkte < 3000) {
 $ranknamew = "D+"; }
elseif($punkte >= 3000 && $punkte < 4000) {
 $ranknamew = "C-"; }
elseif($punkte >= 4000 && $punkte < 5000) {
 $ranknamew = "C"; }
elseif($punkte >= 5000 && $punkte < 6000) {
 $ranknamew = "C+"; }
elseif($punkte >= 6000 && $punkte < 7000) {
 $ranknamew = "B-"; }
elseif($punkte >= 7000 && $punkte < 8000) {
 $ranknamew = "B"; }
elseif($punkte >= 8000 && $punkte < 9000) {
 $ranknamew = "B+"; }
elseif($punkte >= 9000 && $punkte < 10500) {
 $ranknamew = "A-"; }
elseif($punkte >= 10500 && $punkte < 12000) {
 $ranknamew = "A"; }
elseif($punkte >= 12000 && $punkte < 20000) {
 $ranknamew = "A+"; }
 if($punktel >= 0 && $punktel < 500) {
 $ranknamel = "D-"; }
  if($punktel < 0 && $punktel < 500) {
 $ranknamel = "D-"; }
elseif($punktel >= 500 && $punktel < 2000) {
 $ranknamel = "D"; }
elseif($punktel >= 2000 && $punktel < 3000) {
 $rankname = "D+"; }
elseif($punktel >= 3000 && $punktel < 4000) {
 $ranknamel = "C-"; }
elseif($punktel >= 4000 && $punktel < 5000) {
 $ranknamel = "C"; }
elseif($punktel >= 5000 && $punktel < 6000) {
 $ranknamel = "C+"; }
elseif($punktel >= 6000 && $punktel < 7000) {
 $ranknamel = "B-"; }
elseif($punktel >= 7000 && $punktel < 8000) {
 $ranknamel = "B"; }
elseif($punktel >= 8000 && $punktel < 9000) {
 $ranknamel = "B+"; }
elseif($punktel >= 9000 && $punktel < 10500) {
 $ranknamel = "A-"; }
elseif($punktel >= 10500 && $punktel < 12000) {
 $ranknamel = "A"; }
elseif($punktel >= 12000 && $punktel < 20000) {
 $ranknamel = "A+"; }
 
 if($punkte2 >= 0 && $punkte2 < 500) {
 $ranknamew2 = "D-"; }
 if($punkte2 < 0 && $punkte2 < 500) {
 $ranknamew2 = "D-"; }
elseif($punkte2 >= 500 && $punkte2 < 2000) {
 $ranknamew2 = "D"; }
elseif($punkte2 >= 2000 && $punkte2 < 3000) {
 $ranknamew2 = "D+"; }
elseif($punkte2 >= 3000 && $punkte2 < 4000) {
 $ranknamew2 = "C-"; }
elseif($punkte2 >= 4000 && $punkte2 < 5000) {
 $ranknamew2 = "C"; }
elseif($punkte2 >= 5000 && $punkte2 < 6000) {
 $ranknamew2 = "C+"; }
elseif($punkte2 >= 6000 && $punkte2 < 7000) {
 $ranknamew2 = "B-"; }
elseif($punkte2 >= 7000 && $punkte2 < 8000) {
 $ranknamew2 = "B"; }
elseif($punkte2 >= 8000 && $punkte2 < 9000) {
 $ranknamew2 = "B+"; }
elseif($punkte2 >= 9000 && $punkte2 < 10500) {
 $ranknamew2 = "A-"; }
elseif($punkte2 >= 10500 && $punkte2 < 12000) {
 $ranknamew2 = "A"; }
elseif($punkte2 >= 12000 && $punkte2 < 20000) {
 $ranknamew2 = "A+"; }
 if($punktel2 >= 0 && $punktel2 < 500) {
 $ranknamel2 = "D-"; }
  if($punktel2 < 0 && $punktel2 < 500) {
 $ranknamel2 = "D-"; }
elseif($punktel2 >= 500 && $punktel2 < 2000) {
 $ranknamel2 = "D"; }
elseif($punktel2 >= 2000 && $punktel2 < 3000) {
 $rankname = "D+"; }
elseif($punktel2 >= 3000 && $punktel2 < 4000) {
 $ranknamel2 = "C-"; }
elseif($punktel2 >= 4000 && $punktel2 < 5000) {
 $ranknamel2 = "C"; }
elseif($punktel2 >= 5000 && $punktel2 < 6000) {
 $ranknamel2 = "C+"; }
elseif($punktel2 >= 6000 && $punktel2 < 7000) {
 $ranknamel2 = "B-"; }
elseif($punktel2 >= 7000 && $punktel2 < 8000) {
 $ranknamel2 = "B"; }
elseif($punktel2 >= 8000 && $punktel2 < 9000) {
 $ranknamel2 = "B+"; }
elseif($punktel2 >= 9000 && $punktel2 < 10500) {
 $ranknamel2 = "A-"; }
elseif($punktel2 >= 10500 && $punktel2 < 12000) {
 $ranknamel2 = "A"; }
elseif($punktel2 >= 12000 && $punktel2 < 20000) {
 $ranknamel2 = "A+"; }
 
 
/* echo $ranknamel2 ."<br />";
 echo $ranknamel."<br />";
 echo $ranknamew."<br />";
 echo $ranknamew2."<br />";*/
if ($ranknamew == ranknamew2)
{
$ranksieger = $ranknamew;
}
elseif($ranknamew>$ranknamew2){
$ranksieger= $ranknamew;
}
else{
$ranksieger = $ranknamew2;
}

if ($ranknamel == ranknamel2)
{
$rankverlierer = $ranknamel;
}
elseif($ranknamel>$ranknamel2){
$rankverlierer= $ranknamel;
}
else{
$rankverlierer = $ranknamel2;
}
if(($ranksieger == "D-") && ($rankverlierer == "D-")) {  $sql = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$gewinner1'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql)) 
{

  $punkte = $ds ->punkte;
  $wins = $ds ->wins;
  
  
}

 $punktew = $punkte+100; 
 $sneu=$wins +1;
 
 $query = "UPDATE 2n2repasmusers SET punkte=$punktew, wins=$sneu WHERE spieler='$gewinner1'";
  mysql_query($query);
  
 
   $sql4 = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$gewinner2'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql4)) 
{

  $punkte = $ds ->punkte;
  $wins = $ds ->wins;
  
  
}
 $punktew = $punkte+100; 
 $sneu=$wins +1;


  $query = "UPDATE 2n2repasmusers SET punkte=$punktew, wins=$sneu WHERE spieler='$gewinner2'";
  mysql_query($query);
  $sql2 = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$verlierer1'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql2)) 
{  $punkte = $ds ->punkte;
  $lose = $ds ->lose;
}
 $punktel = $punkte-50;   
  $nneu=$lose +1;
 $query2 = "UPDATE repasmusers SET punkte=$punktel, lose=$nneu WHERE spieler='$verlierer'";
    mysql_query($query2);

 }
...
so schaut es bis her aus
wäre für jeden Tipp Dankbar
 
Zuletzt bearbeitet:

Duddle

Posting-Frequenz: 14µHz

AW: höheren rank nehmen

Bitte stell mal die Frage klar und deutlich, wo du hängst, was du schon probiert hast.


Duddle
 

Christian

verpeilt & verschallert

AW: höheren rank nehmen

Ich check dein Problem ehrlich gesagt auch nicht, was ich dir aber schon auf den !ersten! blick sagen kann, ist dass du deinen Code um einiges abspecken kannst indem du diesen Teil:
PHP:
if($punkte >= 0 && $punkte < 500) {
 $ranknamew = "D-"; }
 if($punkte < 0 && $punkte < 500) {
 $ranknamew = "D-"; }
elseif($punkte >= 500 && $punkte < 2000) {
 $ranknamew = "D"; }
elseif($punkte >= 2000 && $punkte < 3000) {
 $ranknamew = "D+"; }
elseif($punkte >= 3000 && $punkte < 4000) {
 $ranknamew = "C-"; }
elseif($punkte >= 4000 && $punkte < 5000) {
 $ranknamew = "C"; }
elseif($punkte >= 5000 && $punkte < 6000) {
 $ranknamew = "C+"; }
elseif($punkte >= 6000 && $punkte < 7000) {
 $ranknamew = "B-"; }
elseif($punkte >= 7000 && $punkte < 8000) {
 $ranknamew = "B"; }
elseif($punkte >= 8000 && $punkte < 9000) {
 $ranknamew = "B+"; }
elseif($punkte >= 9000 && $punkte < 10500) {
 $ranknamew = "A-"; }
elseif($punkte >= 10500 && $punkte < 12000) {
 $ranknamew = "A"; }
elseif($punkte >= 12000 && $punkte < 20000) {
 $ranknamew = "A+"; }
 if($punktel >= 0 && $punktel < 500) {
 $ranknamel = "D-"; }
  if($punktel < 0 && $punktel < 500) {
 $ranknamel = "D-"; }
elseif($punktel >= 500 && $punktel < 2000) {
 $ranknamel = "D"; }
elseif($punktel >= 2000 && $punktel < 3000) {
 $rankname = "D+"; }
elseif($punktel >= 3000 && $punktel < 4000) {
 $ranknamel = "C-"; }
elseif($punktel >= 4000 && $punktel < 5000) {
 $ranknamel = "C"; }
elseif($punktel >= 5000 && $punktel < 6000) {
 $ranknamel = "C+"; }
elseif($punktel >= 6000 && $punktel < 7000) {
 $ranknamel = "B-"; }
elseif($punktel >= 7000 && $punktel < 8000) {
 $ranknamel = "B"; }
elseif($punktel >= 8000 && $punktel < 9000) {
 $ranknamel = "B+"; }
elseif($punktel >= 9000 && $punktel < 10500) {
 $ranknamel = "A-"; }
elseif($punktel >= 10500 && $punktel < 12000) {
 $ranknamel = "A"; }
elseif($punktel >= 12000 && $punktel < 20000) {
 $ranknamel = "A+"; }
 
 if($punkte2 >= 0 && $punkte2 < 500) {
 $ranknamew2 = "D-"; }
 if($punkte2 < 0 && $punkte2 < 500) {
 $ranknamew2 = "D-"; }
elseif($punkte2 >= 500 && $punkte2 < 2000) {
 $ranknamew2 = "D"; }
elseif($punkte2 >= 2000 && $punkte2 < 3000) {
 $ranknamew2 = "D+"; }
elseif($punkte2 >= 3000 && $punkte2 < 4000) {
 $ranknamew2 = "C-"; }
elseif($punkte2 >= 4000 && $punkte2 < 5000) {
 $ranknamew2 = "C"; }
elseif($punkte2 >= 5000 && $punkte2 < 6000) {
 $ranknamew2 = "C+"; }
elseif($punkte2 >= 6000 && $punkte2 < 7000) {
 $ranknamew2 = "B-"; }
elseif($punkte2 >= 7000 && $punkte2 < 8000) {
 $ranknamew2 = "B"; }
elseif($punkte2 >= 8000 && $punkte2 < 9000) {
 $ranknamew2 = "B+"; }
elseif($punkte2 >= 9000 && $punkte2 < 10500) {
 $ranknamew2 = "A-"; }
elseif($punkte2 >= 10500 && $punkte2 < 12000) {
 $ranknamew2 = "A"; }
elseif($punkte2 >= 12000 && $punkte2 < 20000) {
 $ranknamew2 = "A+"; }
 if($punktel2 >= 0 && $punktel2 < 500) {
 $ranknamel2 = "D-"; }
  if($punktel2 < 0 && $punktel2 < 500) {
 $ranknamel2 = "D-"; }
elseif($punktel2 >= 500 && $punktel2 < 2000) {
 $ranknamel2 = "D"; }
elseif($punktel2 >= 2000 && $punktel2 < 3000) {
 $rankname = "D+"; }
elseif($punktel2 >= 3000 && $punktel2 < 4000) {
 $ranknamel2 = "C-"; }
elseif($punktel2 >= 4000 && $punktel2 < 5000) {
 $ranknamel2 = "C"; }
elseif($punktel2 >= 5000 && $punktel2 < 6000) {
 $ranknamel2 = "C+"; }
elseif($punktel2 >= 6000 && $punktel2 < 7000) {
 $ranknamel2 = "B-"; }
elseif($punktel2 >= 7000 && $punktel2 < 8000) {
 $ranknamel2 = "B"; }
elseif($punktel2 >= 8000 && $punktel2 < 9000) {
 $ranknamel2 = "B+"; }
elseif($punktel2 >= 9000 && $punktel2 < 10500) {
 $ranknamel2 = "A-"; }
elseif($punktel2 >= 10500 && $punktel2 < 12000) {
 $ranknamel2 = "A"; }
elseif($punktel2 >= 12000 && $punktel2 < 20000) {
 $ranknamel2 = "A+"; }
Durch eine simple Funktion ersetzen kannst, die sogar includiert werden könnte um den Überblick zu wahren:

function.Rank.php:
PHP:
/**
 * Rangnamen ausgeben
 *
 * @param int $punkte
 * @return string Rangname
 */
function Rank ( $punkte ){
	//Was auch immer... (einfach nur strg+c; strg+v
	if($punkte < 0 ) { $ranknamew = "D-"; }
	elseif($punkte >= 0 && $punkte < 500) {
	 	$ranknamew = "D-"; 
	}
	elseif($punkte >= 500 && $punkte < 2000) {
	 $ranknamew = "D"; }
	elseif($punkte >= 2000 && $punkte < 3000) {
	 $ranknamew = "D+"; }
	elseif($punkte >= 3000 && $punkte < 4000) {
	 $ranknamew = "C-"; }
	elseif($punkte >= 4000 && $punkte < 5000) {
	 $ranknamew = "C"; }
	elseif($punkte >= 5000 && $punkte < 6000) {
	 $ranknamew = "C+"; }
	elseif($punkte >= 6000 && $punkte < 7000) {
	 $ranknamew = "B-"; }
	elseif($punkte >= 7000 && $punkte < 8000) {
	 $ranknamew = "B"; }
	elseif($punkte >= 8000 && $punkte < 9000) {
	 $ranknamew = "B+"; }
	elseif($punkte >= 9000 && $punkte < 10500) {
	 $ranknamew = "A-"; }
	elseif($punkte >= 10500 && $punkte < 12000) {
	 $ranknamew = "A"; }
	elseif($punkte >= 12000 && $punkte < 20000) {
	 $ranknamew = "A+"; }
	 
	return $ranknamew;
}
So könntest Du sie anwenden :
$ranknamew = Rank($MeinePunktzahl);
$ranknamel = Rank($MeinePunktzahl);
usw...
Dass Du nicht mehr weiter weißt kann ich durchaus verstehen, bei so einem wirrwar würde ich auch sehr leicht den Überblick verlieren.
 

rey

Der Frager ;)

AW: höheren rank nehmen

ich habe es einiger maßen geschaft das die sieger getrennt ihre Punkte bekommen. Aber nun hackt es bei den Verlierern.
ich fasse das oben noch einmal kurz.
es sind zwei Teams
Team A und Team B
Team A hat Spieler mit folgenden Rängen: D+ und D
Team B hat Spieler mit folgenden Rängen: D und D

nun gewinnt Team A
somit Rechne ich für den Spieler mit Rang D+ die punkte zusammen die er bekommt wenn D+ gegen D gewinnt. und bei dem zweiten Spieler wenn D gegen D gewinnt. Da der höchste rang bei den Verlieren D ist.
die Verlierer aber sollen anders behandelt werden ;)
dort soll es so sein das sie so viele Punkte abgezogen bekommen wie wenn Sie gegen den Spieler mit dem Höchsten rang gespielt haben indem fall D+

bei mir macht er aber folgendes er rechnet für einen Spieler zwei Niederlagen zusammen und für den anderen 3

PHP:
...
if($ranknamew=="D" && $rankverlierer=="D") {
  $sql = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$gewinner1'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql)) 
{

  $punkte = $ds ->punkte;
  $wins = $ds ->wins;
  
  
}

 $punktew = $punkte+100; 
 $sneu=$wins +1;
  $query = "UPDATE 2n2repasmusers SET punkte=$punktew, wins=$sneu WHERE spieler='$gewinner1'";
  mysql_query($query);
}
  if($ranknamew2=="D" && $rankverlierer=="D"){
  
 
   $sql4 = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$gewinner2'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql4)) 
{

  $punkte = $ds ->punkte;
  $wins = $ds ->wins;
  
  
} $punktew = $punkte+100; 
 $sneu=$wins +1;
     $query = "UPDATE 2n2repasmusers SET punkte=$punktew, wins=$sneu WHERE spieler='$gewinner2'";
  mysql_query($query);
}
  if($ranknamel=="D" && $ranksieger=="D"){
  $sql2 = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$verlierer1'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql2)) 
{  $punkte = $ds ->punkte;
  $lose = $ds ->lose;
}
 $punktel = $punkte-50;   
  $nneu=$lose +1;
 	
 $query2 = "UPDATE 2n2repasmusers SET punkte=$punktel, lose=$nneu WHERE spieler='$verlierer1'";
    mysql_query($query2);
	}
if($ranknamel2=="D" && $ranksieger=="D"){
	
	  $sql3 = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$verlierer2'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql3)) 
{  $punkte = $ds ->punkte;
  $lose = $ds ->lose;
}	 $punktel = $punkte-50;   
  $nneu=$lose +1;
									 $query2 = "UPDATE 2n2repasmusers SET punkte=$punktel, lose=$nneu WHERE spieler='$verlierer2'";
    mysql_query($query2);
}
...
if($ranknamew=="D+" && $rankverlierer=="D") {  

$sql = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$gewinner1'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql)) 
{

  $punkte = $ds ->punkte;
  $wins = $ds ->wins;
  
  
}

 $punktew = $punkte+75; 
 $sneu=$wins +1;
  $query = "UPDATE 2n2repasmusers SET punkte=$punktew, wins=$sneu WHERE spieler='$gewinner1'";
  mysql_query($query);
  }
  			if($ranknamew2=="D+" && $rankverlierer=="D"){
 
   $sql4 = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$gewinner2'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql4)) 
{

  $punkte = $ds ->punkte;
  $wins = $ds ->wins;
  
  
} $punktew = $punkte+75; 
 $sneu=$wins +1;
     $query = "UPDATE 2n2repasmusers SET punkte=$punktew, wins=$sneu WHERE spieler='$gewinner2'";
  mysql_query($query);
  }
  	if($ranknamel=="D" && $ranksieger=="D+"){
  $sql2 = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$verlierer1'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql2)) 
{  $punkte = $ds ->punkte;
  $lose = $ds ->lose;
}
 $punktel = $punkte-37;   
  $nneu=$lose +1;
   $query2 = "UPDATE 2n2repasmusers SET punkte=$punktel, lose=$nneu WHERE spieler='$verlierer1'";
    mysql_query($query2);
	}
	if($ranknamel2=="D" && $ranksieger=="D+"){
	  $sql3 = mysql_query("SELECT * FROM 2n2repasmusers WHERE spieler='$verlierer2'")or die(mysql_error());
  while ($ds = mysql_fetch_object($sql3)) 
{  $punkte = $ds ->punkte;
  $lose = $ds ->lose;
}	 $punktel = $punkte-37;   
  $nneu=$lose +1;
									 $query2 = "UPDATE 2n2repasmusers SET punkte=$punktel, lose=$nneu WHERE spieler='$verlierer2'";
    mysql_query($query2);
	}
...
mir ist eingefallen man könnte auch
folgendes machen Punkte von beiden Spielern zusammen rechnen dann /2 und die Punkte ist der rang
wenn aber ein Spieler 2000 Punkte mehr hat als der andere Punkte von spieler1+(punkte von spieler1-2000)/2
sowas würde dann so gehen oder?
PHP:
if ($punktew>=$punktew2) {
$ranksieger = $punktew+$punktew2/2;
}
elseif($punktew>$punktew2 ?wie weiter um die 2000 Punkte mehr abfrage zu starten?
$ranksieger = ?;
}
elseif ($punktew2>$punktew .....){
$ranksieger = ...;
}
das selbe dann noch für die Verlierer
wäre vielleicht einfacher
 
Zuletzt bearbeitet:

Duddle

Posting-Frequenz: 14µHz

AW: höheren rank nehmen

Edit: bezogen auf Peter_Unlustig:

Kürzer, gleiche Funktionalität:
PHP:
function Rank ($punkte) {
    if($punkte < 500) return "D-";
    if($punkte < 2000) return "D";
    if($punkte < 3000) return "D+";
    if($punkte < 4000) return "C-";
    if($punkte < 5000) return "C";
    if($punkte < 6000) return "C+";
    if($punkte < 7000) return "B-";
    if($punkte < 8000) return "B";
    if($punkte < 9000) return "B+";
    if($punkte < 10500) return "A-";
    if($punkte < 12000) return "A";
    if($punkte < 20000) return "A+";
    return "D-";
}

Den default-Fall (Punkte größer 20k) müsste man noch besser abfangen, aber das steht hier ja nicht zur Debatte...

Edit2: ich verstehe dich, rey, immer noch nicht. Ist das Problem so kompliziert, dass du es nicht in einfachen Worten beschreiben kannst? Bitte schilder, was passiert wenn:

Jürgen aus Team A hat den ominösen Rang C (5500 Pkt.) und spielt leidenschaftlich gern mit seinem Kollegen Martin (Rang A- mit 10000 Pkt.).
An einem bequemen Donnerstag-Nachmittag zocken die beiden eine gemütliche Runde gegen Annika (D- mit 300 Pkt.) und ihre Lebensgefährtin Sabine (B- mit 6900 Pkt.).

Was jetzt soll jetzt, wenn Jürgen und Martin gegen Annika und Sabine gewinnen?
Was soll passieren, wenn sie verlieren?
Wer soll im Nachhinein unter der o.g. Anfangssituation wieviele Punkte haben?


Duddle
 
Zuletzt bearbeitet:

Christian

verpeilt & verschallert

AW: höheren rank nehmen

@doc theoretisch schon, aber sobald return angegeben wird, bricht die Funktion eh ab (ob das nun stylistisch toll ist, nc)
 

rey

Der Frager ;)

AW: höheren rank nehmen

Das mit den Punkten ist ja nicht so wichtig wie es im script ausschaut ;)
habe es nun etwas übersichtlicher gemacht.
aber meine zweite Idee wäre besser umsetzt bar oder?
also wenn die diefferenz beider spieler kleiner als 2000 punkte ist dann
Team Rank = (Player1 + Player2) / 2
und das ist dan der rang
wenn aber ein Spieler 2000 Punkte mehr hat als der andere dann
Team Rank = [Player1 + (player1-2000)]/2
wie müsste die schleife bei so etwas ausschauen

UPDATE:// habs gelöst vielendank
 
Zuletzt bearbeitet:
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Statistik des Forums

Themen
175.189
Beiträge
2.582.077
Mitglieder
67.259
Neuestes Mitglied
SaschMasch1312
Oben