pudding: Nahe der Verzweiflung !!!

Beitrag lesen

Skript: function ligaSpielStarten($tableName,$round,$tableName2,$htmlText,$verbindung,$database,$password){

$abfrage = "UPDATE $tableName SET fight=0 WHERE fight=1 ";   $erg = mysql_db_query($database,$abfrage,$verbindung);   $abfrage = "SELECT count(id) FROM $tableName";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($anzahlVerbleibende)=mysql_fetch_row($erg);   if ($anzahlVerbleibende > 1){     $Text = "<tr><td colspan=2 class="main"><br>Runde $round<hr></td></tr>";     SetHTMLText($Text,$database,$verbindung);     $Text = ligaEineRunden($tableName,$tableName2,$round,$htmlText,$verbindung,$database,$password);     SetHTMLText($Text,$database,$verbindung);     $round = $round + 1;     ligaSpielStarten($tableName,$round,$tableName2,$htmlText,$verbindung,$database,$password);   } else {     $abfrage = "SELECT User,id FROM $tableName";     $erg = mysql_db_query($database,$abfrage,$verbindung);     list($User,$Playerid)=mysql_fetch_row($erg);     $Text = "<tr><td colspan=2 class="main"><br><br><hr>Spiel Beendet - Gewinner ist $User</td></tr>";     SetHTMLText($Text,$database,$verbindung);     $abfrage = "UPDATE $tableName2 SET Runde = $round WHERE id = $Playerid";     $erg = mysql_db_query($database,$abfrage,$verbindung);   } }

//--Funktion--eine Rund berechnen---------------------------------------------------------------// function ligaEineRunden($tableName,$tableName2,$round,$htmlText,$verbindung,$database,$password){

$abfrage = "SELECT id FROM $tableName WHERE fight != 1 ORDER BY agr DESC";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($id) = mysql_fetch_row($erg);

$abfrage = "SELECT count(id) FROM $tableName WHERE fight != 1 AND hitpoints >= 0 ORDER BY agr DESC";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($anzahlVerbleibende) = mysql_fetch_row($erg);

$abfrage = "SELECT count(id) FROM $tableName ORDER BY agr DESC";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($UserAnzahl) = mysql_fetch_row($erg);

//-check ob noch Player da sind die noch nicht angegriffen haben   if($anzahlVerbleibende>=1){     kampfBerechnen($id,$UserAnzahl,$tableName,$tableName2,$round,$htmlText,$verbindung,$database,$password);     SetHTMLText($Text,$database,$verbindung);     updateAgr($tableName,$round,$tableName2,$htmlText,$verbindung,$database,$password);     ligaEineRunden($tableName,$tableName2,$round,$htmlText,$verbindung,$database,$password);   } } //--Funktion--eine Rund berechnen------------------------------------------ende-----------------//

//--Funktion--Kampf berechnen-------------------------------------------------------------------// function kampfBerechnen($id,$UserAnzahl,$tableName,$tableName2,$round,$htmlText,$verbindung,$database,$password){

//-Angreifer Eigenschaften einlesen   $abfrage = "SELECT id,User,agr,hitpoints FROM $tableName WHERE id = $id";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($idp1,$Userp1,$agrp1,$hitpointsp1) = mysql_fetch_row($erg);

$abfrage = "SELECT MechID,PilotID FROM mmw_members WHERE id=$idp1";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($midp1,$pidp1) = mysql_fetch_row($erg);   $Text = "<tr><td class="main">" . $Userp1 ."</td>";   SetHTMLText($Text,$database,$verbindung);

$abfrage = "SELECT mstaerke,mgeschw,mbeweg,mzielv,mkonst, mspezat,mresfeu,mresplas,mresene,mresstra,mresexp,pintel,preakt,prefle,praeum,ptecver,pkonz FROM mmw_pilot,mmw_mech WHERE mid=$midp1 AND pid=$pidp1";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($mstaerkep1,$mgeschwp1,$mbewegp1,$mzielvp1,$mkonstp1,$mspezatp1,$mresfeup1,$mresplasp1,$mresenep1,$mresstrap1,$mresexpp1,$pintelp1,$preaktp1,$preflep1,$praeump1,$ptecverp1,$pkonzp1) = mysql_fetch_row($erg);

//-Angreifer fight=1   $abfrage = "UPDATE $tableName SET fight=1 WHERE id=$idp1";   $erg = mysql_db_query($database,$abfrage,$verbindung);

$abfrage = "SELECT count(id) FROM $tableName WHERE hitpoints >=0  AND fight != 1 ORDER BY agr DESC";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($userMitAngriff) = mysql_fetch_row($erg);   $angreiferID = $UserAnzahl - $userMitAngriff;

