Das Tippsforum
Link zum Forum
In dem zweiten Teil meines Tutorial zeige ich euch wie man das Browsergame, was wir in Teil 1 erstellt haben für den Verteidiger etwas besser machen. Dazu benutzen wir einmal eine Mauer welche in jedem guten Browsergame zu finden ist und einen Nachtbonus.
Also fangen wir erst Mal mit dem Wall aus. Dazu wird zuerst folgender Array erstellt:
$mauer = array(1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0);
Dies ist der Faktor mit dem man später die gesammte Verteidigung Mal nimmt. Wenn man zum Beispiel die Mauer auf Stufe 5 hat, dann nimmt man folgende Variable $mauer['5'] was 1.5 ergibt.
Hier dazu eine Rechnung:
Der Verteidiger hat 1000 Verteidigung durch seine Truppen.
Bei einem Wall Stufe 0 hat der dann:
1000 * 1 = 1000 Verteidigung
Bei einem Wall Stufe 5 hat der dann:
1000 * 1.5 = 1500 Verteidigung
Hier erkennt man gut den Bonus 500.
Jetzt wird auch noch ein Nachtbonus eingebaut, der die Verteidigung zwischen 23 Uhr Abends und 6 Uhr Morgens verdoppelt. Dafür wird folgender Code benutzt:
if(date("H") <= 23 OR date("H") >= 6){
$bonustime = 1;
} else {
$bonustime = 2;
}
Hier ist einmal der komplette Code wie er in Teil 1 und 2 zusammen ist:
<?php
// Grundvariablen und Arrays
// Array mit Mauer erstellen
$mauer = array(1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0);
// Verteidigungsbonus bei Nacht berechnen
if(date("H") <= 23 OR date("H") >= 6){
$bonustime = 1;
} else {
$bonustime = 2;
}
// Angreifer
// Schwertkämpfer erstellen
$schwert['name'] = “Schwertkämpfer”; // Name
$schwert['anz'] = 120; // Anzahl
$schwert['atk'] = 30; // Angriff
$schwert['def'] = 20; // Verteidigung
// Verteidiger
// Bogenschütze erstellen
$bogen['name'] = “Bogenschützen”; // Name
$bogen['anz'] = 80; // Anzahl
$bogen['atk'] = 25; // Angiff
$bogen['def'] = 35; // Verteidigung
$defwall = 5; // Wall ist auf welcher Stufe? Zahl von 0 bis 10
// Gesammte Angriffpunkte errechnen
$all_atk = $schwert['atk'] * $schwert['anz'];
// Gesammte Verteidigungspunkte errechnen
$all_def = $bogen['def'] * $bogen['anz'] * $mauer[$defwall] * $bonustime;
// Abfrage was von beidem größer ist
if($all_atk > $all_def){
// Schwertkämpfer sind stärker
echo “Die “.$schwert['name'].” haben gewonnen”;
} else {
// Bogenschützen sind stärker
echo “Die “.$bogen['name'].” haben gewonnen”;
}
?>
Diesmal gewinnt der Verteidiger. Das kann man ändern indem man den Wall auf Stufe 0 setzt.
Wenn du weitere Fragen zu Browsergames hast, dann frag im Gamux.de - Forum nach, dem Forum für Browsergames.
on Februar 23rd, 2008 at 17:37
Sehr schöne Tuts, ich hoffe es kommen noch mehr zu diesem Bereich!
THX
on Februar 24th, 2008 at 01:01
Hi JWF,
es werden auf jeden Fall noch mehr Tutorials kommen. Wenn du Vorschläge hast oder sonst Hilfe braucht kannst du ja Mal auf Gamux.de vorbeischauen