OOP - Nesting Objects
BlitzMax Forums/BlitzMax Programming/OOP - Nesting Objects
| ||
Does anyone have an example of how to nest objects so that you would see something like the following syntax: world.camera.player.y = something |
| ||
Type World Global Camera:Camera End Type Type Camera Field Player:Entity End Type Type Entity Field X#, Y#, Z# End Type |
| ||
Thanks Noel, how would you initialize it? Would it just be: game:World = new World and then I would have access to game.camera.player.y? or would it be: Earth:World = new World Earth.Camera = new Camera Earth.Camera.Entity = new Entity Earth.Camera.Entity.Y = 50 |
| ||
Well in the case you want planets...Type Scene Field Camera:Camera = New Camera Field Worlds:TList = New TList End Type Type Camera Blah Field Owner:Entity ' Can be any object, a player entity included Field Children:TList = New TList ' Children entities End Type Type Entity Field X#, Y#, Z#, Etc End Type Type Player Extends Entity Blah End Type |
| ||
Thanks Mr. Cower |
| ||
Erm, Noel, doesn't your Camera class have a potential problem with cyclic references? |
| ||
Unless he puts a camera instance in the 'Children' list, no. Given that his Camera class doesn't extend Entity why would you want to put a camera in this list anyway? |
| ||
Erm, aren't you both being overly nit-picky about a general example? |
| ||
Me? I was replying to the nit picky one. You were supposed to read the above as "there's no problem here", I don't think that's being nit picky. Actually even FlameDuck was not that nit picky, it's good to point these issues. He was just wrong here. |
| ||
Didn't read yours, just assumed ;) As for FlameDuck, he's just being a hoebag. |