//-Gegner bestimmen und Eigenschaften einlesen   $zz = zzGen($UserAnzahl,$angreiferID)-1;   $abfrage = "SELECT id,User,agr,hitpoints FROM $tableName WHERE hitpoints >=0 ORDER BY agr DESC LIMIT $zz,1";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($idp2,$Userp2,$agrp2,$hitpointsp2) = mysql_fetch_row($erg);

$abfrage = "SELECT MechID,PilotID FROM mmw_members WHERE id=$idp2";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($midp2,$pidp2) = mysql_fetch_row($erg);   $Text = "<td class="main">" . $Userp2 ."</td>";   SetHTMLText($Text,$database,$verbindung);   $abfrage = "SELECT mstaerke,mgeschw,mbeweg,mzielv,mkonst, mspezat,mresfeu,mresplas,mresene,mresstra,mresexp,pintel,preakt,prefle,praeum,ptecver,pkonz FROM mmw_pilot,mmw_mech WHERE mid=$midp2 AND pid=$pidp2";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($mstaerkep2,$mgeschwp2,$mbewegp2,$mzielvp2,$mkonstp2,$mspezatp2,$mresfeup2,$mresplasp2,$mresenep2,$mresstrap2,$mresexpp2,$pintelp2,$preaktp2,$preflep2,$praeump2,$ptecverp2,$pkonzp2) = mysql_fetch_row($erg);

$agrproz = (100*$agrp1)/(($agrp1+$agrp2)+1);   $zz = zzGen(100,$agrproz);

if($zz>$agrproz){     $angriff =$Userp2;     $zz = rand(0,100);     $wat = ((-4000/(($pkonzp2+$mzielvp2)+40))+100)  - $zz*(((-4000/(($pkonzp2+$mzielvp2)+40))+100)/4);     $zz = rand(0,100);     if ($zz<=$wat){       $zz = rand(0,100);       $wab = ((-4000/(($pkonzp1+$mzielvp1+$mbewegp1)+40))+100)  - $zz*(((-4000/(($pkonzp1+$mzielvp1+$mbewegp1)+40))+100)/4);       $schaden = round(($mstaerkep2 + $praeump2)-(($mstaerkep2 + $praeump2*$wab)/100));       $hitpoints = $hitpointsp1 - $schaden;

//-hitpoints berechnen

$abfrage = "UPDATE $tableName SET hitpoints=$hitpoints WHERE id = $idp1";       $erg = mysql_db_query($database,$abfrage,$verbindung);

//-verteilterSchaden berechnen

$abfrage = "UPDATE $tableName2 SET verteilterSchaden=verteilterSchaden+$schaden WHERE id = $idp2";       $erg = mysql_db_query($database,$abfrage,$verbindung);

//-empfangenerSchaden berechnen

$abfrage = "UPDATE $tableName2 SET empfangenerSchaden=empfangenerSchaden+$schaden WHERE id = $idp1";       $erg = mysql_db_query($database,$abfrage,$verbindung);       $schaden=$schaden;     } else{       $schaden="daneben";     }

} else {     $angriff =$Userp1;     $zz = rand(0,100);     $wat = ((-4000/(($pkonzp1+$mzielvp1)+40))+100)  - $zz*(((-4000/(($pkonzp1+$mzielvp1)+40))+100)/4);     $zz = rand(0,100);     if ($zz<=abs($wat)){       $zz = rand(0,100);       $wab = ((-4000/(($pkonzp2+$mzielvp2+$mbewegp2)+40))+100)  - $zz*(((-4000/(($pkonzp2+$mzielvp2+$mbewegp2)+40))+100)/4);

//-hitpoints berechnen       $schaden = round(($mstaerkep1 + $praeump1)-(($mstaerkep1 + $praeump1*$wab)/100));       $hitpoints = $hitpointsp2 - $schaden;       $abfrage = "UPDATE $tableName SET hitpoints=$hitpoints WHERE id = $idp2";       $erg = mysql_db_query($database,$abfrage,$verbindung);

//-verteilterSchaden berechnen       $abfrage = "UPDATE $tableName2 SET verteilterSchaden=verteilterSchaden+$schaden WHERE id = $idp1";       $erg = mysql_db_query($database,$abfrage,$verbindung);

//-empfangenerSchaden berechnen       $abfrage = "UPDATE $tableName2 SET empfangenerSchaden=$empfangenerSchaden+$schaden WHERE id = $idp2";       $erg = mysql_db_query($database,$abfrage,$verbindung);     } else{       $schaden="daneben";     }   }

$Text = "<td class="main">$angriff: $schaden</td></tr>"; SetHTMLText($Text,$database,$verbindung); removePlayer($tableName,$round,$tableName2,$htmlText,$verbindung,$database,$password);

}

//--Funktion--Kampf berechnen-----------------------------------------------ende-----------------//

//--Funktion--removePlayer --die Spieler entfernen die keine hitpoints mehr haben--------------// function removePlayer($tableName,$round,$tableName2,$htmlText,$verbindung,$database,$password){

$abfrage = "SELECT count(User) FROM $tableName WHERE hitpoints < 0";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($anzahlToter)=mysql_fetch_row($erg);

for ($i=0;$i<$anzahlToter;$i=$i+1){

$abfrage = "SELECT id FROM $tableName WHERE hitpoints < 0 LIMIT $i,1";     $erg = mysql_db_query($database,$abfrage,$verbindung);     list($Playerid)=mysql_fetch_row($erg);

$abfrage = "SELECT User,hitpoints FROM $tableName WHERE id = $Playerid";     $erg = mysql_db_query($database,$abfrage,$verbindung);     list($User,$hitpoints)=mysql_fetch_row($erg);

$Text = "<tr><td colspan=2 class="main"><br>$User ist rausgeflogen mit $hitpoints<br></td></tr>";     SetHTMLText($Text,$database,$verbindung);

$abfrage = "UPDATE $tableName2 SET Runde = $round WHERE id = $Playerid";     $erg = mysql_db_query($database,$abfrage,$verbindung);

$abfrage = "DELETE FROM $tableName WHERE id = $Playerid";     $erg = mysql_db_query($database,$abfrage,$verbindung);   } }

