greetings,
i have an area where i'd like various placeables to be invisible. [this is not the 'invisible object' placeable, but rather normal placeables which are invisible.] after reading this thread, i thought i'd found the solution in cutscene invisibility, and doing this does make the object invisible, but unfortunately it's not subject to 'see invisibility' and 'true seeing' spells, and i want these placeables to react normally, as anything else invisible would. applying the standard invis effects doesn't work either ; the objects just remain visible. other possible 'solutions' i've come up with are-
- hook the spells and/or enter scripts so they'll strip cutscene invis from tagged objects, but this is suboptimal not only because it's kludgey but also because it would render the objects visible to all characters, not just the character w/true sight.
- not have a placeable there at all, but spawn it in if a character w/true sight triggers something. also suboptimal, for the same reasons.
any suggestions?
thanks
-x
make a placeable invisible?
Débuté par
xorbaxian
, août 03 2012 06:03
#1
Posté 03 août 2012 - 06:03
#2
Posté 03 août 2012 - 06:33
Another option is to create an immobile creature with the appearance of the placeable. (this would require an additional row in appearance.2da and to put this 2da in the top hak for your module).
Invisibility as far as I know is only applicable to creature objects.
Invisibility as far as I know is only applicable to creature objects.
#3
Posté 03 août 2012 - 10:16
Modifié par Lightfoot8, 03 août 2012 - 11:33 .
#4
Posté 03 août 2012 - 11:10
Lightfoot8, the placeable that the OP desires to make invisible may not have a corresponding creature appearance.
Is there a way to do this other than by adding a new row to appearance.2da with the same model as the placeable they are representing?
Is there a way to do this other than by adding a new row to appearance.2da with the same model as the placeable they are representing?
#5
Posté 03 août 2012 - 11:24
Why not just use the invisible placeable as the default then spawn in the visible one when needed? It would be easy enough to set it to the same position.
#6
Posté 03 août 2012 - 11:34
Pstemarie, that works in single player, but when you have multiple players how do you make the spawned in placeable only visible for the player(s) that can see it?
#7
Posté 03 août 2012 - 11:35
@ henesua : Sorry excues my bad memory.
#8
Posté 03 août 2012 - 11:51
I'm not certain visibility lists are maintained for placeables. Assuming that they are, nwnx (for both windows and linux) does support the changing of visibility status for a single creature towards an object, but I've never tried it with a placeable.
It's in nwnx_funcs on the windows end of it.
//**** Original work by virusman ****
const int VISIBILITY_TYPE_DEFAULT = 0;
const int VISIBILITY_TYPE_VISIBLE = 1;
const int VISIBILITY_TYPE_INVISIBLE = 2;
// Sets the visibility of oObject for everybody
void NWNXFuncs_SetVisibilityOverride(object oObject, int nVisibilityType);
// Sets whether oObject2 can see oObject1
void NWNXFuncs_SetVisibility(object oObject1, object oObject2, int nVisibility);
// Gets the visibility of oObject
int NWNXFuncs_GetVisibilityOverride(object oObject);
// Gets whether oObject2 can see oObject1
int NWNXFuncs_GetVisibility(object oObject1, object oObject2);
//**************************************
It's in nwnx_funcs on the windows end of it.
//**** Original work by virusman ****
const int VISIBILITY_TYPE_DEFAULT = 0;
const int VISIBILITY_TYPE_VISIBLE = 1;
const int VISIBILITY_TYPE_INVISIBLE = 2;
// Sets the visibility of oObject for everybody
void NWNXFuncs_SetVisibilityOverride(object oObject, int nVisibilityType);
// Sets whether oObject2 can see oObject1
void NWNXFuncs_SetVisibility(object oObject1, object oObject2, int nVisibility);
// Gets the visibility of oObject
int NWNXFuncs_GetVisibilityOverride(object oObject);
// Gets whether oObject2 can see oObject1
int NWNXFuncs_GetVisibility(object oObject1, object oObject2);
//**************************************
#9
Posté 04 août 2012 - 07:26
w00T! thanks for the great ideas!
yes, i could make it a creature, that would work. the nwnx solution offers a little more flexibility, if a little more complex, but definitely the way to go if i need to use the placeable's inventory. time to upgrade my nwnx, and gods be praised for virusman.
thanks for the ideas.
yes, i could make it a creature, that would work. the nwnx solution offers a little more flexibility, if a little more complex, but definitely the way to go if i need to use the placeable's inventory. time to upgrade my nwnx, and gods be praised for virusman.
thanks for the ideas.
Modifié par xorbaxian, 04 août 2012 - 07:28 .
#10
Posté 05 août 2012 - 08:47
Yes, NWNX Visibility (on Linux; or part of NWNX Funcs on Windows) works with placeables. Just make sure they're not static.
Modifié par virusman, 05 août 2012 - 08:56 .
#11
Posté 17 août 2012 - 12:41
hey virusman -
I tried doing this last night with a placeable.
plot, non-static, and usable
But couldnt get it to be invisible.
Could you have a quick look?
http://nwnx.org/phpB...opic.php?t=2004
This is for the win32 funcs - I know maxrock converted it over, I was just wondering if you might see what is either wrong with the code, or whether I am invoking it incorrectly?
The Set visibility override works - so I can make a placeable invisible to all, or visible to all.
But when setting visibility for single players vs a placeable, it doesnt want to work.
I tried doing this last night with a placeable.
plot, non-static, and usable
But couldnt get it to be invisible.
Could you have a quick look?
http://nwnx.org/phpB...opic.php?t=2004
This is for the win32 funcs - I know maxrock converted it over, I was just wondering if you might see what is either wrong with the code, or whether I am invoking it incorrectly?
The Set visibility override works - so I can make a placeable invisible to all, or visible to all.
But when setting visibility for single players vs a placeable, it doesnt want to work.





Retour en haut







