Game Framework
Op het moment ben ik bezig met het "proberen" te maken van een online browsergame.
Echter loop ik op dit moment een beetje vast.
De denkwijze die ik op dit moment aanhoudt is als als volgt:
- Ik heb een "Client" object
- Dit "Client" object heeft een array met "Scenes"
- Elke "Scene" heeft een array met "Entities"
Uiteindelijk heb ik natuurlijk ook een "WebSocket" object nodig, die door het hele spel bestaat, maar waar maak ik die aan? (Dit is enkel één voorbeeld, er zijn meer objecten die door het spel moeten bestaan.) Ik zie door de bomen het bos niet meer, ook van het kijken naar bestaande Frameworks wordt ik niet veel wijzer.
Kan iemand me een goede structuur uitleggen waarop ik dit kan bereiken?
Alvast bedankt!
Gewijzigd op 17/12/2014 13:02:03 door Lord Gaga
Uiteindelijk moet je programma ergens beginnen. Je kunt er voor kiezen om eerst die servicecontainer aan te maken die afhankelijk van de config de benodigde services gaat starten. een zo een service zou dan de WebSocket kunnen zijn. Je moet wel beseffen dat een service een statisch iets is. Je maakt dat ding maar 1x aan en dan voldoet dit voor je hele applicatie. Voorbeelden zouden kunnen zijn de Sessions of bijvoorbeeld de ingelogde gebruiker.
Is een servicecontainer dan ook meteen een static class? Nu is mijn "Client" object namelijk nog een gewoon object. In principe is het nu dus mogelijk om hetzelfde spel 2 keer op 1 pagina af te spelen.
Het voordeel van zo een servicecontainer is dat deze al de services instantieert en direct een intantie teruggeeft wanneer je er om vraagt
$serviceContainer = new ServiceContainer();
$user = $serviceContainer->get('login_user');
echo $user->getFullName();
Tevens kun je de serviceContainer direct in andere belangrijke classen als Stage enz. injecteren zodat vanuit deze classen direct $this->serviceContainer->get('login_user') te gebruiken is
Ik zal morgen eens proberen dit te implementeren, bedankt!