ZZZ bei Crash: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Didi (Diskussion | Beiträge) |
(klargestellt was weg soll durch auskommentieren) |
||
Zeile 51: | Zeile 51: | ||
$walker kann wech | $walker kann wech | ||
− | $walker=0; | + | #$walker=0; |
$i=$aussetzen; | $i=$aussetzen; | ||
while ($i>=0) | while ($i>=0) | ||
Zeile 61: | Zeile 61: | ||
und den ganzen Kladderadatsch in diesem if-Zweig kann man dann ersetzen durch | und den ganzen Kladderadatsch in diesem if-Zweig kann man dann ersetzen durch | ||
$i = 0; | $i = 0; | ||
− | + | # $sum=$aussetzen+$walker+$i; | |
− | + | # if (($sum)>=$maxmoves) | |
− | + | # $i=$maxmoves-$walker-1; | |
− | + | # else | |
− | + | # $i=$i+$aussetzen; | |
} | } | ||
$i--; | $i--; | ||
− | $walker++; | + | #$walker++; |
} | } | ||
− | |||
[[Category:Bisschen OpenSource]] | [[Category:Bisschen OpenSource]] |
Version vom 22. April 2008, 13:47 Uhr
Da der (zugegebernmaßen evtl. etwas kompliziert programmierte) Algorithmus zur Bestimmung der Zurücksetzposition offenbar einen Bug hat, gibt's hier mal meinen "original"-Source code und danach eine korrektur bzw. Anmerkungen von Quabla.
Ich stell's hier jetzt mal zur Diskussion und möge sich die Community an diesem Stück Code beweisen :-D
if ($possibles==0) { $query="select M_ID,x_pos,y_pos,crash from $movestable [..]"; $res=do_query($query); $maxmoves=mysql_num_rows($res); if ($aussetzen>=$maxmoves) { $aussetzen=$maxmoves-1; } $walker=0; $i=$aussetzen; while ($i>=0) { $row=mysql_fetch_array($res); if ($row[crash]==1) { $sum=$aussetzen+$walker+$i; if (($sum)>=$maxmoves) $i=$maxmoves-$walker-1; else $i=$i+$aussetzen; } $i--; $walker++; } $sysmsg="-:KIch werde $aussetzen Züge zurückgesetztK:-"; echo "AUAAAA! Es quietscht und du knatterst ins Gras... Dafür wirst Du um $aussetzen Züge zurückgesetzt und startest wieder von 0."; }
Hier die Kommentierung und Vorschläge von Quabla
if ($possibles==0) { $query="select M_ID,x_pos,y_pos,crash from $movestable WHERE [..]"; $res=do_query($query); $maxmoves=mysql_num_rows($res); if ($aussetzen>=$maxmoves) { $aussetzen=$maxmoves-1; }
$walker kann wech
#$walker=0; $i=$aussetzen; while ($i>=0) { $row=mysql_fetch_array($res); if ($row[crash]==1) {
und den ganzen Kladderadatsch in diesem if-Zweig kann man dann ersetzen durch
$i = 0; # $sum=$aussetzen+$walker+$i; # if (($sum)>=$maxmoves) # $i=$maxmoves-$walker-1; # else # $i=$i+$aussetzen; } $i--; #$walker++; }