I had an idea, and that was to create two rooms with an "invisible wall," (or a *VERY* low wall) between them, so that you create a virtual separation but not a physical one, allowing for "one door per room," but two doors where it counts. I haven't yet gotten a good enough handle on the code to know how this is done, but it'd be like partitions on a physical drive...?
----- Original Message ----- From: "Matthew Tylee Atkinson" <[EMAIL PROTECTED]> To: "AGRIP User and Developer discussion list" <[email protected]> Sent: Monday, April 28, 2008 1:41 AM Subject: Re: [AGRIP-discuss] Multiple doors on the same wall > All: The topics discussed in this email are quite advanced LDL stuff so > please don't let it put you off! :-) (Also: do fill in the survey even > if you are put off - we need constructive criticism to help us improve.) > > Matthew asked if it is possible to put multiple connectors (doors, > holes) into the same wall of a room. > > It is possible, though currently it has some rough edges. One problem > is that the rooms you link to, if specified to be too big, could overlap > each other. This is just ignored (which can lead to some interesting > layouts, as in test_05_big2dlayout) but I plan to detect it and tell the > user about it soon. Also, you don't have absolute exact control over > where the connecting doors are, though it's good enough to give it a go. > > Try this XML... > > <map name='multiple doors on one wall?' style='base'> > <room id='start' size='big'> > <item type='info_player_start' pos='c' /> > <con wall='n' pos='bl' target='north-west' type='door' /> > <con wall='n' pos='br' target='north-east' type='door' /> > </room> > <room id='north-west' /> > <room id='north-east' /> > </map> > > What the above does is give you a bigger-than-usual first room. Both of > the connections away from this room are on the north wall of it. > However, one is in the bottom left ("bl") of that north wall (as if you > were facing it) and one is in the bottom right ("br"). The effect is > that you can fit both of those smaller (well, "med"-sized) rooms behind > that wall and have both doors connecting to them off the north wall of > "start". If this is not a good explanation, please let me know. > > Because of the sizes of the rooms, it would not work to have those two > additional rooms any wider (but you could make them into corridors). > However, if you did want them to be big rooms, you could move the doors > on their side such that they were in the corner and the rooms wouldn't > overlap. Something like this: > > <map name='multiple doors on one wall?' style='base'> > <room id='start' size='big'> > <item type='info_player_start' pos='c' /> > <con wall='n' pos='bl' target='north-west' type='door' /> > <con wall='n' pos='br' target='north-east' type='door' /> > </room> > <room id='north-west'> > <con wall='s' pos='br' target='start' /> > </room> > <room id='north-east'> > <con wall='s' pos='bl' target='start' /> > </room> > </map> > > (Unfortunately there's a bug there -- my "bl" and "br" should be the > opposite way 'round on the connections back to "start", but my code has > failed to take into consideration the fact that when we're looking > south, our perception of left and right is the opposite way 'round from > when we're looking north. I will fix this ASAP as long as it doesn't > affect any other functionality (as that could skew the test). It's > funny how when you get other peoples' views on how things should/can be > used, you find all sorts of interesting things like this!) > > However, the above starts to get quite complex, so it's something LDL > should really offer to do for you (and is one of the features that has > priority, along with teleporters and water/slime/lava). > > best regards, > > > -- > Matthew Tylee Atkinson <[EMAIL PROTECTED]> > > _______________________________________________ > AGRIP-discuss mailing list > [email protected] > http://lists.agrip.org.uk/cgi-bin/mailman/listinfo/agrip-discuss _______________________________________________ AGRIP-discuss mailing list [email protected] http://lists.agrip.org.uk/cgi-bin/mailman/listinfo/agrip-discuss