//--Funktion--die Spieler entfernen die keine hitpoints mehr haben---------ende---------------//

//--Funktion--agr wird neu berechnet---------------------------------------------------------// function updateAgr($tableName,$round,$tableName2,$htmlText,$verbindung,$database,$password){

$abfrage = "SELECT count(id) FROM $tableName";   $erg = mysql_db_query($database,$abfrage,$verbindung);   list($anzahl)=mysql_fetch_row($erg);   for ($i=0;$i<$anzahl;$i=$i+1){

$abfrage = "SELECT id,User FROM $tableName LIMIT $i,1";     $erg = mysql_db_query($database,$abfrage,$verbindung);     list($Playerid,$User) = mysql_fetch_row($erg);

$abfrage = "SELECT MechID,PilotID FROM mmw_members WHERE id = $Playerid";     $erg = mysql_db_query($database,$abfrage,$verbindung);     list($mid,$pid) = mysql_fetch_row($erg);

$abfrage = "SELECT mstaerke,mgeschw,mbeweg,mzielv,mkonst, mspezat,mresfeu,mresplas,mresene,mresstra,mresexp,pintel,preakt,prefle,praeum,ptecver,pkonz FROM mmw_pilot,mmw_mech WHERE mid=$mid AND pid=$pid";     $erg = mysql_db_query($database,$abfrage,$verbindung);     list($mstaerke,$mgeschw,$mbeweg,$mzielv,$mkonst,$mspezat,$mresfeu,$mresplas,$mresene,$mresstra,$mresexp,$pintel,$preakt,$prefle,$praeum,$ptecver,$pkonz) = mysql_fetch_row($erg);

//AGR bestimmen     $agr=$mgeschw+$preakt;     $zz =rand(0,1);     $agr = ($agr)- ($zz*($agr/4));

$abfrage = "UPDATE $tableName SET agr = $agr WHERE id = $Playerid";     $erg = mysql_db_query($database,$abfrage,$verbindung);

}

}

//--Funktion--agr wird neu berechnet-------------------------------------ende-----------------//

//---Funktion-----------Zufallszahl berechnen zwischen 0 und $anzahl(exklusiv $doNotUse)-----// function zzGen($anzahl,$doNotUse){   $zzReturn = rand(0,$anzahl);   if ($zzReturn==$doNotUse OR $zzReturn==""){     return zzGen($anzahl,$doNotUse);   } else {     return $zzReturn;   } } //---Funktion-----------Zufallszahl berechnen-----//

function SetHTMLText($Text,$database,$verbindung){   $datum=date(dmy);   $abfrage = "UPDATE mmw_liga_stats SET htmlText= CONCAT(htmlText,' ','$Text') WHERE datum=$datum";   $erg = mysql_db_query($database,$abfrage,$verbindung); }

ligaSpielStarten($tableName,$round,$tableName2,$htmlText,$verbindung,$database,$password);


Ich bin für alle Anregungen mehr als Dankbar !!!!!!!! Pudding