Ich bin gerade daran, mein Spiel ziemlich grundsätzlich zu überarbeiten, und bin an einen kleinen "Problemhügel" gestossen, denn ich nun wegschaufeln will (um das mal bildlich auszudrücken... )
Es geht um folgendes: Jeder von euch kennt das wohl. Ihr habt ein Spiel, dass sich aus vielen verschiedenen Dingen zusammensetzt, nehmen wir jetzt als Beispiel einmal Kampfeinheiten (die gibts ja fast überall). Zweifelsohne werden die Stärken und Schwächen dieser Einheiten durch irgendwelche Zahlen ausgemacht, die irgendwo gespeichert sind und abgerufen werden. Und hier sind wir auch schon beim Problem: Wo?
Bisher habe ich das ganze so gelöst: Für Kampfeinheiten (bei mir Schiffe) gab es die ships.inc.php, diese Datei erstellte eine Klasse, über die alle Werte eines Schiffes abgerufen werden konnten:
class ships
{
var $testschiff;
var $supa_pwn_schiff;
// ...etc
}
class ship
{
var $name;
var $angriffspunkte;
var $schild;
var $kosten;
// ...etc
}
$ships = @new ships;
$ships->testschiff = @new ship;
$ships->testschiff->name = "Testschiff";
$ships->testschiff->angriffspunkte = 1337;
// ... etc
In der Hauptdatei konnte ich nun, wenn ich einen Wert wollte, ihn einfach über die Klasse abrufen. Dieses System stellte mich aber vor einige Probleme:
- Was, wenn ich ein flexibles System will in das sich leicht weitere Schiffe einfügen lassen?
- Was, wenn man bestimmte Werte vom Script verändern will?
- Was, wenn ich das evige rumge-eval()-e vermeiden will?
und so weiter...
Mir kam die Idee, das ganze entweder über die Datenbank oder über ein Array zu lösen, das wieder wie bisher eingebunden wird. Aber irgendwo gibts überall Vor- und Nachteile... wie immer halt Bevor ich etwas überstürze, würde ich nun gern einmal wissen, wie IHR das löst... was habt ihr da so für Erfahrungen gemacht?
Wäre froh wenn ihr mir helfen könntet
mfg smf68