 |
kjaerhus Magician

Joined: 18 Dec 2006 Posts: 317 Location: Denmark
|
Posted: Tue Jan 20, 2009 10:51 pm
[3.03a] Mapper - room properties |
I somehow can't see room properties. Nothing happens if I press the properties button or if I try doing the same from the menu.
I've also accidentally posted a few other problems with the mapper here in the general discussion. |
|
|
|
 |
gamma_ray Magician
Joined: 17 Apr 2005 Posts: 496
|
Posted: Tue Jan 20, 2009 11:23 pm |
Make sure the room properties dialog is not already open. It could have accidentally been joined to another window, possibly as a tab which is behind some other tab.
Otherwise, I'm completely unable to duplicate this bug, so we'd need more information. |
|
|
|
 |
kjaerhus Magician

Joined: 18 Dec 2006 Posts: 317 Location: Denmark
|
Posted: Wed Jan 21, 2009 11:22 pm |
I really can't find it anywhere. Is there a way to make sure it's killed?
I just converted the map from the old type. One of the reasons I changed from 2.x to 3.x was that for some reason I was not able to edit the map anymore. Perhaps my map is bugged in some way. Any way to tell?
I mentioned in another thread that I can see my map in the package editor and that it seems there is a lot of inactive rooms. Exactly what does this mean? |
|
|
|
 |
Zugg MASTER

Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Wed Jan 21, 2009 11:45 pm |
The Room Properties is a dockable window, so if it's hidden somehow, you can look for it in the Windows menu, or you can hold down the SHIFT key and select the Open Offline action for your session to reset the window layout. This should reset the room properties to it's default as a floating window.
The inactive rooms in your Map object is where CMUD puts all of your various Room Scripts. Each Room is a class folder that represents a room on your map that had a script. If you click on one of these rooms and click the Enable Script tab for the class, you will see the script that is executed when the class is enabled. As you move around the map, CMUD disables the Room class folder for the previous room and then enables the Room class folder for the new room.
For example, if you move from Room 1 to Room 2, CMUD will disable the Room1 folder and then enable the Room2 folder. The act of enabling/disabling a class folder causes the Enable or Disable script for the folder to be executed. So when the Room1 folder is enabled, it's Enable script (your original room script) gets executed. Since enabling/disabling classes is much faster than creating/deleting scripts, this makes movement faster in the new mapper.
So all Room class folders will be disabled except for the current room folder. So it's normal to have a lot of disabled room objects. |
|
|
|
 |
kjaerhus Magician

Joined: 18 Dec 2006 Posts: 317 Location: Denmark
|
Posted: Thu Jan 22, 2009 4:50 pm |
| Zugg wrote: |
| The Room Properties is a dockable window, so if it's hidden somehow, you can look for it in the Windows menu, or you can hold down the SHIFT key and select the Open Offline action for your session to reset the window layout. This should reset the room properties to it's default as a floating window. |
In the window menu I just now found a "Room Properties" item and this actually shows the room properties. However the two more logical choices, the properties button on the map toolbar and the "Properties" item under the "Edit" menu on the map window, seems to be out of function. Also CTRL + P doesn't work.
| Zugg wrote: |
| So all Room class folders will be disabled except for the current room folder. So it's normal to have a lot of disabled room objects. |
Ok, good to know, thanks. I'd suggest however that you considered another way of symbolizing this as all the other elements that are disabled are so in a more static fashion - they do not get enabled or disabled behind your back. I think those room properties looks like garbage that should be considered for deletion and that is as I understand you not the message you are trying to send. |
|
|
|
 |
Rahab Wizard
Joined: 22 Mar 2007 Posts: 2320
|
Posted: Thu Jan 22, 2009 7:20 pm |
Actually, things can indeed be enabled or disabled 'behind your back'. It is quite common for scripts to enable or disable classes. One reason is that it is faster to enable a trigger than to create a fresh temporary one. Also, cmud may disable a trigger if it causes an infinite loop or some other problem.
The method Zugg has devised for v.3 map rooms is quite clever, and opens a whole range of possibilities even outside the mapper. You can now have *any* class do special things whenever they are enabled or disabled. And within the context of the mapper, you can have entire sets of triggers, aliases, and variables that only become active when you enter a specific room, or type of room, or zone, simply by putting them in the right class. And you can modify room scripts in the package editor rather than the map window.
In general, it would be a bad idea to consider every inactive class and trigger to be eligible for deletion. There are lots of reasons things might be disabled legitimately. |
|
|
|
 |
kjaerhus Magician

Joined: 18 Dec 2006 Posts: 317 Location: Denmark
|
Posted: Thu Jan 22, 2009 9:30 pm |
| Rahab wrote: |
| Actually, things can indeed be enabled or disabled 'behind your back'. It is quite common for scripts to enable or disable classes. One reason is that it is faster to enable a trigger than to create a fresh temporary one. Also, cmud may disable a trigger if it causes an infinite loop or some other problem. |
If your own scripts disable things it's hardly behind your back, is it?
| Rahab wrote: |
| The method Zugg has devised for v.3 map rooms is quite clever, and opens a whole range of possibilities even outside the mapper. You can now have *any* class do special things whenever they are enabled or disabled. And within the context of the mapper, you can have entire sets of triggers, aliases, and variables that only become active when you enter a specific room, or type of room, or zone, simply by putting them in the right class. And you can modify room scripts in the package editor rather than the map window. |
Not commenting on whether it's smart or not to have such functionality. Just commenting on the way it's shown in the tree.
| Rahab wrote: |
| In general, it would be a bad idea to consider every inactive class and trigger to be eligible for deletion. There are lots of reasons things might be disabled legitimately. |
I write a lot of scripts and many are disabled at some point due to being obsolete or simply not working correctly. Every now and then I remove some of the old disabled code to clean up and that is why I used those words. For me disabled means that unless I enable it it will not work. If it's more a technicality behind my back I would prefer it to look otherwise because it looks just like my old garbage which is NOT enabled and disabled behind my back dynamicly. |
|
|
|
 |
Rahab Wizard
Joined: 22 Mar 2007 Posts: 2320
|
Posted: Fri Jan 23, 2009 3:02 pm |
Disabled is disabled. Why should it look any different than any other disabled class? You can enable and disable it yourself, too, the normal way. And cmud can disable and enable other things on its own too. It is exactly the same as any other disabled class.
You should refine your definition to say that disabled means unless you OR CMUD enables it, it won't run. That has always been the case. |
|
|
|
 |
kjaerhus Magician

Joined: 18 Dec 2006 Posts: 317 Location: Denmark
|
Posted: Fri Jan 23, 2009 3:34 pm |
| Rahab wrote: |
Disabled is disabled. Why should it look any different than any other disabled class? You can enable and disable it yourself, too, the normal way. And cmud can disable and enable other things on its own too. It is exactly the same as any other disabled class.
You should refine your definition to say that disabled means unless you OR CMUD enables it, it won't run. That has always been the case. |
I don't really care to discuss this. I don't like the way it looks, but I don't think it's of great importance either.
There is now different nuances of "disabled", but maybe you "don't do nuance"... (just teasing - don't take it too hard) |
|
|
|
 |
Zugg MASTER

Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Fri Jan 23, 2009 6:32 pm |
Unfortunately, it's a limitation in the Tree View. There isn't any other good way to show that something is disabled. In the past I used to use a "dim silver" color instead of the strikeout, but then people complained that it was too hard to see. All I can control is the font color and style. And the strikeout has been used for several years now in CMUD to show disabled classes, so I think I'm going to stick with it unless I hear about a much better idea. But I think it's just something new CMUD users need to get used to.
|
|
|
|
 |
kjaerhus Magician

Joined: 18 Dec 2006 Posts: 317 Location: Denmark
|
Posted: Fri Jan 23, 2009 7:42 pm |
| Zugg wrote: |
| ...I think I'm going to stick with it unless I hear about a much better idea. But I think it's just something new CMUD users need to get used to. |
I'm sure I can get used to it too and currently I definitely prefer that you use your precious time on the mapper and on fixing bugs.  |
|
|
|
 |
|
|
|